| event_payload |
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"1d84966ad54d59cdf4644114c40e86f4cec7cbb5","after":"30565bfa7709e7905e2050f43b8a5d6595158069","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/1d84966ad54d59cdf4644114c40e86f4cec7cbb5...30565bfa7709e7905e2050f43b8a5d6595158069","commits":[{"id":"30565bfa7709e7905e2050f43b8a5d6595158069","message":"fix(migration): adapt contracts and governance gates to the new directory layout\n\nThe workspace moved from 企业产品/企业/企业应用/ to 企业AI应用开发群/ and the\nfive layers were renamed after the architecture diagram. Catalog registrations\n(code_truth / evidence / repository / directory) now point at the new paths.\n\nGate changes:\n- platform-project-catalog schema: directory pattern is now\n ^(企业控制面/[^/]+|数字员工OS|工程基础框架)$ — platform projects used to sit\n under one parent (基础/) and are now spread across 企业控制面/ plus two\n layers that each hold a single project\n- governance-linter scans 企业控制面/ instead of 基础/, excluding the host repo\n (enterprise-platform) and the fact-model repo\n- check-catalog-drift: same prefix and exclusion set\n- WORKSPACE_ROOT_MARKERS: ['基础','doc'] → ['平台治理','企业控制面']. The old\n pair now matches 平台治理/ itself, so a mirror workspace's intermediate\n directory was being taken for the root\n- tests resolve workspace-relative paths through baseline.workspaceRoot\n\n104/104 contracts tests, 193/193 governance tests, check back to its\n4-issue baseline.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/30565bfa7709e7905e2050f43b8a5d6595158069","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-14T21:45:37-07:00","added":[],"removed":[],"modified":["CLAUDE.md","contracts/README.md","contracts/SOURCE.md","contracts/apps/base-framework.draft.json","contracts/apps/digital-employee-os.draft.json","contracts/apps/enterprise-idp.draft.json","contracts/apps/execution-control.draft.json","contracts/apps/hi-atelier.draft.json","contracts/apps/juhai-quotation-system.draft.json","contracts/apps/juhai.devicecloud.draft.json","contracts/apps/juhai.hr.draft.json","contracts/apps/juhai.knowledgecloud.draft.json","contracts/apps/juhai.service.draft.json","contracts/apps/permission-platform.draft.json","contracts/apps/yggdrasil.local-life.draft.json","contracts/catalogs/decisions.json","contracts/catalogs/platform-projects.json","contracts/schemas/platform-project-catalog.v1.schema.json","contracts/scripts/check-impact-graph.mjs","contracts/scripts/governance-linter.mjs","contracts/scripts/workspace-root.mjs","contracts/test/governance-linter.test.mjs","contracts/test/workspace-optional.test.mjs","contracts/test/workspace-root.test.mjs","governance/catalog-map.json","governance/check-catalog-drift.mjs","governance/check-facts.mjs","governance/check-fixtures.mjs","governance/check-modules.mjs","governance/fixtures/dec-039.suite.json","governance/test/check-catalog-drift.test.mjs","governance/test/check-catalog-reconciliation.test.mjs","reports/caddy.latest.json","reports/catalog-drift.latest.json","reports/facts.latest.json","reports/migration-decs.latest.json","reports/module-imports.latest.json"]}],"total_commits":0,"head_commit":{"id":"30565bfa7709e7905e2050f43b8a5d6595158069","message":"fix(migration): adapt contracts and governance gates to the new directory layout\n\nThe workspace moved from 企业产品/企业/企业应用/ to 企业AI应用开发群/ and the\nfive layers were renamed after the architecture diagram. Catalog registrations\n(code_truth / evidence / repository / directory) now point at the new paths.\n\nGate changes:\n- platform-project-catalog schema: directory pattern is now\n ^(企业控制面/[^/]+|数字员工OS|工程基础框架)$ — platform projects used to sit\n under one parent (基础/) and are now spread across 企业控制面/ plus two\n layers that each hold a single project\n- governance-linter scans 企业控制面/ instead of 基础/, excluding the host repo\n (enterprise-platform) and the fact-model repo\n- check-catalog-drift: same prefix and exclusion set\n- WORKSPACE_ROOT_MARKERS: ['基础','doc'] → ['平台治理','企业控制面']. The old\n pair now matches 平台治理/ itself, so a mirror workspace's intermediate\n directory was being taken for the root\n- tests resolve workspace-relative paths through baseline.workspaceRoot\n\n104/104 contracts tests, 193/193 governance tests, check back to its\n4-issue baseline.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/30565bfa7709e7905e2050f43b8a5d6595158069","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-14T21:45:37-07:00","added":[],"removed":[],"modified":["CLAUDE.md","contracts/README.md","contracts/SOURCE.md","contracts/apps/base-framework.draft.json","contracts/apps/digital-employee-os.draft.json","contracts/apps/enterprise-idp.draft.json","contracts/apps/execution-control.draft.json","contracts/apps/hi-atelier.draft.json","contracts/apps/juhai-quotation-system.draft.json","contracts/apps/juhai.devicecloud.draft.json","contracts/apps/juhai.hr.draft.json","contracts/apps/juhai.knowledgecloud.draft.json","contracts/apps/juhai.service.draft.json","contracts/apps/permission-platform.draft.json","contracts/apps/yggdrasil.local-life.draft.json","contracts/catalogs/decisions.json","contracts/catalogs/platform-projects.json","contracts/schemas/platform-project-catalog.v1.schema.json","contracts/scripts/check-impact-graph.mjs","contracts/scripts/governance-linter.mjs","contracts/scripts/workspace-root.mjs","contracts/test/governance-linter.test.mjs","contracts/test/workspace-optional.test.mjs","contracts/test/workspace-root.test.mjs","governance/catalog-map.json","governance/check-catalog-drift.mjs","governance/check-facts.mjs","governance/check-fixtures.mjs","governance/check-modules.mjs","governance/fixtures/dec-039.suite.json","governance/test/check-catalog-drift.test.mjs","governance/test/check-catalog-reconciliation.test.mjs","reports/caddy.latest.json","reports/catalog-drift.latest.json","reports/facts.latest.json","reports/migration-decs.latest.json","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":13573,"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":42,"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-15T12:14:41+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"}}... |