| event_payload |
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"95d9793f80ea584ebb999543fbe94e9597897fe6","after":"69e687203ec23bd576dd7610db6d5db1f2197f6e","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/95d9793f80ea584ebb999543fbe94e9597897fe6...69e687203ec23bd576dd7610db6d5db1f2197f6e","commits":[{"id":"69e687203ec23bd576dd7610db6d5db1f2197f6e","message":"chore(reports): refresh clean static evidence @ b6df6d3(Mx-2 / Mx-6 后:runtime 336 / UI 5 绑定 879df4e;地板 336)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/69e687203ec23bd576dd7610db6d5db1f2197f6e","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-12T00:21:28-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","reports/release-manifest.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":"b6df6d321336de2cd8b36b517e4a2ca5ca25b31b","message":"docs(runtime): record clean commit acceptance @ 879df4e(runtime 336 / UI 5 / 差分 0,七 profile 单启合成模块端口形状;地板收紧 testsPassed 336)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/b6df6d321336de2cd8b36b517e4a2ca5ca25b31b","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-12T00:20:50-07:00","added":[],"removed":[],"modified":["runtime/CLAUDE.md","runtime/reports/baseline.json","runtime/reports/conformance-differential.latest.json","runtime/reports/runtime-acceptance.latest.json","runtime/reports/ui-acceptance.latest.json"]},{"id":"879df4eaf2c1917170d5c25afbcd5dd76bd2e0dd","message":"feat(modules): M2 / M3 / M5 / M6 端口失败关闭形状 + 七模块作业处理器接入描述符(开发计划 §3A Mx-1 端口/作业部分、Mx-2、Mx-6)\n\n- @juhai/module-kit:PlatformPortUnavailableError(code PLATFORM_PORT_UNAVAILABLE:有提供方但失败关闭)、PlatformPortRequestError\n (PLATFORM_PORT_INVALID_REQUEST:输入不符内核 zod 契约)、shapeJobHandlers(id, jobs)(kind = jobKind,入参任意对象,执行终态拒绝 JOB_NOT_IMPLEMENTED)。\n- 端口形状(输入先经内核 schema,畸形即 RequestError):M3 permission-shape 永不抛错、无租户 NO_TENANT_CONTEXT、其余 POLICY_UNAVAILABLE;\n M2 credential-shape 拒绝新租约 CREDENTIAL_BACKEND_UNAVAILABLE;M5 fact-shape 拒绝受理 FACT_INTAKE_UNAVAILABLE(不生成 factId);\n M6 audit-shape AUDIT_SINK_UNAVAILABLE(调用方回滚)。四模块 package.json 加 @juhai/kernel 0.16.1 exact pin。\n- 七模块描述符:ports 工厂(四模块)+ jobHandlers = shapeJobHandlers(identity 壳包亦登记终态拒绝形状);modules.json 未改。\n- api-nestjs mapPlatformPortError:PLATFORM_PORT_UNAVAILABLE → 503(带 reasonCode)、PLATFORM_PORT_INVALID_REQUEST → 400(带 issues)。\n- platform-tests:夹具增 rejecting 画像;port/modules.test.ts 让四模块 shape 提供方跑同一套端口一致性夹具(6 例)。\n- 测试:kit 9、credential 17、permission 33、fact 22、audit 31、scope 16、ai-gateway 12、platform-tests 20(+11 todo)、api-nestjs 单测 13;\n runtime 静态门禁 14 项 + lint + typecheck 通过。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/879df4eaf2c1917170d5c25afbcd5dd76bd2e0dd","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-12T00:18:30-07:00","added":["runtime/modules/audit/src/ports/audit-sink.port.test.ts","runtime/modules/audit/src/ports/audit-sink.port.ts","runtime/modules/credential/src/ports/service-credential.port.test.ts","runtime/modules/credential/src/ports/service-credential.port.ts","runtime/modules/fact/src/ports/fact-export.port.test.ts","runtime/modules/fact/src/ports/fact-export.port.ts","runtime/modules/permission/src/ports/permission-decision.port.test.ts","runtime/modules/permission/src/ports/permission-decision.port.ts","runtime/test/port/modules.test.ts"],"removed":[],"modified":["runtime/apps/api-nestjs/src/common/platform-errors.ts","runtime/modules/ai-gateway/src/index.ts","runtime/modules/audit/package.json","runtime/modules/audit/src/index.ts","runtime/modules/credential/package.json","runtime/modules/credential/src/index.ts","runtime/modules/fact/package.json","runtime/modules/fact/src/index.ts","runtime/modules/identity/src/index.ts","runtime/modules/kit/src/index.test.ts","runtime/modules/kit/src/index.ts","runtime/modules/permission/package.json","runtime/modules/permission/src/index.ts","runtime/modules/scope/src/index.ts","runtime/pnpm-lock.yaml","runtime/test/package.json","runtime/test/port/platform-ports.conformance.ts"]},{"id":"520f396d1fceec60786d49c1c26ba7cdeff5956a","message":"chore(reports): refresh clean static evidence @ 8b082f0(Mx-3 Planner 迁入后:runtime 320 / UI 5 绑定 f7a0cbb;地板 320)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/520f396d1fceec60786d49c1c26ba7cdeff5956a","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-12T00:08:29-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","reports/release-manifest.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":"8b082f05ef2292253e7994c6b7d5a0389d4db8a9","message":"docs(runtime): record clean commit acceptance @ f7a0cbb(runtime 320 / UI 5 / 差分 0,含五模块 Planner 107 例;地板收紧 testsPassed 320)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/8b082f05ef2292253e7994c6b7d5a0389d4db8a9","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-12T00:07:55-07:00","added":[],"removed":[],"modified":["runtime/CLAUDE.md","runtime/reports/baseline.json","runtime/reports/conformance-differential.latest.json","runtime/reports/runtime-acceptance.latest.json","runtime/reports/ui-acceptance.latest.json"]}],"total_commits":0,"head_commit":{"id":"69e687203ec23bd576dd7610db6d5db1f2197f6e","message":"chore(reports): refresh clean static evidence @ b6df6d3(Mx-2 / Mx-6 后:runtime 336 / UI 5 绑定 879df4e;地板 336)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/69e687203ec23bd576dd7610db6d5db1f2197f6e","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-12T00:21:28-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","reports/release-manifest.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":2095,"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":1,"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-12T15:08:01+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"}}... |