Skip to content

confluence-mdx: reverse-sync local proof를 엄격하게 검증합니다#1030

Open
jk-kim0 wants to merge 1 commit into
jk/fix-reverse-sync-push-snapshotfrom
jk/refactor-reverse-sync-local-proof
Open

confluence-mdx: reverse-sync local proof를 엄격하게 검증합니다#1030
jk-kim0 wants to merge 1 commit into
jk/fix-reverse-sync-push-snapshotfrom
jk/refactor-reverse-sync-local-proof

Conversation

@jk-kim0

@jk-kim0 jk-kim0 commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Summary

#1029에서 고정한 remote snapshot과 PUT transaction 위에, MDX 변경으로 만든 candidate XHTML이 실제 발행 가능한지 증명하는 strict local proof를 추가합니다.

  • Markdown table의 cell 바깥 padding과 separator dash 길이만 안전한 source formatting 차이로 허용하는 reverse-sync-equivalence-v1 typed canonical model을 추가합니다.
  • 변경하지 않은 top-level fragment, separator, document envelope를 byte-equal로 유지하는 online patch renderer를 추가합니다.
  • source identity, base parity, intent completeness, artifact integrity, Storage XHTML well-formedness, preservation, semantic round-trip, determinism, idempotency, dependency의 10개 gate를 manifest schema v2에 결합합니다.
  • diagnostic pass와 발행 가능한 verified_local을 분리하고, legacy pass가 잘못 push_eligible로 표시되어도 단일·배치 발행을 차단합니다.
  • OpenSpec 2.5 task와 strict proof 검증 근거를 갱신합니다.

Impact

  • online push는 10개 gate를 모두 통과한 verified_local manifest만 발행 후보로 인정합니다.
  • 16개 golden page를 remote PUT 없는 shadow online mode로 검증했으며, 4개는 verified_local, 12개는 visible whitespace, unresolved link, raw HTML table mutation 등의 근거로 fail-closed했습니다.
  • 승인된 canary page가 없어 remote PUT과 remote canary는 실행하지 않았습니다.

Test plan

  • cd confluence-mdx && venv/bin/python3 -m pytest -q — 1054 passed, 2 skipped
  • cd confluence-mdx/tests && make test-convert — 21 passed
  • cd confluence-mdx/tests && make test-reverse-sync — golden 16 passed, regression 43 passed
  • cd confluence-mdx/tests && make test-byte-verify — fast/splice 각각 21/21 passed
  • openspec validate complete-reverse-sync --strict
  • git diff --check

Related tickets & links

🤖 Generated with Codex

## Summary
MDX 변경을 Confluence Storage XHTML로 반영하기 전에 typed equivalence와 보존 증거를 모두 검증하도록 local proof 계약을 강화합니다.

- Markdown table의 안전한 source formatting 차이만 허용하는 versioned canonical model을 추가합니다.
- unchanged fragment와 document envelope를 byte-preserving하는 online patch renderer를 추가합니다.
- well-formedness, preservation, determinism, idempotency를 포함한 10개 필수 gate를 manifest에 결합합니다.
- diagnostic pass와 verified_local을 분리하고 legacy pass의 발행을 차단합니다.
- OpenSpec task와 golden shadow 검증 결과를 갱신합니다.

## Test plan
- [x] 전체 Python test 1054 passed, 2 skipped
- [x] make test-convert 21 passed
- [x] make test-reverse-sync golden 16 passed, regression 43 passed
- [x] make test-byte-verify fast/splice 각각 21/21 passed
- [x] openspec validate complete-reverse-sync --strict
- [x] git diff --check

🤖 Generated with Codex

Co-Authored-By: Atlas <atlas@jk.agent>
@vercel

vercel Bot commented Jul 24, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
querypie-docs Ready Ready Preview, Comment Jul 24, 2026 9:55am

Request Review

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