| event_payload |
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"7ca595293cae2a013f38280665e3ad8135c5d3c3","after":"05c96b7f6c43acc654b182a9e08cdd55f02ed8ee","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/7ca595293cae2a013f38280665e3ad8135c5d3c3...05c96b7f6c43acc654b182a9e08cdd55f02ed8ee","commits":[{"id":"05c96b7f6c43acc654b182a9e08cdd55f02ed8ee","message":"chore(reports): runtime 静态门禁(含新增 permission-catalog)与 module-imports / evidence 回绑 @ a51ad37\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/05c96b7f6c43acc654b182a9e08cdd55f02ed8ee","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-17T08:39:35-07:00","added":["runtime/reports/permission-catalog.latest.json"],"removed":[],"modified":["reports/evidence-freshness.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":"a51ad37404e4a474389e5cccc3f6876a0cc18a20","message":"feat(runtime): CHG-019 / P-4 运行时接线——权限目录构建期快照喂装配点,decide 先过目录准入\n\n- scripts/sync-permission-catalog.mjs:把 contracts/catalogs/permissions.json 渲染为 packages/contracts/src/permission-catalog.ts(PERMISSION_CATALOG_ROUTES,57 条 resource:action,带 source sha256);--check 进 runtime check 链(check:permission-catalog,负向已验证:改一条 active 为 draft 即 exit 1),reports/permission-catalog.latest.json 登记进 check:evidence 作用域。\n- module-kit PlatformModuleDeps.permissionCatalog;permission 模块 domain/catalog-admission.ts(CATALOG_UNAVAILABLE / RESOURCE_NOT_IN_CATALOG / RESOURCE_NOT_ACTIVE;生产一律强制,其他环境 PLATFORM_PERMISSION_CATALOG_ENFORCE=1),PermissionStore.decide 在任何租户授权查询之前先过准入;装配点从 @repo/contracts 传入快照。\n- 5 例负向单测;api-nestjs 21 例装配单测、typecheck、check:module-imports、runtime 14 项静态门禁全过。runbook §2 增环境行;缺失清单 P-4 标已接线;runtime/CLAUDE.md 基线表增 permission-catalog 行。真实库下的拒绝用例待 check:runtime 重跑。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/a51ad37404e4a474389e5cccc3f6876a0cc18a20","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-17T08:39:26-07:00","added":["runtime/modules/permission/src/domain/catalog-admission.ts","runtime/modules/permission/test/negative/catalog-admission.test.ts","runtime/packages/contracts/src/permission-catalog.ts","runtime/scripts/sync-permission-catalog.mjs"],"removed":[],"modified":["docs/runbook.md","docs/缺失模块完善清单-2026-09-16.md","governance/evidence-scopes.json","runtime/CLAUDE.md","runtime/apps/api-nestjs/src/platform/platform-ports.module.ts","runtime/modules/kit/src/index.ts","runtime/modules/permission/src/domain/index.ts","runtime/modules/permission/src/index.ts","runtime/modules/permission/src/persistence/permission-store.ts","runtime/package.json","runtime/packages/contracts/src/index.ts"]}],"total_commits":0,"head_commit":{"id":"05c96b7f6c43acc654b182a9e08cdd55f02ed8ee","message":"chore(reports): runtime 静态门禁(含新增 permission-catalog)与 module-imports / evidence 回绑 @ a51ad37\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/05c96b7f6c43acc654b182a9e08cdd55f02ed8ee","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-17T08:39:35-07:00","added":["runtime/reports/permission-catalog.latest.json"],"removed":[],"modified":["reports/evidence-freshness.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":16412,"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-17T23:34:32+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"}}... |