docs(ops): note decision idempotency and Playwright skeleton

Record MarkProposalApplied ordering, CommitAgentVersion retry contract,
and the UI acceptance skeleton paths on the short-term task.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
weichen
2026-09-13 10:09:18 +00:00
co-authored by Cursor
parent 46769467bf
commit 09488132dd
@@ -75,16 +75,18 @@ cd web && npm test && npm run build
- H:**活动与提案收口**:`RecordActivity(完成交付物)` 仅在 committed 投影成功后;pending 记「候选待编制人确认」;落盘/投影失败不记完成。`MarkProposalApplied` 失败返回显式错误(bizdev / `DOCUMENT_GOVERNANCE_FAILED`)可重试
- I:**阶段链防传播**:`ExecuteStage` 遇 `PendingAgentCandidateID` 立即停阶段(Success=false + 待确认文案),SubArtifacts 保留候选,**不**吸收 ExtractedData / PriorDoc;确认后由用户重新发起阶段
- J:**前端历史映射**:`pending_author_confirmation` 显式映射为气泡状态(不再默认 completed);刷新窗口显示「待编制人确认」标签
- K:**决策幂等收口**:`CommitAgentVersion` 已 committed 且 expected hashes 一致时返回当前 state(可继续投影/MarkProposalApplied);已 committed 禁止 reject。`MarkProposalApplied` 先写 DB 再改内存;已 applied 幂等;`PutChangeProposal` 供补偿补种。decision 失败 hint 指向同决策重试
- L:**Playwright 骨架**:`web` 增加 `@playwright/test` + `playwright.config.ts` + `e2e/document-revision-runtime.spec.ts`(`RUN_UI_ACCEPTANCE=1` 才跑;无 mock/route/API/DB fixture)
### 用户 UI 实战验收
见扩展 checklist(UI-01…UI-16)。工具条已加 `revisionRefreshKey`(保存/hydrate 后刷新 r)与「变更报告」入口(`change_report_id`)。**本轮未执行 Playwright**。
见扩展 checklist(UI-01…UI-16)。工具条已加 `revisionRefreshKey`(保存/hydrate 后刷新 r)与「变更报告」入口(`change_report_id`)。**骨架已就绪,本轮未执行真实 UI 实录**(需 `RUN_UI_ACCEPTANCE=1` + 占槽)。
### Blockers
- **DOCREV-RT-PI-NARRATIVE**:真实 PI 业务叙事摘要/风险解释(确定性 fallback 已可见,不得宣称为完整 PI)
- **DOCREV-RT-UPLOAD-ORPHAN**:仅 IndexedDB 上传、无服务端正文 → 禁止假 V1
- **DOCREV-RT-UI-E2E**:需占集成槽 + 真实小队 + 无头 Playwright 实录
- **DOCREV-RT-UI-E2E**:需占集成槽 + 真实小队 + `npm run test:ui-acceptance` 无头 Playwright 实录
### Commits(历史)