Why: preserve project direction across tasks and require grounded next-task recommendations. Evidence: the generated task-card regression fails before the template update and passes afterward; original SELF receipts are in the task card. Impact: document the planning entrypoint and extend task records without granting new-task execution rights. Refs: .task/feature-goal-continuity.md; policy/delivery.md
3.1 KiB
3.1 KiB
CLI/git 门禁能力矩阵
适配对象:通过 shell/git 操作本仓的执行者。要求来自固定的 Development-Guidelines
standards/tool-adaptation.md 与根 AGENTS.md;本表登记机制范围,不复制另一套规则。
当前修订为治理可靠性修复候选;实际验证记录见 .task/feature-governance-reliability.md
及其关联 PR。历史 19/19 临时测试不代替本次回归。
| 要求 | 执行能力及范围 | 机制 | 复验入口 |
|---|---|---|---|
| A1 启动 | 本地命令阻断;执行者首次调用仍属 manual | precheck 区分忙/落后/远端未核实;start 验证首次收据 | tests/test_task.py、tests/test_evidence.py |
| A2 同步 | 本地命令阻断;最终准入由平台承担 | 合并父仓、保护组件分支、物化固定指针、递归核对 | tests/test_task.py、make test-worktree |
| A3 集成分支 | 本地提交闸;平台状态须独立核验 | pre-commit 拒绝 main/master 与坏分支名 | 本地 hook 负例;远端缺 CI/陈旧候选/直推等负例另验 |
| A4 提交格式 | 主题行 enforced(local),body manual | commit-msg 校验宽度/句点;任务工具生成四段 body | tests/test_task.py;人工核对 PR/卡片同源 |
| A5 回收 | 本地命令检查;写者退出由 owner 确认 | 登记根目录、锁/操作状态、父子仓与唯一文件、合入核验 | tests/test_task.py |
| A6 秘密 | 本地脱敏及 CI 获取边界;权限与宿主隔离另验 | 命令/输出/摘要脱敏,凭据不持久写 Git 配置 | tests/test_evidence.py、tests/test_ci_credentials.py |
| A7 证据 | 本地 SELF 收据;外部来源独立核验 | 首次捕获、完整脱敏输出/摘要、对象记录、原样导入 | tests/test_evidence.py;CI/审阅链接另核 |
| A8 阶段评审与迭代 | manual;模板和提示不构成批准身份校验或全流程阻断 | policy/delivery.md;任务卡记录需求、方案/计划、评审与试验迭代;post-merge 默认仅提示 | tests/test_task.py 核对模板及钩子不自动写入;人工核对批准范围和版本 |
| A9 长期方向与后续任务 | manual;模板不校验规划有效性或自动调度任务 | policy/delivery.md;PROJECT.md 提供规划入口,任务卡关联规划/里程碑并记录下一步建议 | tests/test_task.py 核对生成字段与未授权默认值;人工核对当前规划、进展、重复任务和建议依据 |
失败处理
网络不可达、引用缺失、必要解释器不可用均显式失败,不能给 READY 或同步成功。 命令非零、管道失败及证据写入失败返回非零;保留已有收据,不覆盖历史结果。 工作区回收被拒时保留现场;本地及远端回收分开报告。具体操作见 开发门禁。
平台与历史证据
2026-09-30 记录曾报告 11 个组合仓 main 已启用禁直推与陈旧候选保护;这是历史结论, 本次代码/文档修复不据此认定当前远端准入有效。正式审核仍须核验当前配置和匹配负例, 与本地回归分开记录。机制升级只复用未变化范围的证据。