confluence-mdx: P2 capability 경계를 설계합니다 - #1049
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e87e634576
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| 2. create/update를 실행하고 post-catalog에서 ID, filename, version, binary | ||
| identity를 확인합니다. | ||
| 3. 해당 attachment를 참조하는 page body를 versioned PUT하고 page | ||
| postcondition을 확인합니다. |
There was a problem hiding this comment.
Keep existing attachment updates behind the page CAS
For AttachmentVersionUpdate, this order mutates the existing attachment binary before the versioned page PUT. If the page drifts after preflight or the PUT/postcondition later fails, the page can still reference the same filename/attachment ID and expose the new binary while the body remains unchanged, so the side effect escapes the fail-closed remote_drift/postcondition contract rather than merely leaving an orphan or unnecessary version. Please keep binary version updates blocked, or require a staging/body-switch strategy that preserves the old attachment until the page CAS has succeeded.
Useful? React with 👍 / 👎.
1c40d1c to
11b2267
Compare
## Summary 기존 attachment binary update가 page CAS 밖에서 노출되는 계약 오류를 수정합니다. - AttachmentVersionUpdate를 create/delete transaction 순서에서 분리합니다. - non-destructive staging/body-switch proof 전까지 version update를 block합니다. - old binary 보존과 page postcondition 순서를 OpenSpec Scenario로 고정합니다. ## Test plan - [x] openspec validate complete-reverse-sync --strict - [x] 관련 attachment contract targeted search - [x] git diff --check 🤖 Generated with Codex
e87e634 to
d555577
Compare
11b2267 to
b073dc1
Compare
## Summary 확장 capability의 안전 경계와 별도 change 진입 조건을 결정합니다. - page title mutation을 versioned page postcondition으로 분리합니다. - attachment create/update/delete의 비원자적 transaction과 recovery evidence를 정의합니다. - preserved anchor target 변경은 generic template rewrite에서 제외합니다. - raw HTML table cell text mutation의 typed identity/proof를 정의합니다. - active draft와 remote drift는 자동 merge 없이 fail-closed를 유지합니다. 🤖 Generated with Codex Co-Authored-By: Atlas <atlas@jk.agent>
## Summary 기존 attachment binary update가 page CAS 밖에서 노출되는 계약 오류를 수정합니다. - AttachmentVersionUpdate를 create/delete transaction 순서에서 분리합니다. - non-destructive staging/body-switch proof 전까지 version update를 block합니다. - old binary 보존과 page postcondition 순서를 OpenSpec Scenario로 고정합니다. ## Test plan - [x] openspec validate complete-reverse-sync --strict - [x] 관련 attachment contract targeted search - [x] git diff --check 🤖 Generated with Codex
d555577 to
4665053
Compare
## Summary 현재 구현된 reverse-sync의 snapshot-bound verification과 manifest-bound publish lifecycle을 architecture 문서에 동기화합니다. - 로컬 diagnostic과 원격 `PageSnapshot` 기반 online prepare/publish 경로를 구분합니다. - typed `PatchPlan` v2, preservation renderer, local proof, immutable run artifact의 책임과 상태를 기록합니다. - explicit manifest publisher의 preflight, active draft/dependency gate, version-bound PUT, postcondition을 문서화합니다. - CLI 명령, runtime artifact tree, safety invariant를 실제 service/module 이름에 맞춥니다. - OpenSpec cleanup task의 architecture 경로를 실제 파일 위치로 바로잡고 완료 처리합니다. ## Verification - `openspec validate complete-reverse-sync --strict` - `git diff --check` - `python confluence-mdx/bin/reverse_sync_cli.py --help` - manifest 필수 artifact와 stale architecture 용어 targeted search ## Stack - Base: #1049 - 이 PR은 #1049가 merge된 뒤 merge합니다. 🤖 Generated with Codex
Summary
현재 body reverse-sync contract를 넓히지 않으면서 후속 P2 capability의 안전 경계와 별도 change 진입 조건을 결정합니다.
Verification
openspec validate complete-reverse-sync --strictgit diff --checkStack
References
🤖 Generated with Codex