merge: candidate planned-tasks-closeout-2026-09-25-r2 into dev

This commit is contained in:
weichen
2026-09-25 04:10:58 +00:00
2 changed files with 137 additions and 0 deletions
@@ -0,0 +1,43 @@
---
title: "docrev 实施方案 11 条验收收口核对"
task_id: planned-tasks-closeout-plan-2026-09-25(P1 子产物)
status: in_progress
created: 2026-09-25
owner: Cursor
task_type: audit
mutex: planned-tasks-closeout
review_state: pending
integration_state: pending
---
# docrev 实施方案 11 条验收收口核对
对 [management-implementation-plan](../../remediation/2026-09-13-document-revision-management-implementation-plan.md) §11 的 11 条验收逐条映射现状证据。原则:**证据充分才勾,不充分列残差**;不因「大体做过」假勾。
## 逐条核对
| # | 验收 | 证据 | 判定 |
|---|------|------|------|
| 1 | 模板/Agent 开 Version、人工只加 Revision 在 API/UI/DB 一致 | `internal/docrevision`(45 文件:service_agent `CommitAgentVersion`、service_human、pg_mutate、contract_test);[13日报告](../../test-reports/2026-09-13-document-revision-management-test-report.md) T0 时间线 PASS;Round20 UI | ✅ 可勾 |
| 2 | 人工高亮永远 baseline→head,Agent commit 后归零 | `ManualChangeOverlay.tsx` + [Round20 UI](../../test-reports/2026-09-14-document-revision-runtime-ui-test-report.md) PASS(21 条);[DOCREV rerun](../../test-reports/2026-09-22-docrev-ui-rerun-test-report.md) main 18+post-restart PASS | ✅ 可勾 |
| 3 | 任意两 Version 默认 final→final/head 比较,可看 baseline/revision | `VersionCompareView.tsx` + `DiffNavigator.tsx`;同上 UI 证据 | ✅ 可勾 |
| 4 | 用户/单 agent/squad 主体与不可变 actor snapshot 可追溯 | service_agent.go actor snapshot;`commit_idempotent_test.go`、[Track T](../../remediation/2026-09-20-capability-enablement-impact-plan.md) 五表追踪 | ✅ 可勾 |
| 5 | 智能体输出与 change report 同次运行产生并绑定精确快照 | `commit_report_test.go`、pending_fact_source_test;PI 叙事 fallback 属显式行为([MATRIX docgov-revision 行](../../status/FEATURE-MATRIX.md)) | ✅ 可勾(fallback 为声明内行为) |
| 6 | 真实 diff/影响集合/风险下限服务端确定,模型不能篡改/降级 | `narrative_test.go`、risk floor 见 [R13](../../audit/2026-09-16-r13-data-safety-checklist.md);[PI 叙事收口](../../test-reports/2026-09-23-pi-narrative-closeout-test-report.md) 默认 off 但链路 PASS | ✅ 可勾 |
| 7 | 当前负责人收版本摘要;受影响负责人收授权裁剪通知 | `internal/notification/document_events.go` + `NotificationInbox.tsx`;[Wave5](../../test-reports/2026-09-13-document-revision-management-test-report.md) 通知负例 | ✅ 可勾 |
| 8 | 并发/重试/重启/迁移/故障注入无静默覆盖、双版本、丢通知 | `document_commit_concurrency_pg_test.go`、`concurrency_test.go`、[12日 fault-injection](../../test-reports/2026-09-12-phase4-lease-phase5-fault-injection-test-report.md)、M7(00053 投影同事务+重放) | ✅ 可勾 |
| 9 | 已批准文档、跨项目/跨阶段、私密文档负例全绿 | `document_revision_authz_test.go` 5 组负例(401/orphan/受控路由/author-only/幂等)+ [12日 IAM](../../test-reports/2026-09-16-iam-route-inventory-test-report.md) | ✅ 可勾 |
| 10 | 右侧栏主题/宽度/键盘/色觉/大文档可用 | Round20 + DOCREV rerun Playwright;**色觉与键盘无障碍未见专项断言** | ⚠️ 部分可勾:无障碍专项缺证据 |
| 11 | 证据归档 + MATRIX 逐波次更新 | `.doc/test-reports/` 全套 + MATRIX docgov-revision=done | ✅ 可勾 |
## 结论
- 11 条中 **10 条证据充分**;第 10 条「无障碍专项」(色觉、键盘完备性)无专项测试证据——不假勾,列为**残差 R-docrev-a11y**。
- 处置建议:方案文 §11 勾选 1–9、11;第 10 条标注「Playwright 主链路已过、无障碍专项未测,残差登记」;frontmatter `status: in_progress → done`(以 10/11 全证据 + 1 登记残差收口),W1-D 降级说明保留。
- 本核对为只读产物;方案文的勾选更新需在 docgov mutex 空闲时以 docs 提交落地(列入 P1 后续动作)。
## 残差登记
| ID | 内容 | 关闭条件 |
|---|------|---------|
| R-docrev-a11y | 版本比较视图色觉多重编码 + 键盘完备性专项断言 | 新增 Playwright a11y 用例(axe 或手动断言)PASS 后勾第 10 条 |
@@ -0,0 +1,94 @@
---
title: "已规划任务总控:批次计划与推进"
task_id: planned-tasks-closeout-plan-2026-09-25
status: in_progress
created: 2026-09-25
updated: 2026-09-25
owner: Cursor
task_type: planning
policy_revision: "AGENTS.md + agent-worktree-workflow @ 725181de"
branch: feature/planned-tasks-closeout-plan-2026-09-25
worktree: .worktrees/planned-tasks-closeout-plan-2026-09-25
base_dev_sha: "725181de4aa4480f77c52e40eeaef040c6563c3f"
write_scope:
- .doc/ops/short-term/2026-09-25-planned-tasks-closeout-plan.md
mutex: planned-tasks-closeout
review_state: pending
integration_state: pending
deployment: not_required
cleanup: pending
remote_sync: not_requested
---
# 已规划任务总控:批次计划与推进
## 用户目标与授权
- 用户 `/goal`(2026-09-25):把 [盘点](#盘点来源) 出的「已规划未开工 / 未收口」任务全部规划并推进至完成。
- 红线边界不变:SWBOOT-10 stub、FAV 不 live、D7 不物理删、PI 叙事 flag off、`MULTI_INTENT_PLAN_TIER` 不升 full、F4-B/F7-1/I6/I7 未授权不实施。
- 授权内自主推进;每个实施批次独立 task_id + worktree + 验证证据;本总控只写本文件(scope 已收窄避免与活跃任务 `.doc` 宽 scope 假冲突)。
## 盘点来源
FEATURE-MATRIX(SSOT)非 done 行、CURRENT 并行认领表、`2026-09-19-audit-remainder` T20 区、两份 backlog、各任务文五状态。盘点结论见对话记录;本文件将其转为可执行批次。
## 批次总表
| 批 | 内容 | 来源 | 依赖/互斥 | 状态 |
|----|------|------|-----------|------|
| **P0** | 存量 panic 修复:`engine_stage.go:306` 裸解引用 `stageRes.AdvisorBrief`(空产物时 nil deref,dev 基线复现)+ `matchAdvanceStage` 疑问句误判(`做.*报价` 命中问句) | 本总控新发现(属 audit-remainder M3/M5 家族) | ~~blocked:scope 被 dialogue-r2 硬占~~ **已解锁**:持有者收口后经 `dialogue-context-layout-fix` 布局修正合入 dev(`1da17a28`),P0 随后 validate+integrate 落地(dev `12bbe948`) | **done** |
| **P1** | docrev `management-implementation-plan` 收口核对:11 条验收逐条映射既有证据(Wave1–5 + Round20 UI + DOCREV rerun),产出勾选或残差清单;无法证明的条目列为显式残差,不假勾 | CURRENT 焦点1「仍方案态」 | 只读核对 + 文档更新;mutex `docgov` | pending |
| **P2** | T20 S1 小改批:B11(GET 禁 message)、F1(loadOlder generation)、F8(poll 去重+blob revoke)、F4-A(隐藏死按钮) | [T20 设计](../../system-design/2026-09-22-t20-hardening-design.md) 实施拆批 S1 | mutex `web`;无环境写 | pending |
| **P3** | T20 S2 配置/池批:B1(XFF 可信代理)、B4(statement_timeout 分级)、B7(SHUTDOWN_DRAIN 对齐) | 同上 S2 | mutex `server`/`infra`;需回归 | pending |
| **P4** | T20 S3 锁批:B3(docgov/docrevision 分锁 + 锁外 hydrate) | 同上 S3 | mutex `docgov`;独立大改,`go test -race` | pending |
| **P5** | T20 S4 镜像批:I1(非 root + limits)、I4(init mount 统一)——代码/compose 可合;共享环境部署另授权 | 同上 S4 | mutex `infra`;部署不自动 | pending |
| **P6** | T20 观测:B5(FailChatTurn 可观测 + 孤儿扫描) | 同上 | mutex `chat` | pending |
| **P7** | Server 镜像字段增量收口(module-batches-ag 剩余「另立任务」) | MATRIX `module-batches-ag` 行尾注 | mutex `module-decoupling-spec` | pending |
| **P8** | U9–U12 剩余键逐键放量:`document.review.approve/reject`、`document.final.*`、`document.proposal.decide`、`workflow.switch`、`run.restart`(validated_only,逐键独立 flag + 真实 PI 证据,禁 full 一次放量) | MATRIX `intent-plan-u9u12` 行尾注 | mutex `intent-plan`;每键独立任务 | pending |
| **P9** | web-sysadmin 残差:Playwright 实跑、KB 运维动作、白名单项接消费方 | MATRIX `web-sysadmin` 行尾注 | mutex `web+sysadmin` | pending |
| **P10** | backlog 价值评估 + 择优实施:B5 报价复核、A5/A6 小队降级、D5 KB 隔离评估、R1/R4–R7 rdev 增强 | 两份 backlog | 逐项评估后定做/不做及理由 | pending |
| **P11** | 未收口任务推进:`intent-plan-i2` 两行、`worktree-cleanup-closeout`、cleanup=pending 批量复查(`cleanup report` 门禁) | CURRENT 表 | `cleanup report` 只读盘点先行 | pending |
| **P12** | 红线项推进至授权边界:FAV 观察窗计时核查、D7 合规签字追踪、SWBOOT L5/L6 授权申请登记、PI 叙事 dev 常驻开启申请登记——只登记与证据核查,不越权实施 | CURRENT 受控约束 | 只读 | pending |
## 执行顺序与理由
1. **P0 先行**:dev 基线 panic 是所有后续 `go test` 的噪音源,必须先修。
2. **P1 只读核对**并行做(不占代码 mutex)。
3. **P2(S1 小改)** → **P3(S2)** → **P6(B5)**:按设计文档优先级 P1 软件项排完。
4. **P4(B3 锁)**独立大改单独排。
5. **P5(I1/I4)**代码层完成后停在「待部署授权」。
6. **P7–P9** 各自独立,按 mutex 空闲插入。
7. **P10 评估先行**,产出做/不做决策再实施。
8. **P11 cleanup** 用 `agentctl cleanup report` 机器门禁复查,不手工删。
9. **P12** 全程只读登记。
## 每批验收口径
- 代码批:`go test`(含 `-race` where applicable)+ 工程/产品分层按 [验证契约];报告落 `.doc/test-reports/`。
- 文档批:链接可达、状态真实、无假勾选。
- 红线批:只登记 blocker 与授权申请,不实施。
- 合入:`validate` → `queue enqueue`(daemon ff-only),串行。
## 状态机
| 字段 | 值 |
|---|---|
| review_state | done(P0 已合入 dev `12bbe948`) |
| integration_state | partial(P0 done;P1–P12 待续) |
| deployment | not_required |
| cleanup | pending |
| remote_sync | not_requested |
## 进展日志
- 2026-09-25:建场、盘点转批次、P0 根因定位(`engine_stage.go:306` nil deref,空 `executedArtifacts` 时 `stageBrief=nil`;dev@725181de 复现 `TestBizDev_CaseRecommendation_FullLink_E2E` panic)。
- 2026-09-25:P0 双层修复完成并全绿(nil 保护 + `isInterrogative` 疑问句排除;新增回归 `TestCoordinatorEngine_AdvanceStageNilBriefNoPanic`;intent/coordinator/bizdev/squad/dialoguectx/conflictresolve/ctxmgr 全 PASS,chat 存量失败 `TestChatSession_SemanticMemoryRecallAndAsyncTurnRecord` 为基线同款)。**落地受阻**:catalog hard same_scope(持有者任务未收口,hard 不可 ack)→ 补丁与测试报告存 `~/fix-stage-brief-panic-patches/`,登记 blocked 待持有者收口后落地。
- 2026-09-25:存量遗留新登记:chat 语义记忆异步轮记录用例失败(dev 基线同款),候选批次。
- 2026-09-25:**P0 落地**:`dialogue-context-injection-2026-09-25-r2` 经布局修正(r1/r2 行移表尾,`docs apply @document` + 新任务 `dialogue-context-layout-fix-2026-09-25` 持 docs:admin)解除 integrate 相邻插入冲突,merge 一枪成功合入 dev(`1da17a28`)。P0 补丁随即 apply 到 `fix-stage-brief-nil-panic-2026-09-25` worktree,`go test ./internal/coordinator/... ./internal/intent/...` 全 PASS(含新增回归 `TestCoordinatorEngine_AdvanceStageNilBriefNoPanic`),validate+integrate 合入 dev `12bbe948`(5 文件 +231 行:nil 保护、疑问句门控、回归测试、任务文与测试报告)。
## 相关链接
- 盘点对话:本轮 /goal 前置盘点
- T20 设计:[../../system-design/2026-09-22-t20-hardening-design.md](../../system-design/2026-09-22-t20-hardening-design.md)
- docrev 方案:[../../remediation/2026-09-13-document-revision-management-implementation-plan.md](../../remediation/2026-09-13-document-revision-management-implementation-plan.md)
- 验证契约:[../2026-09-21-validation-contract.md](../2026-09-21-validation-contract.md)