Skip to content

Align Word sidecar naming contract (#127) - #149

Open
kiki830621 wants to merge 6 commits into
mainfrom
idd/127-sidecar-spec
Open

Align Word sidecar naming contract (#127)#149
kiki830621 wants to merge 6 commits into
mainfrom
idd/127-sidecar-spec

Conversation

@kiki830621

Copy link
Copy Markdown
Member

Refs #127

Summary

  • align the canonical Word sync spec with the implemented full-name sidecar convention
  • document report.docx.oplog.jsonl and report.docx.snapshot.json
  • define read-only fallback for legacy stem sidecars while keeping new writes canonical

Verification

Checklist

  • Diagnose
  • Implement
  • Verify
  • Verify-gated: ready for review; after merge, finalize the issue manually with /idd-close

Generated by /idd-all. Do not add an automatic close trailer; IDD requires manual finalization after merge.

原 cli/FastOCR(→MeasureOCR)為研究儀器、非文件工具,遷至
~/Developer/bestOCR/repos/measureOCR;GitHub repo 同步改名
PsychQuant/measureOCR(舊 URL 轉址)。macdoc PDF 工具的 OCR 能力
不變——照常經 published package ocr-swift 取用。
Genspark 的 AI-native office suite,shallow clone 至 reference/genoffice/。
不是競品(無 MCP / CLI / public API,AI 綁自家雲端),但 packages/ 下的 engine
是純 TS、無 Electron 依賴,是唯一同時涵蓋 docx + xlsx + pptx + pdf 的現代
開源對照組。

三個對照點:
- xlsx 缺口(file-parse/src/xlsx.ts)——macdoc 唯一缺的 OOXML 主格式
- patch-narrowly round-trip(docx-engine/src/patch.ts)——與 ooxml-swift
  op log 同目標、不同解法的第三種參考(python-docx 直接 mutate、genoffice
  保留原 bytes 窄幅重生、macdoc op log 重放)
- pptx 功能廣度(smartart / custgeom / animation)——pptx-swift 擴充 checklist

含 Apache-2.0 / ee\/ 另授權的移植注意事項,以及 snapshot-sync 開發模式的
成熟度警語。
@kiki830621

Copy link
Copy Markdown
Member Author

Verify update — PR #149 / Issue #127

Candidate

  • Head: 1b3e67382f9621e096c28ab98cfadbe5ac70383f
  • Base: current origin/main (b66d98c)
  • GitHub mergeability: MERGEABLE; CodeQL is still running.

Requirements

  • canonical writes: report.docx.oplog.jsonl / report.docx.snapshot.json
  • canonical read priority with legacy report.oplog.jsonl / report.snapshot.json fallback
  • fresh means all four canonical+legacy files are absent
  • legacy-only migration loads old state, writes only canonical paths, and preserves legacy files
  • CLI --from-oplog help reflects canonical-first + legacy fallback

Verification

  • Requirements: PASS
  • Spec consistency/data integrity: PASS after adding explicit legacy-only scenario
  • Regression/security: PASS
  • Devil’s Advocate: PASS after correcting CLI help
  • spectra validate --strict: PASS
  • git diff --check: PASS
  • final diff: 2 files, 12 insertions, 6 deletions

Process Gap

Root Swift build is blocked on main's separate clean-clone dependency regression (#164). This PR changes only specification/help text; validation and independent consistency reviews are complete.

Verdict

verify-gated PASS — 0 blocking, 0 follow-up. Await CodeQL and human review; this workflow does not merge or close the issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant