| event_payload |
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"727044996fde65045ab4ca56a060c0a32fa24c0a","after":"517414d8806adba9ad700d6508e6c563513a583e","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/727044996fde65045ab4ca56a060c0a32fa24c0a...517414d8806adba9ad700d6508e6c563513a583e","commits":[{"id":"517414d8806adba9ad700d6508e6c563513a583e","message":"chore(reports): rebind after merging main into the fact-read pick\n\n合并 main(6 提交)后根 pnpm check exit 0,31 项。\n\n合并过程记录两件事:\n1. runtime/clients/fact/README.md 两边都新建过——main 侧是 U-31/34 的中文接入契约,\n 本分支侧是 3074b75 的英文 reader 文档。两者内容不重叠,合并而非二选一:\n 接入契约保持 1—4 节,reader 文档作为第 5 节并入。\n2. 合并后 module-fact 构建失败(FactReadRuntime 未导出)。根因不是合并本身:\n modules/* 用 composite:true,包根的 tsconfig.tsbuildinfo 残留让 tsc -p 认为无变化,\n exit 0 却不产出更新后的 dist/index.d.ts;turbo 随后把这份**空产出缓存**了,\n 于是后续每次构建都从缓存恢复错误的 dist——删 dist 重建也没用,因为 tsbuildinfo 还在。\n 清掉 runtime 下全部 tsconfig.tsbuildinfo + turbo run build --force 后恢复正常。\n 这是 C69 形态在本仓的复现,且被 turbo 缓存放大了一层。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/517414d8806adba9ad700d6508e6c563513a583e","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-14T19:26:21-07:00","added":[],"removed":[],"modified":["reports/caddy.latest.json","reports/catalog-drift.latest.json","reports/catalog-reconciliation.latest.json","reports/evidence-freshness.latest.json","reports/facts.latest.json","reports/fixtures.latest.json","reports/migration-decs.latest.json","reports/module-imports.latest.json","runtime/reports/agent-adapters.latest.json","runtime/reports/conformance-matrix.latest.json","runtime/reports/contract-consumers.latest.json","runtime/reports/docs-truth.latest.json","runtime/reports/dual-backend-parity.latest.json","runtime/reports/fork-readiness.latest.json","runtime/reports/governance-docs.latest.json","runtime/reports/governance-rules.latest.json","runtime/reports/governance-status.latest.json","runtime/reports/governance.latest.json","runtime/reports/migrations.latest.json","runtime/reports/naming.latest.json","runtime/reports/runtime-governance.latest.json","runtime/reports/schema-sync.latest.json","runtime/reports/statemachine-write-guard.latest.json","runtime/reports/validation-source.latest.json"]},{"id":"2a3471d25243924c1d27cf96654b8d4fa33978ca","message":"Merge branch 'main' into feat/fact-read-http-pick\n\n# Conflicts:\n#\treports/caddy.latest.json\n#\treports/catalog-drift.latest.json\n#\treports/catalog-reconciliation.latest.json\n#\treports/facts.latest.json\n#\treports/fixtures.latest.json\n#\treports/migration-decs.latest.json\n#\treports/module-imports.latest.json\n#\truntime/clients/fact/README.md\n#\truntime/reports/agent-adapters.latest.json\n#\truntime/reports/conformance-matrix.latest.json\n#\truntime/reports/contract-consumers.latest.json\n#\truntime/reports/docs-truth.latest.json\n#\truntime/reports/dual-backend-parity.latest.json\n#\truntime/reports/fork-readiness.latest.json\n#\truntime/reports/governance-docs.latest.json\n#\truntime/reports/governance-rules.latest.json\n#\truntime/reports/governance-status.latest.json\n#\truntime/reports/governance.latest.json\n#\truntime/reports/migrations.latest.json\n#\truntime/reports/naming.latest.json\n#\truntime/reports/runtime-governance.latest.json\n#\truntime/reports/schema-sync.latest.json\n#\truntime/reports/statemachine-write-guard.latest.json\n#\truntime/reports/validation-source.latest.json\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/2a3471d25243924c1d27cf96654b8d4fa33978ca","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-14T19:23:23-07:00","added":["docs/B-7-dev常驻运行时启动记录-2026-09-14.md","governance/check-evidence-freshness.mjs","governance/evidence-scopes.json","governance/test/check-evidence-freshness.test.mjs","governance/test/check-pins.test.mjs","reports/evidence-freshness.latest.json","stack/overlays/ai-gateway-db.yaml","stack/reports/ai-gateway-up.2026-09-14.json","stack/reports/runtime-up.2026-09-14.json"],"removed":[],"modified":["CLAUDE.md","docs/runbook.md","governance/README.md","governance/bin/cli.mjs","governance/check-pins.mjs","governance/package.json","package.json","reports/caddy.latest.json","reports/catalog-drift.latest.json","reports/catalog-reconciliation.latest.json","reports/facts.latest.json","reports/fixtures.latest.json","reports/migration-decs.latest.json","reports/module-imports.latest.json","runtime/clients/README.md","runtime/clients/fact/README.md","runtime/clients/fact/package.json","runtime/reports/agent-adapters.latest.json","runtime/reports/conformance-matrix.latest.json","runtime/reports/contract-consumers.latest.json","runtime/reports/docs-truth.latest.json","runtime/reports/dual-backend-parity.latest.json","runtime/reports/fork-readiness.latest.json","runtime/reports/governance-docs.latest.json","runtime/reports/governance-rules.latest.json","runtime/reports/governance-status.latest.json","runtime/reports/governance.latest.json","runtime/reports/migrations.latest.json","runtime/reports/naming.latest.json","runtime/reports/runtime-governance.latest.json","runtime/reports/schema-sync.latest.json","runtime/reports/statemachine-write-guard.latest.json","runtime/reports/validation-source.latest.json","stack/README.md","stack/compose.yaml","stack/overlays/dev.yaml","stack/provision/redis-dbs.json"]},{"id":"176c33149337c2eb03a0cdfb11ed910f75700e0c","message":"chore(reports): rebind gate reports to the fact-read pick\n\n本分支只从 codex/ms3-fact-read-http 摘取 3074b75(fact-read),不带该分支的\nscope / permission-invalidation / OpenBao 工作。九处冲突按同一规则解决:只保留\nfact-read,剔除 scope/permission 引用,证据数字与棘轮取 HEAD——本分支尚未跑过\nruntime/UI 验收,不得引用原分支 clean 3260390 的 779 tests / 97 项主线专项。\n\n本地验证:turbo typecheck --force 28/28(0 cached,非缓存命中);\n@juhai/client-fact 13/13(含新增 reader.test.ts 10 例);\n@juhai/module-fact 42/42(含新增 read-runtime.test.ts 4 例);\n根 pnpm check exit 0(30 项,check:pins 36 处 / 34 个 package.json)。\n\n未跑:e2e/fact-read-http.test.ts(需真实 M5 库 + JWT 环境)与 runtime/UI 整轮——\nmainline 清单与地板已登记该套件 10 例,但本分支没有它的运行证据。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/176c33149337c2eb03a0cdfb11ed910f75700e0c","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-14T18:58:31-07:00","added":[],"removed":[],"modified":["reports/caddy.latest.json","reports/catalog-drift.latest.json","reports/catalog-reconciliation.latest.json","reports/facts.latest.json","reports/fixtures.latest.json","reports/migration-decs.latest.json","reports/module-imports.latest.json","runtime/reports/agent-adapters.latest.json","runtime/reports/conformance-matrix.latest.json","runtime/reports/contract-consumers.latest.json","runtime/reports/docs-truth.latest.json","runtime/reports/dual-backend-parity.latest.json","runtime/reports/fork-readiness.latest.json","runtime/reports/governance-docs.latest.json","runtime/reports/governance-rules.latest.json","runtime/reports/governance-status.latest.json","runtime/reports/governance.latest.json","runtime/reports/migrations.latest.json","runtime/reports/naming.latest.json","runtime/reports/runtime-governance.latest.json","runtime/reports/schema-sync.latest.json","runtime/reports/statemachine-write-guard.latest.json","runtime/reports/validation-source.latest.json"]},{"id":"a45389784a7c399a941306eb1454ff456e97ebcb","message":"docs(pf-15): record the evidence binding of the adversarial round\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/a45389784a7c399a941306eb1454ff456e97ebcb","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:13-07:00","added":[],"removed":[],"modified":["docs/PF-15读面对抗性验收-2026-09-14.md"]},{"id":"96c108dc65e3ce9838b554cafdf428023be0fd25","message":"chore(reports): bind the read-surface adversarial evidence @ 830291c\n\nMainline acceptance re-run on an isolated compose project\n(enterprise-platform-ms23-ci: its own Postgres with tmpfs data, Redis and\nRedpanda), on databases created fresh for this round, so no state from the\nimplementing session took part: fact-read-http 11, fact-persistence 11,\naudit-tamper 8, mainline-revocation-chaos 18 — validateMainlineReport now\nreturns no errors, which it did not before this round (the floor had been\nraised to require the read suite while the stored report still had three).\nRevocation stays partial with employment Scope explicit, p95 5043 ms.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/96c108dc65e3ce9838b554cafdf428023be0fd25","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:02-07:00","added":[],"removed":[],"modified":["reports/caddy.latest.json","reports/catalog-drift.latest.json","reports/catalog-reconciliation.latest.json","reports/facts.latest.json","reports/fixtures.latest.json","reports/mainline-acceptance.latest.json","reports/migration-decs.latest.json","reports/module-imports.latest.json","reports/revocation-sla.latest.json","runtime/reports/agent-adapters.latest.json","runtime/reports/conformance-matrix.latest.json","runtime/reports/contract-consumers.latest.json","runtime/reports/docs-truth.latest.json","runtime/reports/dual-backend-parity.latest.json","runtime/reports/fork-readiness.latest.json","runtime/reports/governance-docs.latest.json","runtime/reports/governance-rules.latest.json","runtime/reports/governance-status.latest.json","runtime/reports/governance.latest.json","runtime/reports/migrations.latest.json","runtime/reports/naming.latest.json","runtime/reports/runtime-governance.latest.json","runtime/reports/schema-sync.latest.json","runtime/reports/statemachine-write-guard.latest.json","runtime/reports/validation-source.latest.json"]}],"total_commits":0,"head_commit":{"id":"517414d8806adba9ad700d6508e6c563513a583e","message":"chore(reports): rebind after merging main into the fact-read pick\n\n合并 main(6 提交)后根 pnpm check exit 0,31 项。\n\n合并过程记录两件事:\n1. runtime/clients/fact/README.md 两边都新建过——main 侧是 U-31/34 的中文接入契约,\n 本分支侧是 3074b75 的英文 reader 文档。两者内容不重叠,合并而非二选一:\n 接入契约保持 1—4 节,reader 文档作为第 5 节并入。\n2. 合并后 module-fact 构建失败(FactReadRuntime 未导出)。根因不是合并本身:\n modules/* 用 composite:true,包根的 tsconfig.tsbuildinfo 残留让 tsc -p 认为无变化,\n exit 0 却不产出更新后的 dist/index.d.ts;turbo 随后把这份**空产出缓存**了,\n 于是后续每次构建都从缓存恢复错误的 dist——删 dist 重建也没用,因为 tsbuildinfo 还在。\n 清掉 runtime 下全部 tsconfig.tsbuildinfo + turbo run build --force 后恢复正常。\n 这是 C69 形态在本仓的复现,且被 turbo 缓存放大了一层。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/517414d8806adba9ad700d6508e6c563513a583e","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-14T19:26:21-07:00","added":[],"removed":[],"modified":["reports/caddy.latest.json","reports/catalog-drift.latest.json","reports/catalog-reconciliation.latest.json","reports/evidence-freshness.latest.json","reports/facts.latest.json","reports/fixtures.latest.json","reports/migration-decs.latest.json","reports/module-imports.latest.json","runtime/reports/agent-adapters.latest.json","runtime/reports/conformance-matrix.latest.json","runtime/reports/contract-consumers.latest.json","runtime/reports/docs-truth.latest.json","runtime/reports/dual-backend-parity.latest.json","runtime/reports/fork-readiness.latest.json","runtime/reports/governance-docs.latest.json","runtime/reports/governance-rules.latest.json","runtime/reports/governance-status.latest.json","runtime/reports/governance.latest.json","runtime/reports/migrations.latest.json","runtime/reports/naming.latest.json","runtime/reports/runtime-governance.latest.json","runtime/reports/schema-sync.latest.json","runtime/reports/statemachine-write-guard.latest.json","runtime/reports/validation-source.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":13444,"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":32,"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-15T10:22:44+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"}}... |