| event_payload |
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9807535a2b81bc14a35ffc306d7b1b0910f0f99f","after":"35e44a1d97cad7b20404416743167de2aa15c277","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/9807535a2b81bc14a35ffc306d7b1b0910f0f99f...35e44a1d97cad7b20404416743167de2aa15c277","commits":[{"id":"35e44a1d97cad7b20404416743167de2aa15c277","message":"chore(reports): bind check:evidence baseline @ 5f0473b\n\n13 份已登记报告新鲜,5 条 warn(port-conformance、runtime/ui 验收、\nrevocation-sla、mainline-acceptance —— 都是需要真实库/容器才能重跑的,\n已在 evidence-scopes.json 写明 promoteBy),32 份未登记只计 info。\nmodule-imports 顺带在干净树重跑回绑(315 文件 0 违规)。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/35e44a1d97cad7b20404416743167de2aa15c277","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-09-14T10:37:16-07:00","added":["reports/evidence-freshness.latest.json"],"removed":[],"modified":["reports/module-imports.latest.json"]},{"id":"5f0473b6d7bf2089d3715c6f637320d6d96ac862","message":"feat(governance): gate machine-evidence freshness by scope, not commit distance\n\n仓纪律 5 只要求报告绑 gitSha + worktreeDirty=false,没有任何检查关心那个 SHA\n相对 HEAD 是否已经过期;runtime 的 check:docs-truth 断言 N 也只比对「文档声明的\nSHA == 报告 provenance 的 SHA」。于是 CLAUDE.md 的「当前状态」可以逐字引用一份\n早被后续提交推翻的报告,而全链门禁一片绿。\n\n2026-09-14 实锤:main 上 stack-image-pins.latest.json 绑 7e279c5,其后\nstack/compose.yaml 已被改(ai-gateway 去掉空 DATABASE_URL),那份「12 镜像\n0 未锁」的结论形式上已失效,无人察觉。\n\n判据特意不用「落后几个提交」——实测那样会误报 38 条(runtime 验收落后 32 个\n提交,作用域却一行没动)。判据是:绑定 SHA → HEAD 之间有没有改到该报告自己\n覆盖的文件,作用域逐条登记在 governance/evidence-scopes.json。\n\n- severity 逐条登记:静态检查 error,需真实库/容器重跑的验收先 warn 并写\n promoteBy,覆盖面与严格度都按登记涨,不搞一刀切。\n- 脏绑报告在干净树上判红(说明脏绑被提交了),在脏树上只 warn(改到一半)。\n- 例外须带 reason/recordedAt/resolveBy(G-13),失效判 EXCEPTION_STALE。\n- 未登记的报告只计 SCOPE_UNDECLARED(info),不判红。\n\n10 个用例,含一个真实 git 仓集成用例钉住核心判据:作用域外连改三个提交仍绿,\n作用域内一改即红。放在根 check 链尾。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/5f0473b6d7bf2089d3715c6f637320d6d96ac862","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-09-14T10:36:33-07:00","added":["governance/check-evidence-freshness.mjs","governance/evidence-scopes.json","governance/test/check-evidence-freshness.test.mjs"],"removed":[],"modified":["governance/README.md","governance/bin/cli.mjs","governance/package.json","package.json"]}],"total_commits":0,"head_commit":{"id":"35e44a1d97cad7b20404416743167de2aa15c277","message":"chore(reports): bind check:evidence baseline @ 5f0473b\n\n13 份已登记报告新鲜,5 条 warn(port-conformance、runtime/ui 验收、\nrevocation-sla、mainline-acceptance —— 都是需要真实库/容器才能重跑的,\n已在 evidence-scopes.json 写明 promoteBy),32 份未登记只计 info。\nmodule-imports 顺带在干净树重跑回绑(315 文件 0 违规)。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/35e44a1d97cad7b20404416743167de2aa15c277","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-09-14T10:37:16-07:00","added":["reports/evidence-freshness.latest.json"],"removed":[],"modified":["reports/module-imports.latest.json"]},"repository":{"id":116,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"enterprise-platform","full_name":"luoanwu/enterprise-platform","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":13286,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/enterprise-platform/languages","html_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/enterprise-platform","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/enterprise-platform.git","clone_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":31,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-09-11T07:33:25+08:00","updated_at":"2026-09-15T01:11:25+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":true,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}... |