# R1.3 状态权威报告

## 权威关联

- GitHub 最新 push delivery GUID 是状态关联起点；旧成功日志不能替代最新 delivery。
- GUID 必须精确关联持久 inbox record；只有 `state=committed` 且 record result 证明 GitHub head，才视为 durable committed。
- 重复 HTTP delivery 必须展示 journal 当前真实状态；只有 `committed` 可以返回 refs proof，不能把已接收、处理中或失败记录包装成已提交。
- committed 后继续比较实时 Gitea branch 与 `snapshotPrefix/<GitHub head>`。任一不匹配均为 `MATCH=false`、`STALE=true`。
- bridge logs 仅保留为辅助诊断；默认表格改为展示 durable state 和持久 refs proof。

## Bootstrap 时序

- #1760 自身 merge 必然先由旧 bridge 接收，再通过 PaC/GitOps 部署新 durable bridge，因此不能伪造它在新 journal 中存在 record。
- journal 在 PVC 首建时持久保存 `createdAt`。只有 delivery 时间明确早于该时间、且 branch/snapshot 已经精确对齐，状态才标记 `pre-durable-bootstrap` 并允许 rollout 继续；字段 `durableInboxCommitted=false` 保持真实。
- 新 durable contract 的首个端到端证据必须来自下一笔真实业务 PR merge，优先 #1764；禁止空提交、伪 webhook 或手工 redelivery。

## 手工补偿移除

- automatic source authority 开启时，`mirror sync --confirm` 在任何远端 capture 前 fail-closed。
- synthetic webhook test 的远端伪 push/ping mutation 已删除；CLI tombstone 在任何 capture 前返回只读失败。
- 默认顶层帮助、模块帮助、status next 与 repair hints 不再引导 sync/test/repair，只公开 Gitea authority 的只读 status、validate 与 webhook status 入口。

## 测试证据

- status evaluator：8 个场景通过，包括最新失败不被旧成功覆盖、repo 隔离、非 committed 状态、proof mismatch 与 `pre-durable-bootstrap`。
- authority guard：4 个场景通过；manual sync 与 synthetic test 均证明 `mutation=false` 且没有 remote capture，顶层帮助只暴露四个只读 Gitea authority 命令。
- YAML duplicate-key guard 在 Bun YAML 解析前拒绝同一 mapping scope 的重复键，避免静默覆盖配置权威。
