| event_payload |
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"b5b504aec5ab1199aecd415d36c439b993d134e7","after":"9b4210346a7997f20f92d0326848d172f9acc17f","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/b5b504aec5ab1199aecd415d36c439b993d134e7...9b4210346a7997f20f92d0326848d172f9acc17f","commits":[{"id":"9b4210346a7997f20f92d0326848d172f9acc17f","message":"merge: preserve OS identity gates with current main and registry admission\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/9b4210346a7997f20f92d0326848d172f9acc17f","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-10T02:54:00-07:00","added":["app-manifest.json","docs/operations/local-restart-2026-10-08.md","docs/operations/local-web-proxy-repair-2026-09-26.md","docs/operations/platform-dev-e1-usage-export-2026-09-26.md","governance/platform-integration.json","reports/app-manifest.latest.json","scripts/check-app-manifest.mjs"],"removed":["apps/api-fastify/src/plugins/trigger-engine.ts"],"modified":["CLAUDE.md","apps/api-fastify/src/app.ts","apps/api-fastify/src/modules/triggers.service.ts","apps/api-fastify/src/plugins/outbox.ts","apps/api-fastify/src/plugins/queue.ts","apps/api-fastify/test/llm.acceptance.test.ts","apps/api-fastify/test/llm.usage-export.platform-e2e.test.ts","apps/api-fastify/test/product-extension.acceptance.test.ts","apps/api-fastify/test/triggers.integration.test.ts","apps/api-nestjs/src/events/outbox-dispatcher.service.ts","apps/api-nestjs/src/queue/jobs.processor.ts","apps/api-nestjs/src/queue/queue.module.ts","apps/api-nestjs/src/queue/queue.types.ts","apps/api-nestjs/src/triggers/trigger-engine.service.ts","apps/api-nestjs/src/triggers/triggers.module.ts","apps/api-nestjs/test/llm.acceptance.test.ts","apps/api-nestjs/test/llm.usage-export.platform-e2e.test.ts","apps/api-nestjs/test/product-extension.acceptance.test.ts","apps/api-nestjs/test/triggers.integration.test.ts","apps/web/e2e/acceptance.spec.ts","docs/domain/enterprise-control-plane-integration-governance.md","docs/operations/registry-admission-2026-10-10.md","docs/planning/development-blueprint-2026-09-04.md","docs/product-extension-guide.md","governance.registry.json","governance/app-manifest.candidate.json","governance/registry-source-artifact.json","kernel.boundaries.json","kernel.boundaries.lock.json","kernel.downstream.lock.json","kernel.exports.lock.json","kernel.packages.json","kernel.packages.lock.json","kernel.products.json","kernel.products.lock.json","package.json","packages/contracts/src/contracts.test.ts","packages/contracts/src/job.ts","packages/contracts/src/trigger.ts","packages/tool-runtime/package.json","products/juhai.hr/acceptance/runtime-suite.mjs","products/juhai.hr/acceptance/web-workspace.acceptance.spec.ts","products/juhai.hr/host/web/features/hr/api/hr-api.ts","products/juhai.hr/host/web/features/hr/components/HrDeliveryAuditWorkbench.tsx","products/juhai.hr/host/web/features/hr/components/HrMasterDataWorkbench.tsx","products/juhai.hr/host/web/features/hr/components/HrPersonnelChangeWorkbench.tsx","products/juhai.hr/host/web/features/hr/components/HrPersonnelGovernanceWorkbench.tsx","products/juhai.hr/manifest.json","reports/agent-adapters.latest.json","reports/auth-startup.latest.json","reports/capacity-envelope.latest.json","reports/contract-consumers.latest.json","reports/db-credential-separation.latest.json","reports/dependency-resilience.latest.json","reports/docs-truth.latest.json","reports/dual-backend-behavior.latest.json","reports/dual-backend-parity.latest.json","reports/fixtures.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/kernel-admission.latest.json","reports/kernel-boundaries.latest.json","reports/kernel-downstream.latest.json","reports/kernel-extensions.latest.json","reports/kernel-packages.latest.json","reports/list-bounds.latest.json","reports/llm-eval.latest.json","reports/migrations.latest.json","reports/mobile-export.latest.json","reports/multi-instance.latest.json","reports/naming.latest.json","reports/operations.latest.json","reports/platform-dependency-provenance.latest.json","reports/product-acceptance-runtime.latest.json","reports/product-acceptance.latest.json","reports/product-extension-runtime.latest.json","reports/product-migrations-runtime.latest.json","reports/product-migrations.latest.json","reports/product-sql-runtime.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/tracing.latest.json","reports/ui-acceptance.latest.json","reports/ui-fastify-acceptance.latest.json","reports/ui-nestjs-acceptance.latest.json","reports/validation-source.latest.json","reports/write-capacity.latest.json","scripts/check-all.mjs","scripts/check-dual-backend-parity.mjs","scripts/check-rls.mjs","scripts/check-ui-acceptance.mjs","scripts/lib/registry-admission.mjs","scripts/mock-llm-tool-provider.mjs"]},{"id":"0df34078a9387dc2a1aa66be2bc18018a81401d5","message":"feat(registry): add OS service admission with mapped identity and source artifact\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/0df34078a9387dc2a1aa66be2bc18018a81401d5","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-10T02:44:18-07:00","added":["docs/operations/registry-admission-2026-10-10.md","governance/registry-identity-mapping.json","governance/registry-source-artifact.json","scripts/lib/registry-admission.mjs","scripts/lib/registry-admission.test.mjs","scripts/registry-admission.mjs"],"removed":[],"modified":["governance/app-manifest.candidate.json","package.json","pnpm-lock.yaml"]},{"id":"0473b44cb88921830f04e73bc3dff8bdab7f5383","message":"test(mcp): use selected query version in Fastify tool registration\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/0473b44cb88921830f04e73bc3dff8bdab7f5383","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-10T01:01:03-07:00","added":[],"removed":[],"modified":["apps/api-fastify/test/llm.acceptance.test.ts"]},{"id":"1c7c38bcf1ed75569c3f5bc9e5509d8039cb4c2b","message":"test(mcp): bind worker acceptance to the installed query v2 contract\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/1c7c38bcf1ed75569c3f5bc9e5509d8039cb4c2b","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-10T00:02:22-07:00","added":[],"removed":[],"modified":["apps/api-fastify/test/llm.acceptance.test.ts","apps/api-nestjs/test/llm.acceptance.test.ts"]},{"id":"6bc8b2021b0b79f9d6afb7edf86e44660c6242df","message":"feat(identity): consume control-plane lifecycle and canonical erasure checkpoints\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/6bc8b2021b0b79f9d6afb7edf86e44660c6242df","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-09T23:47:38-07:00","added":["apps/api-fastify/prisma/migrations/20261010000000_control_plane_identity/migration.sql","apps/api-nestjs/prisma/migrations/20261010000000_control_plane_identity/migration.sql","docs/domain/control-plane-identity-blueprint.md","products/juhai.hr/migrations/juhai.hr.personnel-core/20261010000000_enterprise_fact_export_grants.sql","scripts/check-identity-protocol-runtime.mjs","scripts/identity-protocol-agent.mjs","scripts/lib/identity-protocol.mjs"],"removed":[],"modified":["apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/plugins/events.ts","apps/api-fastify/src/plugins/queue.ts","apps/api-fastify/src/plugins/rls-prisma.ts","apps/api-fastify/src/plugins/tool-intent-dispatcher.ts","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/src/events/fanout.service.ts","apps/api-nestjs/src/prisma/rls-prisma.ts","apps/api-nestjs/src/queue/jobs.processor.ts","apps/api-nestjs/src/tools/tool-intent-dispatcher.service.ts","docs/domain/enterprise-control-plane-integration-governance.md","docs/domain/owner-matrix.md","kernel.downstream.lock.json","kernel.packages.json","kernel.packages.lock.json","packages/contracts/package.json","packages/contracts/src/rls.test.ts","packages/contracts/src/rls.ts","packages/product-runtime/src/product-sql.ts","packages/tool-runtime/package.json"]}],"total_commits":0,"head_commit":{"id":"9b4210346a7997f20f92d0326848d172f9acc17f","message":"merge: preserve OS identity gates with current main and registry admission\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/9b4210346a7997f20f92d0326848d172f9acc17f","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-10T02:54:00-07:00","added":["app-manifest.json","docs/operations/local-restart-2026-10-08.md","docs/operations/local-web-proxy-repair-2026-09-26.md","docs/operations/platform-dev-e1-usage-export-2026-09-26.md","governance/platform-integration.json","reports/app-manifest.latest.json","scripts/check-app-manifest.mjs"],"removed":["apps/api-fastify/src/plugins/trigger-engine.ts"],"modified":["CLAUDE.md","apps/api-fastify/src/app.ts","apps/api-fastify/src/modules/triggers.service.ts","apps/api-fastify/src/plugins/outbox.ts","apps/api-fastify/src/plugins/queue.ts","apps/api-fastify/test/llm.acceptance.test.ts","apps/api-fastify/test/llm.usage-export.platform-e2e.test.ts","apps/api-fastify/test/product-extension.acceptance.test.ts","apps/api-fastify/test/triggers.integration.test.ts","apps/api-nestjs/src/events/outbox-dispatcher.service.ts","apps/api-nestjs/src/queue/jobs.processor.ts","apps/api-nestjs/src/queue/queue.module.ts","apps/api-nestjs/src/queue/queue.types.ts","apps/api-nestjs/src/triggers/trigger-engine.service.ts","apps/api-nestjs/src/triggers/triggers.module.ts","apps/api-nestjs/test/llm.acceptance.test.ts","apps/api-nestjs/test/llm.usage-export.platform-e2e.test.ts","apps/api-nestjs/test/product-extension.acceptance.test.ts","apps/api-nestjs/test/triggers.integration.test.ts","apps/web/e2e/acceptance.spec.ts","docs/domain/enterprise-control-plane-integration-governance.md","docs/operations/registry-admission-2026-10-10.md","docs/planning/development-blueprint-2026-09-04.md","docs/product-extension-guide.md","governance.registry.json","governance/app-manifest.candidate.json","governance/registry-source-artifact.json","kernel.boundaries.json","kernel.boundaries.lock.json","kernel.downstream.lock.json","kernel.exports.lock.json","kernel.packages.json","kernel.packages.lock.json","kernel.products.json","kernel.products.lock.json","package.json","packages/contracts/src/contracts.test.ts","packages/contracts/src/job.ts","packages/contracts/src/trigger.ts","packages/tool-runtime/package.json","products/juhai.hr/acceptance/runtime-suite.mjs","products/juhai.hr/acceptance/web-workspace.acceptance.spec.ts","products/juhai.hr/host/web/features/hr/api/hr-api.ts","products/juhai.hr/host/web/features/hr/components/HrDeliveryAuditWorkbench.tsx","products/juhai.hr/host/web/features/hr/components/HrMasterDataWorkbench.tsx","products/juhai.hr/host/web/features/hr/components/HrPersonnelChangeWorkbench.tsx","products/juhai.hr/host/web/features/hr/components/HrPersonnelGovernanceWorkbench.tsx","products/juhai.hr/manifest.json","reports/agent-adapters.latest.json","reports/auth-startup.latest.json","reports/capacity-envelope.latest.json","reports/contract-consumers.latest.json","reports/db-credential-separation.latest.json","reports/dependency-resilience.latest.json","reports/docs-truth.latest.json","reports/dual-backend-behavior.latest.json","reports/dual-backend-parity.latest.json","reports/fixtures.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/kernel-admission.latest.json","reports/kernel-boundaries.latest.json","reports/kernel-downstream.latest.json","reports/kernel-extensions.latest.json","reports/kernel-packages.latest.json","reports/list-bounds.latest.json","reports/llm-eval.latest.json","reports/migrations.latest.json","reports/mobile-export.latest.json","reports/multi-instance.latest.json","reports/naming.latest.json","reports/operations.latest.json","reports/platform-dependency-provenance.latest.json","reports/product-acceptance-runtime.latest.json","reports/product-acceptance.latest.json","reports/product-extension-runtime.latest.json","reports/product-migrations-runtime.latest.json","reports/product-migrations.latest.json","reports/product-sql-runtime.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/tracing.latest.json","reports/ui-acceptance.latest.json","reports/ui-fastify-acceptance.latest.json","reports/ui-nestjs-acceptance.latest.json","reports/validation-source.latest.json","reports/write-capacity.latest.json","scripts/check-all.mjs","scripts/check-dual-backend-parity.mjs","scripts/check-rls.mjs","scripts/check-ui-acceptance.mjs","scripts/lib/registry-admission.mjs","scripts/mock-llm-tool-provider.mjs"]},"repository":{"id":76,"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":"digital-employee-os","full_name":"luoanwu/digital-employee-os","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":99388,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/digital-employee-os/languages","html_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/digital-employee-os","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/digital-employee-os.git","clone_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os.git","original_url":"","website":"","stars_count":0,"forks_count":1,"watchers_count":1,"branch_count":3,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-08-20T14:46:28+08:00","updated_at":"2026-10-09T13:32:21+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"}}... |