diff --git a/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/design.md b/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/design.md index aeb0d6cd..6f73fdd6 100644 --- a/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/design.md +++ b/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/design.md @@ -2,7 +2,7 @@ ## 当前依赖 -部署候选必须包含 Task A 和 `08-28-reimbursement-nonparticipant-readonly-projection`。后者未提交前不冻结 SHA、不运行来源发布、不连接生产。 +部署候选必须包含 Task A 和 `08-28-reimbursement-nonparticipant-readonly-projection`。业务提交为 `e8d6766`,包含后续元数据提交的本地 HEAD 作为待审候选;在用户另行批准前不推送、不运行来源发布、不连接生产。 ## 发布流 diff --git a/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/implement.md b/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/implement.md index 8a1b07a8..63aa9ec9 100644 --- a/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/implement.md +++ b/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/implement.md @@ -2,8 +2,8 @@ ## 1. 依赖与候选 -- [ ] P0 非参与人只读投影修复已实施、只读复核 PASS 并提交。 -- [ ] 将 Task A 与 P0 修复的最终线性提交冻结为候选 SHA,复核完整提交范围和上游发布影响。 +- [x] P0 非参与人只读投影修复已实施、只读复核 PASS 并提交为 `e8d6766`。 +- [x] Task A 与 P0 业务修复已包含在 `e8d6766`,后续元数据提交一并纳入本地待审候选;上游发布与生产影响仍须在推送批准后复核。 - [ ] 用户已审查最终候选、回滚和公网验证清单,并另行明确批准推送与部署。 ## 2. 部署前门禁 diff --git a/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/prd.md b/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/prd.md index ec7afe4e..6ff66726 100644 --- a/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/prd.md +++ b/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/prd.md @@ -7,8 +7,8 @@ ## Current Planning Gate - 原候选 `174cb7a` 只包含撤回投影与 EXIF 尺寸修复,未覆盖已确认的非参与人草稿/驳回维护动作和服务端解绑资格问题,因此不再作为最终部署基线。 -- 本任务保持 `planning`,阻塞于 `08-28-reimbursement-nonparticipant-readonly-projection` 的实施、只读权限复核和工作提交。 -- 阻塞解除后再补齐正式 Requirements、Acceptance Criteria、`design.md` 与 `implement.md`,并把新的候选 SHA、回滚到 `f178aa0` 的触发条件/动作、迁移 pre/post status、公网角色和材料预览检查写死后交付审查。 +- `08-28-reimbursement-nonparticipant-readonly-projection` 已实施、只读复核并形成业务提交 `e8d6766`;包含后续元数据提交的本地 HEAD 作为待审部署候选,尚未推送,不能视为已发布候选。 +- Requirements、Acceptance Criteria、`design.md` 与 `implement.md` 已写明回滚到 `f178aa0` 的触发条件/动作、迁移 pre/post status、公网角色和材料预览检查;本任务继续保持 `planning`,等待用户审查并另行批准推送/部署。 - 当前未经批准不得推送、部署、写生产或归档 Task A。 ## Scope @@ -30,7 +30,7 @@ ## Acceptance Criteria -- [ ] 非参与人只读投影修复已实施、复核和提交,新的部署候选 SHA 已冻结。 +- [x] 非参与人只读投影修复已实施、复核并提交为 `e8d6766`;包含元数据提交的本地 HEAD 已进入候选范围,但尚未发布。 - [ ] 完整部署 PRD、设计、实施和回滚清单经用户审查批准。 - [ ] 最终候选已发布且 `/ready`、bundle marker、迁移状态、runtime/external smoke 和备份合同刷新全部通过。 - [ ] 财务/管理员非参与人无报销人维护动作,owner 既有维护合同正常,材料合并预览可打开且页序和比例正常。 diff --git a/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/task.json b/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/task.json index a262b3f5..0e970a26 100644 --- a/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/task.json +++ b/.trellis/tasks/08-28-reimbursement-detail-material-preview-deploy/task.json @@ -21,6 +21,6 @@ "children": [], "parent": "08-28-reimbursement-detail-material-preview-fixes", "relatedFiles": [], - "notes": "规划暂停:用户已确认 174cb7a 不是最终部署候选。必须等待 08-28-reimbursement-nonparticipant-readonly-projection 实施、只读复核和提交后,重新冻结候选 SHA 并完成 PRD 审查;当前不得推送或部署。", + "notes": "非参与人只读业务提交为 e8d6766;包含后续元数据提交的本地 HEAD 作为待审部署候选,尚未推送,不能视为已发布候选。部署 PRD 仍待用户审查并另行批准推送/部署。", "meta": {} } diff --git a/.trellis/tasks/08-28-reimbursement-nonparticipant-readonly-projection/implement.md b/.trellis/tasks/08-28-reimbursement-nonparticipant-readonly-projection/implement.md index bc07e3fb..6bcb2bbb 100644 --- a/.trellis/tasks/08-28-reimbursement-nonparticipant-readonly-projection/implement.md +++ b/.trellis/tasks/08-28-reimbursement-nonparticipant-readonly-projection/implement.md @@ -41,8 +41,8 @@ - [x] 因涉及权限模型,实施完成后启动独立只读 review,不让 reviewer 修改代码;结论为 PASS,无权限阻断。 - [x] 将“全量查看不等于对象维护、非参与人报销详情默认只读”的稳定合同更新到报销规约,避免再次 fail-open。 - [x] 运行 task validate、process contract、Trellis governance、敏感检查和 `git diff --check`。 -- [ ] 用户批准提交后,使用中文并引用 `08-28-reimbursement-nonparticipant-readonly-projection`;不推送、不部署、不归档。 -- [ ] 提交完成后更新部署子任务候选依赖并重新编写其完整 PRD,交用户审查部署方案。 +- [x] 用户批准提交后,使用中文并引用 `08-28-reimbursement-nonparticipant-readonly-projection`;业务提交为 `e8d6766`,未推送、未部署、未归档。 +- [x] 提交完成后更新部署子任务候选依赖;完整 PRD 已明确固定回滚、迁移状态和公网角色检查,继续等待用户审查部署方案。 ## 7. 实施发现与验证记录 diff --git a/.trellis/tasks/08-28-reimbursement-nonparticipant-readonly-projection/task.json b/.trellis/tasks/08-28-reimbursement-nonparticipant-readonly-projection/task.json index 46488566..07c2168b 100644 --- a/.trellis/tasks/08-28-reimbursement-nonparticipant-readonly-projection/task.json +++ b/.trellis/tasks/08-28-reimbursement-nonparticipant-readonly-projection/task.json @@ -15,7 +15,7 @@ "branch": null, "base_branch": "main", "worktree_path": null, - "commit": null, + "commit": "e8d6766", "pr_url": null, "subtasks": [], "children": [], @@ -27,6 +27,6 @@ "server/src/routes/reimbursements.js", "server/src/routes/invoicePool.js" ], - "notes": "阻断 08-28-reimbursement-detail-material-preview-deploy:部署候选不再固定为 174cb7a,须待本任务实施、复核和提交后更新为包含两轮修复的新基线。", + "notes": "实施与独立只读权限复核 PASS,业务提交为 e8d6766;同时补齐 precheck 对象级读授权。未推送、未部署、未归档,部署仍须单独批准。", "meta": {} -} \ No newline at end of file +}