|
23535
|
test(governance): close dual-backend runtime blind test(governance): close dual-backend runtime blind spots...
|
81
|
5
|
governance.yml
|
6
|
5
|
0
|
refs/heads/main
|
3d56a9a4fb9cccedf11cfdb53a470fa7f29e94c7
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"fbedaf6d0398693dc8466b4b72b6265d2397d93c","after":"3d56a9a4fb9cccedf11cfdb53a470fa7f29e94c7","compare_url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system/compare/fbedaf6d0398693dc8466b4b72b6265d2397d93c...3d56a9a4fb9cccedf11cfdb53a470fa7f29e94c7","commits":[{"id":"3d56a9a4fb9cccedf11cfdb53a470fa7f29e94c7","message":"test(governance): close dual-backend runtime blind spots\n","url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system/commit/3d56a9a4fb9cccedf11cfdb53a470fa7f29e94c7","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-08-25T20:18:54-07:00","added":["apps/api-nestjs/test/backend-parity.acceptance.test.ts","apps/api-nestjs/test/health-degraded.acceptance.test.ts","apps/api-nestjs/test/job-failure.acceptance.test.ts"],"removed":[],"modified":["CLAUDE.md","apps/api-fastify/src/routes/sse.ts","apps/api-fastify/src/routes/users.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-fastify/test/realtime.tenant.test.ts","apps/api-nestjs/src/users/users.service.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/web/e2e/acceptance.spec.ts","apps/web/next.config.ts","apps/web/src/app/page.tsx","apps/web/src/hooks/useRealtime.ts","docs/domain/business-logic-map.md","docs/governance-experience.md","packages/contracts/src/user.ts","reports/agent-adapters.latest.json","reports/auth-source.latest.json","reports/baseline.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/os-product.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/service-contracts.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-dual-backend-parity.mjs","scripts/check-ui-acceptance.mjs"]}],"total_commits":0,"head_commit":{"id":"3d56a9a4fb9cccedf11cfdb53a470fa7f29e94c7","message":"test(governance): close dual-backend runtime blind spots\n","url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system/commit/3d56a9a4fb9cccedf11cfdb53a470fa7f29e94c7","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-08-25T20:18:54-07:00","added":["apps/api-nestjs/test/backend-parity.acceptance.test.ts","apps/api-nestjs/test/health-degraded.acceptance.test.ts","apps/api-nestjs/test/job-failure.acceptance.test.ts"],"removed":[],"modified":["CLAUDE.md","apps/api-fastify/src/routes/sse.ts","apps/api-fastify/src/routes/users.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-fastify/test/realtime.tenant.test.ts","apps/api-nestjs/src/users/users.service.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/web/e2e/acceptance.spec.ts","apps/web/next.config.ts","apps/web/src/app/page.tsx","apps/web/src/hooks/useRealtime.ts","docs/domain/business-logic-map.md","docs/governance-experience.md","packages/contracts/src/user.ts","reports/agent-adapters.latest.json","reports/auth-source.latest.json","reports/baseline.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/os-product.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/service-contracts.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-dual-backend-parity.mjs","scripts/check-ui-acceptance.mjs"]},"repository":{"id":81,"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":"juhai-after-sales-service-system","full_name":"luoanwu/juhai-after-sales-service-system","description":"巨嗨智服:受治理的 AI 售后服务系统","empty":false,"private":true,"fork":false,"template":false,"mirror":false,"size":2395,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhai-after-sales-service-system/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhai-after-sales-service-system","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhai-after-sales-service-system.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system.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-08-26T08:47:15+08:00","updated_at":"2026-08-26T10:30:31+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"}}...
|
push
|
2
|
6
|
1787714350
|
1787714358
|
0
|
1787714348
|
1787714358
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23438
|
fix(svc): worker 启动对账——救活无队列背书的处理态任务
|
64
|
5
|
governance.yml
|
3
|
5
|
0
|
refs/heads/main
|
8bcd226984997589864354a5c357a5acaf8221b8
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"fbc7ad83338fb810bc574c8b00a6679b8ed3ca0c","after":"8bcd226984997589864354a5c357a5acaf8221b8","compare_url":"https://gitea.g-hi.com/luoanwu/voice-conversion/compare/fbc7ad83338fb810bc574c8b00a6679b8ed3ca0c...8bcd226984997589864354a5c357a5acaf8221b8","commits":[{"id":"8bcd226984997589864354a5c357a5acaf8221b8","message":"fix(svc): worker 启动对账——救活无队列背书的处理态任务\n\n优雅关停下 BullMQ 任务连续 stalled 超限被判死时,若无 worker 在场监听\nfailed 事件,DB 状态会永久卡在处理态(实证:重启后任务停 CONVERTING、\nsidecar 空闲、队列无任务)。修复:\n- 双后端 boot 时扫描 QUEUED/处理态任务重新入队(processJob 对处理态可\n 安全续跑、终态 no-op、concurrency=1 不双跑;单实例语义,G16 类边界)\n- maxStalledCount 1→3:重启窗口 stalled 是常态,一次即判死太苛刻\n\nCo-Authored-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/voice-conversion/commit/8bcd226984997589864354a5c357a5acaf8221b8","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-21T23:46:44-07:00","added":[],"removed":[],"modified":["apps/api-fastify/src/plugins/cover-queue.ts","apps/api-nestjs/src/svc/cover-jobs.service.ts","apps/api-nestjs/src/svc/cover.processor.ts"]}],"total_commits":0,"head_commit":{"id":"8bcd226984997589864354a5c357a5acaf8221b8","message":"fix(svc): worker 启动对账——救活无队列背书的处理态任务\n\n优雅关停下 BullMQ 任务连续 stalled 超限被判死时,若无 worker 在场监听\nfailed 事件,DB 状态会永久卡在处理态(实证:重启后任务停 CONVERTING、\nsidecar 空闲、队列无任务)。修复:\n- 双后端 boot 时扫描 QUEUED/处理态任务重新入队(processJob 对处理态可\n 安全续跑、终态 no-op、concurrency=1 不双跑;单实例语义,G16 类边界)\n- maxStalledCount 1→3:重启窗口 stalled 是常态,一次即判死太苛刻\n\nCo-Authored-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/voice-conversion/commit/8bcd226984997589864354a5c357a5acaf8221b8","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-21T23:46:44-07:00","added":[],"removed":[],"modified":["apps/api-fastify/src/plugins/cover-queue.ts","apps/api-nestjs/src/svc/cover-jobs.service.ts","apps/api-nestjs/src/svc/cover.processor.ts"]},"repository":{"id":64,"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":"voice-conversion","full_name":"luoanwu/voice-conversion","description":"SoulX-Singer personal singing voice conversion platform","empty":false,"private":true,"fork":false,"template":false,"mirror":false,"size":705,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/voice-conversion/languages","html_url":"https://gitea.g-hi.com/luoanwu/voice-conversion","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/voice-conversion","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/voice-conversion.git","clone_url":"https://gitea.g-hi.com/luoanwu/voice-conversion.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-07-22T14:37:12+08:00","updated_at":"2026-07-22T14:38:58+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"}}...
|
push
|
2
|
8
|
1784702849
|
1784702904
|
0
|
1784702847
|
1784702904
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23823
|
chore(reports): refresh clean static evidence @ da chore(reports): refresh clean static evidence @ da7d7aa...
|
54
|
5
|
governance.yml
|
31
|
5
|
0
|
refs/heads/main
|
9371e2946b802b351f5641762b8b3ca4470c409a
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"fb8ed662710ed7d17ffe5f006c8da4ab611ecaba","after":"9371e2946b802b351f5641762b8b3ca4470c409a","compare_url":"https://gitea.g-hi.com/luoanwu/base-framework/compare/fb8ed662710ed7d17ffe5f006c8da4ab611ecaba...9371e2946b802b351f5641762b8b3ca4470c409a","commits":[{"id":"9371e2946b802b351f5641762b8b3ca4470c409a","message":"chore(reports): refresh clean static evidence @ da7d7aa\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/9371e2946b802b351f5641762b8b3ca4470c409a","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-09T23:37:22-07:00","added":[],"removed":[],"modified":["reports/agent-adapters.latest.json","reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance-rules.latest.json","reports/governance-status.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},{"id":"da7d7aa269bc5892264eeaaa24021f63862e80da","message":"docs: record clean commit acceptance @ fa77b22(runtime 252 / 差分 9×2 零差异;地板 testsPassed 242→252)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/da7d7aa269bc5892264eeaaa24021f63862e80da","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-09T23:37:00-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/baseline.json","reports/conformance-differential.latest.json","reports/runtime-acceptance.latest.json"]},{"id":"fa77b22af701d7a40ce19ebf1d6c14614b3afd6b","message":"fix(redis): REDIS_URL 的 rediss:// TLS 与 ACL 用户名透传给 BullMQ(C28,09-05 审查 P1)\n\n- 两后端 parseRedisConnection:username(URL 解码)、tls.servername(rediss://)、只认 redis/rediss 协议\n- NestJS app.module 改消费共享解析器并透传 username/tls(消灭内联第二份拆解)\n- check:dual-backend C28 绊网(负向 exit 1);两后端各 5 个 infra-url 纯函数单测\n- 版本 0.12.0;CHANGELOG / COMPATIBILITY / CLAUDE.md(真源地图、G18、C28)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/fa77b22af701d7a40ce19ebf1d6c14614b3afd6b","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-09T23:34:56-07:00","added":["apps/api-fastify/test/infra-url.test.ts","apps/api-nestjs/test/infra-url.test.ts"],"removed":[],"modified":["CHANGELOG.md","CLAUDE.md","COMPATIBILITY.md","apps/api-fastify/src/lib/infra-url.ts","apps/api-nestjs/src/app.module.ts","apps/api-nestjs/src/common/infra-url.ts","docs/governance-experience.md","package.json","packages/contracts/package.json","scripts/check-dual-backend-parity.mjs"]},{"id":"031ab536fb42ffc743666a4851f6a833e7bd3600","message":"chore(reports): refresh clean static evidence @ 0acc198\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/031ab536fb42ffc743666a4851f6a833e7bd3600","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-09T22:55:05-07:00","added":[],"removed":[],"modified":["reports/agent-adapters.latest.json","reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance-rules.latest.json","reports/governance-status.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},{"id":"0acc19849f733625c7afa3ff83a9b01399aa0459","message":"docs: record clean commit acceptance @ 6c60640(runtime 242 / 差分 9×2 零差异;地板 testsPassed 238→242、ownTests 31→32、ownTestCases 235→239)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/0acc19849f733625c7afa3ff83a9b01399aa0459","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-09T22:54:43-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/baseline.json","reports/conformance-differential.latest.json","reports/runtime-acceptance.latest.json"]}],"total_commits":0,"head_commit":{"id":"9371e2946b802b351f5641762b8b3ca4470c409a","message":"chore(reports): refresh clean static evidence @ da7d7aa\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/9371e2946b802b351f5641762b8b3ca4470c409a","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-09T23:37:22-07:00","added":[],"removed":[],"modified":["reports/agent-adapters.latest.json","reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance-rules.latest.json","reports/governance-status.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},"repository":{"id":54,"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":"base-framework","full_name":"luoanwu/base-framework","description":"基础框架 monorepo","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":4121,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/base-framework/languages","html_url":"https://gitea.g-hi.com/luoanwu/base-framework","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/base-framework","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/base-framework.git","clone_url":"https://gitea.g-hi.com/luoanwu/base-framework.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":2,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-03T12:24:18+08:00","updated_at":"2026-09-10T12:59:49+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"}}...
|
push
|
2
|
10
|
1789026271
|
1789026315
|
0
|
1789026271
|
1789026327
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
...
|
governance-governance.yml-refs/heads/main
|
0
|
Edit
Delete
|
|
23920
|
Merge pull request #15 from laoluojuhai/codex/rc1- Merge pull request #15 from laoluojuhai/codex/rc1-delivery-records...
|
116
|
5
|
platform.yml
|
40
|
5
|
0
|
refs/heads/main
|
2584d6d1868a109f858ebacc2aea920639d43f3f
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"fa3f105cf5e845bbec0378eb1f12c2c7fd935033","after":"2584d6d1868a109f858ebacc2aea920639d43f3f","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/fa3f105cf5e845bbec0378eb1f12c2c7fd935033...2584d6d1868a109f858ebacc2aea920639d43f3f","commits":[{"id":"2584d6d1868a109f858ebacc2aea920639d43f3f","message":"Merge pull request #15 from laoluojuhai/codex/rc1-delivery-records\n\nchore(governance): 归档 RC1 交付证据并同步已完成晋级治理","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/2584d6d1868a109f858ebacc2aea920639d43f3f","author":{"name":"laoluojuhai","email":"158980461+laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"GitHub","email":"noreply@github.com","username":""},"verification":null,"timestamp":"2026-09-12T07:11:57-07:00","added":["docs/staging晋级操作说明.md","governance/check-promotion.mjs","governance/test/promotion.test.mjs","reports/governance-rc1-delivery.2026-09-12.json","stack/promotion/promotion-record.schema.json","stack/promotion/promotion-record.template.json","stack/promotion/target-env-signoff.template.json","stack/provision/openbao-provision.json","stack/provision/openbao-provision.sh","stack/reports/openbao-smoke.2026-09-12.json"],"removed":[],"modified":["README.md","docs/RC1治理包发布记录-2026-09-12.md","docs/runbook.md","governance/README.md","package.json","stack/README.md","stack/compose.yaml"]},{"id":"67fd159702889bb4fccddf81ecd2c79734551b2c","message":"Merge commit 'fa3f105cf5e845bbec0378eb1f12c2c7fd935033' into codex/rc1-delivery-records\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/67fd159702889bb4fccddf81ecd2c79734551b2c","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-12T07:02:18-07:00","added":["docs/staging晋级操作说明.md","governance/check-promotion.mjs","governance/test/promotion.test.mjs","stack/promotion/promotion-record.schema.json","stack/promotion/promotion-record.template.json","stack/promotion/target-env-signoff.template.json","stack/provision/openbao-provision.json","stack/provision/openbao-provision.sh","stack/reports/openbao-smoke.2026-09-12.json"],"removed":[],"modified":["README.md","docs/runbook.md","governance/README.md","package.json","stack/README.md","stack/compose.yaml"]},{"id":"0cffd1e44dea8dcacfb0453de791903af616adb6","message":"docs(governance): record RC1 publication and verified consumer rollout\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/0cffd1e44dea8dcacfb0453de791903af616adb6","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-12T07:00:25-07:00","added":["reports/governance-rc1-delivery.2026-09-12.json"],"removed":[],"modified":["README.md","docs/RC1治理包发布记录-2026-09-12.md"]}],"total_commits":0,"head_commit":{"id":"2584d6d1868a109f858ebacc2aea920639d43f3f","message":"Merge pull request #15 from laoluojuhai/codex/rc1-delivery-records\n\nchore(governance): 归档 RC1 交付证据并同步已完成晋级治理","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/2584d6d1868a109f858ebacc2aea920639d43f3f","author":{"name":"laoluojuhai","email":"158980461+laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"GitHub","email":"noreply@github.com","username":""},"verification":null,"timestamp":"2026-09-12T07:11:57-07:00","added":["docs/staging晋级操作说明.md","governance/check-promotion.mjs","governance/test/promotion.test.mjs","reports/governance-rc1-delivery.2026-09-12.json","stack/promotion/promotion-record.schema.json","stack/promotion/promotion-record.template.json","stack/promotion/target-env-signoff.template.json","stack/provision/openbao-provision.json","stack/provision/openbao-provision.sh","stack/reports/openbao-smoke.2026-09-12.json"],"removed":[],"modified":["README.md","docs/RC1治理包发布记录-2026-09-12.md","docs/runbook.md","governance/README.md","package.json","stack/README.md","stack/compose.yaml"]},"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":4886,"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":5,"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-12T21:56:10+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"}}...
|
push
|
2
|
30
|
1789222355
|
1789222391
|
0
|
1789222354
|
1789222416
|
group: platform-${{ github.workflow }}-${{ github. group: platform-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
...
|
platform-platform.yml-refs/heads/main
|
0
|
Edit
Delete
|
|
24066
|
chore(reports): 全链回绑 @ 1af0f22,证据零过期零告警
|
116
|
5
|
platform.yml
|
104
|
5
|
0
|
refs/heads/main
|
36e0423efe0ddc105136d193bfb594efb9838d62
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f9cb195319422eac06bd2111e1034e956ebcafb0","after":"36e0423efe0ddc105136d193bfb594efb9838d62","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/f9cb195319422eac06bd2111e1034e956ebcafb0...36e0423efe0ddc105136d193bfb594efb9838d62","commits":[{"id":"36e0423efe0ddc105136d193bfb594efb9838d62","message":"chore(reports): 全链回绑 @ 1af0f22,证据零过期零告警\n\n干净树重跑根 pnpm check。check:evidence:34 份已登记,**33 份新鲜 / 0 过期 /\n0 输入未提交 / 0 告警 / 1 例外**(stack-image-pins,其例外自带出口)。\n\n这是本轮治理完善的收口:从九份过期、error 级判定,到零过期零告警。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/36e0423efe0ddc105136d193bfb594efb9838d62","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-17T18:56:42-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","reports/otel.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/permission-catalog.latest.json","runtime/reports/platform-ops-definitions.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":"1af0f2210a8ac041a26a97ff5f4965461398ebf1","message":"feat(governance): 测试地板 652 → 775;动态区回灌今日三级验收\n\ncheck:docs-truth 抓出报告已刷新而动态区未跟上——正是今天修过的那类双真源\n漂移,这次由门禁自己拦住。\n\n- 动态区「真实 DB」:2026-09-13 / 7e26a50 / 652 → 2026-09-18 / 6108357 /\n 775,并写明隔离栈与「破坏性注入只认 ms23-ci 类专用工程」的边界\n- 动态区「浏览器」:2026-09-13 / 7e26a50 → 2026-09-18 / 003aadd,端口如实\n- 棘轮:testsPassed 652 → 775(本轮实测),ownTests 35 → 40、\n ownTestCases 185 → 212(静态 runner 自己抬的,它刻意不动其他 runner 的地板)\n\n棘轮只收紧不放宽:775 是今天真实跑出来的数,此后低于它即红。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/1af0f2210a8ac041a26a97ff5f4965461398ebf1","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-17T18:56:07-07:00","added":[],"removed":[],"modified":["runtime/CLAUDE.md","runtime/reports/baseline.json"]},{"id":"23281b8f814b350af20b95ab6a4176cdbaf25b0a","message":"chore(governance): 退役两份无生成脚本的报告,过期证据归零\n\n2026-09-17 目录负责人裁决:两份都退役(删文件 + 撤登记,不留例外)。\n\n两份都是 09-12 手工拼的一次性记录,仓内没有任何脚本能产出它们,因此永远\n无法重跑、只会一直过期;而它们的结论现在都由自动化门禁产出并正确绑定:\n\n- identity-http(8 例):逐条比对确认与 runtime/test/e2e/identity-profile.test.ts\n 同名,今日已在 check:runtime 的 775 例里跑过并绑 6108357。其自述的\n provenanceMethod 就写着「Post-run source inspection」,本就不是门禁产物\n- mainline-candidate-regression(155 例):作用域即 governance/{lib,test} 与\n 两个检查器,结论由 node --test governance/test/*.test.mjs 产出,今日 277/277。\n 155 这个数字自 09-12 起无人维护,保留它只会让人以为另有一道独立的候选回归门禁\n\n退役前已核:release-manifest.mjs 与 build-workbench-snapshots.mjs 都不引用\n这两份;其余引用只在 09-12 的历史记录文档与生成式快照字段里,会随重跑更新。\n\nevidence-scopes 登记 36 → 34,note 补记本次裁决与口径(同 stack-image-pins\n例外里写的「倾向 ① 退役」)。\n\ncheck:evidence:33 新鲜 / **0 过期** / 1 例外(stack-image-pins,另有出口)。\ngovernance 测试 277/277。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/23281b8f814b350af20b95ab6a4176cdbaf25b0a","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-17T18:54:10-07:00","added":[],"removed":["reports/identity-http.latest.json","reports/mainline-candidate-regression.latest.json"],"modified":["governance/evidence-scopes.json"]},{"id":"95d0ac8860038d4af6a3d15d4ca35ff0eff52749","message":"chore(reports): 主线验收与恢复演练重跑通过 @ bc978a8\n\n在专用隔离栈 enterprise-platform-ms23-ci(PG :55485 / Redis :56395 /\nRedpanda :59105)上重跑,源库经 mainline:prepare 新建(platform_{fact,\npermission,audit,owner,consumer}_ci,全部非超级用户 / NOBYPASSRLS)。\n\n- mainline-acceptance passed,四套件 11 / 17 / 19 / 18:fact-read-http、\n fact-persistence、audit-tamper、mainline-revocation-chaos(含重复投递、\n 非连续乱序版本、毒消息 DLQ 与 broker 停机恢复)\n- mainline-restore passed,3 个库逐库 dump + 还原到新建 drill 库,表数\n 12 / 6 / …,逐库 SHA-256 一致;不删除、不重置源库与既往 drill\n- revocation-sla 随之刷新,仍 partial:invalidationPush 的 verdict 依旧是\n measured-with-harness-transport,生产传输未接线\n\n为什么换栈:恢复演练与 Redpanda 混沌用例的 allowlist 只认\nenterprise-platform-{ms23,ms23-ci,adversarial} 三个 compose 工程,\n共享的 ep-delivery 与 dev 常驻 stack 永远不匹配——这是故意的护栏,\n破坏性注入不得指向共享底座。dev 常驻栈全程未被触碰。\n\ncheck:evidence 过期 4 → 2,余下两份都没有生成脚本,另行处置。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/95d0ac8860038d4af6a3d15d4ca35ff0eff52749","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-17T18:50:15-07:00","added":[],"removed":[],"modified":["reports/mainline-acceptance.latest.json","reports/mainline-restore.latest.json","reports/revocation-sla.latest.json"]},{"id":"bc978a8a99636b34e0bc69b018ee6ce8bd6192b9","message":"chore(reports): identity 模块 UI 验收重跑通过 @ 828f178\n\n真实统一 Next 前端 + identity profile + 专用 PostgreSQL/Redis,2 个浏览器级\n用例全绿,由 90cda56 重绑 828f178(作用域内此前累计 21 个文件变更)。\n端口 web :7352 / api :7353。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/bc978a8a99636b34e0bc69b018ee6ce8bd6192b9","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-17T18:43:48-07:00","added":[],"removed":[],"modified":["reports/identity-ui.latest.json"]}],"total_commits":0,"head_commit":{"id":"36e0423efe0ddc105136d193bfb594efb9838d62","message":"chore(reports): 全链回绑 @ 1af0f22,证据零过期零告警\n\n干净树重跑根 pnpm check。check:evidence:34 份已登记,**33 份新鲜 / 0 过期 /\n0 输入未提交 / 0 告警 / 1 例外**(stack-image-pins,其例外自带出口)。\n\n这是本轮治理完善的收口:从九份过期、error 级判定,到零过期零告警。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/36e0423efe0ddc105136d193bfb594efb9838d62","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-17T18:56:42-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","reports/otel.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/permission-catalog.latest.json","runtime/reports/platform-ops-definitions.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":17277,"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-18T09:22:53+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"}}...
|
push
|
3
|
24
|
1789696615
|
1789696796
|
0
|
1789696615
|
1789696855
|
group: platform-${{ github.workflow }}-${{ github. group: platform-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
...
|
platform-platform.yml-refs/heads/main
|
0
|
Edit
Delete
|
|
23446
|
feat(governance): machineize docs-truth gate, fix feat(governance): machineize docs-truth gate, fix Fastify Redis parsing, harden test-base guard...
|
54
|
5
|
governance.yml
|
1
|
5
|
0
|
refs/heads/main
|
2fa1666f6bb69b7784199199afde715a54856ac8
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f98acd04c6fe50956d8cf89552a352c8893f037d","after":"2fa1666f6bb69b7784199199afde715a54856ac8","compare_url":"https://gitea.g-hi.com/luoanwu/base-framework/compare/f98acd04c6fe50956d8cf89552a352c8893f037d...2fa1666f6bb69b7784199199afde715a54856ac8","commits":[{"id":"2fa1666f6bb69b7784199199afde715a54856ac8","message":"feat(governance): machineize docs-truth gate, fix Fastify Redis parsing, harden test-base guard\n\n- Add check:docs-truth (C14 machineized): targeted assertions catching README/standards\n drift from runtime truth (dual-backend positioning, tenant-aware envelope shape, NestJS\n HTTP engine, ghost assets like commitlint/RHF), wired into pnpm check + governance ratchet.\n- Fix Fastify BullMQ Redis URL parsing to include password/db (C15), matching NestJS's\n parseRedisConnection; adds a check:dual-backend tripwire so this can't silently regress.\n Without this, authenticated/non-zero-db Redis environments would split pub/sub and\n BullMQ onto different logical Redis instances.\n- Close G15: check:runtime / check:ui preflight now requires explicit REDIS_URL (no more\n silent localhost:6379 default) and enforces a base_framework* db name convention, with\n GOVERNANCE_DB_NAME_OVERRIDE=1 as an explicit escape hatch.\n- Correct stale doc claims across README/docs/standards to match actual code (Fastify is a\n full dual-backend peer per ADR-0009, not an optional fallback; envelope carries tenantId;\n NestJS uses platform-express not the Fastify adapter; annotate unimplemented commitlint/RHF\n plans as not-yet-landed).\n- Refresh governance reports/baseline after re-running pnpm check and check:runtime (56/56).\n\nCo-Authored-By: Claude Sonnet 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/2fa1666f6bb69b7784199199afde715a54856ac8","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-22T01:11:05-07:00","added":["reports/docs-truth.latest.json","scripts/check-docs-truth.mjs"],"removed":[],"modified":["CLAUDE.md","README.md","apps/api-fastify/src/plugins/queue.ts","docs/README.md","docs/governance-experience.md","docs/standards/backend-standard.md","docs/standards/database-standard.md","docs/standards/frontend-standard.md","docs/standards/git-standard.md","package.json","reports/baseline.json","reports/contract-consumers.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/validation-source.latest.json","scripts/check-dual-backend-parity.mjs","scripts/check-runtime-acceptance.mjs","scripts/check-ui-acceptance.mjs","scripts/governance-report.mjs"]},{"id":"8501dc9731b4f0f44ea36d2ffe557577354ebb31","message":"Refactor governance documentation structure\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/8501dc9731b4f0f44ea36d2ffe557577354ebb31","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-21T08:01:24-07:00","added":["docs/governance-experience.md"],"removed":[],"modified":["CLAUDE.md","reports/contract-consumers.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/validation-source.latest.json"]},{"id":"d799b176f2db4f3e538563eeb8228543d24ca639","message":"feat(runtime): close outbox failure governance gaps\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/d799b176f2db4f3e538563eeb8228543d24ca639","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-05T07:03:20-07:00","added":["apps/api-fastify/prisma/migrations/20260705080000_outbox_dead_letter/migration.sql","apps/api-fastify/test/outbox.deadletter.test.ts","apps/api-nestjs/prisma/migrations/20260705080000_outbox_dead_letter/migration.sql","apps/api-nestjs/test/outbox.deadletter.test.ts"],"removed":["apps/web/src/hooks/useSSE.ts","apps/web/src/hooks/useWebSocket.ts"],"modified":[".claude/launch.json","CLAUDE.md","apps/api-fastify/.env.example","apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/modules/tenant.ts","apps/api-fastify/src/plugins/outbox.ts","apps/api-fastify/src/plugins/queue.ts","apps/api-fastify/src/routes/jobs.ts","apps/api-fastify/src/routes/orders.ts","apps/api-fastify/src/routes/sse.ts","apps/api-fastify/src/routes/users.ts","apps/api-nestjs/.env.example","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/src/common/zod-validation.pipe.ts","apps/api-nestjs/src/events/outbox-dispatcher.service.ts","apps/api-nestjs/src/orders/orders.service.ts","apps/api-nestjs/src/queue/jobs.processor.ts","apps/web/e2e/acceptance.spec.ts","apps/web/src/components/EventFeed.tsx","apps/web/src/hooks/useRealtime.ts","apps/web/src/lib/api.ts","apps/web/src/store/realtime.ts","packages/contracts/src/contracts.test.ts","packages/contracts/src/index.ts","packages/contracts/src/realtime.ts","packages/contracts/src/tenant.ts","reports/baseline.json","reports/contract-consumers.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-migrations.mjs","scripts/check-ui-acceptance.mjs"]},{"id":"43b8c8c943c406733084427f3ad27d836ae75681","message":"Update governance baseline for UI acceptance\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/43b8c8c943c406733084427f3ad27d836ae75681","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-04T23:37:30-07:00","added":[".claude/agents/acceptance-runner.md",".claude/agents/module-blueprint.md",".claude/skills/business-module-intake/SKILL.md",".github/workflows/governance.yml","apps/api-fastify/test/realtime.tenant.test.ts","apps/api-nestjs/test/realtime.tenant.test.ts","apps/web/e2e/acceptance.spec.ts","apps/web/playwright.config.ts","docs/domain/owner-matrix.md","packages/contracts/src/contracts.test.ts","packages/contracts/src/tenant.ts","reports/dual-backend-parity.latest.json","reports/ui-acceptance.latest.json","scripts/check-dual-backend-parity.mjs","scripts/check-ui-acceptance.mjs"],"removed":[],"modified":[".gitignore","CLAUDE.md","apps/api-fastify/.env.example","apps/api-fastify/src/modules/tenant.ts","apps/api-fastify/src/modules/users/users.service.ts","apps/api-fastify/src/plugins/events.ts","apps/api-fastify/src/plugins/outbox.ts","apps/api-fastify/src/plugins/queue.ts","apps/api-fastify/src/routes/sse.ts","apps/api-fastify/src/routes/ws.ts","apps/api-fastify/src/types.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-nestjs/.env.example","apps/api-nestjs/src/common/tenant.decorator.ts","apps/api-nestjs/src/events/event-bus.service.ts","apps/api-nestjs/src/events/events.gateway.ts","apps/api-nestjs/src/events/outbox-dispatcher.service.ts","apps/api-nestjs/src/queue/jobs.controller.ts","apps/api-nestjs/src/queue/jobs.processor.ts","apps/api-nestjs/src/sse/sse.controller.ts","apps/api-nestjs/src/users/users.service.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/web/.env.example","apps/web/package.json","apps/web/src/components/EventFeed.tsx","apps/web/src/components/OrdersPanel.tsx","apps/web/src/hooks/useRealtime.ts","apps/web/src/lib/api.ts","docs/adr/0009-dual-backend-governance-parity.md","package.json","packages/contracts/src/index.ts","packages/contracts/src/order.ts","packages/contracts/src/realtime.ts","pnpm-lock.yaml","pnpm-workspace.yaml","reports/baseline.json","reports/contract-consumers.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/validation-source.latest.json","scripts/check-migrations.mjs","scripts/check-runtime-acceptance.mjs","scripts/governance-report.mjs"]}],"total_commits":0,"head_commit":{"id":"2fa1666f6bb69b7784199199afde715a54856ac8","message":"feat(governance): machineize docs-truth gate, fix Fastify Redis parsing, harden test-base guard\n\n- Add check:docs-truth (C14 machineized): targeted assertions catching README/standards\n drift from runtime truth (dual-backend positioning, tenant-aware envelope shape, NestJS\n HTTP engine, ghost assets like commitlint/RHF), wired into pnpm check + governance ratchet.\n- Fix Fastify BullMQ Redis URL parsing to include password/db (C15), matching NestJS's\n parseRedisConnection; adds a check:dual-backend tripwire so this can't silently regress.\n Without this, authenticated/non-zero-db Redis environments would split pub/sub and\n BullMQ onto different logical Redis instances.\n- Close G15: check:runtime / check:ui preflight now requires explicit REDIS_URL (no more\n silent localhost:6379 default) and enforces a base_framework* db name convention, with\n GOVERNANCE_DB_NAME_OVERRIDE=1 as an explicit escape hatch.\n- Correct stale doc claims across README/docs/standards to match actual code (Fastify is a\n full dual-backend peer per ADR-0009, not an optional fallback; envelope carries tenantId;\n NestJS uses platform-express not the Fastify adapter; annotate unimplemented commitlint/RHF\n plans as not-yet-landed).\n- Refresh governance reports/baseline after re-running pnpm check and check:runtime (56/56).\n\nCo-Authored-By: Claude Sonnet 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/2fa1666f6bb69b7784199199afde715a54856ac8","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-22T01:11:05-07:00","added":["reports/docs-truth.latest.json","scripts/check-docs-truth.mjs"],"removed":[],"modified":["CLAUDE.md","README.md","apps/api-fastify/src/plugins/queue.ts","docs/README.md","docs/governance-experience.md","docs/standards/backend-standard.md","docs/standards/database-standard.md","docs/standards/frontend-standard.md","docs/standards/git-standard.md","package.json","reports/baseline.json","reports/contract-consumers.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/validation-source.latest.json","scripts/check-dual-backend-parity.mjs","scripts/check-runtime-acceptance.mjs","scripts/check-ui-acceptance.mjs","scripts/governance-report.mjs"]},"repository":{"id":54,"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":"base-framework","full_name":"luoanwu/base-framework","description":"基础框架 monorepo","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":468,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/base-framework/languages","html_url":"https://gitea.g-hi.com/luoanwu/base-framework","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/base-framework","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/base-framework.git","clone_url":"https://gitea.g-hi.com/luoanwu/base-framework.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-07-03T12:24:18+08:00","updated_at":"2026-07-03T12:24: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"}}...
|
push
|
2
|
6
|
1784707904
|
1784708025
|
0
|
1784707902
|
1784708027
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23872
|
test(write-chain): verify the G34 round
|
57
|
5
|
governance.yml
|
216
|
5
|
0
|
refs/heads/main
|
e9764103a19cefa8ecbc18c172a62f8c900a7b72
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f91bb2efbad462a2c653bea45ecc14fadebd76ce","after":"e9764103a19cefa8ecbc18c172a62f8c900a7b72","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/f91bb2efbad462a2c653bea45ecc14fadebd76ce...e9764103a19cefa8ecbc18c172a62f8c900a7b72","commits":[{"id":"e9764103a19cefa8ecbc18c172a62f8c900a7b72","message":"test(write-chain): verify the G34 round\n\nEight fingerprint-bound gates and the full static chain passed on the\nG34 source (sha256:948e6d92c0eb2e85171357e1cec9fea0e8b9264474cb8622d7887a9a2f86efa3) in an isolated stack: contracts unit tests, both\nbackends' real-DB regressions for slot reconciliation, detached-instance\nrejection, marker-based UNKNOWN isolation and composition lease expiry;\nthe models snapshot reports 5/8 host weights. Evidence:\nacceptance-artifacts/g34-write-chain-2026-09-12/.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/e9764103a19cefa8ecbc18c172a62f8c900a7b72","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:38:23-07:00","added":[],"removed":[],"modified":["reports/admin-brands.desktop.png","reports/admin-brands.mobile.png","reports/admin-mobile.png","reports/content-detail.check-report-desktop.png","reports/content-detail.description-candidates-desktop.png","reports/content-detail.plans-desktop.png","reports/contract-consumers.latest.json","reports/creative-history-hidden.desktop.png","reports/creative-history-restore.mobile.png","reports/creative-quality.desktop.png","reports/dependency-audit.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/image-creation-1440.png","reports/image-edit-1135.png","reports/image-edit-1440.png","reports/image-edit-390.png","reports/image-edit-768.png","reports/image-edit-result.png","reports/inference-acceptance.latest.json","reports/material-models.latest.json","reports/material-review-concurrency-guard.latest.json","reports/migrations.latest.json","reports/model-api-key-saved.png","reports/model-credential-error.desktop.png","reports/model-credential-error.mobile.png","reports/module-boundary.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/prd-retry.mobile.png","reports/prd-review.desktop.png","reports/production-acceptance.latest.json","reports/production-delivery-released.desktop.png","reports/production-delivery-revoked.mobile.png","reports/production-pagination.desktop.png","reports/production-pagination.mobile.png","reports/production-review-preview.desktop.png","reports/production-security.latest.json","reports/production-single-tenant-create.desktop.png","reports/production-single-tenant-separation.desktop.png","reports/public-file-acceptance.latest.json","reports/public-file-integration.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/script-acceptance.latest.json","reports/script-generation-queue.png","reports/shijie-acceptance.latest.json","reports/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/storyboard-frame-dialog.desktop.first.png","reports/template-making.1135.png","reports/template-making.1280.png","reports/template-making.1440.png","reports/template-preview.templates.png","reports/template-saved-master.APPLICATION.png","reports/template-saved-master.GENERAL.png","reports/template-types.desktop.png","reports/toolchain.latest.json","reports/ui-acceptance.desktop.png","reports/ui-acceptance.draft-import.png","reports/ui-acceptance.latest.json","reports/ui-acceptance.mobile.png","reports/ui-acceptance.production.png","reports/ux-edit.desktop.png","reports/ux-home.desktop.png","reports/ux-home.mobile.png","reports/ux-intake.desktop.png","reports/validation-source.latest.json","reports/video-batch-paused.mobile.png","reports/video-regenerate-2026-09-08/desktop.png","reports/video-regenerate-2026-09-08/mobile.png"]},{"id":"073f1d8a7ed84e865a2d77ca9e9dce26ae5f5802","message":"fix(nestjs): drop duplicate UnprocessableEntityException import\n\nnest build (used by check:ui) rejected the duplicate specifier that\ntsc --noEmit had let through; no behaviour change.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/073f1d8a7ed84e865a2d77ca9e9dce26ae5f5802","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:28:07-07:00","added":[],"removed":[],"modified":["CLAUDE.md","apps/api-nestjs/src/material-factory/material-factory.service.ts","reports/dependency-audit.latest.json","reports/inference-acceptance.latest.json","reports/material-models.latest.json","reports/production-acceptance.latest.json","reports/public-file-acceptance.latest.json","reports/runtime-acceptance.latest.json","reports/script-acceptance.latest.json","reports/shijie-acceptance.latest.json","reports/sidecar-tests.latest.json","reports/ui-acceptance.latest.json"]},{"id":"31629b894234f670ddbfed625e2f329b61ec54da","message":"fix(write-chain): close G34 — hosted UNKNOWN isolation by marker, slot reconciliation, composition lease\n\n- creative-queue-policy: UNKNOWN isolation follows the server-side\n executionResource=HOSTED marker for any kind; ROLE/STILL hosted branches\n (catalog models and sidecar hosted-api capabilities) now write it\n- templates: updateTemplate reconciles slots by key (ids preserved);\n requestRenderJob / runRenderPipeline / autoOcrGate refuse detached\n instances with 422 INSTANCE_OVERRIDES_DETACHED; material-review guard\n forbids whole-table slot rebuilds\n- storyboard video compositions: updatedAt heartbeat lease, stale RUNNING\n rows fail with COMPOSITION_LEASE_EXPIRED and partial output is removed;\n release.py counts compositionActive as pending work\n- contracts unit tests, both backends' real-DB regressions, release tests\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/31629b894234f670ddbfed625e2f329b61ec54da","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:39-07:00","added":["docs/governance/log/2026-09-12-g34-write-chain.md"],"removed":[],"modified":["CLAUDE.md","apps/api-fastify/src/modules/material-factory/material-factory.service.ts","apps/api-fastify/src/modules/material-factory/shooting-script.service.ts","apps/api-fastify/src/plugins/queue.ts","apps/api-fastify/test/creative-queue-isolation.integration.test.ts","apps/api-fastify/test/material-template.integration.test.ts","apps/api-fastify/test/storyboard-video-composition.integration.test.ts","apps/api-nestjs/src/material-factory/material-factory.service.ts","apps/api-nestjs/src/material-factory/shooting-script.service.ts","apps/api-nestjs/src/material-factory/storyboard-video-composition-dispatcher.service.ts","apps/api-nestjs/test/creative-queue-isolation.integration.test.ts","apps/api-nestjs/test/material-template.integration.test.ts","apps/api-nestjs/test/storyboard-video-composition.integration.test.ts","deploy/vm/release.py","deploy/vm/release_test.py","packages/contracts/src/creative-queue-policy.test.ts","packages/contracts/src/creative-queue-policy.ts","packages/contracts/src/material-ocr-gate.test.ts","packages/contracts/src/material.ts","reports/material-review-concurrency-guard.latest.json","reports/production-security.latest.json","reports/schema-sync.latest.json","scripts/check-material-review-concurrency-guard.mjs"]}],"total_commits":0,"head_commit":{"id":"e9764103a19cefa8ecbc18c172a62f8c900a7b72","message":"test(write-chain): verify the G34 round\n\nEight fingerprint-bound gates and the full static chain passed on the\nG34 source (sha256:948e6d92c0eb2e85171357e1cec9fea0e8b9264474cb8622d7887a9a2f86efa3) in an isolated stack: contracts unit tests, both\nbackends' real-DB regressions for slot reconciliation, detached-instance\nrejection, marker-based UNKNOWN isolation and composition lease expiry;\nthe models snapshot reports 5/8 host weights. Evidence:\nacceptance-artifacts/g34-write-chain-2026-09-12/.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/e9764103a19cefa8ecbc18c172a62f8c900a7b72","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:38:23-07:00","added":[],"removed":[],"modified":["reports/admin-brands.desktop.png","reports/admin-brands.mobile.png","reports/admin-mobile.png","reports/content-detail.check-report-desktop.png","reports/content-detail.description-candidates-desktop.png","reports/content-detail.plans-desktop.png","reports/contract-consumers.latest.json","reports/creative-history-hidden.desktop.png","reports/creative-history-restore.mobile.png","reports/creative-quality.desktop.png","reports/dependency-audit.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/image-creation-1440.png","reports/image-edit-1135.png","reports/image-edit-1440.png","reports/image-edit-390.png","reports/image-edit-768.png","reports/image-edit-result.png","reports/inference-acceptance.latest.json","reports/material-models.latest.json","reports/material-review-concurrency-guard.latest.json","reports/migrations.latest.json","reports/model-api-key-saved.png","reports/model-credential-error.desktop.png","reports/model-credential-error.mobile.png","reports/module-boundary.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/prd-retry.mobile.png","reports/prd-review.desktop.png","reports/production-acceptance.latest.json","reports/production-delivery-released.desktop.png","reports/production-delivery-revoked.mobile.png","reports/production-pagination.desktop.png","reports/production-pagination.mobile.png","reports/production-review-preview.desktop.png","reports/production-security.latest.json","reports/production-single-tenant-create.desktop.png","reports/production-single-tenant-separation.desktop.png","reports/public-file-acceptance.latest.json","reports/public-file-integration.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/script-acceptance.latest.json","reports/script-generation-queue.png","reports/shijie-acceptance.latest.json","reports/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/storyboard-frame-dialog.desktop.first.png","reports/template-making.1135.png","reports/template-making.1280.png","reports/template-making.1440.png","reports/template-preview.templates.png","reports/template-saved-master.APPLICATION.png","reports/template-saved-master.GENERAL.png","reports/template-types.desktop.png","reports/toolchain.latest.json","reports/ui-acceptance.desktop.png","reports/ui-acceptance.draft-import.png","reports/ui-acceptance.latest.json","reports/ui-acceptance.mobile.png","reports/ui-acceptance.production.png","reports/ux-edit.desktop.png","reports/ux-home.desktop.png","reports/ux-home.mobile.png","reports/ux-intake.desktop.png","reports/validation-source.latest.json","reports/video-batch-paused.mobile.png","reports/video-regenerate-2026-09-08/desktop.png","reports/video-regenerate-2026-09-08/mobile.png"]},"repository":{"id":57,"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":"image-generation","full_name":"luoanwu/image-generation","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":935605,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation/languages","html_url":"https://gitea.g-hi.com/luoanwu/image-generation","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/image-generation.git","clone_url":"https://gitea.g-hi.com/luoanwu/image-generation.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":13,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-06T17:04:22+08:00","updated_at":"2026-09-12T14:45:10+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"}}...
|
push
|
2
|
4
|
1789198717
|
1789198760
|
0
|
1789198715
|
1789198760
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
17735
|
Add env-leak pre-commit guard and secrets-leak inc Add env-leak pre-commit guard and secrets-leak incident doc...
|
6
|
5
|
ci.yml
|
17656
|
5
|
0
|
refs/heads/main
|
bd8162cf2c08d175a1cab0f69d42b648bb825c10
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f8c99c0bccfc306a4dcc9afd03e1247a4ebd4a97","after":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/f8c99c0bccfc306a4dcc9afd03e1247a4ebd4a97...bd8162cf2c08d175a1cab0f69d42b648bb825c10","commits":[{"id":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","message":"Add env-leak pre-commit guard and secrets-leak incident doc\n\n- .husky/pre-commit: insert a serial first-position check that blocks\n any staged file ending in `.env` or `.env.local` from entering the\n index. Templates (`.env.example`, `.env.test`, `frontend/.env.development`,\n etc.) are not matched. Background and the previous incident are\n documented in docs/security/leaked-env-2026-04-26.md.\n\n- docs/security/leaked-env-2026-04-26.md: full incident record covering\n what leaked, what was done in 597fbdc49 and f8c99c0bc, what each team\n member needs to do locally, the rotation checklist for the four leaked\n secrets, and the conditions under which a history rewrite would be\n warranted (currently not).\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/bd8162cf2c08d175a1cab0f69d42b648bb825c10","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T08:56:37-07:00","added":["docs/security/leaked-env-2026-04-26.md"],"removed":[],"modified":[".husky/pre-commit"]}],"total_commits":0,"head_commit":{"id":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","message":"Add env-leak pre-commit guard and secrets-leak incident doc\n\n- .husky/pre-commit: insert a serial first-position check that blocks\n any staged file ending in `.env` or `.env.local` from entering the\n index. Templates (`.env.example`, `.env.test`, `frontend/.env.development`,\n etc.) are not matched. Background and the previous incident are\n documented in docs/security/leaked-env-2026-04-26.md.\n\n- docs/security/leaked-env-2026-04-26.md: full incident record covering\n what leaked, what was done in 597fbdc49 and f8c99c0bc, what each team\n member needs to do locally, the rotation checklist for the four leaked\n secrets, and the conditions under which a history rewrite would be\n warranted (currently not).\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/bd8162cf2c08d175a1cab0f69d42b648bb825c10","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T08:56:37-07:00","added":["docs/security/leaked-env-2026-04-26.md"],"removed":[],"modified":[".husky/pre-commit"]},"repository":{"id":6,"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":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5218086,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":14,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-26T23:52:27+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":false,"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"}}...
|
push
|
3
|
6
|
0
|
1777219584
|
0
|
1777219008
|
1777219585
|
group: ci-${{ github.ref }}
cancel-in-progress: group: ci-${{ github.ref }}
cancel-in-progress: "true"
...
|
ci-refs/heads/main
|
1
|
Edit
Delete
|
|
17736
|
Add env-leak pre-commit guard and secrets-leak inc Add env-leak pre-commit guard and secrets-leak incident doc...
|
6
|
5
|
e2e-tests.yml
|
17657
|
5
|
0
|
refs/heads/main
|
bd8162cf2c08d175a1cab0f69d42b648bb825c10
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f8c99c0bccfc306a4dcc9afd03e1247a4ebd4a97","after":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/f8c99c0bccfc306a4dcc9afd03e1247a4ebd4a97...bd8162cf2c08d175a1cab0f69d42b648bb825c10","commits":[{"id":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","message":"Add env-leak pre-commit guard and secrets-leak incident doc\n\n- .husky/pre-commit: insert a serial first-position check that blocks\n any staged file ending in `.env` or `.env.local` from entering the\n index. Templates (`.env.example`, `.env.test`, `frontend/.env.development`,\n etc.) are not matched. Background and the previous incident are\n documented in docs/security/leaked-env-2026-04-26.md.\n\n- docs/security/leaked-env-2026-04-26.md: full incident record covering\n what leaked, what was done in 597fbdc49 and f8c99c0bc, what each team\n member needs to do locally, the rotation checklist for the four leaked\n secrets, and the conditions under which a history rewrite would be\n warranted (currently not).\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/bd8162cf2c08d175a1cab0f69d42b648bb825c10","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T08:56:37-07:00","added":["docs/security/leaked-env-2026-04-26.md"],"removed":[],"modified":[".husky/pre-commit"]}],"total_commits":0,"head_commit":{"id":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","message":"Add env-leak pre-commit guard and secrets-leak incident doc\n\n- .husky/pre-commit: insert a serial first-position check that blocks\n any staged file ending in `.env` or `.env.local` from entering the\n index. Templates (`.env.example`, `.env.test`, `frontend/.env.development`,\n etc.) are not matched. Background and the previous incident are\n documented in docs/security/leaked-env-2026-04-26.md.\n\n- docs/security/leaked-env-2026-04-26.md: full incident record covering\n what leaked, what was done in 597fbdc49 and f8c99c0bc, what each team\n member needs to do locally, the rotation checklist for the four leaked\n secrets, and the conditions under which a history rewrite would be\n warranted (currently not).\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/bd8162cf2c08d175a1cab0f69d42b648bb825c10","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T08:56:37-07:00","added":["docs/security/leaked-env-2026-04-26.md"],"removed":[],"modified":[".husky/pre-commit"]},"repository":{"id":6,"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":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5218086,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":14,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-26T23:52:27+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":false,"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"}}...
|
push
|
2
|
20
|
1777222405
|
1777222654
|
0
|
1777219009
|
1777224776
|
|
|
0
|
Edit
Delete
|
|
17738
|
Add env-leak pre-commit guard and secrets-leak inc Add env-leak pre-commit guard and secrets-leak incident doc...
|
6
|
5
|
test-pipeline.yml
|
17658
|
5
|
0
|
refs/heads/main
|
bd8162cf2c08d175a1cab0f69d42b648bb825c10
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f8c99c0bccfc306a4dcc9afd03e1247a4ebd4a97","after":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/f8c99c0bccfc306a4dcc9afd03e1247a4ebd4a97...bd8162cf2c08d175a1cab0f69d42b648bb825c10","commits":[{"id":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","message":"Add env-leak pre-commit guard and secrets-leak incident doc\n\n- .husky/pre-commit: insert a serial first-position check that blocks\n any staged file ending in `.env` or `.env.local` from entering the\n index. Templates (`.env.example`, `.env.test`, `frontend/.env.development`,\n etc.) are not matched. Background and the previous incident are\n documented in docs/security/leaked-env-2026-04-26.md.\n\n- docs/security/leaked-env-2026-04-26.md: full incident record covering\n what leaked, what was done in 597fbdc49 and f8c99c0bc, what each team\n member needs to do locally, the rotation checklist for the four leaked\n secrets, and the conditions under which a history rewrite would be\n warranted (currently not).\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/bd8162cf2c08d175a1cab0f69d42b648bb825c10","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T08:56:37-07:00","added":["docs/security/leaked-env-2026-04-26.md"],"removed":[],"modified":[".husky/pre-commit"]}],"total_commits":0,"head_commit":{"id":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","message":"Add env-leak pre-commit guard and secrets-leak incident doc\n\n- .husky/pre-commit: insert a serial first-position check that blocks\n any staged file ending in `.env` or `.env.local` from entering the\n index. Templates (`.env.example`, `.env.test`, `frontend/.env.development`,\n etc.) are not matched. Background and the previous incident are\n documented in docs/security/leaked-env-2026-04-26.md.\n\n- docs/security/leaked-env-2026-04-26.md: full incident record covering\n what leaked, what was done in 597fbdc49 and f8c99c0bc, what each team\n member needs to do locally, the rotation checklist for the four leaked\n secrets, and the conditions under which a history rewrite would be\n warranted (currently not).\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/bd8162cf2c08d175a1cab0f69d42b648bb825c10","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T08:56:37-07:00","added":["docs/security/leaked-env-2026-04-26.md"],"removed":[],"modified":[".husky/pre-commit"]},"repository":{"id":6,"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":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5218086,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":14,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-26T23:52:27+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":false,"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"}}...
|
push
|
3
|
24
|
0
|
1777219587
|
0
|
1777219018
|
1777219591
|
group: test-pipeline-${{ github.ref }}
cancel-in-p group: test-pipeline-${{ github.ref }}
cancel-in-progress: "true"
...
|
test-pipeline-refs/heads/main
|
1
|
Edit
Delete
|
|
17739
|
Add env-leak pre-commit guard and secrets-leak inc Add env-leak pre-commit guard and secrets-leak incident doc...
|
6
|
5
|
health-check.yml
|
17660
|
-2
|
295
|
refs/heads/main
|
bd8162cf2c08d175a1cab0f69d42b648bb825c10
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f8c99c0bccfc306a4dcc9afd03e1247a4ebd4a97","after":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/f8c99c0bccfc306a4dcc9afd03e1247a4ebd4a97...bd8162cf2c08d175a1cab0f69d42b648bb825c10","commits":[{"id":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","message":"Add env-leak pre-commit guard and secrets-leak incident doc\n\n- .husky/pre-commit: insert a serial first-position check that blocks\n any staged file ending in `.env` or `.env.local` from entering the\n index. Templates (`.env.example`, `.env.test`, `frontend/.env.development`,\n etc.) are not matched. Background and the previous incident are\n documented in docs/security/leaked-env-2026-04-26.md.\n\n- docs/security/leaked-env-2026-04-26.md: full incident record covering\n what leaked, what was done in 597fbdc49 and f8c99c0bc, what each team\n member needs to do locally, the rotation checklist for the four leaked\n secrets, and the conditions under which a history rewrite would be\n warranted (currently not).\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/bd8162cf2c08d175a1cab0f69d42b648bb825c10","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T08:56:37-07:00","added":["docs/security/leaked-env-2026-04-26.md"],"removed":[],"modified":[".husky/pre-commit"]}],"total_commits":0,"head_commit":{"id":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","message":"Add env-leak pre-commit guard and secrets-leak incident doc\n\n- .husky/pre-commit: insert a serial first-position check that blocks\n any staged file ending in `.env` or `.env.local` from entering the\n index. Templates (`.env.example`, `.env.test`, `frontend/.env.development`,\n etc.) are not matched. Background and the previous incident are\n documented in docs/security/leaked-env-2026-04-26.md.\n\n- docs/security/leaked-env-2026-04-26.md: full incident record covering\n what leaked, what was done in 597fbdc49 and f8c99c0bc, what each team\n member needs to do locally, the rotation checklist for the four leaked\n secrets, and the conditions under which a history rewrite would be\n warranted (currently not).\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/bd8162cf2c08d175a1cab0f69d42b648bb825c10","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T08:56:37-07:00","added":["docs/security/leaked-env-2026-04-26.md"],"removed":[],"modified":[".husky/pre-commit"]},"repository":{"id":6,"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":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5218086,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":14,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-26T23:52:27+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":false,"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"}}...
|
schedule
|
4
|
4
|
1777222656
|
1777222656
|
0
|
1777219250
|
1777222656
|
|
|
0
|
Edit
Delete
|
|
17740
|
Add env-leak pre-commit guard and secrets-leak inc Add env-leak pre-commit guard and secrets-leak incident doc...
|
6
|
5
|
health-check.yml
|
17661
|
-2
|
295
|
refs/heads/main
|
bd8162cf2c08d175a1cab0f69d42b648bb825c10
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f8c99c0bccfc306a4dcc9afd03e1247a4ebd4a97","after":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/f8c99c0bccfc306a4dcc9afd03e1247a4ebd4a97...bd8162cf2c08d175a1cab0f69d42b648bb825c10","commits":[{"id":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","message":"Add env-leak pre-commit guard and secrets-leak incident doc\n\n- .husky/pre-commit: insert a serial first-position check that blocks\n any staged file ending in `.env` or `.env.local` from entering the\n index. Templates (`.env.example`, `.env.test`, `frontend/.env.development`,\n etc.) are not matched. Background and the previous incident are\n documented in docs/security/leaked-env-2026-04-26.md.\n\n- docs/security/leaked-env-2026-04-26.md: full incident record covering\n what leaked, what was done in 597fbdc49 and f8c99c0bc, what each team\n member needs to do locally, the rotation checklist for the four leaked\n secrets, and the conditions under which a history rewrite would be\n warranted (currently not).\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/bd8162cf2c08d175a1cab0f69d42b648bb825c10","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T08:56:37-07:00","added":["docs/security/leaked-env-2026-04-26.md"],"removed":[],"modified":[".husky/pre-commit"]}],"total_commits":0,"head_commit":{"id":"bd8162cf2c08d175a1cab0f69d42b648bb825c10","message":"Add env-leak pre-commit guard and secrets-leak incident doc\n\n- .husky/pre-commit: insert a serial first-position check that blocks\n any staged file ending in `.env` or `.env.local` from entering the\n index. Templates (`.env.example`, `.env.test`, `frontend/.env.development`,\n etc.) are not matched. Background and the previous incident are\n documented in docs/security/leaked-env-2026-04-26.md.\n\n- docs/security/leaked-env-2026-04-26.md: full incident record covering\n what leaked, what was done in 597fbdc49 and f8c99c0bc, what each team\n member needs to do locally, the rotation checklist for the four leaked\n secrets, and the conditions under which a history rewrite would be\n warranted (currently not).\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/bd8162cf2c08d175a1cab0f69d42b648bb825c10","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T08:56:37-07:00","added":["docs/security/leaked-env-2026-04-26.md"],"removed":[],"modified":[".husky/pre-commit"]},"repository":{"id":6,"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":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5218086,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":14,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-26T23:52:27+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":false,"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"}}...
|
schedule
|
4
|
4
|
1777222658
|
1777222658
|
0
|
1777219550
|
1777222658
|
|
|
0
|
Edit
Delete
|
|
23433
|
feat: 歌唱域质量治理与全面治理收口(C16/C17)
|
63
|
5
|
governance.yml
|
2
|
5
|
0
|
refs/heads/main
|
1b55d1eece101ec72f25af96f62713da05ae06ff
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f7f58401d267fffa37e2c7282f531354478eeebf","after":"1b55d1eece101ec72f25af96f62713da05ae06ff","compare_url":"https://gitea.g-hi.com/luoanwu/forced-alignment/compare/f7f58401d267fffa37e2c7282f531354478eeebf...1b55d1eece101ec72f25af96f62713da05ae06ff","commits":[{"id":"1b55d1eece101ec72f25af96f62713da05ae06ff","message":"feat: 歌唱域质量治理与全面治理收口(C16/C17)\n\n- 工作台:无词音频隔离(叶子字区间单源激活)+ 波形 1-16x 视窗缩放;e2e +2(共 7 用例)\n- contracts:Qwen3 域受限/演唱序列冲突 fail-closed 归一化;complete 契约补索引唯一/\n 按 index 时间单调/跨句跨字无重叠 fail-closed(蓝图 §6);asr_anchor 留档进 qualityData\n- C16:alignment 域纳入全部写链行为门禁(writeModels/租户入口/outbox/旁路 publish/\n 并发守护/校验单源/双后端红线+测试覆盖绊网),逐门禁负向验红;样板面板挂 /samples 回运行路径\n- C17:governance-report --update-baseline 改 merge 写入,保住 testsPassed/uiTestsPassed 地板\n- 两后端:complete/fail/accept 目标态收敛 assertTransition 单源;alignment 非法迁移补\n 409 INVALID_TRANSITION 判责(原 500);新增 fail/retry/409 判责验收用例\n- 文档:G20 如实改述(docs-truth 断言机器锁定)、G23 登记(工作台前端栈差距)、\n owner-matrix/蓝图口径修正、C16/C17 战役回灌经验库\n- 棘轮收紧:testsPassed 61→67、ownTestCases 68→74、uiTestsPassed 7;三级门禁\n 2026-07-21 本仓实跑全绿(check / check:runtime / check:ui)\n\nCo-Authored-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/forced-alignment/commit/1b55d1eece101ec72f25af96f62713da05ae06ff","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-21T19:55:12-07:00","added":["apps/web/src/app/samples/page.tsx"],"removed":[],"modified":["CLAUDE.md","apps/api-fastify/src/modules/alignment/alignment.service.ts","apps/api-fastify/src/routes/alignment-runs.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-nestjs/src/alignment/alignment.service.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/web/e2e/acceptance.spec.ts","apps/web/src/app/api/alignment/align/route.ts","apps/web/src/app/globals.css","apps/web/src/features/alignment/api/alignment.ts","apps/web/src/features/alignment/components/AlignmentWorkbench.tsx","deploy/.env.vm.example","deploy/docker-compose.vm.yml","docs/domain/forced-alignment-workbench-blueprint.md","docs/domain/owner-matrix.md","docs/governance-experience.md","packages/contracts/src/alignment.ts","packages/contracts/src/contracts.test.ts","reports/baseline.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-docs-truth.mjs","scripts/check-dual-backend-parity.mjs","scripts/check-order-concurrency-guard.mjs","scripts/check-validation-source.mjs","scripts/governance-report.mjs"]}],"total_commits":0,"head_commit":{"id":"1b55d1eece101ec72f25af96f62713da05ae06ff","message":"feat: 歌唱域质量治理与全面治理收口(C16/C17)\n\n- 工作台:无词音频隔离(叶子字区间单源激活)+ 波形 1-16x 视窗缩放;e2e +2(共 7 用例)\n- contracts:Qwen3 域受限/演唱序列冲突 fail-closed 归一化;complete 契约补索引唯一/\n 按 index 时间单调/跨句跨字无重叠 fail-closed(蓝图 §6);asr_anchor 留档进 qualityData\n- C16:alignment 域纳入全部写链行为门禁(writeModels/租户入口/outbox/旁路 publish/\n 并发守护/校验单源/双后端红线+测试覆盖绊网),逐门禁负向验红;样板面板挂 /samples 回运行路径\n- C17:governance-report --update-baseline 改 merge 写入,保住 testsPassed/uiTestsPassed 地板\n- 两后端:complete/fail/accept 目标态收敛 assertTransition 单源;alignment 非法迁移补\n 409 INVALID_TRANSITION 判责(原 500);新增 fail/retry/409 判责验收用例\n- 文档:G20 如实改述(docs-truth 断言机器锁定)、G23 登记(工作台前端栈差距)、\n owner-matrix/蓝图口径修正、C16/C17 战役回灌经验库\n- 棘轮收紧:testsPassed 61→67、ownTestCases 68→74、uiTestsPassed 7;三级门禁\n 2026-07-21 本仓实跑全绿(check / check:runtime / check:ui)\n\nCo-Authored-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/forced-alignment/commit/1b55d1eece101ec72f25af96f62713da05ae06ff","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-21T19:55:12-07:00","added":["apps/web/src/app/samples/page.tsx"],"removed":[],"modified":["CLAUDE.md","apps/api-fastify/src/modules/alignment/alignment.service.ts","apps/api-fastify/src/routes/alignment-runs.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-nestjs/src/alignment/alignment.service.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/web/e2e/acceptance.spec.ts","apps/web/src/app/api/alignment/align/route.ts","apps/web/src/app/globals.css","apps/web/src/features/alignment/api/alignment.ts","apps/web/src/features/alignment/components/AlignmentWorkbench.tsx","deploy/.env.vm.example","deploy/docker-compose.vm.yml","docs/domain/forced-alignment-workbench-blueprint.md","docs/domain/owner-matrix.md","docs/governance-experience.md","packages/contracts/src/alignment.ts","packages/contracts/src/contracts.test.ts","reports/baseline.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-docs-truth.mjs","scripts/check-dual-backend-parity.mjs","scripts/check-order-concurrency-guard.mjs","scripts/check-validation-source.mjs","scripts/governance-report.mjs"]},"repository":{"id":63,"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":"forced-alignment","full_name":"luoanwu/forced-alignment","description":"纯人声与歌词精准强制对齐工作台","empty":false,"private":true,"fork":false,"template":false,"mirror":false,"size":29497,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/forced-alignment/languages","html_url":"https://gitea.g-hi.com/luoanwu/forced-alignment","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/forced-alignment","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/forced-alignment.git","clone_url":"https://gitea.g-hi.com/luoanwu/forced-alignment.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-07-22T08:56:49+08:00","updated_at":"2026-07-22T08:59:29+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"}}...
|
push
|
2
|
6
|
1784688944
|
1784689972
|
0
|
1784688944
|
1784689973
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23533
|
feat(events): harden outbox delivery and map busin feat(events): harden outbox delivery and map business logic...
|
81
|
5
|
governance.yml
|
4
|
5
|
0
|
refs/heads/main
|
158a8d0a3ccc575be23117643ac664ec1b6f73dc
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f7f15c92e83a6df0de98d1d5df4dfdd9b63cd284","after":"158a8d0a3ccc575be23117643ac664ec1b6f73dc","compare_url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system/compare/f7f15c92e83a6df0de98d1d5df4dfdd9b63cd284...158a8d0a3ccc575be23117643ac664ec1b6f73dc","commits":[{"id":"158a8d0a3ccc575be23117643ac664ec1b6f73dc","message":"feat(events): harden outbox delivery and map business logic\n","url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system/commit/158a8d0a3ccc575be23117643ac664ec1b6f73dc","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-08-25T19:07:32-07:00","added":["apps/api-fastify/prisma/migrations/20260825190000_outbox_replay_cursor/migration.sql","apps/api-fastify/test/outbox.concurrency.test.ts","apps/api-nestjs/prisma/migrations/20260825190000_outbox_replay_cursor/migration.sql","apps/api-nestjs/test/outbox.concurrency.test.ts","docs/domain/business-logic-map.md"],"removed":[],"modified":["CLAUDE.md","README.md","apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/plugins/outbox.ts","apps/api-fastify/test/realtime.tenant.test.ts","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/src/events/outbox-dispatcher.service.ts","apps/web/src/store/realtime.ts","docs/README.md","docs/domain/owner-matrix.md","docs/governance-experience.md","packages/contracts/src/contracts.test.ts","packages/contracts/src/realtime.ts","reports/agent-adapters.latest.json","reports/auth-source.latest.json","reports/baseline.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/os-product.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/service-contracts.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-docs-truth.mjs","scripts/check-dual-backend-parity.mjs"]}],"total_commits":0,"head_commit":{"id":"158a8d0a3ccc575be23117643ac664ec1b6f73dc","message":"feat(events): harden outbox delivery and map business logic\n","url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system/commit/158a8d0a3ccc575be23117643ac664ec1b6f73dc","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-08-25T19:07:32-07:00","added":["apps/api-fastify/prisma/migrations/20260825190000_outbox_replay_cursor/migration.sql","apps/api-fastify/test/outbox.concurrency.test.ts","apps/api-nestjs/prisma/migrations/20260825190000_outbox_replay_cursor/migration.sql","apps/api-nestjs/test/outbox.concurrency.test.ts","docs/domain/business-logic-map.md"],"removed":[],"modified":["CLAUDE.md","README.md","apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/plugins/outbox.ts","apps/api-fastify/test/realtime.tenant.test.ts","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/src/events/outbox-dispatcher.service.ts","apps/web/src/store/realtime.ts","docs/README.md","docs/domain/owner-matrix.md","docs/governance-experience.md","packages/contracts/src/contracts.test.ts","packages/contracts/src/realtime.ts","reports/agent-adapters.latest.json","reports/auth-source.latest.json","reports/baseline.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/os-product.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/service-contracts.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-docs-truth.mjs","scripts/check-dual-backend-parity.mjs"]},"repository":{"id":81,"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":"juhai-after-sales-service-system","full_name":"luoanwu/juhai-after-sales-service-system","description":"巨嗨智服:受治理的 AI 售后服务系统","empty":false,"private":true,"fork":false,"template":false,"mirror":false,"size":2137,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhai-after-sales-service-system/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhai-after-sales-service-system","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhai-after-sales-service-system.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system.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-08-26T08:47:15+08:00","updated_at":"2026-08-26T09:52:09+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"}}...
|
push
|
3
|
4
|
0
|
1787711431
|
0
|
1787710066
|
1787711431
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23962
|
feat(ticket): govern automation configuration prov feat(ticket): govern automation configuration provenance...
|
82
|
5
|
governance.yml
|
3
|
5
|
0
|
refs/heads/main
|
ab2e7f155b4fbe2e9bebc1ac4887247efc0e97c7
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f78be17ac5fecb9cfa36e167b1e85ea26a48fa45","after":"ab2e7f155b4fbe2e9bebc1ac4887247efc0e97c7","compare_url":"https://gitea.g-hi.com/luoanwu/juhai-ai-work-order-system/compare/f78be17ac5fecb9cfa36e167b1e85ea26a48fa45...ab2e7f155b4fbe2e9bebc1ac4887247efc0e97c7","commits":[{"id":"ab2e7f155b4fbe2e9bebc1ac4887247efc0e97c7","message":"feat(ticket): govern automation configuration provenance\n\n- automation: record configuration provenance via new\n automation_configuration_provenance migration and configuration plugin\n- add packages/configuration-client and packages/notification-delivery\n- attachments: align service and package contracts, add package tests\n- web: rework UnifiedCalendarPanel and ticket page acceptance paths\n- add scripts/check-configuration-consumer gate and its evidence report\n- gitignore .codex/ alongside .codex-audit/ (local UX audit screenshots,\n not product source or governance input)\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhai-ai-work-order-system/commit/ab2e7f155b4fbe2e9bebc1ac4887247efc0e97c7","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:52:26-07:00","added":["apps/api-fastify/prisma/migrations/20260901180000_automation_configuration_provenance/migration.sql","apps/api-fastify/src/plugins/configuration.ts","apps/api-nestjs/prisma/migrations/20260901180000_automation_configuration_provenance/migration.sql","apps/api-nestjs/src/automation/automation-configuration.service.ts","design-qa.md","packages/attachments/README.md","packages/attachments/src/index.test.ts","packages/configuration-client/package.json","packages/configuration-client/src/index.test.ts","packages/configuration-client/src/index.ts","packages/configuration-client/tsconfig.json","packages/contracts/src/notification.test.ts","packages/contracts/src/notification.ts","packages/notification-delivery/README.md","packages/notification-delivery/package.json","packages/notification-delivery/src/index.test.ts","packages/notification-delivery/src/index.ts","packages/notification-delivery/tsconfig.json","reports/configuration-consumer.latest.json","scripts/check-configuration-consumer.mjs"],"removed":[],"modified":[".gitignore","CLAUDE.md","apps/api-fastify/package.json","apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/app.ts","apps/api-fastify/src/modules/attachments/attachments.service.ts","apps/api-fastify/src/modules/automation/automation.service.ts","apps/api-fastify/src/modules/ticket-operations/ticket-operations.service.ts","apps/api-fastify/src/plugins/automation-worker.ts","apps/api-fastify/src/routes/automation.ts","apps/api-fastify/src/types.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-nestjs/package.json","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/src/attachments/attachments.service.ts","apps/api-nestjs/src/automation/automation.module.ts","apps/api-nestjs/src/automation/automation.service.ts","apps/api-nestjs/src/ticket-operations/ticket-operations.service.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/web/e2e/acceptance.spec.ts","apps/web/e2e/oidc.acceptance.spec.ts","apps/web/src/app/page.tsx","apps/web/src/components/UnifiedCalendarPanel.tsx","deploy/k8s/README.md","deploy/k8s/base/platform.yaml","docs/domain-glossary.md","docs/domain/owner-matrix.md","docs/domain/ticket-system-blueprint.md","docs/governance-experience.md","governance.registry.json","package.json","packages/attachments/src/index.ts","packages/attachments/src/infrastructure.integration.test.ts","packages/contracts/src/index.ts","packages/contracts/src/ticket.ts","pnpm-lock.yaml","reports/agent-workflow-parity.latest.json","reports/baseline.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-behavior.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/identity-boundary.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/transactional-write-chain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","reports/write-governance.latest.json","scripts/check-runtime-acceptance.mjs","scripts/check-ui-acceptance.mjs","scripts/governance-report.mjs","turbo.json"]}],"total_commits":0,"head_commit":{"id":"ab2e7f155b4fbe2e9bebc1ac4887247efc0e97c7","message":"feat(ticket): govern automation configuration provenance\n\n- automation: record configuration provenance via new\n automation_configuration_provenance migration and configuration plugin\n- add packages/configuration-client and packages/notification-delivery\n- attachments: align service and package contracts, add package tests\n- web: rework UnifiedCalendarPanel and ticket page acceptance paths\n- add scripts/check-configuration-consumer gate and its evidence report\n- gitignore .codex/ alongside .codex-audit/ (local UX audit screenshots,\n not product source or governance input)\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhai-ai-work-order-system/commit/ab2e7f155b4fbe2e9bebc1ac4887247efc0e97c7","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:52:26-07:00","added":["apps/api-fastify/prisma/migrations/20260901180000_automation_configuration_provenance/migration.sql","apps/api-fastify/src/plugins/configuration.ts","apps/api-nestjs/prisma/migrations/20260901180000_automation_configuration_provenance/migration.sql","apps/api-nestjs/src/automation/automation-configuration.service.ts","design-qa.md","packages/attachments/README.md","packages/attachments/src/index.test.ts","packages/configuration-client/package.json","packages/configuration-client/src/index.test.ts","packages/configuration-client/src/index.ts","packages/configuration-client/tsconfig.json","packages/contracts/src/notification.test.ts","packages/contracts/src/notification.ts","packages/notification-delivery/README.md","packages/notification-delivery/package.json","packages/notification-delivery/src/index.test.ts","packages/notification-delivery/src/index.ts","packages/notification-delivery/tsconfig.json","reports/configuration-consumer.latest.json","scripts/check-configuration-consumer.mjs"],"removed":[],"modified":[".gitignore","CLAUDE.md","apps/api-fastify/package.json","apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/app.ts","apps/api-fastify/src/modules/attachments/attachments.service.ts","apps/api-fastify/src/modules/automation/automation.service.ts","apps/api-fastify/src/modules/ticket-operations/ticket-operations.service.ts","apps/api-fastify/src/plugins/automation-worker.ts","apps/api-fastify/src/routes/automation.ts","apps/api-fastify/src/types.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-nestjs/package.json","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/src/attachments/attachments.service.ts","apps/api-nestjs/src/automation/automation.module.ts","apps/api-nestjs/src/automation/automation.service.ts","apps/api-nestjs/src/ticket-operations/ticket-operations.service.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/web/e2e/acceptance.spec.ts","apps/web/e2e/oidc.acceptance.spec.ts","apps/web/src/app/page.tsx","apps/web/src/components/UnifiedCalendarPanel.tsx","deploy/k8s/README.md","deploy/k8s/base/platform.yaml","docs/domain-glossary.md","docs/domain/owner-matrix.md","docs/domain/ticket-system-blueprint.md","docs/governance-experience.md","governance.registry.json","package.json","packages/attachments/src/index.ts","packages/attachments/src/infrastructure.integration.test.ts","packages/contracts/src/index.ts","packages/contracts/src/ticket.ts","pnpm-lock.yaml","reports/agent-workflow-parity.latest.json","reports/baseline.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-behavior.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/identity-boundary.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/transactional-write-chain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","reports/write-governance.latest.json","scripts/check-runtime-acceptance.mjs","scripts/check-ui-acceptance.mjs","scripts/governance-report.mjs","turbo.json"]},"repository":{"id":82,"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":"juhai-ai-work-order-system","full_name":"luoanwu/juhai-ai-work-order-system","description":"巨嗨 AI 工单系统:治理型工单核心与 Digital Employee OS 产品适配层","empty":false,"private":true,"fork":false,"template":false,"mirror":false,"size":1421,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhai-ai-work-order-system/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhai-ai-work-order-system","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhai-ai-work-order-system","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhai-ai-work-order-system.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhai-ai-work-order-system.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-08-26T09:08:57+08:00","updated_at":"2026-08-28T18:46:30+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"}}...
|
push
|
2
|
6
|
1789441222
|
1789441251
|
0
|
1789440864
|
1789441252
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23451
|
fix(svc): complete worker control surface
|
64
|
5
|
governance.yml
|
9
|
5
|
0
|
refs/heads/main
|
759c0261a1cbec386f37f0c7f096f9f4efd57289
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f78049d487372e5538b1d202b65aa252031c8887","after":"759c0261a1cbec386f37f0c7f096f9f4efd57289","compare_url":"https://gitea.g-hi.com/luoanwu/voice-conversion/compare/f78049d487372e5538b1d202b65aa252031c8887...759c0261a1cbec386f37f0c7f096f9f4efd57289","commits":[{"id":"759c0261a1cbec386f37f0c7f096f9f4efd57289","message":"fix(svc): complete worker control surface\n","url":"https://gitea.g-hi.com/luoanwu/voice-conversion/commit/759c0261a1cbec386f37f0c7f096f9f4efd57289","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-22T01:48:47-07:00","added":[],"removed":[],"modified":["README.md","apps/api-fastify/test/http.acceptance.test.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/web/e2e/acceptance.spec.ts","apps/web/src/components/SvcPanel.tsx","docs/domain/svc-cover-blueprint.md"]},{"id":"ee66fa978cf5dfc16f7001f805c48f2993cb8b44","message":"Add cover worker controls and document voice conversion product\n","url":"https://gitea.g-hi.com/luoanwu/voice-conversion/commit/ee66fa978cf5dfc16f7001f805c48f2993cb8b44","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-22T01:40:28-07:00","added":[],"removed":[],"modified":["README.md","apps/api-fastify/src/modules/svc/cover-jobs.service.ts","apps/api-fastify/src/routes/cover-jobs.ts","apps/api-nestjs/src/svc/cover-jobs.controller.ts","apps/api-nestjs/src/svc/cover-jobs.service.ts","apps/web/src/components/SvcPanel.tsx","apps/web/src/lib/api.ts","apps/web/src/lib/types.ts","docs/README.md","docs/domain/svc-cover-blueprint.md","packages/contracts/src/cover.ts"]}],"total_commits":0,"head_commit":{"id":"759c0261a1cbec386f37f0c7f096f9f4efd57289","message":"fix(svc): complete worker control surface\n","url":"https://gitea.g-hi.com/luoanwu/voice-conversion/commit/759c0261a1cbec386f37f0c7f096f9f4efd57289","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-22T01:48:47-07:00","added":[],"removed":[],"modified":["README.md","apps/api-fastify/test/http.acceptance.test.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/web/e2e/acceptance.spec.ts","apps/web/src/components/SvcPanel.tsx","docs/domain/svc-cover-blueprint.md"]},"repository":{"id":64,"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":"voice-conversion","full_name":"luoanwu/voice-conversion","description":"SoulX-Singer personal singing voice conversion platform","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":1005,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/voice-conversion/languages","html_url":"https://gitea.g-hi.com/luoanwu/voice-conversion","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/voice-conversion","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/voice-conversion.git","clone_url":"https://gitea.g-hi.com/luoanwu/voice-conversion.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-07-22T14:37:12+08:00","updated_at":"2026-07-22T15:40:12+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"}}...
|
push
|
2
|
8
|
1784710408
|
1784710467
|
0
|
1784710407
|
1784710467
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23620
|
chore(reports): refresh clean static evidence
|
105
|
5
|
governance.yml
|
2
|
5
|
0
|
refs/heads/main
|
16292834a00b004e0380900be01b59b0fd948224
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f76fa1f553ada89174b9b59a934711373396a1f5","after":"16292834a00b004e0380900be01b59b0fd948224","compare_url":"https://gitea.g-hi.com/luoanwu/data-analytics/compare/f76fa1f553ada89174b9b59a934711373396a1f5...16292834a00b004e0380900be01b59b0fd948224","commits":[{"id":"16292834a00b004e0380900be01b59b0fd948224","message":"chore(reports): refresh clean static evidence\n","url":"https://gitea.g-hi.com/luoanwu/data-analytics/commit/16292834a00b004e0380900be01b59b0fd948224","author":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-09-02T17:35:03-07:00","added":[],"removed":[],"modified":["reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance-rules.latest.json","reports/governance-status.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/os-product-compat.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},{"id":"0ee4831afe93f3bcc525ffe0c2f1256c0023fc2a","message":"chore(reports): record clean framework sync evidence\n","url":"https://gitea.g-hi.com/luoanwu/data-analytics/commit/0ee4831afe93f3bcc525ffe0c2f1256c0023fc2a","author":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-09-02T17:29:36-07:00","added":[],"removed":[],"modified":["CLAUDE.md","docs/framework-migration.md","reports/baseline.json","reports/conformance-differential.latest.json","reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance-rules.latest.json","reports/governance-status.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/os-product-compat.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json"]},{"id":"eda8c953d87a1d84ea714e0af2798034b1382c77","message":"chore(migration): record framework sync receipt\n","url":"https://gitea.g-hi.com/luoanwu/data-analytics/commit/eda8c953d87a1d84ea714e0af2798034b1382c77","author":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-09-02T17:28:50-07:00","added":[],"removed":[],"modified":["docs/framework-migration.md","reports/framework-migration.latest.json"]},{"id":"e2bf36159c20eb4e79bab30fe54861e947c69443","message":"feat(framework): sync G15-B Redis occupancy guard and governance experience\n","url":"https://gitea.g-hi.com/luoanwu/data-analytics/commit/e2bf36159c20eb4e79bab30fe54861e947c69443","author":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-09-02T17:28:50-07:00","added":[],"removed":[],"modified":["CLAUDE.md","docs/framework-migration.md","docs/governance-experience.md","reports/baseline.json","reports/conformance-differential.latest.json","reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance-rules.latest.json","reports/governance-status.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/os-product-compat.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-conformance-differential.mjs","scripts/check-runtime-acceptance.mjs","scripts/check-ui-acceptance.mjs","scripts/lib/acceptance-base-guard.mjs"]},{"id":"1851d21ef02c10730feeb5943824a76055c8ae54","message":"chore(reports): refresh clean static evidence\n","url":"https://gitea.g-hi.com/luoanwu/data-analytics/commit/1851d21ef02c10730feeb5943824a76055c8ae54","author":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-09-02T01:30:45-07:00","added":[],"removed":[],"modified":["reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance-rules.latest.json","reports/governance-status.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/os-product-compat.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]}],"total_commits":0,"head_commit":{"id":"16292834a00b004e0380900be01b59b0fd948224","message":"chore(reports): refresh clean static evidence\n","url":"https://gitea.g-hi.com/luoanwu/data-analytics/commit/16292834a00b004e0380900be01b59b0fd948224","author":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-09-02T17:35:03-07:00","added":[],"removed":[],"modified":["reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance-rules.latest.json","reports/governance-status.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/os-product-compat.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},"repository":{"id":105,"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":"data-analytics","full_name":"luoanwu/data-analytics","description":"","empty":false,"private":true,"fork":false,"template":false,"mirror":false,"size":710,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/data-analytics/languages","html_url":"https://gitea.g-hi.com/luoanwu/data-analytics","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/data-analytics","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/data-analytics.git","clone_url":"https://gitea.g-hi.com/luoanwu/data-analytics.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-01T21:58:11+08:00","updated_at":"2026-09-01T21:59:46+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"}}...
|
push
|
2
|
10
|
1788406000
|
1788406091
|
0
|
1788405499
|
1788407524
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
...
|
governance-governance.yml-refs/heads/main
|
0
|
Edit
Delete
|
|
23412
|
C63:默认主链角色互换——HubertFA 为默认主对齐器,SOFA 降为二次窗口校验
|
60
|
5
|
governance.yml
|
2
|
5
|
0
|
refs/heads/main
|
a6e738a4e2b096ebd400cc03e3cbd92e6d3234f3
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f73daf0a17c4cd19344f03ba21afcc326a49a650","after":"a6e738a4e2b096ebd400cc03e3cbd92e6d3234f3","compare_url":"https://gitea.g-hi.com/luoanwu/haizan-ai-production-platform/compare/f73daf0a17c4cd19344f03ba21afcc326a49a650...a6e738a4e2b096ebd400cc03e3cbd92e6d3234f3","commits":[{"id":"a6e738a4e2b096ebd400cc03e3cbd92e6d3234f3","message":"C63:默认主链角色互换——HubertFA 为默认主对齐器,SOFA 降为二次窗口校验\n\n- contracts DEFAULT_MAIN_ALIGNER_ID sofa_mandarin -\u003e hubertfa(商用许可明确 +\n C61 拼接对齐 A/B 反超;内部/商用缺省口径合一),注册表 displayName/notes 同步,\n 契约测试锁「默认必须商用可选 + commercialUse=true」不变式\n- run_pipeline 新增 SOFA 真实声学二次窗口校验(6.5 步):回投主时钟后 SOFA\n (--no-hubert-verifier 子进程跨 venv)对同一输入独立二次对齐,逐行 onset/end\n \u003e250ms 标 sofa_boundary_disagreement(C50 角色完整镜像互换)\n- fail-closed 三层判责:商用上下文/缺 venv/缺 ckpt/执行失败均降级 portable\n 边界校验,verification.summary.mode + honesty.sofaSecondPass.skipReason 如实\n 登记;实测商用降级 + 内部研发真跑(73 行、60 行标复核)双路径\n- fastify HTTP 默认 run 断言随翻转更新;smoke 7/7、runner 47/47、\n check:runtime 316/316、check:ui 34/34、pnpm check 全绿\n\nCo-Authored-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/haizan-ai-production-platform/commit/a6e738a4e2b096ebd400cc03e3cbd92e6d3234f3","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-13T22:59:27-07:00","added":[],"removed":[],"modified":["CLAUDE.md","apps/api-fastify/test/alignment.http.test.ts","packages/contracts/src/alignment-models.test.ts","packages/contracts/src/alignment-models.ts","packages/contracts/src/alignment.test.ts","reports/alignment-models.latest.json","reports/contract-consumers.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/lyra-prototype-parity.latest.json","reports/migrations.latest.json","reports/model-assets.latest.json","reports/model-evidence/pipeline-smoke.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/song-library.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","workers/pipeline/run_pipeline.py"]},{"id":"d343e1b5b3a23790be6707e80fa48060a0984c1f","message":"C62:UI 随 C61 更新——主/校角色标签按 mainAlignerId 特化 + 拼接计划上卡\n\n- runMapping 新增 runOperationLabel/runVerifierLabel:local_align 标签\n sofa→「SOFA 字级对齐」/hubertfa→「HubertFA 拼接对齐」,校验器后缀\n hubertfa 主→SOFA、sofa 主→HubertFA(曾写死,hubertfa run 主/校陈述颠倒)\n- TopBar/InfoTab/RunEvidenceCard/StepModal(入队/运行态/verify/score 描述)\n 全部按 run 动态陈述;hubertfa 的 local_align 弹窗如实描述拼接对齐主路径\n- RunEvidenceCard 新增 lyra-concat-plan:proposal honesty.concat 真实计划上卡\n (保留块/剪除时长/带宽),非拼接 proposal 不渲染\n- LoadModal 注册表单源锁不动(verifier 角色语义分层属 contracts 层议题)\n- e2e:hubertfa 拼接文案断言 + SOFA 校验按钮/verifier 断言纠偏 + 拼接计划\n 正反用例;实页双向核验 hubertfa/sofa run 各自正确\n- check:ui 34/34、lyra-parity 绿、pnpm check 全绿;ownTestCases 349→350、\n uiTestsPassed 33→34\n\nCo-Authored-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/haizan-ai-production-platform/commit/d343e1b5b3a23790be6707e80fa48060a0984c1f","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-13T22:46:32-07:00","added":[],"removed":[],"modified":["CLAUDE.md","apps/web/e2e/lyra-studio.spec.ts","apps/web/src/features/lyra-studio/components/PipelineBar.tsx","apps/web/src/features/lyra-studio/components/TopBar.tsx","apps/web/src/features/lyra-studio/components/modals/StepModal.tsx","apps/web/src/features/lyra-studio/components/right/InfoTab.tsx","apps/web/src/features/lyra-studio/components/right/RunEvidenceCard.tsx","apps/web/src/features/lyra-studio/runMapping.ts","reports/alignment-models.latest.json","reports/baseline.json","reports/contract-consumers.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/lyra-prototype-parity.latest.json","reports/migrations.latest.json","reports/model-assets.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/song-library.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json"]},{"id":"41d8010779db5ae99520052ce9a87d9113453284","message":"C61:HubertFA 主对齐切换拼接对齐主路径(剪长间隙+带状全局一次性对齐+回投主时钟)\n\n- workers/pipeline --concat:粗窗保留块(±800ms,仅剪 \u003e2s 长空隙)拼接 + 480ms\n 真静音锚 -\u003e 全歌词一次性带状全局 forced-align -\u003e SOFA 校验后分段线性回投\n- 带状 Viterbi(行窗 ±400ms + 邻行夹紧 300ms)封顶长程漂移;ph_edge 边界\n logit 奖励推进转移(≤500ms 72.5%-\u003e92.8% 贡献显著)\n- runner 默认 HubertFA 命令追加 --concat(SOFA 主链与桩注入不受影响)\n- 晴天 A/B(同 vocals/切片/真值):行 ≤500ms 76.8%-\u003e92.75%(商用链首次过\n 80% 阈值)、p90 746-\u003e484ms、字 median 606-\u003e399ms;插值行 3 优 1 劣优雅退化;\n contracts 完整性 0 违规 + 生产 schema GREEN\n- 证据 reports/model-evidence/qingtian-precision-concat.latest.json(含迭代\n 方法论留痕:纯全局漂移教训/带状/夹紧/边界奖励/定参纪律)\n- 自测 --self-test-concat 11/11、smoke 7/7、runner 47/47、check:runtime 316/316\n\nCo-Authored-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/haizan-ai-production-platform/commit/41d8010779db5ae99520052ce9a87d9113453284","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-13T22:27:18-07:00","added":["reports/model-evidence/qingtian-precision-concat.latest.json"],"removed":[],"modified":["CLAUDE.md","packages/pipeline-runner/src/index.ts","packages/pipeline-runner/src/runner.test.ts","reports/alignment-models.latest.json","reports/contract-consumers.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/lyra-prototype-parity.latest.json","reports/migrations.latest.json","reports/model-assets.latest.json","reports/model-evidence/pipeline-smoke.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/song-library.latest.json","reports/validation-source.latest.json","workers/pipeline/run_pipeline.py"]},{"id":"67e69765b4cee2cc6384c3a280bfab7ec607e733","message":"C60:全局时间轴接真实结构证据,BPM 水合与解析层 tab 解耦\n\n- GlobalTimeline 结构色带消费 latestStructureEvidence(与音乐解析层同一读模型),\n 真实段不合并、段数与解析层一致;SegKind 补 outro;无证据回退装饰 fixture\n 并以 lyra-structure-source 徽标/data-structure-source 诚实标注\n- setRealBpm 同步从 AnalysisStub(仅 tab 激活时挂载)迁至常驻 useStudioBridge,\n 不点解析层全局时间轴也显示真实 BPM\n- e2e:装饰标注 → 注入真实 structure_evidence → 不点 tab 断言段数/outro/134 BPM 上轴\n- 棘轮:ownTestCases 348→349、uiTestsPassed 32→33(check:ui 33/33、pnpm check 全绿)\n\nCo-Authored-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/haizan-ai-production-platform/commit/67e69765b4cee2cc6384c3a280bfab7ec607e733","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-13T21:41:40-07:00","added":[],"removed":[],"modified":["CLAUDE.md","apps/web/e2e/lyra-studio.spec.ts","apps/web/src/features/alignment/queries.ts","apps/web/src/features/lyra-studio/components/left/AnalysisStub.tsx","apps/web/src/features/lyra-studio/components/timeline/GlobalTimeline.tsx","apps/web/src/features/lyra-studio/fixtures/segments.ts","apps/web/src/features/lyra-studio/hooks/useStudioBridge.ts","apps/web/src/features/lyra-studio/utils/styles.ts","reports/alignment-models.latest.json","reports/baseline.json","reports/contract-consumers.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/lyra-prototype-parity.latest.json","reports/migrations.latest.json","reports/model-assets.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/song-library.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json"]}],"total_commits":0,"head_commit":{"id":"a6e738a4e2b096ebd400cc03e3cbd92e6d3234f3","message":"C63:默认主链角色互换——HubertFA 为默认主对齐器,SOFA 降为二次窗口校验\n\n- contracts DEFAULT_MAIN_ALIGNER_ID sofa_mandarin -\u003e hubertfa(商用许可明确 +\n C61 拼接对齐 A/B 反超;内部/商用缺省口径合一),注册表 displayName/notes 同步,\n 契约测试锁「默认必须商用可选 + commercialUse=true」不变式\n- run_pipeline 新增 SOFA 真实声学二次窗口校验(6.5 步):回投主时钟后 SOFA\n (--no-hubert-verifier 子进程跨 venv)对同一输入独立二次对齐,逐行 onset/end\n \u003e250ms 标 sofa_boundary_disagreement(C50 角色完整镜像互换)\n- fail-closed 三层判责:商用上下文/缺 venv/缺 ckpt/执行失败均降级 portable\n 边界校验,verification.summary.mode + honesty.sofaSecondPass.skipReason 如实\n 登记;实测商用降级 + 内部研发真跑(73 行、60 行标复核)双路径\n- fastify HTTP 默认 run 断言随翻转更新;smoke 7/7、runner 47/47、\n check:runtime 316/316、check:ui 34/34、pnpm check 全绿\n\nCo-Authored-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/haizan-ai-production-platform/commit/a6e738a4e2b096ebd400cc03e3cbd92e6d3234f3","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-13T22:59:27-07:00","added":[],"removed":[],"modified":["CLAUDE.md","apps/api-fastify/test/alignment.http.test.ts","packages/contracts/src/alignment-models.test.ts","packages/contracts/src/alignment-models.ts","packages/contracts/src/alignment.test.ts","reports/alignment-models.latest.json","reports/contract-consumers.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/lyra-prototype-parity.latest.json","reports/migrations.latest.json","reports/model-assets.latest.json","reports/model-evidence/pipeline-smoke.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/song-library.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","workers/pipeline/run_pipeline.py"]},"repository":{"id":60,"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":"haizan-ai-production-platform","full_name":"luoanwu/haizan-ai-production-platform","description":"嗨赞AI制作平台:音频分离、歌曲结构分析与歌词精对齐生产工作台","empty":false,"private":true,"fork":false,"template":false,"mirror":false,"size":3461,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/haizan-ai-production-platform/languages","html_url":"https://gitea.g-hi.com/luoanwu/haizan-ai-production-platform","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/haizan-ai-production-platform","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/haizan-ai-production-platform.git","clone_url":"https://gitea.g-hi.com/luoanwu/haizan-ai-production-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-07-14T12:25:49+08:00","updated_at":"2026-07-14T12:26:15+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"}}...
|
push
|
3
|
4
|
0
|
1784010092
|
0
|
1784009830
|
1784010092
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23639
|
docs(governance): refresh remote snapshot evidence
|
76
|
5
|
governance.yml
|
39
|
5
|
0
|
refs/heads/main
|
a772517da3040f54e5d2c91fa5e1c133cabd3c17
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f6bd2a9868bc86b739584c2b3833b3d98d3eaf07","after":"a772517da3040f54e5d2c91fa5e1c133cabd3c17","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/f6bd2a9868bc86b739584c2b3833b3d98d3eaf07...a772517da3040f54e5d2c91fa5e1c133cabd3c17","commits":[{"id":"a772517da3040f54e5d2c91fa5e1c133cabd3c17","message":"docs(governance): refresh remote snapshot evidence\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/a772517da3040f54e5d2c91fa5e1c133cabd3c17","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-04T22:01:58-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/agent-adapters.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance.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/naming.latest.json","reports/operations.latest.json","reports/product-acceptance.latest.json","reports/product-migrations.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]}],"total_commits":0,"head_commit":{"id":"a772517da3040f54e5d2c91fa5e1c133cabd3c17","message":"docs(governance): refresh remote snapshot evidence\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/a772517da3040f54e5d2c91fa5e1c133cabd3c17","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-04T22:01:58-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/agent-adapters.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance.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/naming.latest.json","reports/operations.latest.json","reports/product-acceptance.latest.json","reports/product-migrations.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},"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":82651,"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":2,"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-09-05T12:58:57+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"}}...
|
push
|
2
|
64
|
1788584557
|
1788586687
|
0
|
1788584556
|
1788586719
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23814
|
docs(governance): 发布快照按 2026-09-10 晚 ls-remote 更新— docs(governance): 发布快照按 2026-09-10 晚 ls-remote 更新——两远端已到 f5b6f69(v0.5.0),v0.6.0 三提交未推送...
|
54
|
5
|
governance.yml
|
29
|
5
|
0
|
refs/heads/main
|
4a18e91045737eab943db36986074089b6c1923c
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f5b6f69ce1f8d3e92e5decf64aef434d235ce4de","after":"4a18e91045737eab943db36986074089b6c1923c","compare_url":"https://gitea.g-hi.com/luoanwu/base-framework/compare/f5b6f69ce1f8d3e92e5decf64aef434d235ce4de...4a18e91045737eab943db36986074089b6c1923c","commits":[{"id":"4a18e91045737eab943db36986074089b6c1923c","message":"docs(governance): 发布快照按 2026-09-10 晚 ls-remote 更新——两远端已到 f5b6f69(v0.5.0),v0.6.0 三提交未推送\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/4a18e91045737eab943db36986074089b6c1923c","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-09T19:52:06-07:00","added":[],"removed":[],"modified":["CLAUDE.md"]},{"id":"73c9031e503fda71451cce750e18cbfbc910035c","message":"chore(reports): refresh clean static evidence @ 7a9f675\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/73c9031e503fda71451cce750e18cbfbc910035c","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-09T19:49:53-07:00","added":[],"removed":[],"modified":["reports/agent-adapters.latest.json","reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance-rules.latest.json","reports/governance-status.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/os-product-compat.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},{"id":"7a9f67596b2f9997cf46afb4ca113a3ce9c7a0a3","message":"docs: record clean commit acceptance @ c1af469(runtime 231 / 差分 9×2 零差异 / UI 10;地板 testsPassed 225→231、ownTestCases 222→228;G29 第一半经验回灌)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/7a9f67596b2f9997cf46afb4ca113a3ce9c7a0a3","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-09T19:49:31-07:00","added":[],"removed":[],"modified":["CLAUDE.md","docs/governance-experience.md","reports/baseline.json","reports/conformance-differential.latest.json","reports/runtime-acceptance.latest.json","reports/ui-acceptance.latest.json"]},{"id":"c1af4695da80550a56a0bf4e6629f840c6f5978f","message":"feat(context): 请求上下文贯通 Outbox → Redis → 消费者(I9-B)+ 平台端口束接入装配点(G29 第一半)\n\n- Outbox 新增可空 request_id / trace_id(两后端迁移 20260910090000_outbox_request_context);10 处写链同 tx 落入\n- RealtimeEnvelope 可选 context{requestId,traceId};dispatcher/重放从 outbox 行带出;schema 校验;README 与 docs-truth 断言同步\n- 队列载荷携带 context,两后端 worker restoreRequestContext 后处理\n- NestJS PlatformPortsModule(PLATFORM_PORTS) / Fastify app.platformPorts:默认 createFailClosedPlatformPorts\n- 矩阵 +HTTP-REQUEST-CONTEXT-003、PORTS-FAIL-CLOSED-001(matrixVersion 4);差分 DIFF-OUTBOX-001 含 request id 存在性\n- contracts 101/101、typecheck/lint/迁移/矩阵/静态 pnpm check 全绿;版本 0.6.0\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/c1af4695da80550a56a0bf4e6629f840c6f5978f","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-09T19:45:56-07:00","added":["apps/api-fastify/prisma/migrations/20260910090000_outbox_request_context/migration.sql","apps/api-fastify/src/plugins/platform-ports.ts","apps/api-nestjs/prisma/migrations/20260910090000_outbox_request_context/migration.sql","apps/api-nestjs/src/platform/platform-ports.module.ts"],"removed":[],"modified":["CHANGELOG.md","CLAUDE.md","README.md","apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/app.ts","apps/api-fastify/src/lib/request-context.ts","apps/api-fastify/src/modules/orders/orders.service.ts","apps/api-fastify/src/modules/replay.ts","apps/api-fastify/src/modules/users/users.service.ts","apps/api-fastify/src/plugins/outbox.ts","apps/api-fastify/src/plugins/queue.ts","apps/api-fastify/src/routes/jobs.ts","apps/api-fastify/src/types.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/src/app.module.ts","apps/api-nestjs/src/common/request-context.ts","apps/api-nestjs/src/events/outbox-dispatcher.service.ts","apps/api-nestjs/src/events/replay.service.ts","apps/api-nestjs/src/orders/orders.service.ts","apps/api-nestjs/src/queue/jobs.controller.ts","apps/api-nestjs/src/queue/jobs.processor.ts","apps/api-nestjs/src/queue/queue.types.ts","apps/api-nestjs/src/users/users.service.ts","apps/api-nestjs/test/conformance.differential.ts","apps/api-nestjs/test/http.acceptance.test.ts","conformance.matrix.json","package.json","packages/contracts/package.json","packages/contracts/src/contracts.test.ts","packages/contracts/src/realtime.ts","packages/contracts/src/request-context.test.ts","packages/contracts/src/request-context.ts","scripts/check-docs-truth.mjs"]}],"total_commits":0,"head_commit":{"id":"4a18e91045737eab943db36986074089b6c1923c","message":"docs(governance): 发布快照按 2026-09-10 晚 ls-remote 更新——两远端已到 f5b6f69(v0.5.0),v0.6.0 三提交未推送\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/4a18e91045737eab943db36986074089b6c1923c","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-09T19:52:06-07:00","added":[],"removed":[],"modified":["CLAUDE.md"]},"repository":{"id":54,"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":"base-framework","full_name":"luoanwu/base-framework","description":"基础框架 monorepo","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":3668,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/base-framework/languages","html_url":"https://gitea.g-hi.com/luoanwu/base-framework","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/base-framework","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/base-framework.git","clone_url":"https://gitea.g-hi.com/luoanwu/base-framework.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":2,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-03T12:24:18+08:00","updated_at":"2026-09-10T10:36:03+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"}}...
|
push
|
2
|
10
|
1789010023
|
1789010068
|
0
|
1789010022
|
1789010077
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
...
|
governance-governance.yml-refs/heads/main
|
0
|
Edit
Delete
|
|
23771
|
docs(brand): record live haizan rollout
|
57
|
5
|
governance.yml
|
141
|
5
|
0
|
refs/heads/main
|
3cfab75162dc1cd724397fc086192678f095000f
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f4a3dc4e46944684ef2dbd52788ccc2eba01d330","after":"3cfab75162dc1cd724397fc086192678f095000f","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/f4a3dc4e46944684ef2dbd52788ccc2eba01d330...3cfab75162dc1cd724397fc086192678f095000f","commits":[{"id":"3cfab75162dc1cd724397fc086192678f095000f","message":"docs(brand): record live haizan rollout\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/3cfab75162dc1cd724397fc086192678f095000f","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-09T02:53:31-07:00","added":[],"removed":[],"modified":["reports/haizan-rename-20260909/README.md"]}],"total_commits":0,"head_commit":{"id":"3cfab75162dc1cd724397fc086192678f095000f","message":"docs(brand): record live haizan rollout\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/3cfab75162dc1cd724397fc086192678f095000f","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-09T02:53:31-07:00","added":[],"removed":[],"modified":["reports/haizan-rename-20260909/README.md"]},"repository":{"id":57,"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":"image-generation","full_name":"luoanwu/image-generation","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":770954,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation/languages","html_url":"https://gitea.g-hi.com/luoanwu/image-generation","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/image-generation.git","clone_url":"https://gitea.g-hi.com/luoanwu/image-generation.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":8,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-06T17:04:22+08:00","updated_at":"2026-09-09T17:51:17+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"}}...
|
push
|
3
|
3
|
0
|
1788947977
|
0
|
1788947630
|
1788947977
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24095
|
chore(reports): 门禁消费回绑 @ 69784be
|
117
|
5
|
governance.yml
|
58
|
5
|
0
|
refs/heads/main
|
6fb129d40fb9e160af6f70871eb8881ff5eef743
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f4540e69b1656232b677571584d3bd6ad57217be","after":"6fb129d40fb9e160af6f70871eb8881ff5eef743","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/f4540e69b1656232b677571584d3bd6ad57217be...6fb129d40fb9e160af6f70871eb8881ff5eef743","commits":[{"id":"6fb129d40fb9e160af6f70871eb8881ff5eef743","message":"chore(reports): 门禁消费回绑 @ 69784be\n\nR9 落地后第一条真实命中:69784be 改了 scripts/ 下两个文件,而 scripts/ 正是这份报告\n声明的输入之一(它拿 门禁消费登记.json 对盘受控脚本,读的是脚本内容不只是文件名)。\n干净树重跑,内容逐字未变,只有绑定前移——这正是「绑定干净不等于结论还成立」的反面:\n输入动了就该重跑,哪怕结论恰好没变。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/6fb129d40fb9e160af6f70871eb8881ff5eef743","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-18T00:55:46-07:00","added":[],"removed":[],"modified":["平台治理/基础/reports/门禁消费.latest.json"]},{"id":"69784be6b04c850ae1f2ea0b948344f9627738cf","message":"feat(governance): 报告登记门禁补 R9 / R10——绑定干净不等于结论还成立\n\nR7 / R8 守的是绑定本身(不脏、在历史上)。这一轮补另一半:**一份绑得干干净净的报告,\n结论仍可能早已被推翻**。2026-09-18 实测 `门禁消费.latest.json` 相对它自己的输入\n`门禁消费登记.json` 已经陈旧——登记表改了并提交了,报告停在旧文本,R1—R8 一条都不响。\n\n R9 LATEST_STALE 登记声明了 inputs,绑定 SHA → HEAD 之间这些输入有变更\n R10 INPUTS_UNACCOUNTED latest 既没声明 inputs、也没写明为什么判不了\n\n判据与真源仓 check:evidence 同口径:不看「落后几个提交」,看**该报告自己覆盖的输入**\n动没动。同目录的 latest 报告不算输入,它们是产物。\n\n四份 latest 逐条给出口径,禁止留空白:\n 门禁消费 inputs:门禁消费登记.json + scripts/(它正是拿登记表对盘受控脚本)\n 基础目录统一审计 判不了——读其它仓的 HEAD / 工作树 / 验收报告,全在治理仓历史之外,\n 且 ageHours 每跑一次都变,本仓任何提交都决定不了它是否仍成立\n 延后op 判不了一半——决议材料在本仓,活跃 Catalog 在嵌套独立仓(治理仓忽略该\n 目录,git diff 看不见)。只声明能判的一半会给出假绿,比不判更坏\n 门禁运行 判不了——编排产物,写 inputs 只能写成 scripts/ 这种筐,真源仓\n evidence-scopes 的同一条纪律禁止为覆盖率造模糊作用域\n\n集成用例改为只在真实登记上断言**结构类**规则。仓纪律 5 要求两次提交(实现,然后在它\n的干净树上回绑),必然存在一个提交报告是陈旧的——那是纪律规定的流程,不是缺陷;在\n单测里断言它为零等于让 pnpm test 在自家流程的中间一步必红。「待回绑」四条由阻断性\n门禁 check:reports 把关。该用例原本就已按同一理由排除 LATEST_WITHOUT_PROVENANCE,\n本轮只是把这一类补全。\n\n登记门禁测试 13 → 19,治理层全量 389(383 过 / 6 跳 / 0 失败)。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/69784be6b04c850ae1f2ea0b948344f9627738cf","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-18T00:55:24-07:00","added":[],"removed":[],"modified":["平台治理/基础/reports/登记.json","平台治理/基础/scripts/check-report-registry.mjs","平台治理/基础/scripts/lib/report-registry-core.mjs","平台治理/基础/tests/report-registry.test.mjs"]}],"total_commits":0,"head_commit":{"id":"6fb129d40fb9e160af6f70871eb8881ff5eef743","message":"chore(reports): 门禁消费回绑 @ 69784be\n\nR9 落地后第一条真实命中:69784be 改了 scripts/ 下两个文件,而 scripts/ 正是这份报告\n声明的输入之一(它拿 门禁消费登记.json 对盘受控脚本,读的是脚本内容不只是文件名)。\n干净树重跑,内容逐字未变,只有绑定前移——这正是「绑定干净不等于结论还成立」的反面:\n输入动了就该重跑,哪怕结论恰好没变。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/6fb129d40fb9e160af6f70871eb8881ff5eef743","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-18T00:55:46-07:00","added":[],"removed":[],"modified":["平台治理/基础/reports/门禁消费.latest.json"]},"repository":{"id":117,"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":"platform-governance","full_name":"luoanwu/platform-governance","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":9556,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/platform-governance/languages","html_url":"https://gitea.g-hi.com/luoanwu/platform-governance","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/platform-governance","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/platform-governance.git","clone_url":"https://gitea.g-hi.com/luoanwu/platform-governance.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":2,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-09-15T11:53:24+08:00","updated_at":"2026-09-18T15:54: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"}}...
|
push
|
1
|
4
|
1789718151
|
1789718166
|
0
|
1789718149
|
1789718166
|
|
|
0
|
Edit
Delete
|
|
24150
|
chore(reports): F14 落地的二十八份静态证据 回绑 @ 402f502,刷新快照锚 chore(reports): F14 落地的二十八份静态证据 回绑 @ 402f502,刷新快照锚点...
|
76
|
5
|
governance.yml
|
84
|
5
|
0
|
refs/heads/main
|
85a263fb1667d12318daa5601f7e6e23284c5dfd
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f3d2cfe8c6567a9f343080ec659543e412c4e688","after":"85a263fb1667d12318daa5601f7e6e23284c5dfd","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/f3d2cfe8c6567a9f343080ec659543e412c4e688...85a263fb1667d12318daa5601f7e6e23284c5dfd","commits":[{"id":"85a263fb1667d12318daa5601f7e6e23284c5dfd","message":"chore(reports): F14 落地的二十八份静态证据 回绑 @ 402f502,刷新快照锚点\n\n本批次最后一个提交,按 C241 同时刷新快照锚点到 402f502(声明落后 0,本提交自身使实测\n落后 1,在 +1 自指窗内)。\n\n二十八份 reports/*.latest.json 全部 clean 绑定(gitSha=402f502、worktreeDirty:false)。\n静态整轮 28/28 步骤全部通过(退出码 0)。\n\nfork-readiness 报告的 frameworkCriteriaRegisteredMissing 由 3 降为 2(F14 转 implemented),\ndeclared 仍 14、交叉核对 verified。\n\n未跑运行态:本批只改 compose 顶层 name / 宿主端口参数化与门禁脚本,未动任何应用运行代码,\nruntime 证据仍绑 df72512(733 / 204-204 / 零违规)且未失效。compose 的实际效果要到下次\ndocker compose up 才体现——改名时两个 project 下均无容器与卷,不存在需要迁移的运行态。\n\n工作区内三份 reports/ui-*.latest.json 的改动早于本批次,未提交也未还原。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/85a263fb1667d12318daa5601f7e6e23284c5dfd","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-18T15:55:42-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/agent-adapters.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.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/naming.latest.json","reports/operations.latest.json","reports/platform-dependency-provenance.latest.json","reports/product-acceptance.latest.json","reports/product-migrations.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},{"id":"402f502bec6d503e2e6c8b1319b0862eb2b9ed03","message":"feat(governance): 落地框架 F14——compose 身份派生自包名,本仓退出 L9 的 project 共用\n\n框架判据 F14 由 missing 转 implemented。这是三条 missing 里唯一不阻塞于「内核退回 pin」\n立项本身的,故先做。\n\n**问题(工作区 L9 的本仓实证):** compose 在没有顶层 name / -p / COMPOSE_PROJECT_NAME 时\n按**文件所在目录名**推导 project。开发基座在每个派生仓里都住在 apps/api-nestjs/,于是所有仓\n推导出同一个 project `api-nestjs`,共用具名卷与容器名——后 up 者接管先起者。一致性门禁实测\n本机 8 个仓共用该 project,本仓是其中之一。这与 F3(测试库名前缀)、F12(RLS 组角色名)同族:\n**集群级资源的身份必须派生自 package.json name**。\n\n两处实体修复:\n apps/api-nestjs/docker-compose.yml 补 name: ${COMPOSE_PROJECT_NAME:-digital-employee-os}\n redis 宿主端口 \"6379:6379\" → \"${REDIS_PORT:-6379}:6379\"\n (postgres 那条原本就已参数化)\n deploy/production/compose.yml 默认值 deos-production → digital-employee-os-production\n (原值既非包名派生身份、也非其 digital-employee-os-* 子命名)\n\n**改名零中断**:动手前实测两个 project 下均无容器与卷(docker ps -a / volume ls 按\ncom.docker.compose.project 标签查,皆空)。我先前提过「要挑运维窗口」——实测之后这个顾虑\n不成立,如实更正。\n\n门禁实现与框架有一处口径差异,已登记在门禁注释与 framework-criteria.json:\n**本仓限定扫 git 跟踪的 compose**,框架按目录黑名单遍历全仓。理由是本仓有 gitignored 的\ntmp/ops-config/compose.local.yml(本机运维配置,随时重建),扫未跟踪的本地状态会让门禁在\n别人 clone 后得出不同结论——**不可复现的判据比没有判据更糟**。\n\n三条负向探针实活验证,非只读代码推断:去掉顶层 name、端口写死、身份写成别的仓(api-nestjs),\n各自如期转红,还原后复验绿。\n\n效果:工作区一致性门禁 L9 的共用仓数 **8 → 7,本仓出列**(其余 7 仓是各自 Owner 的事)。\n框架判据覆盖:implemented 10(+F14)、missing 2(F8 / F11,均阻塞于内核退回 pin 立项)、\nimplemented-elsewhere 1、not-applicable 1。\n\n静态整轮 28/28。本批未改运行代码,runtime 仍绑 df72512。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/402f502bec6d503e2e6c8b1319b0862eb2b9ed03","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-18T15:53:53-07:00","added":[],"removed":[],"modified":["CLAUDE.md","apps/api-nestjs/docker-compose.yml","deploy/production/compose.yml","framework-criteria.json","scripts/check-fork-readiness.mjs"]}],"total_commits":0,"head_commit":{"id":"85a263fb1667d12318daa5601f7e6e23284c5dfd","message":"chore(reports): F14 落地的二十八份静态证据 回绑 @ 402f502,刷新快照锚点\n\n本批次最后一个提交,按 C241 同时刷新快照锚点到 402f502(声明落后 0,本提交自身使实测\n落后 1,在 +1 自指窗内)。\n\n二十八份 reports/*.latest.json 全部 clean 绑定(gitSha=402f502、worktreeDirty:false)。\n静态整轮 28/28 步骤全部通过(退出码 0)。\n\nfork-readiness 报告的 frameworkCriteriaRegisteredMissing 由 3 降为 2(F14 转 implemented),\ndeclared 仍 14、交叉核对 verified。\n\n未跑运行态:本批只改 compose 顶层 name / 宿主端口参数化与门禁脚本,未动任何应用运行代码,\nruntime 证据仍绑 df72512(733 / 204-204 / 零违规)且未失效。compose 的实际效果要到下次\ndocker compose up 才体现——改名时两个 project 下均无容器与卷,不存在需要迁移的运行态。\n\n工作区内三份 reports/ui-*.latest.json 的改动早于本批次,未提交也未还原。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/85a263fb1667d12318daa5601f7e6e23284c5dfd","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-18T15:55:42-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/agent-adapters.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.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/naming.latest.json","reports/operations.latest.json","reports/platform-dependency-provenance.latest.json","reports/product-acceptance.latest.json","reports/product-migrations.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},"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":88985,"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-09-19T06:49:14+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"}}...
|
push
|
2
|
36
|
1789772147
|
1789772238
|
0
|
1789772145
|
1789772364
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24151
|
chore(reports): F14 落地的二十八份静态证据 回绑 @ 402f502,刷新快照锚 chore(reports): F14 落地的二十八份静态证据 回绑 @ 402f502,刷新快照锚点...
|
76
|
5
|
platform-governance.yml
|
85
|
5
|
0
|
refs/heads/main
|
85a263fb1667d12318daa5601f7e6e23284c5dfd
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f3d2cfe8c6567a9f343080ec659543e412c4e688","after":"85a263fb1667d12318daa5601f7e6e23284c5dfd","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/f3d2cfe8c6567a9f343080ec659543e412c4e688...85a263fb1667d12318daa5601f7e6e23284c5dfd","commits":[{"id":"85a263fb1667d12318daa5601f7e6e23284c5dfd","message":"chore(reports): F14 落地的二十八份静态证据 回绑 @ 402f502,刷新快照锚点\n\n本批次最后一个提交,按 C241 同时刷新快照锚点到 402f502(声明落后 0,本提交自身使实测\n落后 1,在 +1 自指窗内)。\n\n二十八份 reports/*.latest.json 全部 clean 绑定(gitSha=402f502、worktreeDirty:false)。\n静态整轮 28/28 步骤全部通过(退出码 0)。\n\nfork-readiness 报告的 frameworkCriteriaRegisteredMissing 由 3 降为 2(F14 转 implemented),\ndeclared 仍 14、交叉核对 verified。\n\n未跑运行态:本批只改 compose 顶层 name / 宿主端口参数化与门禁脚本,未动任何应用运行代码,\nruntime 证据仍绑 df72512(733 / 204-204 / 零违规)且未失效。compose 的实际效果要到下次\ndocker compose up 才体现——改名时两个 project 下均无容器与卷,不存在需要迁移的运行态。\n\n工作区内三份 reports/ui-*.latest.json 的改动早于本批次,未提交也未还原。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/85a263fb1667d12318daa5601f7e6e23284c5dfd","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-18T15:55:42-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/agent-adapters.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.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/naming.latest.json","reports/operations.latest.json","reports/platform-dependency-provenance.latest.json","reports/product-acceptance.latest.json","reports/product-migrations.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},{"id":"402f502bec6d503e2e6c8b1319b0862eb2b9ed03","message":"feat(governance): 落地框架 F14——compose 身份派生自包名,本仓退出 L9 的 project 共用\n\n框架判据 F14 由 missing 转 implemented。这是三条 missing 里唯一不阻塞于「内核退回 pin」\n立项本身的,故先做。\n\n**问题(工作区 L9 的本仓实证):** compose 在没有顶层 name / -p / COMPOSE_PROJECT_NAME 时\n按**文件所在目录名**推导 project。开发基座在每个派生仓里都住在 apps/api-nestjs/,于是所有仓\n推导出同一个 project `api-nestjs`,共用具名卷与容器名——后 up 者接管先起者。一致性门禁实测\n本机 8 个仓共用该 project,本仓是其中之一。这与 F3(测试库名前缀)、F12(RLS 组角色名)同族:\n**集群级资源的身份必须派生自 package.json name**。\n\n两处实体修复:\n apps/api-nestjs/docker-compose.yml 补 name: ${COMPOSE_PROJECT_NAME:-digital-employee-os}\n redis 宿主端口 \"6379:6379\" → \"${REDIS_PORT:-6379}:6379\"\n (postgres 那条原本就已参数化)\n deploy/production/compose.yml 默认值 deos-production → digital-employee-os-production\n (原值既非包名派生身份、也非其 digital-employee-os-* 子命名)\n\n**改名零中断**:动手前实测两个 project 下均无容器与卷(docker ps -a / volume ls 按\ncom.docker.compose.project 标签查,皆空)。我先前提过「要挑运维窗口」——实测之后这个顾虑\n不成立,如实更正。\n\n门禁实现与框架有一处口径差异,已登记在门禁注释与 framework-criteria.json:\n**本仓限定扫 git 跟踪的 compose**,框架按目录黑名单遍历全仓。理由是本仓有 gitignored 的\ntmp/ops-config/compose.local.yml(本机运维配置,随时重建),扫未跟踪的本地状态会让门禁在\n别人 clone 后得出不同结论——**不可复现的判据比没有判据更糟**。\n\n三条负向探针实活验证,非只读代码推断:去掉顶层 name、端口写死、身份写成别的仓(api-nestjs),\n各自如期转红,还原后复验绿。\n\n效果:工作区一致性门禁 L9 的共用仓数 **8 → 7,本仓出列**(其余 7 仓是各自 Owner 的事)。\n框架判据覆盖:implemented 10(+F14)、missing 2(F8 / F11,均阻塞于内核退回 pin 立项)、\nimplemented-elsewhere 1、not-applicable 1。\n\n静态整轮 28/28。本批未改运行代码,runtime 仍绑 df72512。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/402f502bec6d503e2e6c8b1319b0862eb2b9ed03","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-18T15:53:53-07:00","added":[],"removed":[],"modified":["CLAUDE.md","apps/api-nestjs/docker-compose.yml","deploy/production/compose.yml","framework-criteria.json","scripts/check-fork-readiness.mjs"]}],"total_commits":0,"head_commit":{"id":"85a263fb1667d12318daa5601f7e6e23284c5dfd","message":"chore(reports): F14 落地的二十八份静态证据 回绑 @ 402f502,刷新快照锚点\n\n本批次最后一个提交,按 C241 同时刷新快照锚点到 402f502(声明落后 0,本提交自身使实测\n落后 1,在 +1 自指窗内)。\n\n二十八份 reports/*.latest.json 全部 clean 绑定(gitSha=402f502、worktreeDirty:false)。\n静态整轮 28/28 步骤全部通过(退出码 0)。\n\nfork-readiness 报告的 frameworkCriteriaRegisteredMissing 由 3 降为 2(F14 转 implemented),\ndeclared 仍 14、交叉核对 verified。\n\n未跑运行态:本批只改 compose 顶层 name / 宿主端口参数化与门禁脚本,未动任何应用运行代码,\nruntime 证据仍绑 df72512(733 / 204-204 / 零违规)且未失效。compose 的实际效果要到下次\ndocker compose up 才体现——改名时两个 project 下均无容器与卷,不存在需要迁移的运行态。\n\n工作区内三份 reports/ui-*.latest.json 的改动早于本批次,未提交也未还原。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/85a263fb1667d12318daa5601f7e6e23284c5dfd","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-18T15:55:42-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/agent-adapters.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.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/naming.latest.json","reports/operations.latest.json","reports/platform-dependency-provenance.latest.json","reports/product-acceptance.latest.json","reports/product-migrations.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},"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":88985,"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-09-19T06:49:14+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"}}...
|
push
|
2
|
8
|
1789772238
|
1789772247
|
0
|
1789772145
|
1789772365
|
|
|
0
|
Edit
Delete
|
|
23672
|
docs(release): record verified r30 logo generation docs(release): record verified r30 logo generation deployment...
|
57
|
5
|
governance.yml
|
43
|
5
|
0
|
refs/heads/main
|
5c5f53596f9a2708d0c44259cf34ec7b9a42c13d
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f328e2ce1eb7ac1a7bacad695824ca809bb7677a","after":"5c5f53596f9a2708d0c44259cf34ec7b9a42c13d","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/f328e2ce1eb7ac1a7bacad695824ca809bb7677a...5c5f53596f9a2708d0c44259cf34ec7b9a42c13d","commits":[{"id":"5c5f53596f9a2708d0c44259cf34ec7b9a42c13d","message":"docs(release): record verified r30 logo generation deployment\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/5c5f53596f9a2708d0c44259cf34ec7b9a42c13d","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-07T05:55:22-07:00","added":["docs/releases/2026-09-07-r30.md"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-07-logo-ai-button.md","docs/releases/current.md","reports/contract-consumers.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/material-review-concurrency-guard.latest.json","reports/migrations.latest.json","reports/module-boundary.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/production-security.latest.json","reports/public-file-integration.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/validation-source.latest.json"]}],"total_commits":0,"head_commit":{"id":"5c5f53596f9a2708d0c44259cf34ec7b9a42c13d","message":"docs(release): record verified r30 logo generation deployment\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/5c5f53596f9a2708d0c44259cf34ec7b9a42c13d","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-07T05:55:22-07:00","added":["docs/releases/2026-09-07-r30.md"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-07-logo-ai-button.md","docs/releases/current.md","reports/contract-consumers.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/material-review-concurrency-guard.latest.json","reports/migrations.latest.json","reports/module-boundary.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/production-security.latest.json","reports/public-file-integration.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/validation-source.latest.json"]},"repository":{"id":57,"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":"image-generation","full_name":"luoanwu/image-generation","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":625556,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation/languages","html_url":"https://gitea.g-hi.com/luoanwu/image-generation","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/image-generation.git","clone_url":"https://gitea.g-hi.com/luoanwu/image-generation.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":5,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-06T17:04:22+08:00","updated_at":"2026-09-07T20:49:20+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"}}...
|
push
|
2
|
4
|
1788785739
|
1788785770
|
0
|
1788785738
|
1788785770
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23909
|
chore(reports): refresh clean static evidence @ f3 chore(reports): refresh clean static evidence @ f31db83(合并 GitHub main / PR #12 后:根链全绿,治理 126 / 运行时静态 100;报告冲突以重生成取代任一侧)...
|
116
|
5
|
platform.yml
|
35
|
5
|
0
|
refs/heads/main
|
77602cdf7a9911f9793643823f8874cd24dd1a2e
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f31db83e710288e6b5c5069c7e2a82a2e3a10972","after":"77602cdf7a9911f9793643823f8874cd24dd1a2e","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/f31db83e710288e6b5c5069c7e2a82a2e3a10972...77602cdf7a9911f9793643823f8874cd24dd1a2e","commits":[{"id":"77602cdf7a9911f9793643823f8874cd24dd1a2e","message":"chore(reports): refresh clean static evidence @ f31db83(合并 GitHub main / PR #12 后:根链全绿,治理 126 / 运行时静态 100;报告冲突以重生成取代任一侧)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/77602cdf7a9911f9793643823f8874cd24dd1a2e","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-12T06:29:22-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"]}],"total_commits":0,"head_commit":{"id":"77602cdf7a9911f9793643823f8874cd24dd1a2e","message":"chore(reports): refresh clean static evidence @ f31db83(合并 GitHub main / PR #12 后:根链全绿,治理 126 / 运行时静态 100;报告冲突以重生成取代任一侧)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/77602cdf7a9911f9793643823f8874cd24dd1a2e","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-12T06:29:22-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"]},"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":4602,"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":5,"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-12T21:28:46+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"}}...
|
push
|
2
|
34
|
1789219908
|
1789219969
|
0
|
1789219765
|
1789220050
|
group: platform-${{ github.workflow }}-${{ github. group: platform-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
...
|
platform-platform.yml-refs/heads/main
|
0
|
Edit
Delete
|
|
23538
|
Expand governance controls and cross-layer runtime Expand governance controls and cross-layer runtime validation...
|
84
|
5
|
governance.yml
|
2
|
5
|
0
|
refs/heads/main
|
4459ca7bf19df30ae3879f2027b7fb05b3e3ba2d
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f2a674de3343d5031dee856edd261194709b727f","after":"4459ca7bf19df30ae3879f2027b7fb05b3e3ba2d","compare_url":"https://gitea.g-hi.com/luoanwu/juhai-knowledge-cloud/compare/f2a674de3343d5031dee856edd261194709b727f...4459ca7bf19df30ae3879f2027b7fb05b3e3ba2d","commits":[{"id":"4459ca7bf19df30ae3879f2027b7fb05b3e3ba2d","message":"Expand governance controls and cross-layer runtime validation\n","url":"https://gitea.g-hi.com/luoanwu/juhai-knowledge-cloud/commit/4459ca7bf19df30ae3879f2027b7fb05b3e3ba2d","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-08-27T06:17:02-07:00","added":[".agents/skills/business-module-intake/SKILL.md",".agents/skills/frontend-api-react/SKILL.md",".agents/skills/frontend-view-react/SKILL.md",".agents/skills/fullstack-7layer-react/SKILL.md",".agents/skills/zustand-store/SKILL.md",".dockerignore","Dockerfile","apps/api-fastify/prisma/migrations/20260827120000_add_knowledge_index_retry/migration.sql","apps/api-fastify/prisma/migrations/20260827150000_add_knowledge_chunks/migration.sql","apps/api-fastify/src/modules/knowledge/knowledge-indexer.ts","apps/api-fastify/src/plugins/api-error-handler.ts","apps/api-fastify/src/plugins/auth.ts","apps/api-fastify/test/auth.jwt.acceptance.test.ts","apps/api-fastify/test/fixtures/outbox-multiprocess-worker.ts","apps/api-fastify/test/health.degraded.test.ts","apps/api-fastify/test/http-rate-limit.redis.test.ts","apps/api-fastify/test/job.failed.exhaustion.test.ts","apps/api-fastify/test/knowledge-index.retry.test.ts","apps/api-fastify/test/observability.otlp.test.ts","apps/api-fastify/test/outbox.lifecycle.test.ts","apps/api-fastify/test/outbox.multiprocess.test.ts","apps/api-nestjs/prisma/migrations/20260827120000_add_knowledge_index_retry/migration.sql","apps/api-nestjs/prisma/migrations/20260827150000_add_knowledge_chunks/migration.sql","apps/api-nestjs/src/auth/auth-request.ts","apps/api-nestjs/src/auth/auth.module.ts","apps/api-nestjs/src/auth/auth.service.ts","apps/api-nestjs/src/auth/authentication.guard.ts","apps/api-nestjs/src/common/api-exception.filter.ts","apps/api-nestjs/src/events/dead-letter-replay.ts","apps/api-nestjs/src/knowledge/knowledge-index.service.ts","apps/api-nestjs/src/observability/observability.service.ts","apps/api-nestjs/src/ops/replay-dead-letter.ts","apps/api-nestjs/test/auth.jwt.acceptance.test.ts","apps/api-nestjs/test/backend.behavior.parity.test.ts","apps/api-nestjs/test/health.degraded.test.ts","apps/api-nestjs/test/job.failed.exhaustion.test.ts","apps/api-nestjs/test/knowledge-index.retry.test.ts","apps/api-nestjs/test/observability.otlp.test.ts","apps/api-nestjs/test/outbox.replay.test.ts","apps/api-nestjs/vitest.parity.config.ts","apps/web/next.config.mjs","compose.production.yml","docs/outbox-operations.md","docs/production-operations.md","packages/auth/package.json","packages/auth/src/auth.test.ts","packages/auth/src/http-rate-limit.ts","packages/auth/src/index.ts","packages/auth/tsconfig.json","packages/contracts/src/knowledge-index.test.ts","packages/contracts/src/redis-connection.test.ts","packages/contracts/src/redis-connection.ts","packages/knowledge-retrieval/src/indexing.test.ts","packages/knowledge-retrieval/src/indexing.ts","packages/observability/package.json","packages/observability/src/index.ts","packages/observability/src/runtime.test.ts","packages/observability/src/runtime.ts","packages/observability/tsconfig.json","products/juhai.knowledgecloud/migrations/juhai.knowledgecloud.core/20260827140000_add_knowledge_index_retry.sql","products/juhai.knowledgecloud/migrations/juhai.knowledgecloud.core/20260827150000_add_knowledge_chunks.sql","products/juhai.knowledgecloud/src/indexing.ts","reports/agent-skill-sync.latest.json","reports/auth-governance.latest.json","reports/backend-behavior-parity.latest.json","reports/container-acceptance.latest.json","reports/disaster-recovery.latest.json","reports/knowledge-index.latest.json","reports/observability.latest.json","reports/outbox-operations.latest.json","reports/production-operations.latest.json","reports/report-provenance.latest.json","reports/runtime-failure-coverage.latest.json","scripts/check-agent-skill-sync.mjs","scripts/check-auth-governance.mjs","scripts/check-backend-behavior-parity.mjs","scripts/check-container-acceptance.mjs","scripts/check-disaster-recovery.mjs","scripts/check-knowledge-index-governance.mjs","scripts/check-observability-governance.mjs","scripts/check-outbox-operations.mjs","scripts/check-production-operations.mjs","scripts/check-report-provenance.mjs","scripts/check-runtime-failure-coverage.mjs","scripts/lib/governance-baseline.mjs"],"removed":["apps/web/next.config.ts"],"modified":[".claude/skills/business-module-intake/SKILL.md",".claude/skills/frontend-api-react/SKILL.md",".claude/skills/frontend-view-react/SKILL.md",".claude/skills/fullstack-7layer-react/SKILL.md",".claude/skills/fullstack-7layer-react/references/fullstack-react-templates.md",".claude/skills/zustand-store/SKILL.md","CLAUDE.md","README.md","apps/api-fastify/.env.example","apps/api-fastify/package.json","apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/app.ts","apps/api-fastify/src/modules/knowledge/knowledge.service.ts","apps/api-fastify/src/modules/orders/orders.service.ts","apps/api-fastify/src/modules/tenant.ts","apps/api-fastify/src/plugins/events.ts","apps/api-fastify/src/plugins/outbox.ts","apps/api-fastify/src/plugins/queue.ts","apps/api-fastify/src/routes/jobs.ts","apps/api-fastify/src/routes/knowledge.ts","apps/api-fastify/src/routes/orders.ts","apps/api-fastify/src/routes/realtime-stats.ts","apps/api-fastify/src/routes/sse.ts","apps/api-fastify/src/routes/ws.ts","apps/api-fastify/src/types.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-fastify/test/outbox.concurrency.test.ts","apps/api-fastify/test/outbox.deadletter.test.ts","apps/api-fastify/test/realtime.stats.test.ts","apps/api-fastify/test/realtime.tenant.test.ts","apps/api-nestjs/.env.example","apps/api-nestjs/package.json","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/src/app.module.ts","apps/api-nestjs/src/common/tenant.decorator.ts","apps/api-nestjs/src/create-app.ts","apps/api-nestjs/src/events/events.gateway.ts","apps/api-nestjs/src/events/outbox-dispatcher.service.ts","apps/api-nestjs/src/events/realtime-stats.controller.ts","apps/api-nestjs/src/knowledge/knowledge.controller.ts","apps/api-nestjs/src/knowledge/knowledge.module.ts","apps/api-nestjs/src/knowledge/knowledge.service.ts","apps/api-nestjs/src/orders/orders.service.ts","apps/api-nestjs/src/queue/jobs.controller.ts","apps/api-nestjs/src/queue/jobs.processor.ts","apps/api-nestjs/src/queue/queue.types.ts","apps/api-nestjs/src/redis/redis.module.ts","apps/api-nestjs/src/sse/sse.controller.ts","apps/api-nestjs/src/users/users.service.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/api-nestjs/test/knowledge.integration.test.ts","apps/api-nestjs/test/outbox.concurrency.test.ts","apps/api-nestjs/test/outbox.deadletter.test.ts","apps/api-nestjs/test/realtime.stats.test.ts","apps/api-nestjs/test/realtime.tenant.test.ts","apps/api-nestjs/vitest.config.ts","apps/web/.env.example","apps/web/e2e/acceptance.spec.ts","apps/web/package.json","apps/web/playwright.config.ts","apps/web/src/components/RealtimeBar.tsx","apps/web/src/features/knowledge/api/knowledge-api.ts","apps/web/src/features/knowledge/components/KnowledgeWorkbench.tsx","apps/web/src/features/knowledge/hooks/use-knowledge.ts","apps/web/src/store/realtime.ts","docs/README.md","docs/adr/0009-dual-backend-governance-parity.md","docs/domain/knowledge-cloud-blueprint.md","docs/domain/owner-matrix.md","docs/governance-experience.md","docs/migration-playbook.md","docs/standards/database-standard.md","governance.registry.json","governance.registry.schema.json","kernel.products.json","package.json","packages/contracts/src/index.ts","packages/contracts/src/knowledge-retrieval.test.ts","packages/contracts/src/knowledge.ts","packages/contracts/src/realtime-stats.ts","packages/contracts/tsconfig.json","packages/knowledge-retrieval/src/index.test.ts","packages/knowledge-retrieval/src/index.ts","pnpm-lock.yaml","products/juhai.knowledgecloud/package.json","products/juhai.knowledgecloud/src/fastify.ts","products/juhai.knowledgecloud/src/index.ts","products/juhai.knowledgecloud/src/nestjs.ts","products/juhai.knowledgecloud/src/repository.ts","products/juhai.knowledgecloud/src/retrieval.ts","reports/baseline.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/os-product-live.latest.json","reports/os-product.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-docs-truth.mjs","scripts/check-dual-backend-parity.mjs","scripts/check-fork-readiness.mjs","scripts/check-migrations.mjs","scripts/check-os-product.mjs","scripts/check-runtime-acceptance.mjs","scripts/check-statemachine-write-guard.mjs","scripts/check-ui-acceptance.mjs","scripts/check-validation-source.mjs","scripts/governance-report.mjs","scripts/lib/report-provenance.mjs","turbo.json"]}],"total_commits":0,"head_commit":{"id":"4459ca7bf19df30ae3879f2027b7fb05b3e3ba2d","message":"Expand governance controls and cross-layer runtime validation\n","url":"https://gitea.g-hi.com/luoanwu/juhai-knowledge-cloud/commit/4459ca7bf19df30ae3879f2027b7fb05b3e3ba2d","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-08-27T06:17:02-07:00","added":[".agents/skills/business-module-intake/SKILL.md",".agents/skills/frontend-api-react/SKILL.md",".agents/skills/frontend-view-react/SKILL.md",".agents/skills/fullstack-7layer-react/SKILL.md",".agents/skills/zustand-store/SKILL.md",".dockerignore","Dockerfile","apps/api-fastify/prisma/migrations/20260827120000_add_knowledge_index_retry/migration.sql","apps/api-fastify/prisma/migrations/20260827150000_add_knowledge_chunks/migration.sql","apps/api-fastify/src/modules/knowledge/knowledge-indexer.ts","apps/api-fastify/src/plugins/api-error-handler.ts","apps/api-fastify/src/plugins/auth.ts","apps/api-fastify/test/auth.jwt.acceptance.test.ts","apps/api-fastify/test/fixtures/outbox-multiprocess-worker.ts","apps/api-fastify/test/health.degraded.test.ts","apps/api-fastify/test/http-rate-limit.redis.test.ts","apps/api-fastify/test/job.failed.exhaustion.test.ts","apps/api-fastify/test/knowledge-index.retry.test.ts","apps/api-fastify/test/observability.otlp.test.ts","apps/api-fastify/test/outbox.lifecycle.test.ts","apps/api-fastify/test/outbox.multiprocess.test.ts","apps/api-nestjs/prisma/migrations/20260827120000_add_knowledge_index_retry/migration.sql","apps/api-nestjs/prisma/migrations/20260827150000_add_knowledge_chunks/migration.sql","apps/api-nestjs/src/auth/auth-request.ts","apps/api-nestjs/src/auth/auth.module.ts","apps/api-nestjs/src/auth/auth.service.ts","apps/api-nestjs/src/auth/authentication.guard.ts","apps/api-nestjs/src/common/api-exception.filter.ts","apps/api-nestjs/src/events/dead-letter-replay.ts","apps/api-nestjs/src/knowledge/knowledge-index.service.ts","apps/api-nestjs/src/observability/observability.service.ts","apps/api-nestjs/src/ops/replay-dead-letter.ts","apps/api-nestjs/test/auth.jwt.acceptance.test.ts","apps/api-nestjs/test/backend.behavior.parity.test.ts","apps/api-nestjs/test/health.degraded.test.ts","apps/api-nestjs/test/job.failed.exhaustion.test.ts","apps/api-nestjs/test/knowledge-index.retry.test.ts","apps/api-nestjs/test/observability.otlp.test.ts","apps/api-nestjs/test/outbox.replay.test.ts","apps/api-nestjs/vitest.parity.config.ts","apps/web/next.config.mjs","compose.production.yml","docs/outbox-operations.md","docs/production-operations.md","packages/auth/package.json","packages/auth/src/auth.test.ts","packages/auth/src/http-rate-limit.ts","packages/auth/src/index.ts","packages/auth/tsconfig.json","packages/contracts/src/knowledge-index.test.ts","packages/contracts/src/redis-connection.test.ts","packages/contracts/src/redis-connection.ts","packages/knowledge-retrieval/src/indexing.test.ts","packages/knowledge-retrieval/src/indexing.ts","packages/observability/package.json","packages/observability/src/index.ts","packages/observability/src/runtime.test.ts","packages/observability/src/runtime.ts","packages/observability/tsconfig.json","products/juhai.knowledgecloud/migrations/juhai.knowledgecloud.core/20260827140000_add_knowledge_index_retry.sql","products/juhai.knowledgecloud/migrations/juhai.knowledgecloud.core/20260827150000_add_knowledge_chunks.sql","products/juhai.knowledgecloud/src/indexing.ts","reports/agent-skill-sync.latest.json","reports/auth-governance.latest.json","reports/backend-behavior-parity.latest.json","reports/container-acceptance.latest.json","reports/disaster-recovery.latest.json","reports/knowledge-index.latest.json","reports/observability.latest.json","reports/outbox-operations.latest.json","reports/production-operations.latest.json","reports/report-provenance.latest.json","reports/runtime-failure-coverage.latest.json","scripts/check-agent-skill-sync.mjs","scripts/check-auth-governance.mjs","scripts/check-backend-behavior-parity.mjs","scripts/check-container-acceptance.mjs","scripts/check-disaster-recovery.mjs","scripts/check-knowledge-index-governance.mjs","scripts/check-observability-governance.mjs","scripts/check-outbox-operations.mjs","scripts/check-production-operations.mjs","scripts/check-report-provenance.mjs","scripts/check-runtime-failure-coverage.mjs","scripts/lib/governance-baseline.mjs"],"removed":["apps/web/next.config.ts"],"modified":[".claude/skills/business-module-intake/SKILL.md",".claude/skills/frontend-api-react/SKILL.md",".claude/skills/frontend-view-react/SKILL.md",".claude/skills/fullstack-7layer-react/SKILL.md",".claude/skills/fullstack-7layer-react/references/fullstack-react-templates.md",".claude/skills/zustand-store/SKILL.md","CLAUDE.md","README.md","apps/api-fastify/.env.example","apps/api-fastify/package.json","apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/app.ts","apps/api-fastify/src/modules/knowledge/knowledge.service.ts","apps/api-fastify/src/modules/orders/orders.service.ts","apps/api-fastify/src/modules/tenant.ts","apps/api-fastify/src/plugins/events.ts","apps/api-fastify/src/plugins/outbox.ts","apps/api-fastify/src/plugins/queue.ts","apps/api-fastify/src/routes/jobs.ts","apps/api-fastify/src/routes/knowledge.ts","apps/api-fastify/src/routes/orders.ts","apps/api-fastify/src/routes/realtime-stats.ts","apps/api-fastify/src/routes/sse.ts","apps/api-fastify/src/routes/ws.ts","apps/api-fastify/src/types.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-fastify/test/outbox.concurrency.test.ts","apps/api-fastify/test/outbox.deadletter.test.ts","apps/api-fastify/test/realtime.stats.test.ts","apps/api-fastify/test/realtime.tenant.test.ts","apps/api-nestjs/.env.example","apps/api-nestjs/package.json","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/src/app.module.ts","apps/api-nestjs/src/common/tenant.decorator.ts","apps/api-nestjs/src/create-app.ts","apps/api-nestjs/src/events/events.gateway.ts","apps/api-nestjs/src/events/outbox-dispatcher.service.ts","apps/api-nestjs/src/events/realtime-stats.controller.ts","apps/api-nestjs/src/knowledge/knowledge.controller.ts","apps/api-nestjs/src/knowledge/knowledge.module.ts","apps/api-nestjs/src/knowledge/knowledge.service.ts","apps/api-nestjs/src/orders/orders.service.ts","apps/api-nestjs/src/queue/jobs.controller.ts","apps/api-nestjs/src/queue/jobs.processor.ts","apps/api-nestjs/src/queue/queue.types.ts","apps/api-nestjs/src/redis/redis.module.ts","apps/api-nestjs/src/sse/sse.controller.ts","apps/api-nestjs/src/users/users.service.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/api-nestjs/test/knowledge.integration.test.ts","apps/api-nestjs/test/outbox.concurrency.test.ts","apps/api-nestjs/test/outbox.deadletter.test.ts","apps/api-nestjs/test/realtime.stats.test.ts","apps/api-nestjs/test/realtime.tenant.test.ts","apps/api-nestjs/vitest.config.ts","apps/web/.env.example","apps/web/e2e/acceptance.spec.ts","apps/web/package.json","apps/web/playwright.config.ts","apps/web/src/components/RealtimeBar.tsx","apps/web/src/features/knowledge/api/knowledge-api.ts","apps/web/src/features/knowledge/components/KnowledgeWorkbench.tsx","apps/web/src/features/knowledge/hooks/use-knowledge.ts","apps/web/src/store/realtime.ts","docs/README.md","docs/adr/0009-dual-backend-governance-parity.md","docs/domain/knowledge-cloud-blueprint.md","docs/domain/owner-matrix.md","docs/governance-experience.md","docs/migration-playbook.md","docs/standards/database-standard.md","governance.registry.json","governance.registry.schema.json","kernel.products.json","package.json","packages/contracts/src/index.ts","packages/contracts/src/knowledge-retrieval.test.ts","packages/contracts/src/knowledge.ts","packages/contracts/src/realtime-stats.ts","packages/contracts/tsconfig.json","packages/knowledge-retrieval/src/index.test.ts","packages/knowledge-retrieval/src/index.ts","pnpm-lock.yaml","products/juhai.knowledgecloud/package.json","products/juhai.knowledgecloud/src/fastify.ts","products/juhai.knowledgecloud/src/index.ts","products/juhai.knowledgecloud/src/nestjs.ts","products/juhai.knowledgecloud/src/repository.ts","products/juhai.knowledgecloud/src/retrieval.ts","reports/baseline.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/os-product-live.latest.json","reports/os-product.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-docs-truth.mjs","scripts/check-dual-backend-parity.mjs","scripts/check-fork-readiness.mjs","scripts/check-migrations.mjs","scripts/check-os-product.mjs","scripts/check-runtime-acceptance.mjs","scripts/check-statemachine-write-guard.mjs","scripts/check-ui-acceptance.mjs","scripts/check-validation-source.mjs","scripts/governance-report.mjs","scripts/lib/report-provenance.mjs","turbo.json"]},"repository":{"id":84,"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":"juhai-knowledge-cloud","full_name":"luoanwu/juhai-knowledge-cloud","description":"巨嗨知识云:受治理的知识唯一真源与混合证据检索","empty":false,"private":true,"fork":false,"template":false,"mirror":false,"size":698,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhai-knowledge-cloud/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhai-knowledge-cloud","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhai-knowledge-cloud","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhai-knowledge-cloud.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhai-knowledge-cloud.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-08-26T09:45:53+08:00","updated_at":"2026-08-26T09:47:06+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"}}...
|
push
|
2
|
6
|
1787836636
|
1787836653
|
0
|
1787836636
|
1787836655
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23836
|
docs: record clean acceptance @ 246f04b(sync/v0.16 docs: record clean acceptance @ 246f04b(sync/v0.16.0:runtime 169 / 差分 7×2 / tenantRlsEnforced=1;UI 4×5;地板按本仓收紧)...
|
106
|
5
|
governance.yml
|
3
|
5
|
0
|
refs/heads/main
|
0a9a11a92a9e45d647e7feaea0bafe7cdc3d5f11
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f2098f5213ec62df23b006803858802ee08ac663","after":"0a9a11a92a9e45d647e7feaea0bafe7cdc3d5f11","compare_url":"https://gitea.g-hi.com/luoanwu/tenant-scope/compare/f2098f5213ec62df23b006803858802ee08ac663...0a9a11a92a9e45d647e7feaea0bafe7cdc3d5f11","commits":[{"id":"0a9a11a92a9e45d647e7feaea0bafe7cdc3d5f11","message":"docs: record clean acceptance @ 246f04b(sync/v0.16.0:runtime 169 / 差分 7×2 / tenantRlsEnforced=1;UI 4×5;地板按本仓收紧)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/tenant-scope/commit/0a9a11a92a9e45d647e7feaea0bafe7cdc3d5f11","author":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-09-10T07:19:55-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/agent-adapters.latest.json","reports/baseline.json","reports/conformance-differential.latest.json","reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/framework-migration.latest.json","reports/governance-docs.latest.json","reports/governance-rules.latest.json","reports/governance-status.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json"]},{"id":"246f04b6ab8966b1647697d8534220cd7a9c2ae8","message":"chore(sync): 迁入 0.16.1 差分 runner 修正(每次经 turbo 构建 contracts)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/tenant-scope/commit/246f04b6ab8966b1647697d8534220cd7a9c2ae8","author":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-09-10T07:15:41-07:00","added":[],"removed":[],"modified":["scripts/check-conformance-differential.mjs"]},{"id":"ac58209cc82659d7bbbfab8dce2ea11b01520c37","message":"chore(strip): 剥离示例域 orders(pnpm strip:domain;用户/作业/健康/实时基建保留)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/tenant-scope/commit/ac58209cc82659d7bbbfab8dce2ea11b01520c37","author":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-09-10T07:10:41-07:00","added":[],"removed":["apps/api-fastify/src/lib/orderMachine.ts","apps/api-fastify/src/modules/orders/orders.jobs.ts","apps/api-fastify/src/modules/orders/orders.service.ts","apps/api-fastify/src/routes/orders.ts","apps/api-fastify/test/orders.integration.test.ts","apps/api-nestjs/src/orders/orders.controller.ts","apps/api-nestjs/src/orders/orders.job-handler.ts","apps/api-nestjs/src/orders/orders.module.ts","apps/api-nestjs/src/orders/orders.service.ts","apps/api-nestjs/src/statemachine/order.machine.ts","apps/api-nestjs/test/orders.integration.test.ts","apps/web/src/components/OrdersPanel.tsx","packages/contracts/src/order.test.ts","packages/contracts/src/order.ts"],"modified":["apps/api-fastify/prisma/migrations/20260608150500_init/migration.sql","apps/api-fastify/prisma/migrations/20260911090000_tenant_rls/migration.sql","apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/app.ts","apps/api-fastify/src/plugins/auth.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-nestjs/prisma/migrations/20260608150500_init/migration.sql","apps/api-nestjs/prisma/migrations/20260911090000_tenant_rls/migration.sql","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/prisma/seed.ts","apps/api-nestjs/src/app.module.ts","apps/api-nestjs/src/statemachine/index.ts","apps/api-nestjs/test/conformance.differential.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/web/e2e/acceptance.spec.ts","apps/web/src/app/page.tsx","apps/web/src/components/EventFeed.tsx","apps/web/src/components/ui/badge.tsx","apps/web/src/lib/api.ts","apps/web/src/lib/types.ts","conformance.matrix.json","docs/domain/owner-matrix.md","docs/strip-sample-domain.md","governance.registry.json","packages/contracts/src/sample.ts","reports/baseline.json"]},{"id":"8336c55910854c37a68c571e765becb93e2d12a3","message":"chore(sync): 迁入基础框架 v0.16.1(内核经 @juhai/kernel@0.16.1 pin,OS 产品样板移出,Scope 契约与 ScopeHealthResponse 保留)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/tenant-scope/commit/8336c55910854c37a68c571e765becb93e2d12a3","author":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-09-10T07:10:41-07:00","added":[".agents/skills/derived-project-framework-sync/scripts/rollback-migration.mjs",".npmrc","CHANGELOG.md","COMPATIBILITY.md","apps/api-fastify/prisma/migrations/20260910090000_outbox_request_context/migration.sql","apps/api-fastify/prisma/migrations/20260911090000_tenant_rls/migration.sql","apps/api-fastify/src/lib/alerts.ts","apps/api-fastify/src/lib/job-handlers.ts","apps/api-fastify/src/lib/platform-errors.ts","apps/api-fastify/src/lib/platform-ports.ts","apps/api-fastify/src/lib/request-context.ts","apps/api-fastify/src/lib/tenant-rls.ts","apps/api-fastify/src/modules/orders/orders.jobs.ts","apps/api-fastify/src/plugins/alerts.ts","apps/api-fastify/src/plugins/platform-ports.ts","apps/api-fastify/src/plugins/request-context.ts","apps/api-fastify/test/alerts.webhook.test.ts","apps/api-fastify/test/infra-url.test.ts","apps/api-fastify/test/tenant.rls.test.ts","apps/api-nestjs/prisma/migrations/20260910090000_outbox_request_context/migration.sql","apps/api-nestjs/prisma/migrations/20260911090000_tenant_rls/migration.sql","apps/api-nestjs/src/alerts/alerts.module.ts","apps/api-nestjs/src/common/alerts.ts","apps/api-nestjs/src/common/platform-errors.ts","apps/api-nestjs/src/common/request-context.ts","apps/api-nestjs/src/common/tenant-rls.ts","apps/api-nestjs/src/orders/orders.job-handler.ts","apps/api-nestjs/src/platform/platform-ports.module.ts","apps/api-nestjs/src/prisma/system-prisma.service.ts","apps/api-nestjs/src/queue/job-handlers.module.ts","apps/api-nestjs/test/alerts.webhook.test.ts","apps/api-nestjs/test/infra-url.test.ts","apps/api-nestjs/test/outbox.remediate.test.ts","apps/api-nestjs/test/tenant.rls.test.ts","docs/alerting.md","docs/strip-sample-domain.md","docs/tenant-rls.md","packages/contracts/src/kernel.ts","packages/contracts/src/layering.test.ts","packages/contracts/src/order.test.ts","packages/contracts/src/sample.ts","packages/contracts/src/scope-health.ts","scripts/db-roles.mjs","scripts/lib/strip-domain.mjs","scripts/lib/tenant-rls-roles.mjs","scripts/outbox-remediate.mjs","scripts/scaffold-derived.mjs","scripts/strip-domain.mjs"],"removed":["docs/os-product-extension.md","kernel.products.json","packages/contracts/src/contracts.test.ts","packages/contracts/src/job.ts","packages/contracts/src/realtime-command.test.ts","packages/contracts/src/realtime-command.ts","packages/contracts/src/realtime-stats.ts","packages/contracts/src/realtime.ts","packages/contracts/src/replay-buffer.test.ts","packages/contracts/src/replay-buffer.ts","packages/contracts/src/replay.test.ts","packages/contracts/src/replay.ts","packages/contracts/src/statemachine.test.ts","packages/contracts/src/statemachine.ts","packages/contracts/src/subscription.test.ts","packages/contracts/src/subscription.ts","packages/contracts/src/tenant.ts","products/juhai.tenantscope/README.md","products/juhai.tenantscope/acceptance/juhai.tenantscope.order.acceptance.mjs","products/juhai.tenantscope/migrations/juhai.tenantscope.order/20260826090000_create_orders.sql","products/juhai.tenantscope/migrations/juhai.tenantscope.order/20260826091000_create_order_events.sql","products/juhai.tenantscope/package.json","products/juhai.tenantscope/product.manifest.json","products/juhai.tenantscope/src/contracts.ts","products/juhai.tenantscope/src/fastify.ts","products/juhai.tenantscope/src/host.ts","products/juhai.tenantscope/src/index.ts","products/juhai.tenantscope/src/manifest.ts","products/juhai.tenantscope/src/nestjs.ts","products/juhai.tenantscope/src/order-repository.ts","products/juhai.tenantscope/src/tools.ts","products/juhai.tenantscope/src/web.tsx","products/juhai.tenantscope/test/os-host.runtime.test.ts","products/juhai.tenantscope/tsconfig.os-host.json","products/juhai.tenantscope/vitest.os-host.config.ts","scripts/check-os-product-compat.mjs","scripts/check-os-product-runtime.mjs"],"modified":[".agents/skills/derived-project-framework-sync/SKILL.md",".agents/skills/derived-project-framework-sync/assets/framework-migration.template.md",".agents/skills/derived-project-framework-sync/references/migration-protocol.md",".agents/skills/derived-project-framework-sync/scripts/plan-migration.mjs",".agents/skills/derived-project-framework-sync/scripts/record-migration.mjs",".github/pull_request_template.md",".github/workflows/governance.yml",".gitignore","CLAUDE.md","README.md","apps/api-fastify/.env.example","apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/app.ts","apps/api-fastify/src/lib/infra-url.ts","apps/api-fastify/src/modules/orders/orders.service.ts","apps/api-fastify/src/modules/replay.ts","apps/api-fastify/src/modules/users/users.service.ts","apps/api-fastify/src/plugins/auth.ts","apps/api-fastify/src/plugins/outbox.ts","apps/api-fastify/src/plugins/prisma.ts","apps/api-fastify/src/plugins/queue.ts","apps/api-fastify/src/routes/health.ts","apps/api-fastify/src/routes/jobs.ts","apps/api-fastify/src/routes/orders.ts","apps/api-fastify/src/routes/realtime-stats.ts","apps/api-fastify/src/routes/sse.ts","apps/api-fastify/src/routes/users.ts","apps/api-fastify/src/types.ts","apps/api-fastify/test/auth.jwt.test.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-fastify/test/orders.integration.test.ts","apps/api-fastify/test/outbox.deadletter.test.ts","apps/api-fastify/test/realtime.command.test.ts","apps/api-fastify/test/realtime.replay.test.ts","apps/api-fastify/test/realtime.stats.test.ts","apps/api-nestjs/.env.example","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/prisma/seed.ts","apps/api-nestjs/src/app.module.ts","apps/api-nestjs/src/auth/auth.guard.ts","apps/api-nestjs/src/common/infra-url.ts","apps/api-nestjs/src/common/logger.ts","apps/api-nestjs/src/create-app.ts","apps/api-nestjs/src/events/outbox-dispatcher.service.ts","apps/api-nestjs/src/events/realtime-stats.controller.ts","apps/api-nestjs/src/events/replay.service.ts","apps/api-nestjs/src/health/health.controller.ts","apps/api-nestjs/src/orders/orders.module.ts","apps/api-nestjs/src/orders/orders.service.ts","apps/api-nestjs/src/prisma/prisma.module.ts","apps/api-nestjs/src/prisma/prisma.service.ts","apps/api-nestjs/src/queue/jobs.controller.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/statemachine/index.ts","apps/api-nestjs/src/users/users.service.ts","apps/api-nestjs/test/auth.jwt.test.ts","apps/api-nestjs/test/conformance.differential.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/api-nestjs/test/orders.integration.test.ts","apps/api-nestjs/test/outbox.concurrency.test.ts","apps/api-nestjs/test/outbox.deadletter.test.ts","apps/api-nestjs/test/realtime.command.test.ts","apps/api-nestjs/test/realtime.replay.test.ts","apps/api-nestjs/test/realtime.stats.test.ts","apps/web/e2e/acceptance.spec.ts","apps/web/src/app/page.tsx","apps/web/src/components/EventFeed.tsx","apps/web/src/components/OrdersPanel.tsx","apps/web/src/components/ui/badge.tsx","apps/web/src/lib/api.ts","apps/web/src/lib/types.ts","apps/web/src/store/realtime.ts","conformance.matrix.json","docs/README.md","docs/domain/owner-matrix.md","docs/governance-experience.md","docs/standards/api-standard.md","docs/standards/database-standard.md","docs/standards/review-standard.md","governance.registry.json","governance.registry.schema.json","governance.rules.json","governance.rules.schema.json","package.json","packages/contracts/package.json","packages/contracts/src/index.ts","packages/contracts/src/order.ts","packages/contracts/src/user.ts","pnpm-lock.yaml","reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/naming.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json","scripts/check-conformance-differential.mjs","scripts/check-contract-consumers.mjs","scripts/check-docs-truth.mjs","scripts/check-dual-backend-parity.mjs","scripts/check-fork-readiness.mjs","scripts/check-governance-profile.mjs","scripts/check-runtime-acceptance.mjs","scripts/check-ui-acceptance.mjs","scripts/governance-report.mjs","turbo.json"]},{"id":"544f456dba7bdc815b8d6e8026a7554899373f87","message":"chore(reports): refresh final clean static evidence\n","url":"https://gitea.g-hi.com/luoanwu/tenant-scope/commit/544f456dba7bdc815b8d6e8026a7554899373f87","author":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-09-04T18:35:29-07:00","added":[],"removed":[],"modified":["reports/agent-adapters.latest.json","reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance-rules.latest.json","reports/governance-status.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/os-product-compat.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]}],"total_commits":0,"head_commit":{"id":"0a9a11a92a9e45d647e7feaea0bafe7cdc3d5f11","message":"docs: record clean acceptance @ 246f04b(sync/v0.16.0:runtime 169 / 差分 7×2 / tenantRlsEnforced=1;UI 4×5;地板按本仓收紧)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/tenant-scope/commit/0a9a11a92a9e45d647e7feaea0bafe7cdc3d5f11","author":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"hillao","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-09-10T07:19:55-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/agent-adapters.latest.json","reports/baseline.json","reports/conformance-differential.latest.json","reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/framework-migration.latest.json","reports/governance-docs.latest.json","reports/governance-rules.latest.json","reports/governance-status.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json"]},"repository":{"id":106,"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":"tenant-scope","full_name":"luoanwu/tenant-scope","description":"","empty":false,"private":true,"fork":false,"template":false,"mirror":false,"size":1009,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/tenant-scope/languages","html_url":"https://gitea.g-hi.com/luoanwu/tenant-scope","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/tenant-scope","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/tenant-scope.git","clone_url":"https://gitea.g-hi.com/luoanwu/tenant-scope.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-01T21:58:13+08:00","updated_at":"2026-09-03T11:18:20+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"}}...
|
push
|
2
|
10
|
1789050295
|
1789050385
|
0
|
1789050294
|
1789050478
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
...
|
governance-governance.yml-refs/heads/main
|
0
|
Edit
Delete
|
|
24012
|
docs(平台治理): 开发计划与总体计划登记四项交付、独立工作台与「分别发布」修订
|
117
|
5
|
governance.yml
|
10
|
5
|
0
|
refs/heads/main
|
61081e56e2b37ba5e77440b55ef576c366854dba
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f1ec550575bc3d6331824a3fb8378c5d4656c7ef","after":"61081e56e2b37ba5e77440b55ef576c366854dba","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/f1ec550575bc3d6331824a3fb8378c5d4656c7ef...61081e56e2b37ba5e77440b55ef576c366854dba","commits":[{"id":"61081e56e2b37ba5e77440b55ef576c366854dba","message":"docs(平台治理): 开发计划与总体计划登记四项交付、独立工作台与「分别发布」修订\n\n逐条对照对外交付设计方案后补齐三处外围文档:\n- 基础设施文档/开发计划.md:头部增 2026-09-17 增量段(五步领取顺序,① 文档部分已完成、②—⑤ 待实施,不新设 PF/MS),§8 变更记录增一行登记两仓提交与检查结果。\n- 基础/总体开发计划.md:v5.24 修订条目,把 v5.18 的「一次部署」改为「一个独立项目、分别发布」。\n- 基础/README.md:基础设施仓设计条目下加 2026-09-17 修订指针。\n仅设计登记;工作区一致性检查 L4 / L10 / L13 清零,余 L8 / L9 / L12 为既有问题。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/61081e56e2b37ba5e77440b55ef576c366854dba","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-17T05:18:02-07:00","added":[],"removed":[],"modified":["平台治理/基础/README.md","平台治理/基础/总体开发计划.md","平台治理/基础设施文档/开发计划.md"]}],"total_commits":0,"head_commit":{"id":"61081e56e2b37ba5e77440b55ef576c366854dba","message":"docs(平台治理): 开发计划与总体计划登记四项交付、独立工作台与「分别发布」修订\n\n逐条对照对外交付设计方案后补齐三处外围文档:\n- 基础设施文档/开发计划.md:头部增 2026-09-17 增量段(五步领取顺序,① 文档部分已完成、②—⑤ 待实施,不新设 PF/MS),§8 变更记录增一行登记两仓提交与检查结果。\n- 基础/总体开发计划.md:v5.24 修订条目,把 v5.18 的「一次部署」改为「一个独立项目、分别发布」。\n- 基础/README.md:基础设施仓设计条目下加 2026-09-17 修订指针。\n仅设计登记;工作区一致性检查 L4 / L10 / L13 清零,余 L8 / L9 / L12 为既有问题。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/61081e56e2b37ba5e77440b55ef576c366854dba","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-17T05:18:02-07:00","added":[],"removed":[],"modified":["平台治理/基础/README.md","平台治理/基础/总体开发计划.md","平台治理/基础设施文档/开发计划.md"]},"repository":{"id":117,"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":"platform-governance","full_name":"luoanwu/platform-governance","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":6915,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/platform-governance/languages","html_url":"https://gitea.g-hi.com/luoanwu/platform-governance","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/platform-governance","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/platform-governance.git","clone_url":"https://gitea.g-hi.com/luoanwu/platform-governance.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":2,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-09-15T11:53:24+08:00","updated_at":"2026-09-17T20:11:04+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"}}...
|
push
|
1
|
4
|
1789647516
|
1789647531
|
0
|
1789647486
|
1789647531
|
|
|
0
|
Edit
Delete
|
|
23608
|
docs(governance): 回灌远端绿盘——f17d34a 的 GitHub run 337 docs(governance): 回灌远端绿盘——f17d34a 的 GitHub run 33707057068 三 job 全绿,两远端对齐...
|
54
|
5
|
governance.yml
|
25
|
5
|
0
|
refs/heads/main
|
06b8b98f483723103dcd01449e6ec6772ad10c13
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f17d34a463e70366161f4603e53a4b2800e9a241","after":"06b8b98f483723103dcd01449e6ec6772ad10c13","compare_url":"https://gitea.g-hi.com/luoanwu/base-framework/compare/f17d34a463e70366161f4603e53a4b2800e9a241...06b8b98f483723103dcd01449e6ec6772ad10c13","commits":[{"id":"06b8b98f483723103dcd01449e6ec6772ad10c13","message":"docs(governance): 回灌远端绿盘——f17d34a 的 GitHub run 33707057068 三 job 全绿,两远端对齐\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/06b8b98f483723103dcd01449e6ec6772ad10c13","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-02T19:23:08-07:00","added":[],"removed":[],"modified":["CLAUDE.md"]}],"total_commits":0,"head_commit":{"id":"06b8b98f483723103dcd01449e6ec6772ad10c13","message":"docs(governance): 回灌远端绿盘——f17d34a 的 GitHub run 33707057068 三 job 全绿,两远端对齐\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/06b8b98f483723103dcd01449e6ec6772ad10c13","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-02T19:23:08-07:00","added":[],"removed":[],"modified":["CLAUDE.md"]},"repository":{"id":54,"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":"base-framework","full_name":"luoanwu/base-framework","description":"基础框架 monorepo","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":3032,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/base-framework/languages","html_url":"https://gitea.g-hi.com/luoanwu/base-framework","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/base-framework","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/base-framework.git","clone_url":"https://gitea.g-hi.com/luoanwu/base-framework.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":2,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-03T12:24:18+08:00","updated_at":"2026-09-03T10:17:07+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"}}...
|
push
|
2
|
12
|
1788402257
|
1788402300
|
0
|
1788402192
|
1788402309
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
...
|
governance-governance.yml-refs/heads/main
|
0
|
Edit
Delete
|
|
23754
|
docs(release): record verified model cost backfill docs(release): record verified model cost backfill deployment...
|
57
|
5
|
governance.yml
|
125
|
5
|
0
|
refs/heads/main
|
5cb7aaabb50aed6cefa730622964676c007e9248
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f15d41f2d86247205036b82833fd47f2250136b9","after":"5cb7aaabb50aed6cefa730622964676c007e9248","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/f15d41f2d86247205036b82833fd47f2250136b9...5cb7aaabb50aed6cefa730622964676c007e9248","commits":[{"id":"5cb7aaabb50aed6cefa730622964676c007e9248","message":"docs(release): record verified model cost backfill deployment\n\nrelease-20260908-cost-backfill1 at main f15d41f (fingerprint 39338b0d…), standard path, no schema change,\n11 backups verified, rollback source video-delivery2 kept; live metrics cost block and 模型费用 panel checked read-only.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/5cb7aaabb50aed6cefa730622964676c007e9248","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-08T20:16:50-07:00","added":["docs/releases/2026-09-08-cost-backfill1.md"],"removed":[],"modified":["docs/governance/log/2026-09-08-model-cost-backfill.md","docs/releases/current.md","reports/contract-consumers.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/material-review-concurrency-guard.latest.json","reports/migrations.latest.json","reports/module-boundary.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/production-security.latest.json","reports/public-file-integration.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/validation-source.latest.json"]}],"total_commits":0,"head_commit":{"id":"5cb7aaabb50aed6cefa730622964676c007e9248","message":"docs(release): record verified model cost backfill deployment\n\nrelease-20260908-cost-backfill1 at main f15d41f (fingerprint 39338b0d…), standard path, no schema change,\n11 backups verified, rollback source video-delivery2 kept; live metrics cost block and 模型费用 panel checked read-only.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/5cb7aaabb50aed6cefa730622964676c007e9248","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-08T20:16:50-07:00","added":["docs/releases/2026-09-08-cost-backfill1.md"],"removed":[],"modified":["docs/governance/log/2026-09-08-model-cost-backfill.md","docs/releases/current.md","reports/contract-consumers.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/material-review-concurrency-guard.latest.json","reports/migrations.latest.json","reports/module-boundary.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/production-security.latest.json","reports/public-file-integration.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/validation-source.latest.json"]},"repository":{"id":57,"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":"image-generation","full_name":"luoanwu/image-generation","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":768896,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation/languages","html_url":"https://gitea.g-hi.com/luoanwu/image-generation","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/image-generation.git","clone_url":"https://gitea.g-hi.com/luoanwu/image-generation.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":7,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-06T17:04:22+08:00","updated_at":"2026-09-09T10:51:58+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"}}...
|
push
|
2
|
4
|
1788923817
|
1788923858
|
0
|
1788923815
|
1788923858
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23917
|
Merge branch 'main' into feat/client-ident Merge branch 'main' into feat/client-identity...
|
116
|
5
|
platform.yml
|
39
|
5
|
0
|
refs/heads/main
|
fa3f105cf5e845bbec0378eb1f12c2c7fd935033
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f1404780a55c8cf7ab4ab0b98386c071169dc78a","after":"fa3f105cf5e845bbec0378eb1f12c2c7fd935033","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/f1404780a55c8cf7ab4ab0b98386c071169dc78a...fa3f105cf5e845bbec0378eb1f12c2c7fd935033","commits":[{"id":"fa3f105cf5e845bbec0378eb1f12c2c7fd935033","message":"Merge branch 'main' into feat/client-identity\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/fa3f105cf5e845bbec0378eb1f12c2c7fd935033","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-12T06:55:23-07:00","added":["docs/staging晋级操作说明.md","governance/check-promotion.mjs","governance/test/promotion.test.mjs","stack/promotion/promotion-record.schema.json","stack/promotion/promotion-record.template.json","stack/promotion/target-env-signoff.template.json","stack/provision/openbao-provision.json","stack/provision/openbao-provision.sh","stack/reports/openbao-smoke.2026-09-12.json"],"removed":[],"modified":["README.md","docs/runbook.md","governance/README.md","package.json","stack/README.md","stack/compose.yaml"]},{"id":"4b563df617da8051d598fefbf8bf284ae013f366","message":"feat(governance): PF-23 staging 晋级流程草案——晋级记录 Schema / 模板 / 签收位 P1—P9 + check-promotion R1—R9(DEC-024 A / DEC-026 批准记录 2026-09-12)\n\n- stack/promotion/promotion-record.schema.json:晋级记录 v1(manifest / candidate / checks / approvals / rollback / signoff / waivers / preview)\n- stack/promotion/target-env-signoff.template.json:目标环境签收位 P1—P9(取自 OS deploy/production/target-env-signoff.json,改基础设施口径,不登记实名)\n- stack/promotion/promotion-record.template.json:staging 记录模板\n- governance/check-promotion.mjs:R1 形状 / R2 级序 dev→test→staging→prod(preview←candidate)/ R3 同 digest(记录 = 候选 = Manifest images.runtime.digest,prod 禁止 rebuild)/ R4 级别门槛 / R5 检查项 / R6 审批角色 / R7 回滚演练 ≤ 600 s / R8 preview 上限 / R9 签收项在模板内 → reports/promotion.latest.json;根脚本 promotion:check\n- governance/test/promotion.test.mjs 18 例(治理套件 144/144)\n- docs/staging晋级操作说明.md:级序与门槛、十步操作、记录格式、恢复演练、首次晋级前置、偏差;runbook §5 / §10、governance / stack / 仓 README 同步\n- 无真实晋级记录:Manifest 仍 partial 且 images.runtime.digest=null\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/4b563df617da8051d598fefbf8bf284ae013f366","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-12T06:54:53-07:00","added":["docs/staging晋级操作说明.md","governance/check-promotion.mjs","governance/test/promotion.test.mjs","stack/promotion/promotion-record.schema.json","stack/promotion/promotion-record.template.json","stack/promotion/target-env-signoff.template.json"],"removed":[],"modified":["README.md","docs/runbook.md","governance/README.md","package.json","stack/README.md"]},{"id":"ad294902eb3bd88b58b5a4e056d892c8a311cd65","message":"Merge pull request #13 from laoluojuhai/feat/client-identity\n\nfeat(identity): add verified token consumer and validate stack integration","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/ad294902eb3bd88b58b5a4e056d892c8a311cd65","author":{"name":"laoluojuhai","email":"158980461+laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"GitHub","email":"noreply@github.com","username":""},"verification":null,"timestamp":"2026-09-12T06:53:37-07:00","added":["docs/PF-07身份客户端实现记录-2026-09-12.md","reports/client-identity.latest.json","runtime/clients/identity/README.md","runtime/clients/identity/contract-import.json","runtime/clients/identity/package.json","runtime/clients/identity/src/access-token.v1.schema.json","runtime/clients/identity/src/index.test.ts","runtime/clients/identity/src/index.ts","runtime/clients/identity/tsconfig.json","runtime/modules/identity/test/fixtures/README.md","runtime/modules/identity/test/fixtures/access-token.v1.fixtures.json"],"removed":[],"modified":["runtime/clients/README.md","runtime/pnpm-lock.yaml","stack/provision/redpanda-topics.sh"]},{"id":"a66461cda48132fb6a863b64f705b12e11460ce4","message":"fix(stack): delimit broker variable in candidate dry-run\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/a66461cda48132fb6a863b64f705b12e11460ce4","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-12T06:42:54-07:00","added":[],"removed":[],"modified":["docs/PF-07身份客户端实现记录-2026-09-12.md","stack/provision/redpanda-topics.sh"]},{"id":"6b4e0d146b3d8694bf699c898c9ba80df9bb478a","message":"Merge commit '44f921ff30c0579e914befcdfb77cd569513cdb6' into feat/client-identity\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/6b4e0d146b3d8694bf699c898c9ba80df9bb478a","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-12T06:41:54-07:00","added":["stack/provision/redpanda-topics.json","stack/provision/redpanda-topics.sh"],"removed":["stack/provision/nats-streams.json","stack/provision/nats-streams.sh"],"modified":["docs/runbook.md","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","stack/README.md","stack/compose.yaml"]}],"total_commits":0,"head_commit":{"id":"fa3f105cf5e845bbec0378eb1f12c2c7fd935033","message":"Merge branch 'main' into feat/client-identity\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/fa3f105cf5e845bbec0378eb1f12c2c7fd935033","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-12T06:55:23-07:00","added":["docs/staging晋级操作说明.md","governance/check-promotion.mjs","governance/test/promotion.test.mjs","stack/promotion/promotion-record.schema.json","stack/promotion/promotion-record.template.json","stack/promotion/target-env-signoff.template.json","stack/provision/openbao-provision.json","stack/provision/openbao-provision.sh","stack/reports/openbao-smoke.2026-09-12.json"],"removed":[],"modified":["README.md","docs/runbook.md","governance/README.md","package.json","stack/README.md","stack/compose.yaml"]},"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":4678,"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":5,"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-12T21:46: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"}}...
|
push
|
2
|
30
|
1789221372
|
1789221408
|
0
|
1789221370
|
1789221432
|
group: platform-${{ github.workflow }}-${{ github. group: platform-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
...
|
platform-platform.yml-refs/heads/main
|
0
|
Edit
Delete
|
|
24101
|
docs(计划): 登记 check:gate-flow——真源仓补上「每个门禁的失败信号有谁在看」
|
117
|
5
|
governance.yml
|
61
|
5
|
0
|
refs/heads/main
|
392f0fde46813c5d061762b8985c74948f6bb088
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f0d1f11ac7747e845e2781e441cf35bf86717dd5","after":"392f0fde46813c5d061762b8985c74948f6bb088","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/f0d1f11ac7747e845e2781e441cf35bf86717dd5...392f0fde46813c5d061762b8985c74948f6bb088","commits":[{"id":"392f0fde46813c5d061762b8985c74948f6bb088","message":"docs(计划): 登记 check:gate-flow——真源仓补上「每个门禁的失败信号有谁在看」\n\n治理层 2026-09-14 已为自己建了门禁消费登记并写明病因,真源仓一直没问过这个问题。\n实测 44 个脚本里 12 个既不在 check 链、CI 也不调用,其中三个是真门禁;最实的一处是\nCI 的 image job 构建、生成 SBOM、签名镜像却从不启动它一次,而那六项冒烟正是 D-1 的\n退出条件——且 image-smoke 报告在未登记账里的搁置因此没有出口。\n\n消费关系自动推导不接受声明,登记表只装推不出来的那些,随接线变少、不能无声变多。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/392f0fde46813c5d061762b8985c74948f6bb088","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-18T01:10:55-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/开发计划.md"]}],"total_commits":0,"head_commit":{"id":"392f0fde46813c5d061762b8985c74948f6bb088","message":"docs(计划): 登记 check:gate-flow——真源仓补上「每个门禁的失败信号有谁在看」\n\n治理层 2026-09-14 已为自己建了门禁消费登记并写明病因,真源仓一直没问过这个问题。\n实测 44 个脚本里 12 个既不在 check 链、CI 也不调用,其中三个是真门禁;最实的一处是\nCI 的 image job 构建、生成 SBOM、签名镜像却从不启动它一次,而那六项冒烟正是 D-1 的\n退出条件——且 image-smoke 报告在未登记账里的搁置因此没有出口。\n\n消费关系自动推导不接受声明,登记表只装推不出来的那些,随接线变少、不能无声变多。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/392f0fde46813c5d061762b8985c74948f6bb088","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-18T01:10:55-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/开发计划.md"]},"repository":{"id":117,"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":"platform-governance","full_name":"luoanwu/platform-governance","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":9674,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/platform-governance/languages","html_url":"https://gitea.g-hi.com/luoanwu/platform-governance","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/platform-governance","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/platform-governance.git","clone_url":"https://gitea.g-hi.com/luoanwu/platform-governance.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":2,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-09-15T11:53:24+08:00","updated_at":"2026-09-18T16:00:16+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"}}...
|
push
|
1
|
4
|
1789719060
|
1789719075
|
0
|
1789719058
|
1789719075
|
|
|
0
|
Edit
Delete
|
|
23635
|
docs(governance): 快照记录 run 33835310370——f0ccb47 St docs(governance): 快照记录 run 33835310370——f0ccb47 Static + Runtime/UI 绿、入职恢复用例 CI 通过、13/15 job 绿;锚点刷新至 f0ccb47...
|
76
|
5
|
governance.yml
|
37
|
5
|
0
|
refs/heads/main
|
9159f925070e50ba4126f448cb7755396e4a66ac
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f0ccb47b6ee3f55638f9941477a83f05669d40a1","after":"9159f925070e50ba4126f448cb7755396e4a66ac","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/f0ccb47b6ee3f55638f9941477a83f05669d40a1...9159f925070e50ba4126f448cb7755396e4a66ac","commits":[{"id":"9159f925070e50ba4126f448cb7755396e4a66ac","message":"docs(governance): 快照记录 run 33835310370——f0ccb47 Static + Runtime/UI 绿、入职恢复用例 CI 通过、13/15 job 绿;锚点刷新至 f0ccb47\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/9159f925070e50ba4126f448cb7755396e4a66ac","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-03T22:14:53-07:00","added":[],"removed":[],"modified":["CLAUDE.md","docs/governance-experience.md","reports/agent-adapters.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance.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/naming.latest.json","reports/operations.latest.json","reports/product-acceptance.latest.json","reports/product-migrations.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]}],"total_commits":0,"head_commit":{"id":"9159f925070e50ba4126f448cb7755396e4a66ac","message":"docs(governance): 快照记录 run 33835310370——f0ccb47 Static + Runtime/UI 绿、入职恢复用例 CI 通过、13/15 job 绿;锚点刷新至 f0ccb47\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/9159f925070e50ba4126f448cb7755396e4a66ac","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-03T22:14:53-07:00","added":[],"removed":[],"modified":["CLAUDE.md","docs/governance-experience.md","reports/agent-adapters.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance.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/naming.latest.json","reports/operations.latest.json","reports/product-acceptance.latest.json","reports/product-migrations.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},"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":81698,"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":2,"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-09-04T12:02:00+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"}}...
|
push
|
2
|
32
|
1788498900
|
1788499169
|
0
|
1788498900
|
1788499171
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23893
|
Merge github/main (PR #5 merge commit 4fb6f15) int Merge github/main (PR #5 merge commit 4fb6f15) into main...
|
116
|
5
|
platform.yml
|
19
|
5
|
0
|
refs/heads/main
|
bb38f4cd0f55cd2cb76723ca12f26c19414a1817
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f0956259a231da48063f98a22ad35b52a3699916","after":"bb38f4cd0f55cd2cb76723ca12f26c19414a1817","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/f0956259a231da48063f98a22ad35b52a3699916...bb38f4cd0f55cd2cb76723ca12f26c19414a1817","commits":[{"id":"bb38f4cd0f55cd2cb76723ca12f26c19414a1817","message":"Merge github/main (PR #5 merge commit 4fb6f15) into main\n\nGitHub main 受保护只能经 PR 合入,本地 main 在 PR #5 合并期间又前进了 adce2fa / f095625;本合并提交把两侧历史接回一条线,树与 f095625 完全相同,不改任何文件。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/bb38f4cd0f55cd2cb76723ca12f26c19414a1817","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-12T03:33:45-07:00","added":[],"removed":[],"modified":[]},{"id":"4fb6f15be157b9bb8254575473695cec6fc03ca2","message":"Merge pull request #5 from laoluojuhai/sync/main-20260912-8a95879\n\nsync(main): 推平本地 main → GitHub(候选回写 9276c8d + 六模块失败关闭夹具 8a95879)","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/4fb6f15be157b9bb8254575473695cec6fc03ca2","author":{"name":"laoluojuhai","email":"158980461+laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"GitHub","email":"noreply@github.com","username":""},"verification":null,"timestamp":"2026-09-12T03:32:25-07:00","added":["governance/fixtures/module-ai-gateway.suite.json","governance/fixtures/module-audit.suite.json","governance/fixtures/module-credential.suite.json","governance/fixtures/module-fact.suite.json","governance/fixtures/module-permission.suite.json","governance/fixtures/module-scope.suite.json","governance/test/platform-fixtures.test.mjs","runtime/modules/ai-gateway/src/domain/fixture-evaluator.ts","runtime/modules/ai-gateway/test/fixtures/ai-gateway.fixtures.json","runtime/modules/ai-gateway/test/negative/ai-gateway.fixtures.test.ts","runtime/modules/audit/src/domain/fixture-evaluator.ts","runtime/modules/audit/test/fixtures/audit.fixtures.json","runtime/modules/audit/test/negative/audit.fixtures.test.ts","runtime/modules/credential/src/domain/fixture-evaluator.ts","runtime/modules/credential/test/fixtures/credential.fixtures.json","runtime/modules/credential/test/negative/credential.fixtures.test.ts","runtime/modules/fact/src/domain/fixture-evaluator.ts","runtime/modules/fact/test/fixtures/fact.fixtures.json","runtime/modules/fact/test/negative/fact.fixtures.test.ts","runtime/modules/permission/src/domain/fixture-evaluator.ts","runtime/modules/permission/test/fixtures/permission.fixtures.json","runtime/modules/permission/test/negative/permission.fixtures.test.ts","runtime/modules/scope/src/domain/fixture-evaluator.ts","runtime/modules/scope/test/fixtures/scope.fixtures.json","runtime/modules/scope/test/negative/scope.fixtures.test.ts"],"removed":[],"modified":[".github/workflows/platform.yml","contracts/candidates/README.md","contracts/candidates/facts/AiActionGoverned.v1.json","contracts/candidates/facts/AuditAppended.v1.json","contracts/candidates/facts/FactPersisted.v1.json","contracts/candidates/facts/GrantChanged.v1.json","contracts/candidates/facts/OrganizationUnitMoved.v1.json","contracts/candidates/facts/PermissionInvalidated.v1.json","contracts/candidates/facts/ScopeSnapshotPublished.v1.json","contracts/candidates/facts/ServiceCredentialIssued.v1.json","contracts/candidates/facts/ServiceCredentialRevoked.v1.json","contracts/candidates/facts/SessionRevoked.v1.json","contracts/candidates/facts/StoreOrgAssignmentChanged.v1.json","governance/check-fixtures.mjs","package.json","runtime/modules/ai-gateway/src/domain/index.ts","runtime/modules/audit/src/domain/index.ts","runtime/modules/credential/src/domain/index.ts","runtime/modules/fact/src/domain/index.ts","runtime/modules/permission/src/domain/index.ts","runtime/modules/scope/src/domain/index.ts"]}],"total_commits":0,"head_commit":{"id":"bb38f4cd0f55cd2cb76723ca12f26c19414a1817","message":"Merge github/main (PR #5 merge commit 4fb6f15) into main\n\nGitHub main 受保护只能经 PR 合入,本地 main 在 PR #5 合并期间又前进了 adce2fa / f095625;本合并提交把两侧历史接回一条线,树与 f095625 完全相同,不改任何文件。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/bb38f4cd0f55cd2cb76723ca12f26c19414a1817","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-12T03:33:45-07:00","added":[],"removed":[],"modified":[]},"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":3499,"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":4,"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-12T18:32:36+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"}}...
|
push
|
3
|
10
|
0
|
1789209470
|
0
|
1789209229
|
1789209470
|
group: platform-${{ github.workflow }}-${{ github. group: platform-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
...
|
platform-platform.yml-refs/heads/main
|
0
|
Edit
Delete
|
|
23523
|
feat(governance): harden formal production trust b feat(governance): harden formal production trust boundaries...
|
57
|
5
|
governance.yml
|
6
|
5
|
0
|
refs/heads/main
|
8e23fd115535dda184b584cb62396fa8286ef383
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f094101357dc511e450e0e18fab5c91baaed9865","after":"8e23fd115535dda184b584cb62396fa8286ef383","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/f094101357dc511e450e0e18fab5c91baaed9865...8e23fd115535dda184b584cb62396fa8286ef383","commits":[{"id":"8e23fd115535dda184b584cb62396fa8286ef383","message":"feat(governance): harden formal production trust boundaries\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/8e23fd115535dda184b584cb62396fa8286ef383","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-08-25T17:46:37-07:00","added":["apps/api-fastify/src/modules/material-production/runtime-trust.ts","apps/api-fastify/test/material-runtime-trust.test.ts","apps/api-nestjs/src/common/material-runtime.guard.ts","apps/api-nestjs/test/material-runtime-guard.test.ts","reports/production-security.latest.json","scripts/check-production-security.mjs"],"removed":[],"modified":["CLAUDE.md","apps/api-fastify/src/app.ts","apps/api-fastify/src/modules/material-factory/material-factory.service.ts","apps/api-fastify/src/modules/material-production/material-production.service.ts","apps/api-fastify/src/modules/material-production/object-storage.service.ts","apps/api-fastify/src/routes/material-factory.ts","apps/api-fastify/src/routes/material-production.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-fastify/test/material-production.integration.test.ts","apps/api-fastify/test/model-connector.client.test.ts","apps/api-nestjs/src/create-app.ts","apps/api-nestjs/src/material-factory/material-factory.controller.ts","apps/api-nestjs/src/material-factory/material-factory.service.ts","apps/api-nestjs/src/material-production/material-production.controller.ts","apps/api-nestjs/src/material-production/material-production.service.ts","apps/api-nestjs/src/material-production/object-storage.service.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/api-nestjs/test/material-production.integration.test.ts","apps/api-nestjs/test/model-connector.client.test.ts","apps/web/src/components/material-factory/ProductionDetail.tsx","apps/web/src/lib/api.ts","apps/web/src/lib/types.ts","deploy/vm/.env.example","deploy/vm/docker-compose.yml","docs/deploy-vm.md","docs/domain/material-production-blueprint.md","package.json","packages/contracts/src/material-brand.test.ts","packages/contracts/src/material.ts","packages/contracts/src/production.ts","reports/adversarial-acceptance-audit.latest.md","reports/baseline.json","reports/contract-consumers.latest.json","reports/full-transformation-completion-audit.latest.md","reports/governance-docs.latest.json","reports/governance.latest.json","reports/inference-acceptance.latest.json","reports/material-review-concurrency-guard.latest.json","reports/migrations.latest.json","reports/module-boundary.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/production-acceptance.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/storyboard-director-guard.latest.json","reports/ui-acceptance.desktop.png","reports/ui-acceptance.latest.json","reports/ui-acceptance.mobile.png","reports/ui-acceptance.production.png","reports/validation-source.latest.json","scripts/check-ui-acceptance.mjs","scripts/governance-report.mjs"]},{"id":"58ffde2d1e2a662a18b4fadf901b0f6f5233f30a","message":"feat: 完善分镜导演终审与对抗治理\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/58ffde2d1e2a662a18b4fadf901b0f6f5233f30a","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-08-25T11:55:23-07:00","added":["Codex 图像 2026年8月24日 02_24_17.jpg","apps/api-fastify/prisma/migrations/20260825103000_creative_support_skills/migration.sql","apps/api-fastify/prisma/migrations/20260825130000_director_spec_qc/migration.sql","apps/api-fastify/prisma/migrations/20260825134500_storyboard_delivery_variants/migration.sql","apps/api-nestjs/prisma/migrations/20260825103000_creative_support_skills/migration.sql","apps/api-nestjs/prisma/migrations/20260825130000_director_spec_qc/migration.sql","apps/api-nestjs/prisma/migrations/20260825134500_storyboard_delivery_variants/migration.sql","apps/web/src/components/material-factory/CreativeSupportSkills.tsx","apps/web/src/components/material-factory/DirectorReviewWorkbench.tsx","packages/contracts/src/creative-support.test.ts","packages/contracts/src/creative-support.ts","packages/contracts/src/director-spec.test.ts","packages/contracts/src/director-spec.ts","reports/adversarial-acceptance-audit.latest.md","reports/storyboard-director-guard.latest.json","scripts/check-storyboard-director-guard.mjs"],"removed":[],"modified":["CLAUDE.md","apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/modules/material-factory/material-factory.service.ts","apps/api-fastify/src/modules/material-factory/material-sidecar.client.ts","apps/api-fastify/src/modules/material-factory/shooting-script.service.ts","apps/api-fastify/src/routes/material-factory.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-fastify/test/material-inference.acceptance.test.ts","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/src/material-factory/material-factory.controller.ts","apps/api-nestjs/src/material-factory/material-factory.service.ts","apps/api-nestjs/src/material-factory/material-sidecar.client.ts","apps/api-nestjs/src/material-factory/shooting-script.service.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/api-nestjs/test/material-inference.acceptance.test.ts","apps/web/package.json","apps/web/src/components/material-factory/CreateStudio.tsx","apps/web/src/components/material-factory/ScriptStudio.tsx","apps/web/src/components/material-factory/StoryboardStudio.tsx","apps/web/src/components/material-factory/VideoStudio.tsx","apps/web/src/lib/api.ts","apps/web/src/lib/types.ts","package.json","packages/contracts/src/index.ts","packages/contracts/src/material.ts","packages/contracts/src/script-to-storyboard.test.ts","packages/contracts/src/script-to-storyboard.ts","packages/contracts/src/script.ts","packages/contracts/src/storyboard.ts","pnpm-lock.yaml","reports/baseline.json","reports/contract-consumers.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/inference-acceptance.latest.json","reports/material-review-concurrency-guard.latest.json","reports/migrations.latest.json","reports/module-boundary.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/production-acceptance.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/ui-acceptance.desktop.png","reports/ui-acceptance.latest.json","reports/ui-acceptance.mobile.png","reports/ui-acceptance.production.png","reports/validation-source.latest.json","scripts/check-ui-acceptance.mjs","scripts/governance-report.mjs"]}],"total_commits":0,"head_commit":{"id":"8e23fd115535dda184b584cb62396fa8286ef383","message":"feat(governance): harden formal production trust boundaries\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/8e23fd115535dda184b584cb62396fa8286ef383","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-08-25T17:46:37-07:00","added":["apps/api-fastify/src/modules/material-production/runtime-trust.ts","apps/api-fastify/test/material-runtime-trust.test.ts","apps/api-nestjs/src/common/material-runtime.guard.ts","apps/api-nestjs/test/material-runtime-guard.test.ts","reports/production-security.latest.json","scripts/check-production-security.mjs"],"removed":[],"modified":["CLAUDE.md","apps/api-fastify/src/app.ts","apps/api-fastify/src/modules/material-factory/material-factory.service.ts","apps/api-fastify/src/modules/material-production/material-production.service.ts","apps/api-fastify/src/modules/material-production/object-storage.service.ts","apps/api-fastify/src/routes/material-factory.ts","apps/api-fastify/src/routes/material-production.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-fastify/test/material-production.integration.test.ts","apps/api-fastify/test/model-connector.client.test.ts","apps/api-nestjs/src/create-app.ts","apps/api-nestjs/src/material-factory/material-factory.controller.ts","apps/api-nestjs/src/material-factory/material-factory.service.ts","apps/api-nestjs/src/material-production/material-production.controller.ts","apps/api-nestjs/src/material-production/material-production.service.ts","apps/api-nestjs/src/material-production/object-storage.service.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/api-nestjs/test/material-production.integration.test.ts","apps/api-nestjs/test/model-connector.client.test.ts","apps/web/src/components/material-factory/ProductionDetail.tsx","apps/web/src/lib/api.ts","apps/web/src/lib/types.ts","deploy/vm/.env.example","deploy/vm/docker-compose.yml","docs/deploy-vm.md","docs/domain/material-production-blueprint.md","package.json","packages/contracts/src/material-brand.test.ts","packages/contracts/src/material.ts","packages/contracts/src/production.ts","reports/adversarial-acceptance-audit.latest.md","reports/baseline.json","reports/contract-consumers.latest.json","reports/full-transformation-completion-audit.latest.md","reports/governance-docs.latest.json","reports/governance.latest.json","reports/inference-acceptance.latest.json","reports/material-review-concurrency-guard.latest.json","reports/migrations.latest.json","reports/module-boundary.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/production-acceptance.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/storyboard-director-guard.latest.json","reports/ui-acceptance.desktop.png","reports/ui-acceptance.latest.json","reports/ui-acceptance.mobile.png","reports/ui-acceptance.production.png","reports/validation-source.latest.json","scripts/check-ui-acceptance.mjs","scripts/governance-report.mjs"]},"repository":{"id":57,"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":"image-generation","full_name":"luoanwu/image-generation","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":44687,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation/languages","html_url":"https://gitea.g-hi.com/luoanwu/image-generation","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/image-generation.git","clone_url":"https://gitea.g-hi.com/luoanwu/image-generation.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":5,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-06T17:04:22+08:00","updated_at":"2026-08-26T00:40:46+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"}}...
|
push
|
1
|
4
|
1787705227
|
1787705287
|
0
|
1787705225
|
1787705287
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23841
|
test: verify the script other-assets round
|
57
|
5
|
governance.yml
|
194
|
5
|
0
|
refs/heads/main
|
8e703347f507d2afa17667105fc83e11a9c66ee6
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"f07dca96879699117ca082bd7164703b715f9f1e","after":"8e703347f507d2afa17667105fc83e11a9c66ee6","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/f07dca96879699117ca082bd7164703b715f9f1e...8e703347f507d2afa17667105fc83e11a9c66ee6","commits":[{"id":"8e703347f507d2afa17667105fc83e11a9c66ee6","message":"test: verify the script other-assets round\n\nSeven gates plus the static check passed on an isolated stack for\nfingerprint c6b01fd5… (main f07dca96 + four script role kinds with OTHER,\nstoryboard propIds slot for other assets, duplicate-key rejection, role\nsummaries on the generated event). The first static run was cut off at\nlint and was rerun in full. CLAUDE.md heavy-gate rows, reports, the\nspecialty README and the governance log follow.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/8e703347f507d2afa17667105fc83e11a9c66ee6","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-10T15:35:22-07:00","added":["docs/governance/log/2026-09-10-script-other-assets.md","reports/script-other-assets-2026-09-10/README.md"],"removed":[],"modified":["CLAUDE.md","reports/admin-brands.desktop.png","reports/admin-brands.mobile.png","reports/admin-mobile.png","reports/content-detail.images-desktop.png","reports/content-detail.images-factual-dialog-desktop.png","reports/content-detail.output-desktop.png","reports/content-detail.plans-desktop.png","reports/contract-consumers.latest.json","reports/creative-history-hidden.desktop.png","reports/creative-history-restore.mobile.png","reports/creative-quality.desktop.png","reports/dependency-audit.latest.json","reports/director-workbench.desktop.png","reports/governance-docs.latest.json","reports/governance.latest.json","reports/image-creation-1440.png","reports/image-edit-1135.png","reports/image-edit-1440.png","reports/image-edit-390.png","reports/image-edit-768.png","reports/image-edit-result.png","reports/inference-acceptance.latest.json","reports/material-review-concurrency-guard.latest.json","reports/migrations.latest.json","reports/model-api-key-saved.png","reports/model-credential-error.desktop.png","reports/model-credential-error.mobile.png","reports/module-boundary.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/prd-retry.mobile.png","reports/prd-review.desktop.png","reports/production-acceptance.latest.json","reports/production-delivery-released.desktop.png","reports/production-delivery-revoked.mobile.png","reports/production-pagination.desktop.png","reports/production-pagination.mobile.png","reports/production-review-preview.desktop.png","reports/production-security.latest.json","reports/production-single-tenant-create.desktop.png","reports/production-single-tenant-separation.desktop.png","reports/public-file-acceptance.latest.json","reports/public-file-integration.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/script-acceptance.latest.json","reports/script-generation-queue.png","reports/sidecar-tests.latest.json","reports/storyboard-asset-dialog.desktop.png","reports/storyboard-director-guard.latest.json","reports/storyboard-frame-dialog.desktop.first.png","reports/storyboard-frame-dialog.desktop.last.png","reports/storyboard-frame-dialog.mobile.first.png","reports/storyboard-frame-dialog.mobile.last.png","reports/storyboard-frame-dialog.mobile.saved.png","reports/template-making.1135.png","reports/template-making.1440.png","reports/template-preview.templates.png","reports/template-saved-master.APPLICATION.png","reports/template-types.desktop.png","reports/toolchain.latest.json","reports/ui-acceptance.desktop.png","reports/ui-acceptance.draft-import.png","reports/ui-acceptance.latest.json","reports/ui-acceptance.mobile.png","reports/ux-edit.desktop.png","reports/ux-home.desktop.png","reports/ux-home.mobile.png","reports/ux-intake.desktop.png","reports/validation-source.latest.json","reports/video-batch-paused.mobile.png","reports/video-regenerate-2026-09-08/desktop.png","reports/video-regenerate-2026-09-08/mobile.png"]},{"id":"acb9187a18f36219ab4bdf0ad91db1392ba8ad8c","message":"docs(script): glossary entry and enum migration plan for other assets\n\nThe domain glossary lists OTHER as the fourth storyboard visual asset\nkind (isomorphic with scriptRole.roleType), and the release note records\nwhy the script_role_type enum extension cannot ship through release.py's\nschema-unchanged / additive-new-tables path: it needs the r25-style\nrehearsed switch, with the rollback boundary stated (no OTHER rows yet).\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/acb9187a18f36219ab4bdf0ad91db1392ba8ad8c","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-10T15:35:21-07:00","added":["docs/releases/2026-09-10-script-other-assets-migration-plan.md"],"removed":[],"modified":["docs/domain-glossary.md"]},{"id":"f970f7e82958d59a8242b085d24cfb1d728b7935","message":"feat(script): extract other assets as a fourth material category\n\nScript roles and storyboard visual assets now share four kinds:\nCHARACTER / PROP / SCENE / OTHER. OTHER holds visual assets that must stay\nconsistent across shots but fit none of the first three (brand marks and\nsignage, vehicles, full looks, effects). The extraction prompt derives its\nclassification rules and appearance hints from SCRIPT_ROLE_TYPE_GUIDES,\nadds merge / coverage discipline, and the mode-locked draft schema rejects\nduplicate role keys instead of failing at the unique index. Both backends\nrecord per-type counts and unreferenced keys on the generated event.\n\nStoryboard side: OTHER assets travel through the shot propIds slot\n(STORYBOARD_PROP_SLOT_KINDS), are compiled as a separate reference block,\nand keep their names as visual motifs. Both Prisma schemas extend the\nscript_role_type enum with an identical additive migration.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/f970f7e82958d59a8242b085d24cfb1d728b7935","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-10T07:42:38-07:00","added":["apps/api-fastify/prisma/migrations/20260910120000_script_role_other_asset/migration.sql","apps/api-nestjs/prisma/migrations/20260910120000_script_role_other_asset/migration.sql","packages/contracts/src/script-other-assets.test.ts"],"removed":[],"modified":["apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/modules/material-factory/shooting-script.service.ts","apps/api-fastify/test/script-reference-upload.integration.test.ts","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/src/material-factory/shooting-script.service.ts","apps/api-nestjs/test/script-reference-upload.integration.test.ts","apps/web/src/components/material-factory/RoleConfirmPanel.tsx","apps/web/src/components/material-factory/ScriptStudio.tsx","apps/web/src/components/material-factory/StoryboardStudio.tsx","apps/web/src/components/material-factory/StoryboardVisualAssetImport.tsx","apps/web/src/components/material-factory/storyboard-visual-assets.ts","packages/contracts/src/script-to-storyboard.ts","packages/contracts/src/script.ts","packages/contracts/src/storyboard-image.test.ts","packages/contracts/src/storyboard-image.ts","packages/contracts/src/storyboard-llm.test.ts","packages/contracts/src/storyboard-llm.ts","packages/contracts/src/storyboard.ts","scripts/check-ui-acceptance.mjs","scripts/lib/storyboard-ui-fixture.mjs","scripts/migration-history.json","scripts/storyboard-visual-assets.test.mjs"]}],"total_commits":0,"head_commit":{"id":"8e703347f507d2afa17667105fc83e11a9c66ee6","message":"test: verify the script other-assets round\n\nSeven gates plus the static check passed on an isolated stack for\nfingerprint c6b01fd5… (main f07dca96 + four script role kinds with OTHER,\nstoryboard propIds slot for other assets, duplicate-key rejection, role\nsummaries on the generated event). The first static run was cut off at\nlint and was rerun in full. CLAUDE.md heavy-gate rows, reports, the\nspecialty README and the governance log follow.\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/8e703347f507d2afa17667105fc83e11a9c66ee6","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-10T15:35:22-07:00","added":["docs/governance/log/2026-09-10-script-other-assets.md","reports/script-other-assets-2026-09-10/README.md"],"removed":[],"modified":["CLAUDE.md","reports/admin-brands.desktop.png","reports/admin-brands.mobile.png","reports/admin-mobile.png","reports/content-detail.images-desktop.png","reports/content-detail.images-factual-dialog-desktop.png","reports/content-detail.output-desktop.png","reports/content-detail.plans-desktop.png","reports/contract-consumers.latest.json","reports/creative-history-hidden.desktop.png","reports/creative-history-restore.mobile.png","reports/creative-quality.desktop.png","reports/dependency-audit.latest.json","reports/director-workbench.desktop.png","reports/governance-docs.latest.json","reports/governance.latest.json","reports/image-creation-1440.png","reports/image-edit-1135.png","reports/image-edit-1440.png","reports/image-edit-390.png","reports/image-edit-768.png","reports/image-edit-result.png","reports/inference-acceptance.latest.json","reports/material-review-concurrency-guard.latest.json","reports/migrations.latest.json","reports/model-api-key-saved.png","reports/model-credential-error.desktop.png","reports/model-credential-error.mobile.png","reports/module-boundary.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/prd-retry.mobile.png","reports/prd-review.desktop.png","reports/production-acceptance.latest.json","reports/production-delivery-released.desktop.png","reports/production-delivery-revoked.mobile.png","reports/production-pagination.desktop.png","reports/production-pagination.mobile.png","reports/production-review-preview.desktop.png","reports/production-security.latest.json","reports/production-single-tenant-create.desktop.png","reports/production-single-tenant-separation.desktop.png","reports/public-file-acceptance.latest.json","reports/public-file-integration.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/script-acceptance.latest.json","reports/script-generation-queue.png","reports/sidecar-tests.latest.json","reports/storyboard-asset-dialog.desktop.png","reports/storyboard-director-guard.latest.json","reports/storyboard-frame-dialog.desktop.first.png","reports/storyboard-frame-dialog.desktop.last.png","reports/storyboard-frame-dialog.mobile.first.png","reports/storyboard-frame-dialog.mobile.last.png","reports/storyboard-frame-dialog.mobile.saved.png","reports/template-making.1135.png","reports/template-making.1440.png","reports/template-preview.templates.png","reports/template-saved-master.APPLICATION.png","reports/template-types.desktop.png","reports/toolchain.latest.json","reports/ui-acceptance.desktop.png","reports/ui-acceptance.draft-import.png","reports/ui-acceptance.latest.json","reports/ui-acceptance.mobile.png","reports/ux-edit.desktop.png","reports/ux-home.desktop.png","reports/ux-home.mobile.png","reports/ux-intake.desktop.png","reports/validation-source.latest.json","reports/video-batch-paused.mobile.png","reports/video-regenerate-2026-09-08/desktop.png","reports/video-regenerate-2026-09-08/mobile.png"]},"repository":{"id":57,"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":"image-generation","full_name":"luoanwu/image-generation","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":855595,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation/languages","html_url":"https://gitea.g-hi.com/luoanwu/image-generation","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/image-generation.git","clone_url":"https://gitea.g-hi.com/luoanwu/image-generation.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":11,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-06T17:04:22+08:00","updated_at":"2026-09-10T20:51:10+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"}}...
|
push
|
2
|
4
|
1789079752
|
1789079796
|
0
|
1789079752
|
1789079796
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23602
|
docs(governance): C241 快照锚点刷新至 eefb0fe——纯报告刷新提交打穿 docs(governance): C241 快照锚点刷新至 eefb0fe——纯报告刷新提交打穿 C232 自指窗令主干 run 33515811391 红...
|
76
|
5
|
governance.yml
|
28
|
5
|
0
|
refs/heads/main
|
019f721377c4a8970dfc4064886129b1cbcbd089
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"eefb0fed0ca13cafe27e806924d4cc2f19154087","after":"019f721377c4a8970dfc4064886129b1cbcbd089","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/eefb0fed0ca13cafe27e806924d4cc2f19154087...019f721377c4a8970dfc4064886129b1cbcbd089","commits":[{"id":"019f721377c4a8970dfc4064886129b1cbcbd089","message":"docs(governance): C241 快照锚点刷新至 eefb0fe——纯报告刷新提交打穿 C232 自指窗令主干 run 33515811391 红\n\n- 发布状态快照/ci-gate 行/G14 三处同源更新:两远端 tip eefb0fe,最近共同 clean CI 89b2ade(run 33301191846 15 job 全绿)\n- 锚点纪律升格:推送批次最后一个提交(含只刷新 reports/ 的提交)必须刷新锚点;收尾清单新增推送前 docs-truth:assert\n- 登记 C241 判责(含 eefb0fe 带入两次运行混杂的静态子报告);证据新鲜度三行对齐真实报告日期与作用域\n- 产品 Host web 的 playwright e2e-results.json 不再入库(与 apps/web 同口径)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/019f721377c4a8970dfc4064886129b1cbcbd089","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-02T08:06:27-07:00","added":[],"removed":["products/juhai.hr/host/web/e2e-results.json"],"modified":[".gitignore","CLAUDE.md","docs/governance-experience.md"]}],"total_commits":0,"head_commit":{"id":"019f721377c4a8970dfc4064886129b1cbcbd089","message":"docs(governance): C241 快照锚点刷新至 eefb0fe——纯报告刷新提交打穿 C232 自指窗令主干 run 33515811391 红\n\n- 发布状态快照/ci-gate 行/G14 三处同源更新:两远端 tip eefb0fe,最近共同 clean CI 89b2ade(run 33301191846 15 job 全绿)\n- 锚点纪律升格:推送批次最后一个提交(含只刷新 reports/ 的提交)必须刷新锚点;收尾清单新增推送前 docs-truth:assert\n- 登记 C241 判责(含 eefb0fe 带入两次运行混杂的静态子报告);证据新鲜度三行对齐真实报告日期与作用域\n- 产品 Host web 的 playwright e2e-results.json 不再入库(与 apps/web 同口径)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/019f721377c4a8970dfc4064886129b1cbcbd089","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-02T08:06:27-07:00","added":[],"removed":["products/juhai.hr/host/web/e2e-results.json"],"modified":[".gitignore","CLAUDE.md","docs/governance-experience.md"]},"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":78252,"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":2,"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-09-01T21:50:16+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"}}...
|
push
|
2
|
60
|
1788361595
|
1788362702
|
0
|
1788361593
|
1788362702
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24120
|
chore(reports): B1 的二十八份静态证据 回绑 @ fb2fb1a,刷新快照锚点
|
76
|
5
|
governance.yml
|
70
|
5
|
0
|
refs/heads/main
|
fd3ba87ed111d9245012f0578178cccb4743ab20
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"ee4bc06608d88515f025c3a2dcffacb9f47c5417","after":"fd3ba87ed111d9245012f0578178cccb4743ab20","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/ee4bc06608d88515f025c3a2dcffacb9f47c5417...fd3ba87ed111d9245012f0578178cccb4743ab20","commits":[{"id":"fd3ba87ed111d9245012f0578178cccb4743ab20","message":"chore(reports): B1 的二十八份静态证据 回绑 @ fb2fb1a,刷新快照锚点\n\n本批次最后一个提交,按 C241 同时刷新快照锚点到 fb2fb1a(声明落后 0,本提交自身使实测\n落后 1,在 +1 自指窗内)。\n\n二十八份 reports/*.latest.json 全部 clean 绑定(gitSha=fb2fb1a、worktreeDirty:false)。\n整轮 28 步全执行,前 27 步全绿,末步 check:kernel-admission 仍是那 8 处已知诚实红。\n\n本批次内两把锁各重签一次,都是「变更即复核」而非绕过:\n- kernel.exports.lock.json 763 → 755(statemachine 的 8 个导出归属转移给 @juhai/kernel)\n- check:kernel-downstream 的仓外夹具改为携带 scoped registry 后转绿;缺声明即 fail-closed\n 的分支已实活验证\n\n运行态未跑:B1 只动契约包的一个转发文件,contracts 312/312 与 typecheck 13/13 已覆盖;\n按仓规矩三级证据分开陈述,不用静态绿冒充运行态绿。runtime 报告仍绑在 dcd1c14,\n下次动到两后端(B3′ 采纳上游加固)时必须重跑。\n\n工作区内三份 reports/ui-*.latest.json 的改动早于本批次,未提交也未还原。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/fd3ba87ed111d9245012f0578178cccb4743ab20","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-18T02:08:00-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/agent-adapters.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.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/naming.latest.json","reports/operations.latest.json","reports/platform-dependency-provenance.latest.json","reports/product-acceptance.latest.json","reports/product-migrations.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},{"id":"fb2fb1a730a522c6210afc0223c84aaa6946194d","message":"feat(contracts): B1 内核首次 exact pin @juhai/kernel@0.22.0,statemachine 改为转发\n\nB1 的目的是**验证机制**,不是搬最多的代码:装包、转发、门禁、锁四条链路全走一遍,\n用唯一可证明零行为变化的模块做载体。\n\n- packages/contracts exact pin @juhai/kernel@0.22.0(registry 上有 0.16.0/0.16.1/0.22.0)\n- statemachine.ts 改为**具名**转发 8 个符号。不用 `export * from \"@juhai/kernel\"`:\n 收口前本仓还留着 10 个未迁内核模块,整体 re-export 会与它们的同名导出冲突\n- 机制验证结果:typecheck 13/13 · contracts 312/312(statemachine.test.ts 打的就是转发后的\n 实现)· 整轮 28 步前 27 绿 · **check:platform-provenance 接受新 pin**(lock 解析到 Gitea\n registry tarball)· 所有权锁 763 → 755,8 个导出的归属转移给内核包\n\n**开工即修正一处自己的判断。** 上一轮我把五个模块叫「白拿」,依据只到导出名重合率。\n逐文件 diff 后:**只有 statemachine 逐字一致**(104 行 diff 0),其余四个实现都不同,\n且方向一致——框架领先、本仓落后,落后的正好是加固:\n\n replay 框架有 maxSeq + 「游标超前于现存最大 seq ⇒ 报缺口(cursor-unknown)」,\n 本仓没有 ⇒ 伪造/串号游标被静默判成「已追平」,客户端永远收不到补发;\n 框架同时修了契约文件内部自相矛盾的 dispatchedAt 注释\n realtime-command 框架有 REALTIME_WS_MAX_PAYLOAD_BYTES,本仓 WS 载荷无上限\n subscription 框架有 REALTIME_MAX_SUBSCRIPTION_IDS/_TYPES,本仓订阅列表无上限\n realtime-stats 本仓是严格超集(多 10 个死信域导出),采纳时要保留\n\n前两类偏 DoS 面。这四个不是「白拿」而是「采纳上游加固」,要改两后端并重跑运行态,\n已从 B1 移入 B3′。立项 §2 加了修正块、§5 改了批次表。\n\n**两处实测新增风险(立项 §6):**\n\n一、跨层 peer 不一致。已发布的 @juhai/client-fact@1.0.0-rc.3 声明 peer @juhai/kernel: 0.16.1\n(lockfile 权威),而控制面仓里**同版本的源码**声明 0.22.0——控制面昨天做框架同步时改了\n源码却没重新发布。本仓 pin 0.22.0 后 pnpm install 报 unmet peer(警告,不阻断),\n**且现有门禁一条都抓不到**。三条出路(等平台重发 / 本仓退回 0.16.1 / 登记偏差并加 peer\n判据)本提交不代为决定,登记在立项 §6 等裁。\n\n二、pin 的下游代价,由 check:kernel-downstream 第一时间抓到:它在仓外装 contracts 以证明\n下游可消费,而仓外没有 .npmrc,@juhai/kernel 落到 npmjs.org 上 404。这不是门禁的毛病,\n是 pin 的真实代价——**任何消费方不配 @juhai scoped registry 就装不上**(框架 F11 原文同样\n这么声明)。处理:夹具复制仓内 .npmrc 的 scoped registry 行,把断言坐实为「配了 registry\n的消费者装得上」;并在「pin 了 @juhai/* 却无 registry 声明」时 **fail-closed**,绝不静默\n回落到公共 registry(实活验证:去掉声明即 D4 红)。新前提已写进接入手册,五个产品仓\n迁移时要同步配置。\n\n顺带一个可复用的性质:check:kernel-admission 的 K1 只计**直接声明**,所以每迁走一个模块,\n锁里的自有导出数就降一次——它天然成了这条线的进度计(763 → 755)。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/fb2fb1a730a522c6210afc0223c84aaa6946194d","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-18T02:06:23-07:00","added":[],"removed":[],"modified":["CLAUDE.md","docs/planning/内核退回pin立项-2026-09-18.md","docs/product-extension-guide.md","kernel.exports.lock.json","packages/contracts/package.json","packages/contracts/src/statemachine.ts","pnpm-lock.yaml","scripts/check-kernel-downstream.mjs"]}],"total_commits":0,"head_commit":{"id":"fd3ba87ed111d9245012f0578178cccb4743ab20","message":"chore(reports): B1 的二十八份静态证据 回绑 @ fb2fb1a,刷新快照锚点\n\n本批次最后一个提交,按 C241 同时刷新快照锚点到 fb2fb1a(声明落后 0,本提交自身使实测\n落后 1,在 +1 自指窗内)。\n\n二十八份 reports/*.latest.json 全部 clean 绑定(gitSha=fb2fb1a、worktreeDirty:false)。\n整轮 28 步全执行,前 27 步全绿,末步 check:kernel-admission 仍是那 8 处已知诚实红。\n\n本批次内两把锁各重签一次,都是「变更即复核」而非绕过:\n- kernel.exports.lock.json 763 → 755(statemachine 的 8 个导出归属转移给 @juhai/kernel)\n- check:kernel-downstream 的仓外夹具改为携带 scoped registry 后转绿;缺声明即 fail-closed\n 的分支已实活验证\n\n运行态未跑:B1 只动契约包的一个转发文件,contracts 312/312 与 typecheck 13/13 已覆盖;\n按仓规矩三级证据分开陈述,不用静态绿冒充运行态绿。runtime 报告仍绑在 dcd1c14,\n下次动到两后端(B3′ 采纳上游加固)时必须重跑。\n\n工作区内三份 reports/ui-*.latest.json 的改动早于本批次,未提交也未还原。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/fd3ba87ed111d9245012f0578178cccb4743ab20","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-18T02:08:00-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/agent-adapters.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.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/naming.latest.json","reports/operations.latest.json","reports/platform-dependency-provenance.latest.json","reports/product-acceptance.latest.json","reports/product-migrations.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},"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":86698,"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-09-18T16:58:20+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"}}...
|
push
|
2
|
36
|
1789722485
|
1789722493
|
0
|
1789722483
|
1789722525
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24121
|
chore(reports): B1 的二十八份静态证据 回绑 @ fb2fb1a,刷新快照锚点
|
76
|
5
|
platform-governance.yml
|
71
|
5
|
0
|
refs/heads/main
|
fd3ba87ed111d9245012f0578178cccb4743ab20
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"ee4bc06608d88515f025c3a2dcffacb9f47c5417","after":"fd3ba87ed111d9245012f0578178cccb4743ab20","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/ee4bc06608d88515f025c3a2dcffacb9f47c5417...fd3ba87ed111d9245012f0578178cccb4743ab20","commits":[{"id":"fd3ba87ed111d9245012f0578178cccb4743ab20","message":"chore(reports): B1 的二十八份静态证据 回绑 @ fb2fb1a,刷新快照锚点\n\n本批次最后一个提交,按 C241 同时刷新快照锚点到 fb2fb1a(声明落后 0,本提交自身使实测\n落后 1,在 +1 自指窗内)。\n\n二十八份 reports/*.latest.json 全部 clean 绑定(gitSha=fb2fb1a、worktreeDirty:false)。\n整轮 28 步全执行,前 27 步全绿,末步 check:kernel-admission 仍是那 8 处已知诚实红。\n\n本批次内两把锁各重签一次,都是「变更即复核」而非绕过:\n- kernel.exports.lock.json 763 → 755(statemachine 的 8 个导出归属转移给 @juhai/kernel)\n- check:kernel-downstream 的仓外夹具改为携带 scoped registry 后转绿;缺声明即 fail-closed\n 的分支已实活验证\n\n运行态未跑:B1 只动契约包的一个转发文件,contracts 312/312 与 typecheck 13/13 已覆盖;\n按仓规矩三级证据分开陈述,不用静态绿冒充运行态绿。runtime 报告仍绑在 dcd1c14,\n下次动到两后端(B3′ 采纳上游加固)时必须重跑。\n\n工作区内三份 reports/ui-*.latest.json 的改动早于本批次,未提交也未还原。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/fd3ba87ed111d9245012f0578178cccb4743ab20","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-18T02:08:00-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/agent-adapters.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.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/naming.latest.json","reports/operations.latest.json","reports/platform-dependency-provenance.latest.json","reports/product-acceptance.latest.json","reports/product-migrations.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},{"id":"fb2fb1a730a522c6210afc0223c84aaa6946194d","message":"feat(contracts): B1 内核首次 exact pin @juhai/kernel@0.22.0,statemachine 改为转发\n\nB1 的目的是**验证机制**,不是搬最多的代码:装包、转发、门禁、锁四条链路全走一遍,\n用唯一可证明零行为变化的模块做载体。\n\n- packages/contracts exact pin @juhai/kernel@0.22.0(registry 上有 0.16.0/0.16.1/0.22.0)\n- statemachine.ts 改为**具名**转发 8 个符号。不用 `export * from \"@juhai/kernel\"`:\n 收口前本仓还留着 10 个未迁内核模块,整体 re-export 会与它们的同名导出冲突\n- 机制验证结果:typecheck 13/13 · contracts 312/312(statemachine.test.ts 打的就是转发后的\n 实现)· 整轮 28 步前 27 绿 · **check:platform-provenance 接受新 pin**(lock 解析到 Gitea\n registry tarball)· 所有权锁 763 → 755,8 个导出的归属转移给内核包\n\n**开工即修正一处自己的判断。** 上一轮我把五个模块叫「白拿」,依据只到导出名重合率。\n逐文件 diff 后:**只有 statemachine 逐字一致**(104 行 diff 0),其余四个实现都不同,\n且方向一致——框架领先、本仓落后,落后的正好是加固:\n\n replay 框架有 maxSeq + 「游标超前于现存最大 seq ⇒ 报缺口(cursor-unknown)」,\n 本仓没有 ⇒ 伪造/串号游标被静默判成「已追平」,客户端永远收不到补发;\n 框架同时修了契约文件内部自相矛盾的 dispatchedAt 注释\n realtime-command 框架有 REALTIME_WS_MAX_PAYLOAD_BYTES,本仓 WS 载荷无上限\n subscription 框架有 REALTIME_MAX_SUBSCRIPTION_IDS/_TYPES,本仓订阅列表无上限\n realtime-stats 本仓是严格超集(多 10 个死信域导出),采纳时要保留\n\n前两类偏 DoS 面。这四个不是「白拿」而是「采纳上游加固」,要改两后端并重跑运行态,\n已从 B1 移入 B3′。立项 §2 加了修正块、§5 改了批次表。\n\n**两处实测新增风险(立项 §6):**\n\n一、跨层 peer 不一致。已发布的 @juhai/client-fact@1.0.0-rc.3 声明 peer @juhai/kernel: 0.16.1\n(lockfile 权威),而控制面仓里**同版本的源码**声明 0.22.0——控制面昨天做框架同步时改了\n源码却没重新发布。本仓 pin 0.22.0 后 pnpm install 报 unmet peer(警告,不阻断),\n**且现有门禁一条都抓不到**。三条出路(等平台重发 / 本仓退回 0.16.1 / 登记偏差并加 peer\n判据)本提交不代为决定,登记在立项 §6 等裁。\n\n二、pin 的下游代价,由 check:kernel-downstream 第一时间抓到:它在仓外装 contracts 以证明\n下游可消费,而仓外没有 .npmrc,@juhai/kernel 落到 npmjs.org 上 404。这不是门禁的毛病,\n是 pin 的真实代价——**任何消费方不配 @juhai scoped registry 就装不上**(框架 F11 原文同样\n这么声明)。处理:夹具复制仓内 .npmrc 的 scoped registry 行,把断言坐实为「配了 registry\n的消费者装得上」;并在「pin 了 @juhai/* 却无 registry 声明」时 **fail-closed**,绝不静默\n回落到公共 registry(实活验证:去掉声明即 D4 红)。新前提已写进接入手册,五个产品仓\n迁移时要同步配置。\n\n顺带一个可复用的性质:check:kernel-admission 的 K1 只计**直接声明**,所以每迁走一个模块,\n锁里的自有导出数就降一次——它天然成了这条线的进度计(763 → 755)。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/fb2fb1a730a522c6210afc0223c84aaa6946194d","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-18T02:06:23-07:00","added":[],"removed":[],"modified":["CLAUDE.md","docs/planning/内核退回pin立项-2026-09-18.md","docs/product-extension-guide.md","kernel.exports.lock.json","packages/contracts/package.json","packages/contracts/src/statemachine.ts","pnpm-lock.yaml","scripts/check-kernel-downstream.mjs"]}],"total_commits":0,"head_commit":{"id":"fd3ba87ed111d9245012f0578178cccb4743ab20","message":"chore(reports): B1 的二十八份静态证据 回绑 @ fb2fb1a,刷新快照锚点\n\n本批次最后一个提交,按 C241 同时刷新快照锚点到 fb2fb1a(声明落后 0,本提交自身使实测\n落后 1,在 +1 自指窗内)。\n\n二十八份 reports/*.latest.json 全部 clean 绑定(gitSha=fb2fb1a、worktreeDirty:false)。\n整轮 28 步全执行,前 27 步全绿,末步 check:kernel-admission 仍是那 8 处已知诚实红。\n\n本批次内两把锁各重签一次,都是「变更即复核」而非绕过:\n- kernel.exports.lock.json 763 → 755(statemachine 的 8 个导出归属转移给 @juhai/kernel)\n- check:kernel-downstream 的仓外夹具改为携带 scoped registry 后转绿;缺声明即 fail-closed\n 的分支已实活验证\n\n运行态未跑:B1 只动契约包的一个转发文件,contracts 312/312 与 typecheck 13/13 已覆盖;\n按仓规矩三级证据分开陈述,不用静态绿冒充运行态绿。runtime 报告仍绑在 dcd1c14,\n下次动到两后端(B3′ 采纳上游加固)时必须重跑。\n\n工作区内三份 reports/ui-*.latest.json 的改动早于本批次,未提交也未还原。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/fd3ba87ed111d9245012f0578178cccb4743ab20","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-18T02:08:00-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/agent-adapters.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.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/naming.latest.json","reports/operations.latest.json","reports/platform-dependency-provenance.latest.json","reports/product-acceptance.latest.json","reports/product-migrations.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},"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":86698,"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-09-18T16:58:20+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"}}...
|
push
|
2
|
8
|
1789722494
|
1789722502
|
0
|
1789722483
|
1789722525
|
|
|
0
|
Edit
Delete
|
|
23936
|
feat(content): number every editable content block
|
57
|
5
|
governance.yml
|
220
|
5
|
0
|
refs/heads/main
|
d3fbd4067795e6e683483f03dad85573cd6a7cd1
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"ee15aeee5a19ac28b0bb162b149bd7b900c09a5e","after":"d3fbd4067795e6e683483f03dad85573cd6a7cd1","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/ee15aeee5a19ac28b0bb162b149bd7b900c09a5e...d3fbd4067795e6e683483f03dad85573cd6a7cd1","commits":[{"id":"d3fbd4067795e6e683483f03dad85573cd6a7cd1","message":"feat(content): number every editable content block\n\nThe 核对 step already refers to paragraphs as \"第 N 块\" and offers a 定位\nbutton per issue, but the editor itself never showed a number, so the\nreader had to count. Each editable block now carries its position as a\nbadge left of the type selector (aria-label \"第 N 块\"); preview mode\nrenders no toolbar, so the numbers stay out of the finished draft. The\nbrowser acceptance asserts the badge reads \"1\" while editing and is\nabsent in preview.\n\nVerified on source fingerprint\nsha256:f368d571fff347125bde8e62213bc4476098bccc0c80a0a886c75f92f3f10c45\nin an isolated stack: runtime, public-file, inference, script,\nproduction, ui, deps and shijie all passed, then the full `pnpm check`\nchain. The CLAUDE.md baseline rows now point at this fingerprint.\nEvidence: reports/content-block-index-2026-09-13/ and\nacceptance-artifacts/content-block-index-2026-09-13/.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/d3fbd4067795e6e683483f03dad85573cd6a7cd1","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-13T20:33:39-07:00","added":["docs/governance/log/2026-09-13-content-block-index.md","reports/content-block-index-2026-09-13/README.md","reports/content-block-index-2026-09-13/gates.jsonl"],"removed":[],"modified":["CLAUDE.md","apps/web/src/components/material-factory/ContentStudio.tsx","apps/web/src/components/material-factory/content-studio.module.css","reports/admin-brands.desktop.png","reports/admin-brands.mobile.png","reports/admin-mobile.png","reports/content-detail.plans-desktop.png","reports/content-detail.review-desktop.png","reports/contract-consumers.latest.json","reports/creative-history-hidden.desktop.png","reports/creative-history-restore.mobile.png","reports/creative-quality.desktop.png","reports/dependency-audit.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/image-edit-1135.png","reports/image-edit-1440.png","reports/image-edit-390.png","reports/image-edit-768.png","reports/image-edit-result.png","reports/inference-acceptance.latest.json","reports/material-review-concurrency-guard.latest.json","reports/migrations.latest.json","reports/model-api-key-saved.png","reports/model-credential-error.desktop.png","reports/module-boundary.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/prd-retry.mobile.png","reports/prd-review.desktop.png","reports/production-acceptance.latest.json","reports/production-delivery-released.desktop.png","reports/production-delivery-revoked.mobile.png","reports/production-pagination.desktop.png","reports/production-pagination.mobile.png","reports/production-review-preview.desktop.png","reports/production-security.latest.json","reports/production-single-tenant-create.desktop.png","reports/production-single-tenant-separation.desktop.png","reports/public-file-acceptance.latest.json","reports/public-file-integration.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/script-acceptance.latest.json","reports/script-generation-queue.png","reports/shijie-acceptance.latest.json","reports/sidecar-tests.latest.json","reports/storyboard-asset-dialog.desktop.png","reports/storyboard-director-guard.latest.json","reports/storyboard-frame-dialog.desktop.first.png","reports/storyboard-frame-dialog.mobile.saved.png","reports/template-making.1135.png","reports/template-making.1440.png","reports/template-preview.templates.png","reports/template-saved-master.APPLICATION.png","reports/template-saved-master.GENERAL.png","reports/toolchain.latest.json","reports/ui-acceptance.desktop.png","reports/ui-acceptance.draft-import.png","reports/ui-acceptance.latest.json","reports/ui-acceptance.mobile.png","reports/ui-acceptance.production.png","reports/ux-edit.desktop.png","reports/ux-home.mobile.png","reports/ux-intake.desktop.png","reports/validation-source.latest.json","reports/video-batch-paused.mobile.png","reports/video-regenerate-2026-09-08/desktop.png","reports/video-regenerate-2026-09-08/mobile.png","scripts/lib/content-ui-acceptance.mjs"]}],"total_commits":0,"head_commit":{"id":"d3fbd4067795e6e683483f03dad85573cd6a7cd1","message":"feat(content): number every editable content block\n\nThe 核对 step already refers to paragraphs as \"第 N 块\" and offers a 定位\nbutton per issue, but the editor itself never showed a number, so the\nreader had to count. Each editable block now carries its position as a\nbadge left of the type selector (aria-label \"第 N 块\"); preview mode\nrenders no toolbar, so the numbers stay out of the finished draft. The\nbrowser acceptance asserts the badge reads \"1\" while editing and is\nabsent in preview.\n\nVerified on source fingerprint\nsha256:f368d571fff347125bde8e62213bc4476098bccc0c80a0a886c75f92f3f10c45\nin an isolated stack: runtime, public-file, inference, script,\nproduction, ui, deps and shijie all passed, then the full `pnpm check`\nchain. The CLAUDE.md baseline rows now point at this fingerprint.\nEvidence: reports/content-block-index-2026-09-13/ and\nacceptance-artifacts/content-block-index-2026-09-13/.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/d3fbd4067795e6e683483f03dad85573cd6a7cd1","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-13T20:33:39-07:00","added":["docs/governance/log/2026-09-13-content-block-index.md","reports/content-block-index-2026-09-13/README.md","reports/content-block-index-2026-09-13/gates.jsonl"],"removed":[],"modified":["CLAUDE.md","apps/web/src/components/material-factory/ContentStudio.tsx","apps/web/src/components/material-factory/content-studio.module.css","reports/admin-brands.desktop.png","reports/admin-brands.mobile.png","reports/admin-mobile.png","reports/content-detail.plans-desktop.png","reports/content-detail.review-desktop.png","reports/contract-consumers.latest.json","reports/creative-history-hidden.desktop.png","reports/creative-history-restore.mobile.png","reports/creative-quality.desktop.png","reports/dependency-audit.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/image-edit-1135.png","reports/image-edit-1440.png","reports/image-edit-390.png","reports/image-edit-768.png","reports/image-edit-result.png","reports/inference-acceptance.latest.json","reports/material-review-concurrency-guard.latest.json","reports/migrations.latest.json","reports/model-api-key-saved.png","reports/model-credential-error.desktop.png","reports/module-boundary.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/prd-retry.mobile.png","reports/prd-review.desktop.png","reports/production-acceptance.latest.json","reports/production-delivery-released.desktop.png","reports/production-delivery-revoked.mobile.png","reports/production-pagination.desktop.png","reports/production-pagination.mobile.png","reports/production-review-preview.desktop.png","reports/production-security.latest.json","reports/production-single-tenant-create.desktop.png","reports/production-single-tenant-separation.desktop.png","reports/public-file-acceptance.latest.json","reports/public-file-integration.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/script-acceptance.latest.json","reports/script-generation-queue.png","reports/shijie-acceptance.latest.json","reports/sidecar-tests.latest.json","reports/storyboard-asset-dialog.desktop.png","reports/storyboard-director-guard.latest.json","reports/storyboard-frame-dialog.desktop.first.png","reports/storyboard-frame-dialog.mobile.saved.png","reports/template-making.1135.png","reports/template-making.1440.png","reports/template-preview.templates.png","reports/template-saved-master.APPLICATION.png","reports/template-saved-master.GENERAL.png","reports/toolchain.latest.json","reports/ui-acceptance.desktop.png","reports/ui-acceptance.draft-import.png","reports/ui-acceptance.latest.json","reports/ui-acceptance.mobile.png","reports/ui-acceptance.production.png","reports/ux-edit.desktop.png","reports/ux-home.mobile.png","reports/ux-intake.desktop.png","reports/validation-source.latest.json","reports/video-batch-paused.mobile.png","reports/video-regenerate-2026-09-08/desktop.png","reports/video-regenerate-2026-09-08/mobile.png","scripts/lib/content-ui-acceptance.mjs"]},"repository":{"id":57,"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":"image-generation","full_name":"luoanwu/image-generation","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":947766,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation/languages","html_url":"https://gitea.g-hi.com/luoanwu/image-generation","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/image-generation.git","clone_url":"https://gitea.g-hi.com/luoanwu/image-generation.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":14,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-06T17:04:22+08:00","updated_at":"2026-09-13T11:20:16+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"}}...
|
push
|
2
|
4
|
1789356845
|
1789356891
|
0
|
1789356844
|
1789356891
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23708
|
docs(marketing): record product poster design and docs(marketing): record product poster design and generation prompt...
|
57
|
5
|
governance.yml
|
79
|
5
|
0
|
refs/heads/main
|
1b6c295eb89e80a3b158d4a94d455790d6f97b15
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"edf81b7af0339292012403cd9ba54c3031e3dd99","after":"1b6c295eb89e80a3b158d4a94d455790d6f97b15","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/edf81b7af0339292012403cd9ba54c3031e3dd99...1b6c295eb89e80a3b158d4a94d455790d6f97b15","commits":[{"id":"1b6c295eb89e80a3b158d4a94d455790d6f97b15","message":"docs(marketing): record product poster design and generation prompt\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/1b6c295eb89e80a3b158d4a94d455790d6f97b15","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-08T10:50:23-07:00","added":["docs/marketing/product-poster-2026-09-08.md"],"removed":[],"modified":[]}],"total_commits":0,"head_commit":{"id":"1b6c295eb89e80a3b158d4a94d455790d6f97b15","message":"docs(marketing): record product poster design and generation prompt\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/1b6c295eb89e80a3b158d4a94d455790d6f97b15","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-08T10:50:23-07:00","added":["docs/marketing/product-poster-2026-09-08.md"],"removed":[],"modified":[]},"repository":{"id":57,"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":"image-generation","full_name":"luoanwu/image-generation","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":649267,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation/languages","html_url":"https://gitea.g-hi.com/luoanwu/image-generation","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/image-generation.git","clone_url":"https://gitea.g-hi.com/luoanwu/image-generation.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":7,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-06T17:04:22+08:00","updated_at":"2026-09-09T01:48:59+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"}}...
|
push
|
2
|
4
|
1788889839
|
1788889877
|
0
|
1788889838
|
1788889877
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23786
|
docs: record verified first and last frame dialog docs: record verified first and last frame dialog rollout...
|
57
|
5
|
governance.yml
|
156
|
5
|
0
|
refs/heads/main
|
ab568e701b98d0e678ee9af7b1c56ccf1937e576
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"ed9b5df870bf72edcc8be883dec811b649aa13db","after":"ab568e701b98d0e678ee9af7b1c56ccf1937e576","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/ed9b5df870bf72edcc8be883dec811b649aa13db...ab568e701b98d0e678ee9af7b1c56ccf1937e576","commits":[{"id":"ab568e701b98d0e678ee9af7b1c56ccf1937e576","message":"docs: record verified first and last frame dialog rollout\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/ab568e701b98d0e678ee9af7b1c56ccf1937e576","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-09T04:25:11-07:00","added":["docs/releases/2026-09-09-storyboard-frames1.md","reports/storyboard-frame-dialog-20260909/live-verification.json"],"removed":[],"modified":["docs/governance/log/2026-09-09-storyboard-frame-dialog.md","docs/releases/current.md","reports/governance-docs.latest.json","reports/storyboard-frame-dialog-20260909/README.md","reports/storyboard-frame-dialog-20260909/summary.json"]}],"total_commits":0,"head_commit":{"id":"ab568e701b98d0e678ee9af7b1c56ccf1937e576","message":"docs: record verified first and last frame dialog rollout\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/ab568e701b98d0e678ee9af7b1c56ccf1937e576","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-09T04:25:11-07:00","added":["docs/releases/2026-09-09-storyboard-frames1.md","reports/storyboard-frame-dialog-20260909/live-verification.json"],"removed":[],"modified":["docs/governance/log/2026-09-09-storyboard-frame-dialog.md","docs/releases/current.md","reports/governance-docs.latest.json","reports/storyboard-frame-dialog-20260909/README.md","reports/storyboard-frame-dialog-20260909/summary.json"]},"repository":{"id":57,"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":"image-generation","full_name":"luoanwu/image-generation","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":774044,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation/languages","html_url":"https://gitea.g-hi.com/luoanwu/image-generation","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/image-generation.git","clone_url":"https://gitea.g-hi.com/luoanwu/image-generation.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":8,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-06T17:04:22+08:00","updated_at":"2026-09-09T19:17:40+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"}}...
|
push
|
2
|
4
|
1788953118
|
1788953158
|
0
|
1788953117
|
1788953158
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23835
|
chore(reports): refresh clean static evidence @ 35 chore(reports): refresh clean static evidence @ 35de733...
|
54
|
5
|
governance.yml
|
37
|
5
|
0
|
refs/heads/main
|
cd9c26f20dce96891809f7888872abfe7f3771a1
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"ed6561882ae52d6d0f2b6fd5429382e85b4f12ab","after":"cd9c26f20dce96891809f7888872abfe7f3771a1","compare_url":"https://gitea.g-hi.com/luoanwu/base-framework/compare/ed6561882ae52d6d0f2b6fd5429382e85b4f12ab...cd9c26f20dce96891809f7888872abfe7f3771a1","commits":[{"id":"cd9c26f20dce96891809f7888872abfe7f3771a1","message":"chore(reports): refresh clean static evidence @ 35de733\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/cd9c26f20dce96891809f7888872abfe7f3771a1","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-10T07:18:24-07:00","added":[],"removed":[],"modified":["reports/agent-adapters.latest.json","reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance-rules.latest.json","reports/governance-status.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},{"id":"35de733fd96b69f0dd89b8a800f0c94f3bac5ab2","message":"docs: record clean commit acceptance @ 17b8276(v0.16.1 pin 形态适配:runtime 288 / tenantRlsEnforced=1;UI 4×11)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/35de733fd96b69f0dd89b8a800f0c94f3bac5ab2","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-10T07:17:39-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/conformance-differential.latest.json","reports/runtime-acceptance.latest.json","reports/ui-acceptance.latest.json"]},{"id":"17b82766b7e6ccb038bc0664af6967f052904657","message":"fix(gates): 差分 runner 每次经 turbo 构建 contracts,不再以陈旧 dist 跳过(Scope 试点:剥离后旧 dist 让 RLS 启动探测按旧表清单拒绝)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/17b82766b7e6ccb038bc0664af6967f052904657","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-10T07:14:20-07:00","added":[],"removed":[],"modified":["CHANGELOG.md","scripts/check-conformance-differential.mjs"]},{"id":"bb8623b32363312d9fb05831a820a8bb811048eb","message":"fix(gates): pin 形态在 packages/contracts/node_modules 下查已安装的 @juhai/kernel(pnpm 不 hoist 到根)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/bb8623b32363312d9fb05831a820a8bb811048eb","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-10T07:10:11-07:00","added":[],"removed":[],"modified":["scripts/check-contract-consumers.mjs","scripts/check-fork-readiness.mjs"]},{"id":"7e44814d5dbe81c00274fdf0c2a2e7b0956ad1ef","message":"fix(gates): 派生仓 pin @juhai/kernel 形态适配(0.16.1)——F10/F11 pin 模式、contract-consumers 查已安装包、runner 只构建 contracts\n\nScope 平台试点第一轮回灌:无 packages/kernel 源码的派生仓此前在 contract-consumers / fork-readiness / turbo filter 三处直接红。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/7e44814d5dbe81c00274fdf0c2a2e7b0956ad1ef","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-10T07:08:39-07:00","added":[],"removed":[],"modified":["CHANGELOG.md","CLAUDE.md","COMPATIBILITY.md","package.json","packages/contracts/package.json","packages/kernel/package.json","scripts/check-conformance-differential.mjs","scripts/check-contract-consumers.mjs","scripts/check-fork-readiness.mjs","scripts/check-ui-acceptance.mjs"]}],"total_commits":0,"head_commit":{"id":"cd9c26f20dce96891809f7888872abfe7f3771a1","message":"chore(reports): refresh clean static evidence @ 35de733\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/base-framework/commit/cd9c26f20dce96891809f7888872abfe7f3771a1","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-10T07:18:24-07:00","added":[],"removed":[],"modified":["reports/agent-adapters.latest.json","reports/conformance-matrix.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance-rules.latest.json","reports/governance-status.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},"repository":{"id":54,"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":"base-framework","full_name":"luoanwu/base-framework","description":"基础框架 monorepo","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5087,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/base-framework/languages","html_url":"https://gitea.g-hi.com/luoanwu/base-framework","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/base-framework","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/base-framework.git","clone_url":"https://gitea.g-hi.com/luoanwu/base-framework.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":2,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-03T12:24:18+08:00","updated_at":"2026-09-10T21:59:53+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"}}...
|
push
|
2
|
10
|
1789049913
|
1789050004
|
0
|
1789049912
|
1789050036
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
...
|
governance-governance.yml-refs/heads/main
|
0
|
Edit
Delete
|
|
24108
|
docs(计划): 登记 FR-7 与 gate-flow 推导修正,并订正跨目录待办的 FR 清单
|
117
|
5
|
governance.yml
|
63
|
5
|
0
|
refs/heads/main
|
58a896f8a4030c0d72fa3b631d8f823f144d1650
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"ed4a869bde4de3243013e74e7f48454e053bd2fa","after":"58a896f8a4030c0d72fa3b631d8f823f144d1650","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/ed4a869bde4de3243013e74e7f48454e053bd2fa...58a896f8a4030c0d72fa3b631d8f823f144d1650","commits":[{"id":"58a896f8a4030c0d72fa3b631d8f823f144d1650","message":"docs(计划): 登记 FR-7 与 gate-flow 推导修正,并订正跨目录待办的 FR 清单\n\n跨目录待办原写「余 FR-6 待受理」,漏了 FR-2 / FR-3——两条 2026-09-12 提出、09-18 复核\n仍成立并补了新证据。现改为四条:FR-2 / FR-3 / FR-6 / FR-7。\n\nFR-7:governance.rules.json 的 mode 与 ADR-0010 状态的耦合没有执行者。ADR 写着「仍为\nProposed 时 mode 固定为 observe」,而 schema 只管枚举、check-governance-rules 只打印\n不判、generate-governance-status 只回显。翻成 enforced 没人拦,ADR 受理后留在 observe\n也没人报,17 条规则会永远停在诊断态。本仓未做本地修正:那四个文件与框架逐字相同。\n\n同轮修了 check:gate-flow 的一处真缺陷:推导在 CI 原文上按名匹配,而工作流里本就有\n带 `pnpm check` 的说明行,没被误判纯属侥幸。已改为先剥注释再匹配。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/58a896f8a4030c0d72fa3b631d8f823f144d1650","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-18T01:22:21-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/开发计划.md"]}],"total_commits":0,"head_commit":{"id":"58a896f8a4030c0d72fa3b631d8f823f144d1650","message":"docs(计划): 登记 FR-7 与 gate-flow 推导修正,并订正跨目录待办的 FR 清单\n\n跨目录待办原写「余 FR-6 待受理」,漏了 FR-2 / FR-3——两条 2026-09-12 提出、09-18 复核\n仍成立并补了新证据。现改为四条:FR-2 / FR-3 / FR-6 / FR-7。\n\nFR-7:governance.rules.json 的 mode 与 ADR-0010 状态的耦合没有执行者。ADR 写着「仍为\nProposed 时 mode 固定为 observe」,而 schema 只管枚举、check-governance-rules 只打印\n不判、generate-governance-status 只回显。翻成 enforced 没人拦,ADR 受理后留在 observe\n也没人报,17 条规则会永远停在诊断态。本仓未做本地修正:那四个文件与框架逐字相同。\n\n同轮修了 check:gate-flow 的一处真缺陷:推导在 CI 原文上按名匹配,而工作流里本就有\n带 `pnpm check` 的说明行,没被误判纯属侥幸。已改为先剥注释再匹配。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/58a896f8a4030c0d72fa3b631d8f823f144d1650","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-18T01:22:21-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/开发计划.md"]},"repository":{"id":117,"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":"platform-governance","full_name":"luoanwu/platform-governance","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":9730,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/platform-governance/languages","html_url":"https://gitea.g-hi.com/luoanwu/platform-governance","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/platform-governance","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/platform-governance.git","clone_url":"https://gitea.g-hi.com/luoanwu/platform-governance.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":2,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-09-15T11:53:24+08:00","updated_at":"2026-09-18T16:18:26+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"}}...
|
push
|
1
|
4
|
1789719744
|
1789719759
|
0
|
1789719743
|
1789719759
|
|
|
0
|
Edit
Delete
|
|
23993
|
docs(决策): 决策批次 2026-09-16——31 项待裁事项一次签署并登记
|
117
|
5
|
governance.yml
|
5
|
5
|
0
|
refs/heads/main
|
c641151481665a321840ee8081e09101a3b74360
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"ecc77d987dbd2cfd9e00a3655fdd68efcd994bcc","after":"c641151481665a321840ee8081e09101a3b74360","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/ecc77d987dbd2cfd9e00a3655fdd68efcd994bcc...c641151481665a321840ee8081e09101a3b74360","commits":[{"id":"c641151481665a321840ee8081e09101a3b74360","message":"docs(决策): 决策批次 2026-09-16——31 项待裁事项一次签署并登记\n\n目录负责人经会话逐条签署:A 批 7 条登记与收口全部批准(CHG-007、CHG-002 → 003 → 006、CHG-001 追认、审批记录终态 merged、门禁脚本按 SHA 引用、permissions.json 离开 draft、CHG-004 阶段 2 分两批);B 批:单人代签长期化、CI 通道 B 案、19 个 PR 按登记顺序合并、Catalog 保持 proposed 到 staging 晋级;C 批:Q01—Q10 按收口方案采纳,X06 由 identity 作业编排,G-3 自建限流镜像、方法白名单回收入口层,prod 批准人必须 human,drift 升阻断,碰撞卷 dump 后删,内核一步升 0.22.0,订阅计费并入 C19,OpenBao dev 立即启用,OS 先接决策 API,嗨设允许自建,Alertmanager + 企业 IM;D 批:staging TLS 先 internal 再 ACME,§6 偏差六条按建议。五处改案及后果见批次 §1A。\n\n登记:待裁决架构事项 CHG-001 / N-02 / N-07 三行改为已裁决;开发计划 §8 新增变更记录(偏差 #5 / #23 / #31 随之关闭)。未做:DEC-010 附条件修订与 C19 范围改写各需一个 CHG。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/c641151481665a321840ee8081e09101a3b74360","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-16T16:08:02-07:00","added":["平台治理/doc/decisions/决策批次-2026-09-16.md"],"removed":[],"modified":["平台治理/doc/decisions/待裁决架构事项.md","平台治理/基础设施文档/开发计划.md"]}],"total_commits":0,"head_commit":{"id":"c641151481665a321840ee8081e09101a3b74360","message":"docs(决策): 决策批次 2026-09-16——31 项待裁事项一次签署并登记\n\n目录负责人经会话逐条签署:A 批 7 条登记与收口全部批准(CHG-007、CHG-002 → 003 → 006、CHG-001 追认、审批记录终态 merged、门禁脚本按 SHA 引用、permissions.json 离开 draft、CHG-004 阶段 2 分两批);B 批:单人代签长期化、CI 通道 B 案、19 个 PR 按登记顺序合并、Catalog 保持 proposed 到 staging 晋级;C 批:Q01—Q10 按收口方案采纳,X06 由 identity 作业编排,G-3 自建限流镜像、方法白名单回收入口层,prod 批准人必须 human,drift 升阻断,碰撞卷 dump 后删,内核一步升 0.22.0,订阅计费并入 C19,OpenBao dev 立即启用,OS 先接决策 API,嗨设允许自建,Alertmanager + 企业 IM;D 批:staging TLS 先 internal 再 ACME,§6 偏差六条按建议。五处改案及后果见批次 §1A。\n\n登记:待裁决架构事项 CHG-001 / N-02 / N-07 三行改为已裁决;开发计划 §8 新增变更记录(偏差 #5 / #23 / #31 随之关闭)。未做:DEC-010 附条件修订与 C19 范围改写各需一个 CHG。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/c641151481665a321840ee8081e09101a3b74360","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-16T16:08:02-07:00","added":["平台治理/doc/decisions/决策批次-2026-09-16.md"],"removed":[],"modified":["平台治理/doc/decisions/待裁决架构事项.md","平台治理/基础设施文档/开发计划.md"]},"repository":{"id":117,"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":"platform-governance","full_name":"luoanwu/platform-governance","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":6732,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/platform-governance/languages","html_url":"https://gitea.g-hi.com/luoanwu/platform-governance","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/platform-governance","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/platform-governance.git","clone_url":"https://gitea.g-hi.com/luoanwu/platform-governance.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":2,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-09-15T11:53:24+08:00","updated_at":"2026-09-16T22:50:30+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"}}...
|
push
|
1
|
4
|
1789601258
|
1789601272
|
0
|
1789601223
|
1789601272
|
|
|
0
|
Edit
Delete
|
|
24063
|
chore(reports): 治理层门禁报告回绑 @ 87ec431
|
117
|
5
|
governance.yml
|
39
|
5
|
0
|
refs/heads/main
|
693800ceaf834b217a01466e19579af6a23925cf
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"eca16cecb1b0e54e66d69268589ffa59c2fe6eff","after":"693800ceaf834b217a01466e19579af6a23925cf","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/eca16cecb1b0e54e66d69268589ffa59c2fe6eff...693800ceaf834b217a01466e19579af6a23925cf","commits":[{"id":"693800ceaf834b217a01466e19579af6a23925cf","message":"chore(reports): 治理层门禁报告回绑 @ 87ec431\n\n清树重跑 run-foundation-gates:阻断性 11/11 通过,仅记录 2(工作区一致性\nL9 / L12)。三份报告 worktreeDirty=false,绑定 87ec431。\n\n(订正:本条信息初次写成「回绑 @ 9a5b3c0」,那是提交前预估的 SHA,实际\n实现提交是 87ec431。报告内容的绑定一直是对的,错的只是信息里的那串字。)\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/693800ceaf834b217a01466e19579af6a23925cf","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-17T16:40:15-07:00","added":[],"removed":[],"modified":["平台治理/基础/reports/延后op.latest.json","平台治理/基础/reports/门禁消费.latest.json","平台治理/基础/reports/门禁运行.latest.json"]},{"id":"87ec4315c77935405e16314c11789ddb6ae45e5a","message":"feat(governance): G6 流外出口必须写复核期,缺失或过期即判红\n\n补上前一提交记为「仍缺一道」的缺口,不留登记而不建。\n\n根因:门禁消费登记的 G4 只断言 wireInWhen 非空,从不校验它是否已成立。\n流外出口是这份登记唯一的豁免口,而豁免口自己没有到期判据——用来防静音的\n机制在自己身上静音了。实锤就是前一提交处理的那条:check-domain-layer 的\n接入条件「D5 与 D9 清零」早已双双成立,G4 全绿,无人发现。\n\nG6 OUT_OF_FLOW_UNREVIEWED:流外条目必须写 conditionReviewBy(YYYY-MM-DD),\n缺失、格式不对或已过期即判红;当天不算过期;只对流外生效,阻断位条目每轮\n都在跑,不需要复核期。6 例负向覆盖这五种形态。\n\n守日期而不守条件是有意的:接入条件多半含人的判断(「框架同步波次扩散后」\n「再有派生仓开仓时」),机器判不了;能机器化的是「必须有人按期回来看一眼」。\n与同日落的域分层基线 B4 同形——缓期不是豁免。\n\n两条现存流外条目各自写了复核期与理由:\n- check-workspace-consistency 2026-10-31:L9 / L12 挂在活裁决 N-11 / C-14\n 上,六周内应有进展。\n- audit-platform-openings 2026-12-31:触发事件罕见,现存派生仓 0 个\n (派生仓状态.json 只剩 missing 1 + retired 18),不是六周尺度的事。\n\n台账 C-19 由「仍缺一道」改为已补,落点写明。\n\n证据:治理层 378 例 0 失败(新增 6 例负向)、阻断性门禁 11/11、\n工作区一致性仍 2 条(L9 / L12)。报告在脏树上产出,不随本提交。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/87ec4315c77935405e16314c11789ddb6ae45e5a","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-17T16:40:01-07:00","added":[],"removed":[],"modified":["平台治理/基础/scripts/lib/gate-registry-core.mjs","平台治理/基础/tests/gate-consumption.test.mjs","平台治理/基础/上层对接经验回灌台账.md","平台治理/基础/门禁消费登记.json","平台治理/基础设施文档/开发计划.md"]}],"total_commits":0,"head_commit":{"id":"693800ceaf834b217a01466e19579af6a23925cf","message":"chore(reports): 治理层门禁报告回绑 @ 87ec431\n\n清树重跑 run-foundation-gates:阻断性 11/11 通过,仅记录 2(工作区一致性\nL9 / L12)。三份报告 worktreeDirty=false,绑定 87ec431。\n\n(订正:本条信息初次写成「回绑 @ 9a5b3c0」,那是提交前预估的 SHA,实际\n实现提交是 87ec431。报告内容的绑定一直是对的,错的只是信息里的那串字。)\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/693800ceaf834b217a01466e19579af6a23925cf","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-17T16:40:15-07:00","added":[],"removed":[],"modified":["平台治理/基础/reports/延后op.latest.json","平台治理/基础/reports/门禁消费.latest.json","平台治理/基础/reports/门禁运行.latest.json"]},"repository":{"id":117,"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":"platform-governance","full_name":"luoanwu/platform-governance","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":8819,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/platform-governance/languages","html_url":"https://gitea.g-hi.com/luoanwu/platform-governance","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/platform-governance","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/platform-governance.git","clone_url":"https://gitea.g-hi.com/luoanwu/platform-governance.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":2,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-09-15T11:53:24+08:00","updated_at":"2026-09-18T07:37:05+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"}}...
|
push
|
1
|
4
|
1789688661
|
1789688675
|
0
|
1789688425
|
1789688675
|
|
|
0
|
Edit
Delete
|
|
24166
|
fix(quotation): 通知投递显式传重试上限——领取与死信判定不再各用一份常数
|
72
|
5
|
governance.yml
|
12
|
5
|
0
|
refs/heads/main
|
6908c19f9faf3b006d73054657b97c6cb8f945d9
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"ec9e07de44a5619a8a6b5648f00f5ea7f7dcafcf","after":"6908c19f9faf3b006d73054657b97c6cb8f945d9","compare_url":"https://gitea.g-hi.com/luoanwu/juhai-quotation-system/compare/ec9e07de44a5619a8a6b5648f00f5ea7f7dcafcf...6908c19f9faf3b006d73054657b97c6cb8f945d9","commits":[{"id":"6908c19f9faf3b006d73054657b97c6cb8f945d9","message":"fix(quotation): 通知投递显式传重试上限——领取与死信判定不再各用一份常数\n\n服务里的 MAX_ATTEMPTS = 3 只进领取查询与死信清扫,decideNotificationFailure 没传 maxAttempts、\n走的是 @repo/notification-delivery 的包默认 3。今天两个 3 相等所以看不出来,改任一边即静默不一致:\n领取按新上限继续捡,死信判定仍按旧上限提前把行判死。同仓 event-delivery.service.ts 一直是显式传的。\n\n两后端各一行,语义不变。验证:typecheck 绿;pnpm check 22 道全绿;包单测 4/4 未受影响。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhai-quotation-system/commit/6908c19f9faf3b006d73054657b97c6cb8f945d9","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-18T16:06:42-07:00","added":[],"removed":[],"modified":["apps/api-fastify/src/modules/notification-delivery/notification-delivery.service.ts","apps/api-nestjs/src/events/notification-delivery.service.ts"]}],"total_commits":0,"head_commit":{"id":"6908c19f9faf3b006d73054657b97c6cb8f945d9","message":"fix(quotation): 通知投递显式传重试上限——领取与死信判定不再各用一份常数\n\n服务里的 MAX_ATTEMPTS = 3 只进领取查询与死信清扫,decideNotificationFailure 没传 maxAttempts、\n走的是 @repo/notification-delivery 的包默认 3。今天两个 3 相等所以看不出来,改任一边即静默不一致:\n领取按新上限继续捡,死信判定仍按旧上限提前把行判死。同仓 event-delivery.service.ts 一直是显式传的。\n\n两后端各一行,语义不变。验证:typecheck 绿;pnpm check 22 道全绿;包单测 4/4 未受影响。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhai-quotation-system/commit/6908c19f9faf3b006d73054657b97c6cb8f945d9","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-18T16:06:42-07:00","added":[],"removed":[],"modified":["apps/api-fastify/src/modules/notification-delivery/notification-delivery.service.ts","apps/api-nestjs/src/events/notification-delivery.service.ts"]},"repository":{"id":72,"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":"juhai-quotation-system","full_name":"luoanwu/juhai-quotation-system","description":"巨嗨报价系统:Next.js + NestJS/Fastify 双后端治理型报价业务底座","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":35851,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhai-quotation-system/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhai-quotation-system","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhai-quotation-system","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhai-quotation-system.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhai-quotation-system.git","original_url":"","website":"","stars_count":0,"forks_count":1,"watchers_count":1,"branch_count":11,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-31T03:51:09+08:00","updated_at":"2026-09-15T10:54:16+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"}}...
|
push
|
2
|
6
|
1789772921
|
1789773989
|
0
|
1789772844
|
1789773991
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23658
|
fix(web): add image edit source picker
|
57
|
5
|
governance.yml
|
29
|
5
|
0
|
refs/heads/main
|
7dbc94c8d2ab8ad4aff7fd0dd66f4397773fe27a
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"ec9d8fb606022dd0c65a2a3974b0f46e0e796029","after":"7dbc94c8d2ab8ad4aff7fd0dd66f4397773fe27a","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/ec9d8fb606022dd0c65a2a3974b0f46e0e796029...7dbc94c8d2ab8ad4aff7fd0dd66f4397773fe27a","commits":[{"id":"7dbc94c8d2ab8ad4aff7fd0dd66f4397773fe27a","message":"fix(web): add image edit source picker\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/7dbc94c8d2ab8ad4aff7fd0dd66f4397773fe27a","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-06T20:45:22-07:00","added":["apps/web/src/components/material-factory/ImageEditSourcePicker.tsx","docs/governance/log/2026-09-07-image-edit-source-picker.md"],"removed":[],"modified":["CLAUDE.md","apps/web/src/components/material-factory/InpaintStudio.tsx"]}],"total_commits":0,"head_commit":{"id":"7dbc94c8d2ab8ad4aff7fd0dd66f4397773fe27a","message":"fix(web): add image edit source picker\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/7dbc94c8d2ab8ad4aff7fd0dd66f4397773fe27a","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-06T20:45:22-07:00","added":["apps/web/src/components/material-factory/ImageEditSourcePicker.tsx","docs/governance/log/2026-09-07-image-edit-source-picker.md"],"removed":[],"modified":["CLAUDE.md","apps/web/src/components/material-factory/InpaintStudio.tsx"]},"repository":{"id":57,"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":"image-generation","full_name":"luoanwu/image-generation","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":291504,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation/languages","html_url":"https://gitea.g-hi.com/luoanwu/image-generation","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/image-generation.git","clone_url":"https://gitea.g-hi.com/luoanwu/image-generation.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":5,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-06T17:04:22+08:00","updated_at":"2026-09-07T11:42:45+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"}}...
|
push
|
1
|
4
|
1788752821
|
1788752909
|
0
|
1788752820
|
1788752909
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24001
|
feat(stack): Grafana 业务配置进仓——首页业务面 SLO、默认 zh-Hans feat(stack): Grafana 业务配置进仓——首页业务面 SLO、默认 zh-Hans 与 Asia/Shanghai、单组织新用户 Viewer、不外联;dev 补 root_url...
|
116
|
5
|
platform.yml
|
73
|
5
|
0
|
refs/heads/main
|
defd9d729060bf91f2fb1f38c165ea6b27e28780
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"ec29ace2dc8f4e3e51b716c3bb673b741f85b47f","after":"defd9d729060bf91f2fb1f38c165ea6b27e28780","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/ec29ace2dc8f4e3e51b716c3bb673b741f85b47f...defd9d729060bf91f2fb1f38c165ea6b27e28780","commits":[{"id":"defd9d729060bf91f2fb1f38c165ea6b27e28780","message":"feat(stack): Grafana 业务配置进仓——首页业务面 SLO、默认 zh-Hans 与 Asia/Shanghai、单组织新用户 Viewer、不外联;dev 补 root_url\n\n并行会话产出,按原样收入。compose grafana 服务 GF_* 十余项与 provisioning 同口径,四份仪表板 timezone 留空以继承服务默认,dev overlay 的 GF_SERVER_ROOT_URL 用主机端口;记录 stack/reports/grafana-config.2026-09-16.json(dev / staging 两套 compose config 渲染通过)。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/defd9d729060bf91f2fb1f38c165ea6b27e28780","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-16T17:16:33-07:00","added":["stack/reports/grafana-config.2026-09-16.json"],"removed":[],"modified":["stack/README.md","stack/compose.yaml","stack/otel/grafana/provisioning/dashboards/json/platform-business-slo.json","stack/otel/grafana/provisioning/dashboards/json/platform-logs-traces.json","stack/otel/grafana/provisioning/dashboards/json/platform-otel-pipeline.json","stack/otel/grafana/provisioning/dashboards/json/platform-runtime.json","stack/overlays/dev.yaml"]},{"id":"e041207161fe42a87d6eb19b57b26fe2ad0a6859","message":"feat(runtime,contracts): 缺口代码 A-1 / A-2——审计 HTTP 面(audit-append.v1 / audit-query.v1 候选)、进程内 audit-ledger 端口、Q04 两模式协议与故障夹具\n\n按决策批次 2026-09-16 C-1(Q04 采纳两模式)落缺失清单 A-1 / A-2;顺序照 Q04:先协议与六类故障夹具,再改 M6,SDK 不动。\n\n- 协议(domain/audit-commit-protocol.ts):线上形状与 @juhai/client-audit(PR #44)逐字段一致,event_id / digest 只由内容决定;\n 提交模式由动作登记 commit_mode 决定(local-durable / central-prepared),调用方不可降级,result 须引用已回执 prepare;\n AUDIT_FAULT_MATRIX 六类注入点标 owner / m6;夹具评估器新增 append-event / commit / intake 三条规则,夹具 +18 例。\n- A-1:迁移 202609160002_audit_commit_protocol(commit_mode 列 + platform_audit_intake,FORCE RLS + 不可改;头引 DEC-020—023);\n AuditStore.appendIntake / getEvent(append 抽成事务内 appendInTx,语义不变);createAuditRuntime(PLATFORM_AUDIT_HTTP_ENABLED=1、\n 限 development/test、只收 JWT、普通角色);kit 增 PlatformModule.auditRuntime;NestJS POST /api/v1/audit/events、\n GET /api/v1/audit/events/{eventId}、GET /api/v1/audit/events/checkpoint;两份候选 OpenAPI 随仓(pending CHG-004)。\n- A-2:AuditSinkPort 按 PLATFORM_PERSISTENCE_ENABLED 在 audit-shape 与 audit-ledger 间切换(与 permission / fact 同款);\n event_id 与 client-audit 同 identity 派生,trace 缺失时派生稳定 32 hex。\n- 判责:整批结构错 400、producer ≠ JWT 主体 403、逐条拒绝在 200 的 rejected[];producer.client_id / app_id 都须等于 azp;\n 查询面只允许记录所属应用读,?access_token= 一律 401。\n\n复核:audit 单测 80 / 集成 19(隔离 PG)/ e2e 12(真实 NestJS + JWT,含端口一致性 sink 画像);根 pnpm check 全链 exit 0\n(check:fixtures 17 套件 184 例);报告未回绑,留给 clean 树上的 chore(reports)。未做:A-3(PR #44)、A-5 / A-6、G-1、S-5,\nOwner 侧四类故障义务待首个消费者接入后三方对账;见 docs/缺失模块完善清单-2026-09-16.md §9。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/e041207161fe42a87d6eb19b57b26fe2ad0a6859","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-16T17:15:30-07:00","added":["contracts/candidates/contracts/audit-append-api.v1.openapi.json","contracts/candidates/contracts/audit-query-api.v1.openapi.json","runtime/apps/api-nestjs/src/platform/http/audit-events.controller.ts","runtime/modules/audit/prisma/migrations/202609160002_audit_commit_protocol/migration.sql","runtime/modules/audit/src/domain/audit-commit-protocol.test.ts","runtime/modules/audit/src/domain/audit-commit-protocol.ts","runtime/modules/audit/src/persistence/http-runtime.test.ts","runtime/modules/audit/src/persistence/http-runtime.ts","runtime/modules/audit/test/negative/append-intake.integration.ts","runtime/modules/kit/src/audit-runtime.ts","runtime/test/e2e/audit-http.test.ts"],"removed":[],"modified":["contracts/candidates/README.md","docs/runbook.md","docs/缺失模块完善清单-2026-09-16.md","docs/能力设计/设计问题收口方案.md","runtime/apps/api-nestjs/src/platform/platform-http.module.ts","runtime/modules/audit/prisma/schema.prisma","runtime/modules/audit/src/domain/fixture-evaluator.ts","runtime/modules/audit/src/domain/index.ts","runtime/modules/audit/src/index.ts","runtime/modules/audit/src/persistence/audit-store.ts","runtime/modules/audit/src/ports/audit-sink.port.test.ts","runtime/modules/audit/src/ports/audit-sink.port.ts","runtime/modules/audit/test/fixtures/audit.fixtures.json","runtime/modules/kit/src/index.ts"]}],"total_commits":0,"head_commit":{"id":"defd9d729060bf91f2fb1f38c165ea6b27e28780","message":"feat(stack): Grafana 业务配置进仓——首页业务面 SLO、默认 zh-Hans 与 Asia/Shanghai、单组织新用户 Viewer、不外联;dev 补 root_url\n\n并行会话产出,按原样收入。compose grafana 服务 GF_* 十余项与 provisioning 同口径,四份仪表板 timezone 留空以继承服务默认,dev overlay 的 GF_SERVER_ROOT_URL 用主机端口;记录 stack/reports/grafana-config.2026-09-16.json(dev / staging 两套 compose config 渲染通过)。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/defd9d729060bf91f2fb1f38c165ea6b27e28780","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-16T17:16:33-07:00","added":["stack/reports/grafana-config.2026-09-16.json"],"removed":[],"modified":["stack/README.md","stack/compose.yaml","stack/otel/grafana/provisioning/dashboards/json/platform-business-slo.json","stack/otel/grafana/provisioning/dashboards/json/platform-logs-traces.json","stack/otel/grafana/provisioning/dashboards/json/platform-otel-pipeline.json","stack/otel/grafana/provisioning/dashboards/json/platform-runtime.json","stack/overlays/dev.yaml"]},"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":15138,"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-17T08:09:59+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"}}...
|
push
|
3
|
14
|
0
|
1789604295
|
0
|
1789604198
|
1789604295
|
group: platform-${{ github.workflow }}-${{ github. group: platform-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
...
|
platform-platform.yml-refs/heads/main
|
0
|
Edit
Delete
|