Files
Agent-System-Dev/policy/facts.md
T

2.9 KiB
Raw Blame History

项目外部事实登记表

规则见 AGENTS.md「证据与验证门禁」与 deps/development-guidelines/standards/verification.md「声明与证据来源」。

  • 每条事实 = 陈述 + 验证命令 + last_verified + TTL;引用前必须先执行其验证命令(外部事实零信任)。
  • 过期(>TTL)必须重验后更新:make facts-verify 逐条重验,make facts-verify ARGS=--update 把 PASS 项的 last_verified 刷新为当天并写回本表(随 PR 合入)。
  • 表内验证命令不得含竖线 |(保持表格与解析可核);新增事实先实测再登记,不得凭记忆填日期。
  • precheck 的 [facts] 行报告过期项;AGENTS.md「Gitea 与 Git 访问事实」节为本表的叙述版。
  • 凭据类验证命令不得把凭据展开进命令行、输出或证据:经 scripts/facts-verify.sh 探针子命令在进程内读取并发送。
  • 旧端点 git-panel.u1680832.nyat.app:30319 已退役,一律不得使用——这是政策禁令,不随 F4 核验结果变化; F4 只登记可观测的 TLS 握手失败现象,DNS 失败、超时、连接失败或握手成功都判 FAIL,不刷新 last_verified。
  • F4 现有 last_verified(2026-10-14)是历史日期,来自旧的宽泛检查,不证明当前 TLS 层握手失败判据; 经该判据独立重验前不得当作已核实。
ID 事实 验证命令 last_verified TTL(天)
F1 Gitea Web/API 可达:https://git-home.u1680832.nyat.app:30319(1.27.3) curl -fsS -m 10 https://git-home.u1680832.nyat.app:30319/api/v1/version 2026-10-14 30
F2 API token 存在且可用(值在 ~/.secrets/gitea,HOME/IMC 两段各一组 - ACCESS_TOKEN=…,本条取 HOME 段;不入仓不回显,不进子进程 argv) bash scripts/facts-verify.sh api-token https://git-home.u1680832.nyat.app:30319/api/v1/user 2026-10-14 30
F3 Git over SSH 可达:ssh://git@git-ssh.u1680832.nyat.app:31411/weichen/<Repo>.git(key ~/.ssh/home_gitea) GIT_SSH_COMMAND="ssh -i ~/.ssh/home_gitea -o BatchMode=yes" git ls-remote ssh://git@git-ssh.u1680832.nyat.app:31411/weichen/Development-Guidelines.git HEAD 2026-10-14 30
F4 旧端点 git-panel.u1680832.nyat.app:30319 TCP 可连通但 TLS 握手失败(仅 TLS 层握手错误判 PASS) bash scripts/facts-verify.sh tls-handshake-fails git-panel.u1680832.nyat.app 30319 2026-10-14 180
F5 基座 users 表存有姓名(name 列,CreateAccount/ListUsersAdmin 读写;EXT-19 目录自 P3 起向授权管理读面下发) cd modules/backend && go test ./internal/app/ -run TestInprocHostSearchAccounts -count=1 2026-10-14 180
F6 基座账号无停用位(users 表无 disabled;EXT-19 Valid 恒为存在性)——停用机制未实现,不得当已具备 cd modules/backend && ! grep -rn -e disabled -e Disabled internal/store/auth.go pkg/extension/extension.go 2026-10-14 180