用途:在目标仓库的 harness.yaml 里声明任务完成门(completion gate),把本地测试、人工签字、CI 结果与合并检查变成提交/完成时的正式见证。
主要能力:四种适配器——local-command 在沙箱中执行 shell 命令,退出码 0 为 pass;manual-attest 由人通过 ha task attest <task-id> --gate <gate-id> --result pass --note "..." 签注;github-actions 按 settings.ci.workflows 中的 workflow 拉取 CI 见证;none 显式移除该门需求。治理字段 mandatorySignoff 要求自动见证后再人工签注(双控),allowOverride 允许任务 owner 用 --mode override --rationale 特批已记录的失败。
使用方式:在 harness.yaml 的 settings.gates 下按缩进规则书写,字段集须精确匹配各适配器(local-command 需 appliesTo、command;github-actions 需 appliesTo、branch、event、coverage、selection;manual-attest 仅 appliesTo)。appliesTo 取 submission、code 或 artifacts,不适用时记 not_applicable。改完用 ha settings show 回读校验;契约随提交冻结,事后改 YAML 不影响在审 cut。
限制:自定义 gate id 需配套 preset 声明,仅改 settings.gates 不会被任何任务要求;code-doc-reconciliation 只能映射 none;local-command 需可读的提交且沙箱无 .git 与 HOME,超时 10 分钟;override 与签注绑定 commitSha 与 submissionDigest,amend 后作废;runtime executor 不能签注或特批。