|
23770
|
Merge branch 'main' into feat/image-creati Merge branch 'main' into feat/image-creation-uiux...
|
57
|
5
|
governance.yml
|
140
|
5
|
0
|
refs/heads/main
|
f4a3dc4e46944684ef2dbd52788ccc2eba01d330
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"5d21f7c10d08b061554997014f928798ba521dca","after":"f4a3dc4e46944684ef2dbd52788ccc2eba01d330","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/5d21f7c10d08b061554997014f928798ba521dca...f4a3dc4e46944684ef2dbd52788ccc2eba01d330","commits":[{"id":"f4a3dc4e46944684ef2dbd52788ccc2eba01d330","message":"Merge branch 'main' into feat/image-creation-uiux\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/f4a3dc4e46944684ef2dbd52788ccc2eba01d330","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:51:00-07:00","added":["reports/storyboard-draft-20260909/live-verification.json"],"removed":[],"modified":["docs/governance/log/2026-09-09-storyboard-draft-model.md","reports/storyboard-draft-20260909/README.md","reports/storyboard-draft-20260909/validation.json"]},{"id":"17cac8423e6affba8d4208c79f710ab67d07eefb","message":"docs: record verified image creation UI release\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/17cac8423e6affba8d4208c79f710ab67d07eefb","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:50:52-07:00","added":["docs/releases/2026-09-09-image-uiux1.md"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-image-creation-uiux.md","docs/releases/current.md","reports/image-creation-uiux-20260909/README.md"]}],"total_commits":0,"head_commit":{"id":"f4a3dc4e46944684ef2dbd52788ccc2eba01d330","message":"Merge branch 'main' into feat/image-creation-uiux\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/f4a3dc4e46944684ef2dbd52788ccc2eba01d330","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:51:00-07:00","added":["reports/storyboard-draft-20260909/live-verification.json"],"removed":[],"modified":["docs/governance/log/2026-09-09-storyboard-draft-model.md","reports/storyboard-draft-20260909/README.md","reports/storyboard-draft-20260909/validation.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":770895,"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:01+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":true,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
3
|
3
|
0
|
1788947630
|
0
|
1788947477
|
1788947630
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24169
|
docs(部署): 记录补 §14——工作台登录第一次真正走通,以及 200 分支为什么在浏览器里测 docs(部署): 记录补 §14——工作台登录第一次真正走通,以及 200 分支为什么在浏览器里测不了...
|
116
|
5
|
platform.yml
|
140
|
5
|
0
|
refs/heads/main
|
ec0f1c04d60b56c0fa19a2c06fc89e7a64b69c4d
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"7a4b69367b18f4e284218704981b54c0ee10d2b6","after":"ec0f1c04d60b56c0fa19a2c06fc89e7a64b69c4d","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/7a4b69367b18f4e284218704981b54c0ee10d2b6...ec0f1c04d60b56c0fa19a2c06fc89e7a64b69c4d","commits":[{"id":"ec0f1c04d60b56c0fa19a2c06fc89e7a64b69c4d","message":"docs(部署): 记录补 §14——工作台登录第一次真正走通,以及 200 分支为什么在浏览器里测不了\n\n同源托管记录 §6 那一行挂着「工作台 OIDC 公开客户端仍未在身份模块登记」,以及由此导致的\n「forward_auth 的 200 分支未实测」。本节走通前者,后者只关掉一半。\n\n卡住的不是配置。登录页显示「缺配置」容易读成填个环境变量就行,实际是 demo 租户里\n根本没有回调为 http://localhost:3010/callback/ 的客户端;而登记它要过 IdpManagementGuard\n(idp:manage ∧ 管理客户端 ∧ 活跃管理员授权),也就是必须先有人以管理员身份走完托管登录——\n那一步要人工提交口令,这正是它一直没做的原因。\n\n登记出来的客户端只给 openid profile,不给 idp:manage:登记用的是 demo-console 的管理权,\n不是把管理权发给一个跑在浏览器里的公开客户端。\n\n实测走通全链(作用域 = 本机 dev,证据等级 = 运行态链路 + 真实浏览器):SSO 未再要口令、\n同意屏、换令牌、令牌只落 sessionStorage 两键(无 localStorage 无 cookie)、登录页显示出\n与库中 admin@demo.test 一致的 subject(即没踩同源托管记录的 D-10)、userinfo 200、\n带令牌读 modules 200。userinfo 正是 forward_auth 的校验端点,服务端语义上 200 分支成立。\n\n但浏览器跨源那一半关不掉,且是设计使然:带 Authorization 的跨源请求先发 OPTIONS 预检,\n预检按规范不带该头,forward_auth 收到无令牌的 OPTIONS 就 401,真请求发不出去。终态是\n同源托管故无影响,但 :3010 这个 dev 形态永远走不通网关。这与 §11「两个键、两个进程」\n是同一族问题的两面:跨源这件事,代理和网关都不替你解决。\n\n新登记 D-11(服务端直连验 200 分支未做——本轮令牌只在浏览器里,不把有效 bearer 打进\n命令行与日志)与 D-12(登录后顶栏的 hydration 告警)。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/ec0f1c04d60b56c0fa19a2c06fc89e7a64b69c4d","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:11:45-07:00","added":[],"removed":[],"modified":["docs/dev部署运行重做记录-2026-09-18.md"]}],"total_commits":0,"head_commit":{"id":"ec0f1c04d60b56c0fa19a2c06fc89e7a64b69c4d","message":"docs(部署): 记录补 §14——工作台登录第一次真正走通,以及 200 分支为什么在浏览器里测不了\n\n同源托管记录 §6 那一行挂着「工作台 OIDC 公开客户端仍未在身份模块登记」,以及由此导致的\n「forward_auth 的 200 分支未实测」。本节走通前者,后者只关掉一半。\n\n卡住的不是配置。登录页显示「缺配置」容易读成填个环境变量就行,实际是 demo 租户里\n根本没有回调为 http://localhost:3010/callback/ 的客户端;而登记它要过 IdpManagementGuard\n(idp:manage ∧ 管理客户端 ∧ 活跃管理员授权),也就是必须先有人以管理员身份走完托管登录——\n那一步要人工提交口令,这正是它一直没做的原因。\n\n登记出来的客户端只给 openid profile,不给 idp:manage:登记用的是 demo-console 的管理权,\n不是把管理权发给一个跑在浏览器里的公开客户端。\n\n实测走通全链(作用域 = 本机 dev,证据等级 = 运行态链路 + 真实浏览器):SSO 未再要口令、\n同意屏、换令牌、令牌只落 sessionStorage 两键(无 localStorage 无 cookie)、登录页显示出\n与库中 admin@demo.test 一致的 subject(即没踩同源托管记录的 D-10)、userinfo 200、\n带令牌读 modules 200。userinfo 正是 forward_auth 的校验端点,服务端语义上 200 分支成立。\n\n但浏览器跨源那一半关不掉,且是设计使然:带 Authorization 的跨源请求先发 OPTIONS 预检,\n预检按规范不带该头,forward_auth 收到无令牌的 OPTIONS 就 401,真请求发不出去。终态是\n同源托管故无影响,但 :3010 这个 dev 形态永远走不通网关。这与 §11「两个键、两个进程」\n是同一族问题的两面:跨源这件事,代理和网关都不替你解决。\n\n新登记 D-11(服务端直连验 200 分支未做——本轮令牌只在浏览器里,不把有效 bearer 打进\n命令行与日志)与 D-12(登录后顶栏的 hydration 告警)。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/ec0f1c04d60b56c0fa19a2c06fc89e7a64b69c4d","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:11:45-07:00","added":[],"removed":[],"modified":["docs/dev部署运行重做记录-2026-09-18.md"]},"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":20460,"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":44,"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-19T07:10: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
|
3
|
10
|
0
|
1789773436
|
0
|
1789773117
|
1789773436
|
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
|
|
24504
|
docs(治理): 开发计划 §8 续记真源仓回绑链收尾 3 条推 Gitea 与 GitHub 同 docs(治理): 开发计划 §8 续记真源仓回绑链收尾 3 条推 Gitea 与 GitHub 同步(三端 7f5ec3fd),§1 仓与远端 SHA 订正...
|
117
|
5
|
governance.yml
|
140
|
5
|
0
|
refs/heads/main
|
b3c93130ddd9180b610147222ba4c30591195d18
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"83fd201cb5122378c387d240db6f6249caa2ba4f","after":"b3c93130ddd9180b610147222ba4c30591195d18","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/83fd201cb5122378c387d240db6f6249caa2ba4f...b3c93130ddd9180b610147222ba4c30591195d18","commits":[{"id":"b3c93130ddd9180b610147222ba4c30591195d18","message":"docs(治理): 开发计划 §8 续记真源仓回绑链收尾 3 条推 Gitea 与 GitHub 同步(三端 7f5ec3fd),§1 仓与远端 SHA 订正\n\n只改 §1「仓与远端」的 SHA / 未推数 / 读数时刻与 §8 新增一行(含脏文件核实为并行回绑在途产物的结论);一致性门禁只读发现与此前一致、无新增。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/b3c93130ddd9180b610147222ba4c30591195d18","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-24T08:35:29-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/开发计划.md"]}],"total_commits":0,"head_commit":{"id":"b3c93130ddd9180b610147222ba4c30591195d18","message":"docs(治理): 开发计划 §8 续记真源仓回绑链收尾 3 条推 Gitea 与 GitHub 同步(三端 7f5ec3fd),§1 仓与远端 SHA 订正\n\n只改 §1「仓与远端」的 SHA / 未推数 / 读数时刻与 §8 新增一行(含脏文件核实为并行回绑在途产物的结论);一致性门禁只读发现与此前一致、无新增。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/b3c93130ddd9180b610147222ba4c30591195d18","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-24T08:35:29-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":17652,"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":4,"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-24T23:33: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
|
4
|
1790264135
|
1790264165
|
0
|
1790264134
|
1790264165
|
|
|
0
|
Edit
Delete
|
|
24522
|
merge: preserve parallel control-plane governance merge: preserve parallel control-plane governance updates...
|
76
|
5
|
governance.yml
|
140
|
5
|
0
|
refs/heads/main
|
db3701c4a088aceab24190f1e1aae94736cfc395
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"5959eda04376f4872c2470d970bc4677c89e0e77","after":"db3701c4a088aceab24190f1e1aae94736cfc395","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/5959eda04376f4872c2470d970bc4677c89e0e77...db3701c4a088aceab24190f1e1aae94736cfc395","commits":[{"id":"db3701c4a088aceab24190f1e1aae94736cfc395","message":"merge: preserve parallel control-plane governance updates\n\n# Conflicts:\n#\tdocs/domain/enterprise-control-plane-integration-governance.md\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/db3701c4a088aceab24190f1e1aae94736cfc395","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-24T16:02:19-07:00","added":[],"removed":[],"modified":["docs/domain/enterprise-control-plane-integration-governance.md"]},{"id":"ecc1cbada0289e3e4720ff72c797c560fcd39616","message":"docs(governance): capture control-plane integration experience\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/ecc1cbada0289e3e4720ff72c797c560fcd39616","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-24T15:59:09-07:00","added":[],"removed":[],"modified":["docs/domain/enterprise-control-plane-integration-governance.md"]},{"id":"6e3c399fe1a61dcd607d3f33f5e5af7eaefe6c1f","message":"fix(governance): 收窄数字员工控制面接入边界\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/6e3c399fe1a61dcd607d3f33f5e5af7eaefe6c1f","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-24T06:58:28-07:00","added":["docs/domain/enterprise-control-plane-integration-governance.md"],"removed":[],"modified":["apps/api-fastify/test/llm.acceptance.test.ts","apps/api-nestjs/test/llm.acceptance.test.ts","docs/domain/mcp-control-plane-blueprint.md","docs/domain/owner-matrix.md","packages/contracts/src/mcp-control-plane.ts","packages/tool-runtime/src/mcp-control-plane.test.ts"]}],"total_commits":0,"head_commit":{"id":"db3701c4a088aceab24190f1e1aae94736cfc395","message":"merge: preserve parallel control-plane governance updates\n\n# Conflicts:\n#\tdocs/domain/enterprise-control-plane-integration-governance.md\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/db3701c4a088aceab24190f1e1aae94736cfc395","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-24T16:02:19-07:00","added":[],"removed":[],"modified":["docs/domain/enterprise-control-plane-integration-governance.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":96777,"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-24T22:32: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
|
3
|
18
|
0
|
1790291117
|
0
|
1790290954
|
1790291117
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
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
|
|
24170
|
docs(发布): 当场记录 rc.4 列车——三包已发,tag 这趟补上,并写清验证的真实范围
|
116
|
5
|
platform.yml
|
141
|
5
|
0
|
refs/heads/main
|
45a6bd523973c97e88f31faa12604773150cec87
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"ec0f1c04d60b56c0fa19a2c06fc89e7a64b69c4d","after":"45a6bd523973c97e88f31faa12604773150cec87","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/ec0f1c04d60b56c0fa19a2c06fc89e7a64b69c4d...45a6bd523973c97e88f31faa12604773150cec87","commits":[{"id":"45a6bd523973c97e88f31faa12604773150cec87","message":"docs(发布): 当场记录 rc.4 列车——三包已发,tag 这趟补上,并写清验证的真实范围\n\nrc.4 三包(contracts / governance / client-fact)2026-09-18 经本地旁路发出,源 557a95c,\nRegistry 实查确认在架、三包均 registry integrity verified。与前两趟不同,本次是当场记录。\n\n这趟补上了 CL-5 要求的 tag packages-v1.0.0-rc.4——rc.2 / rc.3 都漏了这一步,\nprovenance.tag 因此第一次不是 null。构建与发布在 .worktrees/rc4-release 的 detached\n干净检出里做,所以 worktreeDirty:false 是真的(主检出当时有并行会话在改 contracts)。\n\n记录里写清了两件容易被夸大的事:\n\n1. rc.4 远不止触发它的那两条 clients 规则。自 rc.3 源 036a308 起,contracts 147 文件 /\n 51 提交、governance 61 文件 / 48 提交随车发出,包含九域规则入参体检那一整轮。\n2. 发布前只跑了 check:fixtures(17 套件 394 例)与 check:module-imports(396 文件),\n 退出码均 0;**完整 pnpm check 是发布后补跑的**(真实退出码 0,check:evidence partial:\n 36 新鲜 / 5 过期,过期项均属其他任务 WIP)。按 G-12 边界,这些都不构成阶段门证据。\n\nCLAUDE.md 的 contracts 条目同步推到 rc.4,并顺手修掉一处自相矛盾:该条前半句还写着\nrc.2 源 eb3cf2c,而后半句已说明按 provenance 订正为 6d3900a。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/45a6bd523973c97e88f31faa12604773150cec87","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:17:05-07:00","added":[],"removed":[],"modified":["CLAUDE.md","docs/G-12本地旁路发布记录-2026-09-13.md"]},{"id":"df90a19192218b2b65c7cde7326968ac81d03de0","message":"chore(reports): check:module-imports 回绑 @ 557a95c\n\n在 .worktrees/rc4-release 的干净检出(detached 557a95c = packages-v1.0.0-rc.4)里重跑,\n绑 557a95c / worktreeDirty=false,扫描 396 个源文件、0 处违规。\n\n同批在该检出里跑的 check:fixtures 也是 0 失败(17 套件 394 例),但那份报告**没有提交**:\nfixtures 的证据作用域含 contracts,而并行会话正在高频改 contracts,绑 557a95c 的快照\n落地即过期,回绑节奏交还给正在改那片的人。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/df90a19192218b2b65c7cde7326968ac81d03de0","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:14:43-07:00","added":[],"removed":[],"modified":["reports/module-imports.latest.json"]},{"id":"0b3dab61a1072d682d5a921e00025f46431c95d3","message":"test(contracts): decideProviderOutcome 在门禁上零覆盖——退避被供应商压短这条修过的规则,没人盯着它别被改回去\n\n前两轮收了入参硬化(c190a6a)与请求体检/出站 allowlist 的用例(d950aa2)。本轮按「公开方法 × 出口」\n重新盘了一遍,两类空白。两个规则文件零改动,只动夹具评估器、夹具与测试。\n\n1. decideProviderOutcome 在门禁上零覆盖。planner 四个公开方法(status / plan /\n decideProviderOutcome / refresh)里,夹具只有 plan 与 refresh 两条规则。既有的 provider 规则走的是\n 独立函数 classifyProviderOutcome——它只看状态码与次数,不认路由策略:退避基数 baseBackoffSeconds、\n 上界 maximumBackoffSeconds、Retry-After 的钳制全在 planner 方法里,夹具一条都看不到。\n 而那里恰好有一条修过的规则:Retry-After 可以把退避拉长到策略上界,但不能把批准过的退避拉短\n (原实现 min(maximumBackoff, retryAfter),供应商回一个 Retry-After: 0 即可令退避清零)。\n 规则改对了,门禁却看不见它有没有被改回去。\n\n 新增 route-outcome 规则,并把 RETRY 连同算出来的秒数一并返回(RETRY:\u003c秒\u003e)——否则夹具只能看见\n 「重试了」,看不见「退避是不是被压短了」。负向实测:把 N33 的声明由 RETRY:20 改成 RETRY:10,\n 门禁 exit 1 并点名该例,秒数确实被钉住。\n\n2. plan() 八条出口此前门禁上没走过:请求非对象、目的地不在册、effectId 非请求派生、尝试次数越界、\n 未授权重放、模板版本未批准、变量越出模板 allowlist、敏感载荷落在未批准敏感数据的模板上。\n 构造用例时注意 effectId = tenant:sourceEvent:destination:template:v\u003c版本\u003e 是派生值,改 templateVersion\n 必须同步改 effectId,否则先撞 WEBHOOK_EFFECT_ID_MISMATCH,测不到目标那条。\n\n一处预期被实测推翻,按实现订正:retryAfterSeconds 超出 [0, 3600] 不是「钳到上界」,而是整条回执判\nPROVIDER_OUTCOME_INVALID。两条边界各钉一例(3600 → RETRY:60;9999 → 拒)。\n\n覆盖:夹具 25 → 39 例(正 4 / 反 35);定向测试 28 → 30 例,补上唯一一条「门禁有、单测没有」的\nWEBHOOK_TEMPLATE_NOT_APPROVED 以及 Retry-After 取值域。前两轮断言一条未改。\n变异探针(39 例真实 payload × 14 种脏值)14560 个变异点、0 处抛异常。\n\n未做(越界):模板审批流、多渠道 Provider、签名防重放、渠道切换仍不在本仓,C12 按缺失模块完善清单\n仍是「裁决」;Catalog 登记未动(notification-webhook 仍 module_e2、code_truth 指向工单仓)。\n\n证据:pnpm --dir contracts build / typecheck 绿、check:generated 14 files / 12 schemas 无漂移、\nnode --test contracts/test/*.test.mjs 400/400、contract-notification-webhook 夹具 39/39 失败 0。\n本次不回绑任何 reports/。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/0b3dab61a1072d682d5a921e00025f46431c95d3","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:13:04-07:00","added":[],"removed":[],"modified":["contracts/SOURCE.md","contracts/src/domain/notification-webhook/fixture-evaluator.ts","contracts/test/fixtures/notification-webhook.fixtures.json","contracts/test/notification-webhook-domain.test.mjs","docs/domain/notification-effect-blueprint.md"]},{"id":"0b30631d9c45ceff29558ddf821e6cb5a5c7cd00","message":"docs(治理): 夹具覆盖度的算法写进 CLAUDE.md,并把探针从 /tmp 落进仓里\n\n今天九个契约包的门禁空白有一半是靠一个临时脚本找出来的,光看用例名一个也发现不了。方法写进文档\n而脚本留在 /tmp,下次没人跑得起来——所以一并落仓。\n\ngovernance/fixture-coverage.mjs(诊断,不是门禁:不写报告、不进 pnpm check):\n由 governance/fixtures/*.suite.json 驱动,新增套件自动纳入,不写死域名单。拿每个夹具用例的真实\npayload 逐个叶子字段换脏值,走门禁自己的 evaluateFixturePayload 入口,收集规则实际吐出的原因码,\n分三档——已钉(被某条用例的 reasons 声明过,守卫回退必红)/ 仅单测 / 都没有(守卫删掉任何一道都\n不会红)。--list 连「仅单测」一并列出,--json 出机器格式。\n\n三条读法都写进了脚本抬头与 CLAUDE.md:散文式校验消息不是稳定码,单列「非码」不计缺口;插值原因码\n词汇表无界,按前缀过滤;「仅单测」不等于缺陷——§5 迁入时的设计就是夹具只固定失败关闭一侧。\n\n落仓后第一次全量扫描立刻有新发现:九个契约包「都没有」全为 0(今天收口的结果),但运行时模块侧\n还有 4 条——module-permission 的 ACTION_REQUIRED / RESOURCE_REQUIRED / RESOURCE_ID_REQUIRED、\nmodule-audit 的 AUDIT_COMMIT_MODE_INVALID。已在 CLAUDE.md 记为尚未处理;那是 runtime/ 的纪律范围,\n本次不动。\n\n证据:在仅含本提交改动的导出树上跑通(模块未构建时按 unavailable 跳过,与 check:fixtures 同因)。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/0b30631d9c45ceff29558ddf821e6cb5a5c7cd00","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:12:09-07:00","added":["governance/fixture-coverage.mjs"],"removed":[],"modified":["CLAUDE.md"]}],"total_commits":0,"head_commit":{"id":"45a6bd523973c97e88f31faa12604773150cec87","message":"docs(发布): 当场记录 rc.4 列车——三包已发,tag 这趟补上,并写清验证的真实范围\n\nrc.4 三包(contracts / governance / client-fact)2026-09-18 经本地旁路发出,源 557a95c,\nRegistry 实查确认在架、三包均 registry integrity verified。与前两趟不同,本次是当场记录。\n\n这趟补上了 CL-5 要求的 tag packages-v1.0.0-rc.4——rc.2 / rc.3 都漏了这一步,\nprovenance.tag 因此第一次不是 null。构建与发布在 .worktrees/rc4-release 的 detached\n干净检出里做,所以 worktreeDirty:false 是真的(主检出当时有并行会话在改 contracts)。\n\n记录里写清了两件容易被夸大的事:\n\n1. rc.4 远不止触发它的那两条 clients 规则。自 rc.3 源 036a308 起,contracts 147 文件 /\n 51 提交、governance 61 文件 / 48 提交随车发出,包含九域规则入参体检那一整轮。\n2. 发布前只跑了 check:fixtures(17 套件 394 例)与 check:module-imports(396 文件),\n 退出码均 0;**完整 pnpm check 是发布后补跑的**(真实退出码 0,check:evidence partial:\n 36 新鲜 / 5 过期,过期项均属其他任务 WIP)。按 G-12 边界,这些都不构成阶段门证据。\n\nCLAUDE.md 的 contracts 条目同步推到 rc.4,并顺手修掉一处自相矛盾:该条前半句还写着\nrc.2 源 eb3cf2c,而后半句已说明按 provenance 订正为 6d3900a。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/45a6bd523973c97e88f31faa12604773150cec87","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:17:05-07:00","added":[],"removed":[],"modified":["CLAUDE.md","docs/G-12本地旁路发布记录-2026-09-13.md"]},"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":20483,"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":44,"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-19T07:11: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
|
3
|
10
|
0
|
1789773540
|
0
|
1789773436
|
1789773540
|
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
|
|
24505
|
docs(skills): ep-parallel-sessions 补治理仓 worktree 的 docs(skills): ep-parallel-sessions 补治理仓 worktree 的坑(嵌套仓不在里面、门禁读数无效;worktree 提交只用根 ff-only 落 main,cherry-pick / --no-ff 遇暂存即拒)...
|
117
|
5
|
governance.yml
|
141
|
5
|
0
|
refs/heads/main
|
5ad93cd7d0d1a8c8e329d0255df1d4454e049b89
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"b3c93130ddd9180b610147222ba4c30591195d18","after":"5ad93cd7d0d1a8c8e329d0255df1d4454e049b89","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/b3c93130ddd9180b610147222ba4c30591195d18...5ad93cd7d0d1a8c8e329d0255df1d4454e049b89","commits":[{"id":"5ad93cd7d0d1a8c8e329d0255df1d4454e049b89","message":"docs(skills): ep-parallel-sessions 补治理仓 worktree 的坑(嵌套仓不在里面、门禁读数无效;worktree 提交只用根 ff-only 落 main,cherry-pick / --no-ff 遇暂存即拒)\n\n- SKILL.md:前置核对 4 补「桌面版会话 worktree 就是治理仓 worktree,里面没有嵌套各层仓,L10 一条不报 / L4 全是噪声,只读核验回根跑」;提交第 7 条补落 main 口径——根 `git merge --ff-only \u003csha\u003e` 只动这几条路径、别人的暂存原样留着、同一个 SHA;根上 cherry-pick / merge --no-ff 只要共享索引有任何人的暂存就拒绝(2026-09-24 scratch 仓实测),不要为此 git stash;ff 被拒即 main 又动了,回 worktree rebase 再来。description 与触发词同步。\n- references/git-commit-recipes.md §4 新增「治理仓 worktree 与落 main」:命令序列(pathspec 提交 → rebase main → 根 ff-only → show --stat → 根复跑 --only L4,L10)与三条注意。\n- 两份 md 复核 L10 0 命中、L4 0 断链;agents/openai.yaml 不含 description 副本,未动。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/5ad93cd7d0d1a8c8e329d0255df1d4454e049b89","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-24T08:37:23-07:00","added":[],"removed":[],"modified":[".agents/skills/ep-parallel-sessions/SKILL.md",".agents/skills/ep-parallel-sessions/references/git-commit-recipes.md"]}],"total_commits":0,"head_commit":{"id":"5ad93cd7d0d1a8c8e329d0255df1d4454e049b89","message":"docs(skills): ep-parallel-sessions 补治理仓 worktree 的坑(嵌套仓不在里面、门禁读数无效;worktree 提交只用根 ff-only 落 main,cherry-pick / --no-ff 遇暂存即拒)\n\n- SKILL.md:前置核对 4 补「桌面版会话 worktree 就是治理仓 worktree,里面没有嵌套各层仓,L10 一条不报 / L4 全是噪声,只读核验回根跑」;提交第 7 条补落 main 口径——根 `git merge --ff-only \u003csha\u003e` 只动这几条路径、别人的暂存原样留着、同一个 SHA;根上 cherry-pick / merge --no-ff 只要共享索引有任何人的暂存就拒绝(2026-09-24 scratch 仓实测),不要为此 git stash;ff 被拒即 main 又动了,回 worktree rebase 再来。description 与触发词同步。\n- references/git-commit-recipes.md §4 新增「治理仓 worktree 与落 main」:命令序列(pathspec 提交 → rebase main → 根 ff-only → show --stat → 根复跑 --only L4,L10)与三条注意。\n- 两份 md 复核 L10 0 命中、L4 0 断链;agents/openai.yaml 不含 description 副本,未动。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/5ad93cd7d0d1a8c8e329d0255df1d4454e049b89","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-24T08:37:23-07:00","added":[],"removed":[],"modified":[".agents/skills/ep-parallel-sessions/SKILL.md",".agents/skills/ep-parallel-sessions/references/git-commit-recipes.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":17760,"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":4,"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-24T23:35:34+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
|
1790264292
|
1790264308
|
0
|
1790264291
|
1790264308
|
|
|
0
|
Edit
Delete
|
|
24523
|
merge: preserve parallel control-plane governance merge: preserve parallel control-plane governance updates...
|
76
|
5
|
platform-governance.yml
|
141
|
5
|
0
|
refs/heads/main
|
db3701c4a088aceab24190f1e1aae94736cfc395
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"5959eda04376f4872c2470d970bc4677c89e0e77","after":"db3701c4a088aceab24190f1e1aae94736cfc395","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/5959eda04376f4872c2470d970bc4677c89e0e77...db3701c4a088aceab24190f1e1aae94736cfc395","commits":[{"id":"db3701c4a088aceab24190f1e1aae94736cfc395","message":"merge: preserve parallel control-plane governance updates\n\n# Conflicts:\n#\tdocs/domain/enterprise-control-plane-integration-governance.md\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/db3701c4a088aceab24190f1e1aae94736cfc395","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-24T16:02:19-07:00","added":[],"removed":[],"modified":["docs/domain/enterprise-control-plane-integration-governance.md"]},{"id":"ecc1cbada0289e3e4720ff72c797c560fcd39616","message":"docs(governance): capture control-plane integration experience\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/ecc1cbada0289e3e4720ff72c797c560fcd39616","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-24T15:59:09-07:00","added":[],"removed":[],"modified":["docs/domain/enterprise-control-plane-integration-governance.md"]},{"id":"6e3c399fe1a61dcd607d3f33f5e5af7eaefe6c1f","message":"fix(governance): 收窄数字员工控制面接入边界\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/6e3c399fe1a61dcd607d3f33f5e5af7eaefe6c1f","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-24T06:58:28-07:00","added":["docs/domain/enterprise-control-plane-integration-governance.md"],"removed":[],"modified":["apps/api-fastify/test/llm.acceptance.test.ts","apps/api-nestjs/test/llm.acceptance.test.ts","docs/domain/mcp-control-plane-blueprint.md","docs/domain/owner-matrix.md","packages/contracts/src/mcp-control-plane.ts","packages/tool-runtime/src/mcp-control-plane.test.ts"]}],"total_commits":0,"head_commit":{"id":"db3701c4a088aceab24190f1e1aae94736cfc395","message":"merge: preserve parallel control-plane governance updates\n\n# Conflicts:\n#\tdocs/domain/enterprise-control-plane-integration-governance.md\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/db3701c4a088aceab24190f1e1aae94736cfc395","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-24T16:02:19-07:00","added":[],"removed":[],"modified":["docs/domain/enterprise-control-plane-integration-governance.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":96777,"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-24T22:32: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
|
2
|
8
|
1790292022
|
1790292113
|
0
|
1790290954
|
1790292265
|
|
|
0
|
Edit
Delete
|
|
23772
|
Merge branch 'main' into feat/template-pre Merge branch 'main' into feat/template-preview...
|
57
|
5
|
governance.yml
|
142
|
5
|
0
|
refs/heads/main
|
d4d9057079d720cc5e7aae9ee547b5ffdfd47c11
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"3cfab75162dc1cd724397fc086192678f095000f","after":"d4d9057079d720cc5e7aae9ee547b5ffdfd47c11","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/3cfab75162dc1cd724397fc086192678f095000f...d4d9057079d720cc5e7aae9ee547b5ffdfd47c11","commits":[{"id":"d4d9057079d720cc5e7aae9ee547b5ffdfd47c11","message":"Merge branch 'main' into feat/template-preview\n\n# Conflicts:\n#\tCLAUDE.md\n#\treports/contract-consumers.latest.json\n#\treports/dependency-audit.latest.json\n#\treports/governance-docs.latest.json\n#\treports/governance.latest.json\n#\treports/inference-acceptance.latest.json\n#\treports/material-review-concurrency-guard.latest.json\n#\treports/migrations.latest.json\n#\treports/module-boundary.latest.json\n#\treports/naming.latest.json\n#\treports/order-concurrency-guard.latest.json\n#\treports/production-acceptance.latest.json\n#\treports/production-security.latest.json\n#\treports/public-file-acceptance.latest.json\n#\treports/public-file-integration.latest.json\n#\treports/runtime-acceptance.latest.json\n#\treports/runtime-governance.latest.json\n#\treports/schema-sync.latest.json\n#\treports/script-acceptance.latest.json\n#\treports/sidecar-tests.latest.json\n#\treports/storyboard-director-guard.latest.json\n#\treports/toolchain.latest.json\n#\treports/ui-acceptance.latest.json\n#\treports/validation-source.latest.json\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/d4d9057079d720cc5e7aae9ee547b5ffdfd47c11","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:57:36-07:00","added":["docs/releases/2026-09-09-image-uiux1.md","reports/storyboard-draft-20260909/live-verification.json"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-image-creation-uiux.md","docs/governance/log/2026-09-09-storyboard-draft-model.md","docs/releases/current.md","reports/haizan-rename-20260909/README.md","reports/image-creation-uiux-20260909/README.md","reports/image-creation-uiux-20260909/summary.json","reports/storyboard-draft-20260909/README.md","reports/storyboard-draft-20260909/validation.json"]},{"id":"ec8a9388689609aa6ff4686bbe3ce52b7ddaba06","message":"test: verify template preview with integrated workspace updates\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/ec8a9388689609aa6ff4686bbe3ce52b7ddaba06","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:57:24-07:00","added":[],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-template-preview.md","reports/contract-consumers.latest.json","reports/dependency-audit.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/production-security.latest.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/template-preview-20260909/README.md","reports/template-preview-20260909/summary.json","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json"]},{"id":"cbcd55c8c922156f86ab2e90a809b2e2437a36bc","message":"Merge branch 'main' into feat/template-preview\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/cbcd55c8c922156f86ab2e90a809b2e2437a36bc","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:42:05-07:00","added":["reports/haizan-rename-20260909/README.md","reports/haizan-rename-20260909/dependency-audit.latest.json","reports/haizan-rename-20260909/inference-acceptance.latest.json","reports/haizan-rename-20260909/production-acceptance.latest.json","reports/haizan-rename-20260909/public-file-acceptance.latest.json","reports/haizan-rename-20260909/runtime-acceptance.latest.json","reports/haizan-rename-20260909/script-acceptance.latest.json","reports/haizan-rename-20260909/summary.json","reports/haizan-rename-20260909/ui-acceptance.latest.json","reports/storyboard-draft-20260909/validation.json"],"removed":[],"modified":["docs/governance/log/2026-09-09-storyboard-draft-model.md","reports/storyboard-draft-20260909/README.md"]},{"id":"30fd2dc32fd989766e12bb8014e4446410c564a2","message":"Merge commit '1a97dd5' into feat/template-preview\n\n# Conflicts:\n#\tCLAUDE.md\n#\treports/contract-consumers.latest.json\n#\treports/dependency-audit.latest.json\n#\treports/governance-docs.latest.json\n#\treports/governance.latest.json\n#\treports/inference-acceptance.latest.json\n#\treports/material-review-concurrency-guard.latest.json\n#\treports/migrations.latest.json\n#\treports/module-boundary.latest.json\n#\treports/naming.latest.json\n#\treports/order-concurrency-guard.latest.json\n#\treports/production-acceptance.latest.json\n#\treports/production-security.latest.json\n#\treports/public-file-acceptance.latest.json\n#\treports/public-file-integration.latest.json\n#\treports/runtime-acceptance.latest.json\n#\treports/runtime-governance.latest.json\n#\treports/schema-sync.latest.json\n#\treports/script-acceptance.latest.json\n#\treports/sidecar-tests.latest.json\n#\treports/storyboard-director-guard.latest.json\n#\treports/toolchain.latest.json\n#\treports/ui-acceptance.latest.json\n#\treports/validation-source.latest.json\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/30fd2dc32fd989766e12bb8014e4446410c564a2","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:42:05-07:00","added":["apps/api-fastify/test/storyboard-ai-draft-model.integration.test.ts","apps/api-nestjs/test/storyboard-ai-draft-model.integration.test.ts","docs/governance/log/2026-09-09-image-creation-uiux.md","docs/governance/log/2026-09-09-storyboard-draft-model.md","reports/image-creation-uiux-20260909/README.md","reports/image-creation-uiux-20260909/summary.json","reports/storyboard-draft-20260909/README.md","scripts/lib/image-creation-ui-acceptance.mjs","嗨赞造意的品牌颜色.md"],"removed":["嗨创造意的品牌颜色.md"],"modified":["CLAUDE.md","README.md","apps/api-fastify/src/modules/material-factory/material-factory.service.ts","apps/api-fastify/src/modules/material-factory/material-sidecar.client.ts","apps/api-nestjs/src/material-factory/material-factory.service.ts","apps/api-nestjs/src/material-factory/material-sidecar.client.ts","apps/web/e2e/README.md","apps/web/e2e/specs/create-studio.spec.ts","apps/web/e2e/specs/landing.spec.ts","apps/web/playwright.config.ts","apps/web/src/components/material-factory/BrandHub.tsx","apps/web/src/components/material-factory/CreateStudio.tsx","apps/web/src/components/material-factory/LandingGate.tsx","apps/web/src/lib/product-brand.ts","docs/README.md","docs/domain/material-production-blueprint.md","docs/product/advanced-image-skills.md","docs/product/brand-identity.md","docs/product/business-blueprint-2026-09-05.md","docs/product/controlled-ai-material-factory.md","docs/product/creative-pipeline-design.md","docs/product/creative-workflow-analysis.md","docs/product/platform-module-map.md","docs/product/product-experience-blueprint.md","packages/contracts/src/material-brand.test.ts","packages/contracts/src/sidecar-error.test.ts","packages/contracts/src/sidecar-error.ts","packages/contracts/src/storyboard-ai-draft.test.ts","packages/contracts/src/storyboard.ts","packages/public-file/README.md","product-website/README.md","product-website/app.js","product-website/index.html","scripts/check-pilot-infrastructure.mjs","scripts/check-startup-acceptance.mjs","scripts/check-ui-acceptance.mjs","services/model-sidecar/main.py","services/model-sidecar/test_deepseek.py","services/model-sidecar/test_llm_preflight.py"]},{"id":"a4d3c0b1a256f86c6c5d07b172781efc768171d1","message":"test: record template preview acceptance evidence\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/a4d3c0b1a256f86c6c5d07b172781efc768171d1","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:41:45-07:00","added":["reports/template-preview-20260909/README.md","reports/template-preview-20260909/summary.json"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-template-preview.md","reports/contract-consumers.latest.json","reports/dependency-audit.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/production-security.latest.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json"]}],"total_commits":0,"head_commit":{"id":"d4d9057079d720cc5e7aae9ee547b5ffdfd47c11","message":"Merge branch 'main' into feat/template-preview\n\n# Conflicts:\n#\tCLAUDE.md\n#\treports/contract-consumers.latest.json\n#\treports/dependency-audit.latest.json\n#\treports/governance-docs.latest.json\n#\treports/governance.latest.json\n#\treports/inference-acceptance.latest.json\n#\treports/material-review-concurrency-guard.latest.json\n#\treports/migrations.latest.json\n#\treports/module-boundary.latest.json\n#\treports/naming.latest.json\n#\treports/order-concurrency-guard.latest.json\n#\treports/production-acceptance.latest.json\n#\treports/production-security.latest.json\n#\treports/public-file-acceptance.latest.json\n#\treports/public-file-integration.latest.json\n#\treports/runtime-acceptance.latest.json\n#\treports/runtime-governance.latest.json\n#\treports/schema-sync.latest.json\n#\treports/script-acceptance.latest.json\n#\treports/sidecar-tests.latest.json\n#\treports/storyboard-director-guard.latest.json\n#\treports/toolchain.latest.json\n#\treports/ui-acceptance.latest.json\n#\treports/validation-source.latest.json\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/d4d9057079d720cc5e7aae9ee547b5ffdfd47c11","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:57:36-07:00","added":["docs/releases/2026-09-09-image-uiux1.md","reports/storyboard-draft-20260909/live-verification.json"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-image-creation-uiux.md","docs/governance/log/2026-09-09-storyboard-draft-model.md","docs/releases/current.md","reports/haizan-rename-20260909/README.md","reports/image-creation-uiux-20260909/README.md","reports/image-creation-uiux-20260909/summary.json","reports/storyboard-draft-20260909/README.md","reports/storyboard-draft-20260909/validation.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":770964,"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:53:50+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
|
1788948493
|
1788948533
|
0
|
1788947977
|
1788948533
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24171
|
docs(runbook): 补 §2.1——demo 租户重建的完整应对,含「哪一列」这个会咬人的 docs(runbook): 补 §2.1——demo 租户重建的完整应对,含「哪一列」这个会咬人的细节...
|
116
|
5
|
platform.yml
|
142
|
5
|
0
|
refs/heads/main
|
73d03c062f82dc9e8b9a0e66e6e973ca9aca54cd
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"45a6bd523973c97e88f31faa12604773150cec87","after":"73d03c062f82dc9e8b9a0e66e6e973ca9aca54cd","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/45a6bd523973c97e88f31faa12604773150cec87...73d03c062f82dc9e8b9a0e66e6e973ca9aca54cd","commits":[{"id":"73d03c062f82dc9e8b9a0e66e6e973ca9aca54cd","message":"docs(runbook): 补 §2.1——demo 租户重建的完整应对,含「哪一列」这个会咬人的细节\n\nidentity 库被清掉(db.sh --fresh / 手工重建 / 从早于 09-16 的 dump 恢复)之后,租户、\n管理员、应用与两个 OIDC 客户端会一起没——它们只在库里,不在任何配置文件里;而管理员\n明文口令全机只有 .secrets/idp-demo-admin.txt 一份(库存散列,备份 dump 里也搜不到明文)。\n\n本节写清四件此前只能靠翻代码才知道的事:两个 bootstrap 各自的一次性约束\n(TENANT_SLUG_CONFLICT / ADMINISTRATION_ALREADY_BOOTSTRAPPED)与「库还在时只能走管理 API」;\n两条 bootstrap 的确切载荷(按 zod schema 核对,password ≥ 12、redirectUri 只收 https 或\nloopback);工作台客户端为什么必须先有人工登录才能登记,且不得给它 idp:manage;以及\n四个 UUID 换新后要同步的四处配置,每处配上漏掉时的具体症状。\n\n其中 PLATFORM_OPS_ADMIN_SUBJECTS 填 users.subject 而不是 users.id——现存 dev 值就是错的,\n见 dev 部署记录 D-13。改 PLATFORM_OPS_* 必须重建容器,只 restart 不带新环境。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/73d03c062f82dc9e8b9a0e66e6e973ca9aca54cd","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:18:51-07:00","added":[],"removed":[],"modified":["docs/runbook.md"]},{"id":"3ed10d6c9473aca115f12b9f32aac435aa79e3ee","message":"docs(部署): 登记 D-13——PLATFORM_OPS_ADMIN_SUBJECTS 的 dev 值填的是 users.id,不是令牌里的 sub\n\n判定链是 token-verifier.ts:136(subject = payload.sub)→ AuthContext.subject →\nplatform-ops.adapter.ts:22(admins.has(auth.subject)),而 IdP 访问令牌的 sub 取自\nusers.subject。当前 dev 配的是该管理员的 users.id(4782bc0d-…),实际 sub 是\ne6783482-…,两者不同——**IdP 签发的管理员令牌打受控执行面会 403 OPS_FORBIDDEN**。\n\nsub 是从 §14 那次真实登录拿到的令牌里解出来的,不是推断。之所以此前没暴露:§5\n「三重守卫齐全 200」的取证用的是手工签发的合成令牌,值自然与白名单对得上;真实 IdP\n令牌这条路是 §14 才第一次走通的。\n\n本轮只登记不改:订正它要动仓外 .secrets 并重建容器,且正向验证需要再走一次人工登录。\n重建 demo 租户时该填哪一列,写在 runbook §2.1。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3ed10d6c9473aca115f12b9f32aac435aa79e3ee","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:18:43-07:00","added":[],"removed":[],"modified":["docs/dev部署运行重做记录-2026-09-18.md"]},{"id":"91ae21671f2d958ef5e228e525cc931a8e586d40","message":"test(runtime): 补掉覆盖度探针在两个模块查出的 4 条——夹具与单测都没走到\n\ngovernance/fixture-coverage.mjs 落仓后第一次全量扫描(15 个套件)查出的 4 条,全在运行时模块侧:\n\n module-permission ACTION_REQUIRED / RESOURCE_REQUIRED / RESOURCE_ID_REQUIRED\n module-audit AUDIT_COMMIT_MODE_INVALID\n\npermission 的 preflight 已经钉了 tenant / request / trace / actor / scopeVersion 五项(N01–N03),\n唯独「资源三件套」一条用例都没有——那三条守卫删掉,check:fixtures 与模块单测都不会红。\naudit 的 commit 模式同理:mode 不在册时拒绝这条判定此前无人走到。\n\n补:permission 夹具 9 → 10 例(N08,三条原因一条用例同时钉住,门禁要求逐条出现)、\naudit 26 → 27 例(N18,mode=\"best-effort\" 这种看着合理但不在册的取值)。\n模块夹具与 test/negative/*.fixtures.test.ts 同源——单测 it.each 直接遍历夹具文件,所以加夹具用例\n即同时加单测,本次没有另写测试代码。\n\npermission 的夹具是 prettier 按宽度折行的混合风格,JSON round-trip 会把整份重排成 180 行噪音;\n改用文本插入,diff 保持 +8/-1。\n\n负向实测:把 N08 的声明原因改成不会产生的串 → 门禁 exit 1 并点名该例,恢复后转绿。\n\n补后 15 个套件的「夹具与单测都没有」全为 0,CLAUDE.md 同步改口。\n\n证据:module-permission 50/50、module-audit 81/81(vitest 无库单测);\ncheck:fixtures 两套件 37/37;fixture-coverage 全量 0。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/91ae21671f2d958ef5e228e525cc931a8e586d40","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:18:36-07:00","added":[],"removed":[],"modified":["CLAUDE.md","runtime/modules/audit/test/fixtures/audit.fixtures.json","runtime/modules/permission/test/fixtures/permission.fixtures.json"]}],"total_commits":0,"head_commit":{"id":"73d03c062f82dc9e8b9a0e66e6e973ca9aca54cd","message":"docs(runbook): 补 §2.1——demo 租户重建的完整应对,含「哪一列」这个会咬人的细节\n\nidentity 库被清掉(db.sh --fresh / 手工重建 / 从早于 09-16 的 dump 恢复)之后,租户、\n管理员、应用与两个 OIDC 客户端会一起没——它们只在库里,不在任何配置文件里;而管理员\n明文口令全机只有 .secrets/idp-demo-admin.txt 一份(库存散列,备份 dump 里也搜不到明文)。\n\n本节写清四件此前只能靠翻代码才知道的事:两个 bootstrap 各自的一次性约束\n(TENANT_SLUG_CONFLICT / ADMINISTRATION_ALREADY_BOOTSTRAPPED)与「库还在时只能走管理 API」;\n两条 bootstrap 的确切载荷(按 zod schema 核对,password ≥ 12、redirectUri 只收 https 或\nloopback);工作台客户端为什么必须先有人工登录才能登记,且不得给它 idp:manage;以及\n四个 UUID 换新后要同步的四处配置,每处配上漏掉时的具体症状。\n\n其中 PLATFORM_OPS_ADMIN_SUBJECTS 填 users.subject 而不是 users.id——现存 dev 值就是错的,\n见 dev 部署记录 D-13。改 PLATFORM_OPS_* 必须重建容器,只 restart 不带新环境。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/73d03c062f82dc9e8b9a0e66e6e973ca9aca54cd","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:18:51-07:00","added":[],"removed":[],"modified":["docs/runbook.md"]},"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":20594,"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":44,"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-19T07:17:37+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
|
1789773705
|
0
|
1789773540
|
1789773705
|
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
|
|
24507
|
docs(governance): record N-1 to N-3 remediation ev docs(governance): record N-1 to N-3 remediation evidence...
|
117
|
5
|
governance.yml
|
142
|
5
|
0
|
refs/heads/main
|
a52ff1110d34c530ca048bca25cf18b2183912ac
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"5ad93cd7d0d1a8c8e329d0255df1d4454e049b89","after":"a52ff1110d34c530ca048bca25cf18b2183912ac","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/5ad93cd7d0d1a8c8e329d0255df1d4454e049b89...a52ff1110d34c530ca048bca25cf18b2183912ac","commits":[{"id":"a52ff1110d34c530ca048bca25cf18b2183912ac","message":"docs(governance): record N-1 to N-3 remediation evidence\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/a52ff1110d34c530ca048bca25cf18b2183912ac","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-24T09:12:05-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/docs/企业控制面业务模块能力实现与应用梳理-2026-09-24.md"]}],"total_commits":0,"head_commit":{"id":"a52ff1110d34c530ca048bca25cf18b2183912ac","message":"docs(governance): record N-1 to N-3 remediation evidence\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/a52ff1110d34c530ca048bca25cf18b2183912ac","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-24T09:12:05-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/docs/企业控制面业务模块能力实现与应用梳理-2026-09-24.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":17772,"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":4,"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-24T23:38:11+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
|
1790266333
|
1790266347
|
0
|
1790266332
|
1790266347
|
|
|
0
|
Edit
Delete
|
|
24524
|
Merge remote-tracking branch 'gitea/main' Merge remote-tracking branch 'gitea/main' into codex/control-plane-deployment-wiring...
|
76
|
5
|
governance.yml
|
142
|
5
|
0
|
refs/heads/main
|
00fad17f6b0dc914bc2382e9628907a656f67c86
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"db3701c4a088aceab24190f1e1aae94736cfc395","after":"00fad17f6b0dc914bc2382e9628907a656f67c86","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/db3701c4a088aceab24190f1e1aae94736cfc395...00fad17f6b0dc914bc2382e9628907a656f67c86","commits":[{"id":"00fad17f6b0dc914bc2382e9628907a656f67c86","message":"Merge remote-tracking branch 'gitea/main' into codex/control-plane-deployment-wiring\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/00fad17f6b0dc914bc2382e9628907a656f67c86","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-24T16:04:43-07:00","added":[],"removed":[],"modified":["docs/domain/enterprise-control-plane-integration-governance.md"]},{"id":"e9ac251e56ee8f922a81fc45af0636a7af875bed","message":"fix(platform): isolate read credentials and record framework F15\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/e9ac251e56ee8f922a81fc45af0636a7af875bed","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-24T16:04:22-07:00","added":[],"removed":[],"modified":["CLAUDE.md","deploy/production/compose.yml","docs/operations/production-runbook.md","docs/product-extension-guide.md","framework-criteria.json","kernel.downstream.lock.json","kernel.packages.json","kernel.packages.lock.json","packages/contracts/package.json","packages/contracts/src/llm-usage-export.test.ts","packages/contracts/src/llm-usage-export.ts","scripts/check-operations.mjs"]},{"id":"2f1000f6b6aee678eb5f4ab9549916b32a301c69","message":"Merge remote-tracking branch 'gitea/main' into codex/control-plane-deployment-wiring\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/2f1000f6b6aee678eb5f4ab9549916b32a301c69","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-24T15:51:40-07:00","added":["docs/operations/control-plane-integration-governance-2026-09-24.md"],"removed":[],"modified":["CLAUDE.md","reports/auth-startup.latest.json","reports/capacity-envelope.latest.json","reports/db-credential-separation.latest.json","reports/dependency-resilience.latest.json","reports/dual-backend-behavior.latest.json","reports/kernel-boundaries.latest.json","reports/multi-instance.latest.json","reports/product-acceptance-runtime.latest.json","reports/product-extension-runtime.latest.json","reports/product-migrations-runtime.latest.json","reports/product-sql-runtime.latest.json","reports/runtime-acceptance.latest.json","reports/tracing.latest.json","reports/write-capacity.latest.json"]},{"id":"1a9313fdb25e3bd7faeae2d031b63743c10b0cc5","message":"fix(platform): wire governed control-plane integrations for production\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/1a9313fdb25e3bd7faeae2d031b63743c10b0cc5","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-24T15:51:35-07:00","added":["apps/api-fastify/test/employment-fact-consumer.config.test.ts","apps/api-nestjs/test/employment-fact-consumer.config.test.ts"],"removed":[],"modified":["apps/api-fastify/src/plugins/employment-fact-consumer.ts","apps/api-fastify/src/plugins/llm-usage-export-dispatcher.ts","apps/api-nestjs/src/employment/employment-fact-consumer.ts","apps/api-nestjs/src/llm-governance/llm-usage-export-dispatcher.service.ts","deploy/production/.env.production.example","deploy/production/compose.yml","docs/domain/employment-projection-blueprint.md","docs/operations/production-runbook.md","packages/contracts/src/llm-usage-export.test.ts","packages/contracts/src/llm-usage-export.ts","scripts/check-operations.mjs"]}],"total_commits":0,"head_commit":{"id":"00fad17f6b0dc914bc2382e9628907a656f67c86","message":"Merge remote-tracking branch 'gitea/main' into codex/control-plane-deployment-wiring\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/00fad17f6b0dc914bc2382e9628907a656f67c86","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-24T16:04:43-07:00","added":[],"removed":[],"modified":["docs/domain/enterprise-control-plane-integration-governance.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":96788,"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-25T07:02:35+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
|
18
|
0
|
1790291379
|
0
|
1790291118
|
1790291379
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23773
|
test: verify frozen joint release candidate
|
57
|
5
|
governance.yml
|
143
|
5
|
0
|
refs/heads/main
|
858f2508697b81fb010cf9ca06269932c5b59e9a
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"d4d9057079d720cc5e7aae9ee547b5ffdfd47c11","after":"858f2508697b81fb010cf9ca06269932c5b59e9a","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/d4d9057079d720cc5e7aae9ee547b5ffdfd47c11...858f2508697b81fb010cf9ca06269932c5b59e9a","commits":[{"id":"858f2508697b81fb010cf9ca06269932c5b59e9a","message":"test: verify frozen joint release candidate\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/858f2508697b81fb010cf9ca06269932c5b59e9a","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-09T03:10:02-07:00","added":[],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-project-history.md","reports/contract-consumers.latest.json","reports/dependency-audit.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/production-security.latest.json","reports/project-history-20260909/README.md","reports/project-history-20260909/summary.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json"]},{"id":"11c042fd7ad2540ecbdc78a3c8a610786512d67b","message":"merge: freeze completed trend sources in joint release candidate\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/11c042fd7ad2540ecbdc78a3c8a610786512d67b","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-09T03:02:12-07:00","added":["apps/web/src/components/material-factory/industry-trends/TrendSources.tsx","docs/governance/log/2026-09-09-industry-trend-sources.md","packages/contracts/src/trend-connectors.ts","packages/industry-trends/src/source-http.ts","packages/industry-trends/src/sources.test.ts","packages/industry-trends/src/sources.ts","reports/industry-trend-sources-20260909/README.md"],"removed":[],"modified":["CLAUDE.md","apps/api-fastify/src/routes/industry-trends.ts","apps/api-fastify/test/industry-trends.integration.test.ts","apps/api-nestjs/src/creative-project/industry-trends.controller.ts","apps/api-nestjs/test/industry-trends.integration.test.ts","apps/web/src/components/material-factory/industry-trends/IndustryTrends.tsx","apps/web/src/components/material-factory/industry-trends/industry-trends.module.css","apps/web/src/lib/api.ts","docs/domain/owner-matrix.md","docs/governance/log/2026-09-09-project-history.md","docs/product/industry-trends.md","packages/contracts/src/index.ts","packages/contracts/src/industry-trends.ts","packages/industry-trends/src/index.test.ts","packages/industry-trends/src/index.ts"]},{"id":"c4ee51ed3e5a52e2c762c240f7613c8a3a7c5694","message":"merge: integrate completed template preview before history release\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/c4ee51ed3e5a52e2c762c240f7613c8a3a7c5694","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:59:59-07:00","added":["apps/web/src/components/material-factory/TemplatePreviewButton.tsx","docs/governance/log/2026-09-09-template-preview.md","docs/releases/2026-09-09-image-uiux1.md","reports/storyboard-draft-20260909/live-verification.json","reports/template-preview-20260909/README.md","reports/template-preview-20260909/summary.json","scripts/lib/template-preview-ui-acceptance.mjs"],"removed":[],"modified":["CLAUDE.md","apps/web/src/components/material-factory/EditStudio.tsx","apps/web/src/components/material-factory/MasterCanvas.tsx","apps/web/src/components/material-factory/TemplateStudio.tsx","docs/deploy-vm.md","docs/governance/log/2026-09-09-image-creation-uiux.md","docs/governance/log/2026-09-09-project-history.md","docs/governance/log/2026-09-09-storyboard-draft-model.md","docs/releases/current.md","reports/haizan-rename-20260909/README.md","reports/image-creation-uiux-20260909/README.md","reports/image-creation-uiux-20260909/summary.json","reports/storyboard-draft-20260909/README.md","reports/storyboard-draft-20260909/validation.json","scripts/check-runtime-acceptance.mjs","scripts/check-ui-acceptance.mjs"]},{"id":"e7ce5ed5848cde4ecca69fbd0e7810c5447635c6","message":"fix: preserve manual provenance when correcting collected trends\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/e7ce5ed5848cde4ecca69fbd0e7810c5447635c6","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:59:34-07:00","added":[],"removed":[],"modified":["docs/governance/log/2026-09-09-industry-trend-sources.md","docs/product/industry-trends.md","packages/industry-trends/src/index.test.ts","packages/industry-trends/src/index.ts","reports/industry-trend-sources-20260909/README.md"]},{"id":"1bd8bb5790b05872b51fa0e5993d42d42e7cc782","message":"test: validate integrated project history visibility\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/1bd8bb5790b05872b51fa0e5993d42d42e7cc782","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:58:31-07:00","added":["reports/project-history-20260909/README.md","reports/project-history-20260909/summary.json"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-project-history.md","reports/contract-consumers.latest.json","reports/dependency-audit.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/production-security.latest.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json"]}],"total_commits":0,"head_commit":{"id":"858f2508697b81fb010cf9ca06269932c5b59e9a","message":"test: verify frozen joint release candidate\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/858f2508697b81fb010cf9ca06269932c5b59e9a","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-09T03:10:02-07:00","added":[],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-project-history.md","reports/contract-consumers.latest.json","reports/dependency-audit.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/production-security.latest.json","reports/project-history-20260909/README.md","reports/project-history-20260909/summary.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/ui-acceptance.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":771127,"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:59:37+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
|
1788948621
|
1788948712
|
0
|
1788948621
|
1788948712
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24172
|
test(contracts): 注册中心 plan 把 BLOCKED 判成了放行——裁决没批、候 test(contracts): 注册中心 plan 把 BLOCKED 判成了放行——裁决没批、候选自带 blocker,夹具都说通过...
|
116
|
5
|
platform.yml
|
143
|
5
|
0
|
refs/heads/main
|
4f36e22448f8fdf4611af3f5fa34305ae58769ef
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"73d03c062f82dc9e8b9a0e66e6e973ca9aca54cd","after":"4f36e22448f8fdf4611af3f5fa34305ae58769ef","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/73d03c062f82dc9e8b9a0e66e6e973ca9aca54cd...4f36e22448f8fdf4611af3f5fa34305ae58769ef","commits":[{"id":"4f36e22448f8fdf4611af3f5fa34305ae58769ef","message":"test(contracts): 注册中心 plan 把 BLOCKED 判成了放行——裁决没批、候选自带 blocker,夹具都说通过\n\n前一轮(91216b5)补了入参体检的门禁覆盖。本轮按「公开方法 × 出口」再盘,查出的是\ngovernance/fixture-coverage.mjs 按设计查不到的一类:它只变异夹具已有用例的字段,\n夹具从没构造过的入口不会被发现。三个规则文件零改动,只动夹具评估器的可见性。\n\n1. plan 把 BLOCKED 判成放行。评估器原判据是 `\"reasons\" in r`;ManifestAdmissionResult 三个出口里\n BLOCKED 携带的是 blockers 不是 reasons,于是返回空数组 = ACCEPT。实测两种 BLOCKED 都被夹具判为通过:\n 候选自带 blockedBy([\"CHG-001\"])、所需裁决仍 pending([\"DECISION_PENDING:DEC-011\"])——\n 而它们明写着 activationAllowed: false / registryWriteAllowed: false。\n 同一文件下面的 upgrade 规则本来就写对了(... : [...d.blockers]),plan 与自己的兄弟规则不一致。\n\n2. 没有任何一条 plan 用例带合法快照。整条「有策略」分支(清单字段校验、裁决闸门、READY_FOR_REVIEW)\n 在门禁上根本不存在,唯一那条 N05 是「无策略即拒」。\n\n3. refresh 没有夹具规则:planner 第三个公开方法零门禁覆盖。\n\n修完之后覆盖度一度变差,这是对的。补上带快照的 plan 用例后,此前够不着的清单校验分支第一次被变异探针\n走到,fixture-coverage 随即报出 12 条「夹具与单测都没有」(SERVICES_REQUIRED / PERMISSIONS_REQUIRED /\nPRODUCED_FACTS_REQUIRED / CONSUMED_FACTS_REQUIRED / DEPENDENCIES_REQUIRED / MANIFEST_BLOCKERS_REQUIRED /\nMANIFEST_KIND_INVALID / OWNER_DOMAIN_REQUIRED 与 refresh 侧四条)——它们一直都在,只是之前没人能看见。\n连同 4 条「仅单测」一并钉住后回到 0 / 0。\n\n另修一处本轮自己的松懈:N42 的 reasons 写成了前缀 MANIFEST,任何 MANIFEST* 都能匹配,已改为确切原因码。\n\n一处明写不覆盖:plan() 的 DECISION_MISSING:\u003cid\u003e 按当前控制流不可达——缺一条必需裁决在 normalizePolicy\n装载时就抛 MANIFEST_DECISION_STATUS_INVALID:\u003cid\u003e,运行时工厂退回 deny-all。N39 钉这条真实路径,\nN49 钉装载侧原因码,不为不可达分支造用例。\n\n覆盖:夹具 41 → 70 例(正 7 / 反 63),定向测试 59 → 63 例,前一轮断言一条未改。\n变异探针(70 例 × 14 种脏值)38374 个变异点、0 处抛异常。\n\n未做(越界):C01.04 五个关键应用的固定版本消费(今 2 个 pin)与 C01.06 只读目录查询入口属接线,\n不在本轮;Catalog 登记未动。\n\n证据:pnpm --dir contracts build / typecheck 绿、check:generated 14 files / 12 schemas 无漂移、\nnode --test contracts/test/*.test.mjs 404/404、该套件夹具 70/70 失败 0、fixture-coverage 该套件 0 / 0。\n负向实测:把 N37 的 blocker 声明改成 CHG-999 → 门禁 exit 1 并点名该例,还原后 exit 0。\n本次不回绑任何 reports/。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/4f36e22448f8fdf4611af3f5fa34305ae58769ef","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:21:01-07:00","added":[],"removed":[],"modified":["contracts/SOURCE.md","contracts/src/domain/application-contract-registry/fixture-evaluator.ts","contracts/test/application-contract-registry-domain.test.mjs","contracts/test/fixtures/application-contract-registry.fixtures.json","docs/domain/registry-snapshot-blueprint.md"]}],"total_commits":0,"head_commit":{"id":"4f36e22448f8fdf4611af3f5fa34305ae58769ef","message":"test(contracts): 注册中心 plan 把 BLOCKED 判成了放行——裁决没批、候选自带 blocker,夹具都说通过\n\n前一轮(91216b5)补了入参体检的门禁覆盖。本轮按「公开方法 × 出口」再盘,查出的是\ngovernance/fixture-coverage.mjs 按设计查不到的一类:它只变异夹具已有用例的字段,\n夹具从没构造过的入口不会被发现。三个规则文件零改动,只动夹具评估器的可见性。\n\n1. plan 把 BLOCKED 判成放行。评估器原判据是 `\"reasons\" in r`;ManifestAdmissionResult 三个出口里\n BLOCKED 携带的是 blockers 不是 reasons,于是返回空数组 = ACCEPT。实测两种 BLOCKED 都被夹具判为通过:\n 候选自带 blockedBy([\"CHG-001\"])、所需裁决仍 pending([\"DECISION_PENDING:DEC-011\"])——\n 而它们明写着 activationAllowed: false / registryWriteAllowed: false。\n 同一文件下面的 upgrade 规则本来就写对了(... : [...d.blockers]),plan 与自己的兄弟规则不一致。\n\n2. 没有任何一条 plan 用例带合法快照。整条「有策略」分支(清单字段校验、裁决闸门、READY_FOR_REVIEW)\n 在门禁上根本不存在,唯一那条 N05 是「无策略即拒」。\n\n3. refresh 没有夹具规则:planner 第三个公开方法零门禁覆盖。\n\n修完之后覆盖度一度变差,这是对的。补上带快照的 plan 用例后,此前够不着的清单校验分支第一次被变异探针\n走到,fixture-coverage 随即报出 12 条「夹具与单测都没有」(SERVICES_REQUIRED / PERMISSIONS_REQUIRED /\nPRODUCED_FACTS_REQUIRED / CONSUMED_FACTS_REQUIRED / DEPENDENCIES_REQUIRED / MANIFEST_BLOCKERS_REQUIRED /\nMANIFEST_KIND_INVALID / OWNER_DOMAIN_REQUIRED 与 refresh 侧四条)——它们一直都在,只是之前没人能看见。\n连同 4 条「仅单测」一并钉住后回到 0 / 0。\n\n另修一处本轮自己的松懈:N42 的 reasons 写成了前缀 MANIFEST,任何 MANIFEST* 都能匹配,已改为确切原因码。\n\n一处明写不覆盖:plan() 的 DECISION_MISSING:\u003cid\u003e 按当前控制流不可达——缺一条必需裁决在 normalizePolicy\n装载时就抛 MANIFEST_DECISION_STATUS_INVALID:\u003cid\u003e,运行时工厂退回 deny-all。N39 钉这条真实路径,\nN49 钉装载侧原因码,不为不可达分支造用例。\n\n覆盖:夹具 41 → 70 例(正 7 / 反 63),定向测试 59 → 63 例,前一轮断言一条未改。\n变异探针(70 例 × 14 种脏值)38374 个变异点、0 处抛异常。\n\n未做(越界):C01.04 五个关键应用的固定版本消费(今 2 个 pin)与 C01.06 只读目录查询入口属接线,\n不在本轮;Catalog 登记未动。\n\n证据:pnpm --dir contracts build / typecheck 绿、check:generated 14 files / 12 schemas 无漂移、\nnode --test contracts/test/*.test.mjs 404/404、该套件夹具 70/70 失败 0、fixture-coverage 该套件 0 / 0。\n负向实测:把 N37 的 blocker 声明改成 CHG-999 → 门禁 exit 1 并点名该例,还原后 exit 0。\n本次不回绑任何 reports/。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/4f36e22448f8fdf4611af3f5fa34305ae58769ef","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:21:01-07:00","added":[],"removed":[],"modified":["contracts/SOURCE.md","contracts/src/domain/application-contract-registry/fixture-evaluator.ts","contracts/test/application-contract-registry-domain.test.mjs","contracts/test/fixtures/application-contract-registry.fixtures.json","docs/domain/registry-snapshot-blueprint.md"]},"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":20661,"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":44,"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-19T07:19:01+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":true,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
3
|
10
|
0
|
1789773742
|
0
|
1789773705
|
1789773742
|
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
|
|
24511
|
docs(governance): update platform gap analysis aft docs(governance): update platform gap analysis after rollout...
|
117
|
5
|
governance.yml
|
143
|
5
|
0
|
refs/heads/main
|
c61679fc3ee4fea55d0b3f041b765c2f1fd34407
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"a52ff1110d34c530ca048bca25cf18b2183912ac","after":"c61679fc3ee4fea55d0b3f041b765c2f1fd34407","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/a52ff1110d34c530ca048bca25cf18b2183912ac...c61679fc3ee4fea55d0b3f041b765c2f1fd34407","commits":[{"id":"c61679fc3ee4fea55d0b3f041b765c2f1fd34407","message":"docs(governance): update platform gap analysis after rollout\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/c61679fc3ee4fea55d0b3f041b765c2f1fd34407","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-24T15:28:38-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/docs/企业控制面业务模块能力实现与应用梳理-2026-09-24.md"]}],"total_commits":0,"head_commit":{"id":"c61679fc3ee4fea55d0b3f041b765c2f1fd34407","message":"docs(governance): update platform gap analysis after rollout\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/c61679fc3ee4fea55d0b3f041b765c2f1fd34407","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-24T15:28:38-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/docs/企业控制面业务模块能力实现与应用梳理-2026-09-24.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":17817,"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":4,"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-25T00:12: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
|
4
|
1790288982
|
1790288996
|
0
|
1790288949
|
1790288996
|
|
|
0
|
Edit
Delete
|
|
24525
|
Merge remote-tracking branch 'gitea/main' Merge remote-tracking branch 'gitea/main' into codex/control-plane-deployment-wiring...
|
76
|
5
|
platform-governance.yml
|
143
|
5
|
0
|
refs/heads/main
|
00fad17f6b0dc914bc2382e9628907a656f67c86
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"db3701c4a088aceab24190f1e1aae94736cfc395","after":"00fad17f6b0dc914bc2382e9628907a656f67c86","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/db3701c4a088aceab24190f1e1aae94736cfc395...00fad17f6b0dc914bc2382e9628907a656f67c86","commits":[{"id":"00fad17f6b0dc914bc2382e9628907a656f67c86","message":"Merge remote-tracking branch 'gitea/main' into codex/control-plane-deployment-wiring\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/00fad17f6b0dc914bc2382e9628907a656f67c86","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-24T16:04:43-07:00","added":[],"removed":[],"modified":["docs/domain/enterprise-control-plane-integration-governance.md"]},{"id":"e9ac251e56ee8f922a81fc45af0636a7af875bed","message":"fix(platform): isolate read credentials and record framework F15\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/e9ac251e56ee8f922a81fc45af0636a7af875bed","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-24T16:04:22-07:00","added":[],"removed":[],"modified":["CLAUDE.md","deploy/production/compose.yml","docs/operations/production-runbook.md","docs/product-extension-guide.md","framework-criteria.json","kernel.downstream.lock.json","kernel.packages.json","kernel.packages.lock.json","packages/contracts/package.json","packages/contracts/src/llm-usage-export.test.ts","packages/contracts/src/llm-usage-export.ts","scripts/check-operations.mjs"]},{"id":"2f1000f6b6aee678eb5f4ab9549916b32a301c69","message":"Merge remote-tracking branch 'gitea/main' into codex/control-plane-deployment-wiring\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/2f1000f6b6aee678eb5f4ab9549916b32a301c69","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-24T15:51:40-07:00","added":["docs/operations/control-plane-integration-governance-2026-09-24.md"],"removed":[],"modified":["CLAUDE.md","reports/auth-startup.latest.json","reports/capacity-envelope.latest.json","reports/db-credential-separation.latest.json","reports/dependency-resilience.latest.json","reports/dual-backend-behavior.latest.json","reports/kernel-boundaries.latest.json","reports/multi-instance.latest.json","reports/product-acceptance-runtime.latest.json","reports/product-extension-runtime.latest.json","reports/product-migrations-runtime.latest.json","reports/product-sql-runtime.latest.json","reports/runtime-acceptance.latest.json","reports/tracing.latest.json","reports/write-capacity.latest.json"]},{"id":"1a9313fdb25e3bd7faeae2d031b63743c10b0cc5","message":"fix(platform): wire governed control-plane integrations for production\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/1a9313fdb25e3bd7faeae2d031b63743c10b0cc5","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-24T15:51:35-07:00","added":["apps/api-fastify/test/employment-fact-consumer.config.test.ts","apps/api-nestjs/test/employment-fact-consumer.config.test.ts"],"removed":[],"modified":["apps/api-fastify/src/plugins/employment-fact-consumer.ts","apps/api-fastify/src/plugins/llm-usage-export-dispatcher.ts","apps/api-nestjs/src/employment/employment-fact-consumer.ts","apps/api-nestjs/src/llm-governance/llm-usage-export-dispatcher.service.ts","deploy/production/.env.production.example","deploy/production/compose.yml","docs/domain/employment-projection-blueprint.md","docs/operations/production-runbook.md","packages/contracts/src/llm-usage-export.test.ts","packages/contracts/src/llm-usage-export.ts","scripts/check-operations.mjs"]}],"total_commits":0,"head_commit":{"id":"00fad17f6b0dc914bc2382e9628907a656f67c86","message":"Merge remote-tracking branch 'gitea/main' into codex/control-plane-deployment-wiring\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/00fad17f6b0dc914bc2382e9628907a656f67c86","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-24T16:04:43-07:00","added":[],"removed":[],"modified":["docs/domain/enterprise-control-plane-integration-governance.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":96788,"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-25T07:02:35+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
|
1790292113
|
1790292143
|
0
|
1790291118
|
1790292267
|
|
|
0
|
Edit
Delete
|
|
23774
|
docs: record verified history visibility rollout
|
57
|
5
|
governance.yml
|
144
|
5
|
0
|
refs/heads/main
|
427959b0d8bf60af0e0924cef34ef9cbd1121f9e
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"858f2508697b81fb010cf9ca06269932c5b59e9a","after":"427959b0d8bf60af0e0924cef34ef9cbd1121f9e","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/858f2508697b81fb010cf9ca06269932c5b59e9a...427959b0d8bf60af0e0924cef34ef9cbd1121f9e","commits":[{"id":"427959b0d8bf60af0e0924cef34ef9cbd1121f9e","message":"docs: record verified history visibility rollout\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/427959b0d8bf60af0e0924cef34ef9cbd1121f9e","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-09T03:21:00-07:00","added":["docs/releases/2026-09-09-history2.md"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-project-history.md","docs/releases/current.md","reports/governance-docs.latest.json","reports/project-history-20260909/README.md","reports/project-history-20260909/summary.json"]}],"total_commits":0,"head_commit":{"id":"427959b0d8bf60af0e0924cef34ef9cbd1121f9e","message":"docs: record verified history visibility rollout\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/427959b0d8bf60af0e0924cef34ef9cbd1121f9e","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-09T03:21:00-07:00","added":["docs/releases/2026-09-09-history2.md"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-project-history.md","docs/releases/current.md","reports/governance-docs.latest.json","reports/project-history-20260909/README.md","reports/project-history-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":771470,"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-09T18:10: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
|
2
|
4
|
1788949280
|
1788949320
|
0
|
1788949279
|
1788949320
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24173
|
docs(部署): D-13 归属改为与 D-4 一并验,并写明为什么不先单独改
|
116
|
5
|
platform.yml
|
144
|
5
|
0
|
refs/heads/main
|
2156538deab81264dd796a4ed668509522dbff45
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"4f36e22448f8fdf4611af3f5fa34305ae58769ef","after":"2156538deab81264dd796a4ed668509522dbff45","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/4f36e22448f8fdf4611af3f5fa34305ae58769ef...2156538deab81264dd796a4ed668509522dbff45","commits":[{"id":"2156538deab81264dd796a4ed668509522dbff45","message":"docs(部署): D-13 归属改为与 D-4 一并验,并写明为什么不先单独改\n\nOwner 2026-09-18 定:等 feat/identity-canonical-tenants 合并后连 D-4 一起验。\n\n归属列同时写下理由,而不只写「等」。D-13 看上去是两行就能改完的配置错误\n(.secrets 里换一个 UUID + 重建容器),容易被顺手改掉再顺手记一句「已修复」——\n但单独改它最多验到「守卫这关过了」:M3 写路径仍会挂在 D-4 的 CANONICAL_TENANT_REQUIRED,\n证不出「受控执行面对 IdP 令牌可用」。把这句话留在表里,是为了让下一个人别拿\n半条证据当整条用。\n\n依赖关系现在三处一致:§6 D-4、§14.5 D-13、未合并分支登记-2026-09-15.md 的\nfeat/identity-canonical-tenants 行。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/2156538deab81264dd796a4ed668509522dbff45","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:22:14-07:00","added":[],"removed":[],"modified":["docs/dev部署运行重做记录-2026-09-18.md"]}],"total_commits":0,"head_commit":{"id":"2156538deab81264dd796a4ed668509522dbff45","message":"docs(部署): D-13 归属改为与 D-4 一并验,并写明为什么不先单独改\n\nOwner 2026-09-18 定:等 feat/identity-canonical-tenants 合并后连 D-4 一起验。\n\n归属列同时写下理由,而不只写「等」。D-13 看上去是两行就能改完的配置错误\n(.secrets 里换一个 UUID + 重建容器),容易被顺手改掉再顺手记一句「已修复」——\n但单独改它最多验到「守卫这关过了」:M3 写路径仍会挂在 D-4 的 CANONICAL_TENANT_REQUIRED,\n证不出「受控执行面对 IdP 令牌可用」。把这句话留在表里,是为了让下一个人别拿\n半条证据当整条用。\n\n依赖关系现在三处一致:§6 D-4、§14.5 D-13、未合并分支登记-2026-09-15.md 的\nfeat/identity-canonical-tenants 行。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/2156538deab81264dd796a4ed668509522dbff45","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:22:14-07:00","added":[],"removed":[],"modified":["docs/dev部署运行重做记录-2026-09-18.md"]},"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":20740,"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":44,"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-19T07:21: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
|
3
|
10
|
0
|
1789773970
|
0
|
1789773743
|
1789773970
|
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
|
|
24512
|
docs(governance): qualify interrupted acceptance f docs(governance): qualify interrupted acceptance finding...
|
117
|
5
|
governance.yml
|
144
|
5
|
0
|
refs/heads/main
|
530e1f5c264d8434cf64898e46396c2af1dc7fe6
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"c61679fc3ee4fea55d0b3f041b765c2f1fd34407","after":"530e1f5c264d8434cf64898e46396c2af1dc7fe6","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/c61679fc3ee4fea55d0b3f041b765c2f1fd34407...530e1f5c264d8434cf64898e46396c2af1dc7fe6","commits":[{"id":"530e1f5c264d8434cf64898e46396c2af1dc7fe6","message":"docs(governance): qualify interrupted acceptance finding\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/530e1f5c264d8434cf64898e46396c2af1dc7fe6","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-24T15:30:52-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/docs/企业控制面业务模块能力实现与应用梳理-2026-09-24.md"]}],"total_commits":0,"head_commit":{"id":"530e1f5c264d8434cf64898e46396c2af1dc7fe6","message":"docs(governance): qualify interrupted acceptance finding\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/530e1f5c264d8434cf64898e46396c2af1dc7fe6","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-24T15:30:52-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/docs/企业控制面业务模块能力实现与应用梳理-2026-09-24.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":17863,"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":4,"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-25T06:29: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
|
2
|
4
|
1790289063
|
1790289079
|
0
|
1790289062
|
1790289079
|
|
|
0
|
Edit
Delete
|
|
24526
|
docs(operations): record control-plane wiring roll docs(operations): record control-plane wiring rollout...
|
76
|
5
|
governance.yml
|
144
|
5
|
0
|
refs/heads/main
|
4a4c3e77cc30429ccc00f274c19e073053f52f73
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"00fad17f6b0dc914bc2382e9628907a656f67c86","after":"4a4c3e77cc30429ccc00f274c19e073053f52f73","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/00fad17f6b0dc914bc2382e9628907a656f67c86...4a4c3e77cc30429ccc00f274c19e073053f52f73","commits":[{"id":"4a4c3e77cc30429ccc00f274c19e073053f52f73","message":"docs(operations): record control-plane wiring rollout\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/4a4c3e77cc30429ccc00f274c19e073053f52f73","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-24T16:09:32-07:00","added":["docs/operations/control-plane-deployment-wiring-2026-09-24.md"],"removed":[],"modified":[]}],"total_commits":0,"head_commit":{"id":"4a4c3e77cc30429ccc00f274c19e073053f52f73","message":"docs(operations): record control-plane wiring rollout\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/4a4c3e77cc30429ccc00f274c19e073053f52f73","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-24T16:09:32-07:00","added":["docs/operations/control-plane-deployment-wiring-2026-09-24.md"],"removed":[],"modified":[]},"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":97084,"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-25T07:05:18+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
|
1790292143
|
1790292174
|
0
|
1790291379
|
1790292275
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23775
|
merge: preserve completed history rollout with cur merge: preserve completed history rollout with current image edit evidence...
|
57
|
5
|
governance.yml
|
145
|
5
|
0
|
refs/heads/main
|
bdd85f7670b0e415d30614a16d6c1b2ca5f16a5e
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"427959b0d8bf60af0e0924cef34ef9cbd1121f9e","after":"bdd85f7670b0e415d30614a16d6c1b2ca5f16a5e","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/427959b0d8bf60af0e0924cef34ef9cbd1121f9e...bdd85f7670b0e415d30614a16d6c1b2ca5f16a5e","commits":[{"id":"bdd85f7670b0e415d30614a16d6c1b2ca5f16a5e","message":"merge: preserve completed history rollout with current image edit evidence\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/bdd85f7670b0e415d30614a16d6c1b2ca5f16a5e","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-09T03:21:43-07:00","added":["docs/releases/2026-09-09-history2.md"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-project-history.md","docs/releases/current.md","reports/project-history-20260909/README.md","reports/project-history-20260909/summary.json"]},{"id":"b2aeffe96948e288b6fa1f47be472c7a9984be78","message":"test: verify integrated image editing release candidate\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/b2aeffe96948e288b6fa1f47be472c7a9984be78","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-09T03:16:45-07:00","added":["reports/image-edit-uiux-20260909/summary.json"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-image-edit-uiux.md","reports/contract-consumers.latest.json","reports/dependency-audit.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/image-edit-uiux-20260909/README.md","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/production-security.latest.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json"]},{"id":"76db3e521a9b1c1e3bc13175c4eff2f4204f7548","message":"merge: integrate frozen workspace candidate before image edit validation\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/76db3e521a9b1c1e3bc13175c4eff2f4204f7548","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-09T03:07:41-07:00","added":["apps/api-fastify/prisma/migrations/20260909100000_project_history_visibility/migration.sql","apps/api-fastify/test/creative-history-http.integration.test.ts","apps/api-nestjs/prisma/migrations/20260909100000_project_history_visibility/migration.sql","apps/api-nestjs/test/creative-history-http.integration.test.ts","apps/web/src/components/material-factory/CreativeProjectHistory.tsx","apps/web/src/components/material-factory/TemplatePreviewButton.tsx","apps/web/src/components/material-factory/industry-trends/TrendSources.tsx","docs/governance/log/2026-09-09-industry-trend-sources.md","docs/governance/log/2026-09-09-project-history.md","docs/governance/log/2026-09-09-template-preview.md","docs/project-history.md","docs/releases/migrations/2026-09-09-project-history.json","packages/contracts/src/trend-connectors.ts","packages/industry-trends/src/source-http.ts","packages/industry-trends/src/sources.test.ts","packages/industry-trends/src/sources.ts","reports/industry-trend-sources-20260909/README.md","reports/project-history-20260909/README.md","reports/project-history-20260909/summary.json","reports/template-preview-20260909/README.md","reports/template-preview-20260909/summary.json","scripts/lib/creative-history-ui-acceptance.mjs","scripts/lib/template-preview-ui-acceptance.mjs"],"removed":[],"modified":["CLAUDE.md","apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/modules/creative-project/creative-project.service.ts","apps/api-fastify/src/routes/creative-project.ts","apps/api-fastify/src/routes/industry-trends.ts","apps/api-fastify/test/industry-trends.integration.test.ts","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/src/creative-project/creative-project.controller.ts","apps/api-nestjs/src/creative-project/creative-project.service.ts","apps/api-nestjs/src/creative-project/industry-trends.controller.ts","apps/api-nestjs/test/industry-trends.integration.test.ts","apps/web/src/components/material-factory/ClearCreativeQueue.tsx","apps/web/src/components/material-factory/CreativeProjectBar.tsx","apps/web/src/components/material-factory/EditStudio.tsx","apps/web/src/components/material-factory/MasterCanvas.tsx","apps/web/src/components/material-factory/TemplateStudio.tsx","apps/web/src/components/material-factory/industry-trends/IndustryTrends.tsx","apps/web/src/components/material-factory/industry-trends/industry-trends.module.css","apps/web/src/lib/api.ts","docs/deploy-vm.md","docs/domain/owner-matrix.md","docs/product/industry-trends.md","packages/contracts/src/creative-project.ts","packages/contracts/src/index.ts","packages/contracts/src/industry-trends.ts","packages/contracts/src/material-access.test.ts","packages/contracts/src/material-access.ts","packages/industry-trends/src/index.test.ts","packages/industry-trends/src/index.ts","reports/contract-consumers.latest.json","reports/dependency-audit.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/haizan-rename-20260909/README.md","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/production-security.latest.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-runtime-acceptance.mjs","scripts/check-ui-acceptance.mjs","scripts/migration-history.json"]},{"id":"c77eef941295d6e827aee9a953abbc67d939c7df","message":"feat(web): improve image editing canvas and workflow\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/c77eef941295d6e827aee9a953abbc67d939c7df","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-09T03:07:17-07:00","added":["apps/web/src/components/material-factory/useImageEditMask.ts","docs/governance/log/2026-09-09-image-edit-uiux.md","reports/image-edit-uiux-20260909/README.md","scripts/lib/image-edit-ui-acceptance.mjs"],"removed":[],"modified":["CLAUDE.md","apps/web/e2e/specs/create-studio.spec.ts","apps/web/src/components/material-factory/InpaintStudio.tsx","scripts/check-ui-acceptance.mjs","scripts/lib/storyboard-ui-fixture.mjs"]}],"total_commits":0,"head_commit":{"id":"bdd85f7670b0e415d30614a16d6c1b2ca5f16a5e","message":"merge: preserve completed history rollout with current image edit evidence\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/bdd85f7670b0e415d30614a16d6c1b2ca5f16a5e","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-09T03:21:43-07:00","added":["docs/releases/2026-09-09-history2.md"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-project-history.md","docs/releases/current.md","reports/project-history-20260909/README.md","reports/project-history-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":771521,"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-09T18:21:19+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
|
1788949348
|
1788949438
|
0
|
1788949346
|
1788949438
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24174
|
docs(部署): 记录补 §14.6——D-11 闭环,forward_auth 的 200 分支 docs(部署): 记录补 §14.6——D-11 闭环,forward_auth 的 200 分支第一次在服务端实测到...
|
116
|
5
|
platform.yml
|
145
|
5
|
0
|
refs/heads/main
|
832a54f24c1bf763ba06cf5513f7f7bd53b28e45
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"2156538deab81264dd796a4ed668509522dbff45","after":"832a54f24c1bf763ba06cf5513f7f7bd53b28e45","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/2156538deab81264dd796a4ed668509522dbff45...832a54f24c1bf763ba06cf5513f7f7bd53b28e45","commits":[{"id":"832a54f24c1bf763ba06cf5513f7f7bd53b28e45","message":"docs(部署): 记录补 §14.6——D-11 闭环,forward_auth 的 200 分支第一次在服务端实测到\n\n三个分支实测(网关 :58080):无令牌 401 / 伪造令牌 401 / **真实 IdP 令牌 200**;\n对照同一令牌直连容器 :53001 也是 200。返回体的 mode=fail-closed 与四个 ledger 端口\n确认打到的是容器而不是 dev 进程(:3101 那条链回的是 mode=local)。\n\nD-11 此前卡在一个操作顾虑而不是技术障碍:令牌只在浏览器里,搬进 shell 就会经过对话记录。\n这次用一次性本地接收端绕开——只听 127.0.0.1:45999、收到第一个 POST 就落盘(600)并自毁,\n页面把令牌 POST 过去(Content-Type: text/plain 在 CORS 安全列表内,不触发预检),shell 从\n文件读,用完 shred。方法一并写进记录,免得下次重新想。\n\n同轮把 D-11 从「未闭环」表摘掉(闭环项留在未闭环表里是自相矛盾),并把 §14 开头\n「后者只关掉一半」收窄为:服务端语义与服务端直连都已验证,唯一仍测不到的是浏览器跨源\n带令牌那条路,而它测不到的原因是预检带不了令牌(§14.4),属设计使然、不是缺证据。\n\n也写明这个令牌验不了 D-13:工作台客户端 scope 只有 openid profile,没有 platform:ops,\nevaluateOpsAccess 第一关就以 OPS_SCOPE_REQUIRED 挡下,到不了 admins.has(auth.subject)。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/832a54f24c1bf763ba06cf5513f7f7bd53b28e45","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:26:00-07:00","added":[],"removed":[],"modified":["docs/dev部署运行重做记录-2026-09-18.md"]},{"id":"4df190ddfc1fdc7d3fe7ac71f4094a1641484eca","message":"test(contracts,runtime): 把最后 9 条「仅单测」钉进夹具——两档归零,17 套件 458 例\n\n覆盖度探针的「都没有」在同日已全部归零(契约包九个域 + 运行时模块侧 4 条由 91ae216 补齐),\n但「仅单测」还剩 9 条。逐条看过,它们都不属于该工具自述里 ③ 说的两类豁免(基线闸门登记位\n*_BASELINE_NOT_READY / G3 / G5、演进对比类),而是普通字段守卫——守卫删掉只有 contracts:test\n或模块单测会红,门禁不会:\n\n module-permission APP_ID_REQUIRED(preflight 缺 appId)\n cross-domain-workflow WORKFLOW_IDENTITY_INVALID(定义缺 id)\n WORKFLOW_SCOPE_VERSION_INVALID(计划请求缺 scopeVersion)\n collaboration-messaging MESSAGE_CONTEXT_REQUIRED(消息缺 tenantId)\n OWNER_COMMAND_REQUIRED(动作卡缺 ownerDomain)\n notification-webhook WEBHOOK_SOURCE_EVENT_ID_REQUIRED\n WEBHOOK_TEMPLATE_VERSION_INVALID\n WEBHOOK_VARIABLES_INVALID\n\n跨域流程那两条是本会话同日第一条补强(13c7eb7)自己新增/收紧的判定,当时只补了单测没进夹具,\n本轮补齐——自己留的口子自己收。\n\n构造用例时踩到的坑:自动「从同规则里挑最完整的一条用例作底」会挑到已经带别的缺陷的负例,\n产出里混进无关原因码(实测跨域流程那条挑到了「两步共用幂等键」、IM 那条挑到了「senderType 大小写错」)。\n改为一律从该规则的正例派生、只做一处改动,每例产出单一原因码;reasons 按规则真实返回值逐字回填,\n不用前缀蒙混。\n\n覆盖:module-permission 10 → 11、cross-domain-workflow 16 → 18、collaboration-messaging 42 → 46、\nnotification-webhook 39 → 42;根链 check:fixtures 17 套件 458 例 0 失败 0 不可用。\n模块夹具与 test/negative/*.fixtures.test.ts 同源(it.each 直接遍历夹具文件),module-permission 的\n用例数随夹具自动同步,pnpm --dir runtime --filter @juhai/module-permission test 51/51。\n\n结果:15 个套件的「都没有」与「仅单测」两档现均为 0。口径与数字同步写进仓根 CLAUDE.md 那一段,\n并留了一句「后续新增规则请照此维持,或在本行注明保留理由」。\n\n证据:node --test contracts/test/*.test.mjs 404/404、typecheck 绿、check:fixtures 17 套件 458 例 0 失败。\n负向实测:把 IM 新增那条的声明改成 SENDER_TYPE_INVALID → 门禁 exit 1 并点名该例\n(reasons=[\"OWNER_COMMAND_REQUIRED\"]),还原后 exit 0。\n工作树另有并行会话的 check-fact-pii WIP,故本次不回绑任何 reports/。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/4df190ddfc1fdc7d3fe7ac71f4094a1641484eca","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:23:53-07:00","added":[],"removed":[],"modified":["CLAUDE.md","contracts/SOURCE.md","contracts/test/fixtures/collaboration-messaging.fixtures.json","contracts/test/fixtures/cross-domain-workflow.fixtures.json","contracts/test/fixtures/notification-webhook.fixtures.json","runtime/modules/permission/test/fixtures/permission.fixtures.json"]},{"id":"2f9175b43d249cdf68a65071a9cba4a5c214c0f1","message":"test(contracts): 会话追加的 STALE 与 REJECT 两个出口没钉——订正我把它判成探针误报的结论\n\nfixture-coverage 把 collaboration-messaging 的 REJECT 与 STALE 报成「仅单测」,我一度判为探针把\n「决策 kind」误当原因码统计、准备去改探针。判错了。\n\n这套 kind-as-reason 是评估器有意的约定:同一份夹具里 DUPLICATE / GAP / NOT_MEMBER /\nTENANT_MISMATCH / CONVERSATION_BINDING_REQUIRED / CONVERSATION_MISMATCH / STATE_INVALID 七个出口\n都是这么声明的,notification-webhook 的 DUPLICATE / DLQ 同理。探针的分类是对的,该补的是夹具。\n\nclassifyConversationAppend 有 10 个出口,夹具此前钉了 7 个,缺的两个:\n STALE incomingSequence 不前移——乱序或重放(conversation-message.ts:76)\n REJECT 消息自身 preflight 就没过(:67)\n前者是「重放的消息不能覆盖已处理序列」这条纪律在门禁上的唯一出口。\n\n补:夹具 42 → 44 例(N39 / N40)。该域「仅单测」由 4 降至 2。\n\n负向实测:把 N39 的声明原因改成不会产生的串 → 门禁 exit 1 并点名该例,恢复后转绿。\n\n教训写进 SOURCE.md:探针报出来的要逐条回源码核,不能因为「看着像 kind 不像 code」就判成误报——\n这套契约包里 kind 就是 code。\n\n证据:在仅含本提交改动的导出树上 tsc 绿、定向 32/32、contract-collaboration-messaging 44/44。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/2f9175b43d249cdf68a65071a9cba4a5c214c0f1","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:22:38-07:00","added":[],"removed":[],"modified":["contracts/SOURCE.md","contracts/test/fixtures/collaboration-messaging.fixtures.json"]}],"total_commits":0,"head_commit":{"id":"832a54f24c1bf763ba06cf5513f7f7bd53b28e45","message":"docs(部署): 记录补 §14.6——D-11 闭环,forward_auth 的 200 分支第一次在服务端实测到\n\n三个分支实测(网关 :58080):无令牌 401 / 伪造令牌 401 / **真实 IdP 令牌 200**;\n对照同一令牌直连容器 :53001 也是 200。返回体的 mode=fail-closed 与四个 ledger 端口\n确认打到的是容器而不是 dev 进程(:3101 那条链回的是 mode=local)。\n\nD-11 此前卡在一个操作顾虑而不是技术障碍:令牌只在浏览器里,搬进 shell 就会经过对话记录。\n这次用一次性本地接收端绕开——只听 127.0.0.1:45999、收到第一个 POST 就落盘(600)并自毁,\n页面把令牌 POST 过去(Content-Type: text/plain 在 CORS 安全列表内,不触发预检),shell 从\n文件读,用完 shred。方法一并写进记录,免得下次重新想。\n\n同轮把 D-11 从「未闭环」表摘掉(闭环项留在未闭环表里是自相矛盾),并把 §14 开头\n「后者只关掉一半」收窄为:服务端语义与服务端直连都已验证,唯一仍测不到的是浏览器跨源\n带令牌那条路,而它测不到的原因是预检带不了令牌(§14.4),属设计使然、不是缺证据。\n\n也写明这个令牌验不了 D-13:工作台客户端 scope 只有 openid profile,没有 platform:ops,\nevaluateOpsAccess 第一关就以 OPS_SCOPE_REQUIRED 挡下,到不了 admins.has(auth.subject)。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/832a54f24c1bf763ba06cf5513f7f7bd53b28e45","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:26:00-07:00","added":[],"removed":[],"modified":["docs/dev部署运行重做记录-2026-09-18.md"]},"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":20763,"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":44,"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-19T07:22:23+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
|
1789774004
|
1789774043
|
0
|
1789773970
|
1789774072
|
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
|
|
24518
|
docs(governance): verify N-5 legacy user semantics docs(governance): verify N-5 legacy user semantics and fix...
|
117
|
5
|
governance.yml
|
145
|
5
|
0
|
refs/heads/main
|
2598fd585e668b685ee4129f9d20e78b2780688e
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"530e1f5c264d8434cf64898e46396c2af1dc7fe6","after":"2598fd585e668b685ee4129f9d20e78b2780688e","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/530e1f5c264d8434cf64898e46396c2af1dc7fe6...2598fd585e668b685ee4129f9d20e78b2780688e","commits":[{"id":"2598fd585e668b685ee4129f9d20e78b2780688e","message":"docs(governance): verify N-5 legacy user semantics and fix\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/2598fd585e668b685ee4129f9d20e78b2780688e","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-24T15:54:30-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/docs/企业控制面业务模块能力实现与应用梳理-2026-09-24.md"]}],"total_commits":0,"head_commit":{"id":"2598fd585e668b685ee4129f9d20e78b2780688e","message":"docs(governance): verify N-5 legacy user semantics and fix\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/2598fd585e668b685ee4129f9d20e78b2780688e","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-24T15:54:30-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/docs/企业控制面业务模块能力实现与应用梳理-2026-09-24.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":17908,"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":4,"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-25T06:31:02+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
|
1790290996
|
1790292022
|
0
|
1790290491
|
1790292022
|
|
|
0
|
Edit
Delete
|
|
24527
|
docs(operations): record control-plane wiring roll docs(operations): record control-plane wiring rollout...
|
76
|
5
|
platform-governance.yml
|
145
|
5
|
0
|
refs/heads/main
|
4a4c3e77cc30429ccc00f274c19e073053f52f73
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"00fad17f6b0dc914bc2382e9628907a656f67c86","after":"4a4c3e77cc30429ccc00f274c19e073053f52f73","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/00fad17f6b0dc914bc2382e9628907a656f67c86...4a4c3e77cc30429ccc00f274c19e073053f52f73","commits":[{"id":"4a4c3e77cc30429ccc00f274c19e073053f52f73","message":"docs(operations): record control-plane wiring rollout\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/4a4c3e77cc30429ccc00f274c19e073053f52f73","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-24T16:09:32-07:00","added":["docs/operations/control-plane-deployment-wiring-2026-09-24.md"],"removed":[],"modified":[]}],"total_commits":0,"head_commit":{"id":"4a4c3e77cc30429ccc00f274c19e073053f52f73","message":"docs(operations): record control-plane wiring rollout\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/4a4c3e77cc30429ccc00f274c19e073053f52f73","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-24T16:09:32-07:00","added":["docs/operations/control-plane-deployment-wiring-2026-09-24.md"],"removed":[],"modified":[]},"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":97084,"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-25T07:05:18+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
|
1790292174
|
1790292204
|
0
|
1790291379
|
1790292276
|
|
|
0
|
Edit
Delete
|
|
23776
|
Merge branch 'codex/industry-trend-sources' Merge branch 'codex/industry-trend-sources'...
|
57
|
5
|
governance.yml
|
146
|
5
|
0
|
refs/heads/main
|
d2af460b33165da901b1eca68a3ae1538b4e9696
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"bdd85f7670b0e415d30614a16d6c1b2ca5f16a5e","after":"d2af460b33165da901b1eca68a3ae1538b4e9696","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/bdd85f7670b0e415d30614a16d6c1b2ca5f16a5e...d2af460b33165da901b1eca68a3ae1538b4e9696","commits":[{"id":"d2af460b33165da901b1eca68a3ae1538b4e9696","message":"Merge branch 'codex/industry-trend-sources'\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/d2af460b33165da901b1eca68a3ae1538b4e9696","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-09T03:25:32-07:00","added":["reports/industry-trend-sources-20260909/live-verification.json","reports/industry-trend-sources-20260909/summary.json"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-industry-trend-sources.md","reports/industry-trend-sources-20260909/README.md"]},{"id":"c1fefcaa0a68d0b8d517602a2a937dc1066a0ee3","message":"docs: record verified live public trend integrations\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/c1fefcaa0a68d0b8d517602a2a937dc1066a0ee3","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-09T03:25:15-07:00","added":["reports/industry-trend-sources-20260909/live-verification.json","reports/industry-trend-sources-20260909/summary.json"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-industry-trend-sources.md","reports/industry-trend-sources-20260909/README.md"]}],"total_commits":0,"head_commit":{"id":"d2af460b33165da901b1eca68a3ae1538b4e9696","message":"Merge branch 'codex/industry-trend-sources'\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/d2af460b33165da901b1eca68a3ae1538b4e9696","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-09T03:25:32-07:00","added":["reports/industry-trend-sources-20260909/live-verification.json","reports/industry-trend-sources-20260909/summary.json"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-industry-trend-sources.md","reports/industry-trend-sources-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":771807,"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-09T18:22: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
|
2
|
4
|
1788949670
|
1788949701
|
0
|
1788949669
|
1788949701
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24175
|
chore(reports): fact-pii / gate-flow / ci-mirror 三 chore(reports): fact-pii / gate-flow / ci-mirror 三份回绑 @ bb26784...
|
116
|
5
|
platform.yml
|
146
|
5
|
0
|
refs/heads/main
|
748492c2a1013dbf03b6234f2a85dea73af7e9e6
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"832a54f24c1bf763ba06cf5513f7f7bd53b28e45","after":"748492c2a1013dbf03b6234f2a85dea73af7e9e6","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/832a54f24c1bf763ba06cf5513f7f7bd53b28e45...748492c2a1013dbf03b6234f2a85dea73af7e9e6","commits":[{"id":"748492c2a1013dbf03b6234f2a85dea73af7e9e6","message":"chore(reports): fact-pii / gate-flow / ci-mirror 三份回绑 @ bb26784\n\n经 governance/rebind-reports.mjs 在 HEAD 的临时干净检出里重跑,三份均绑 bb26784 /\nworktreeDirty=false:\n\n fact-pii 21 个 Fact / 116 个字段,0 处 PII 形状与开放结构,25 个自由文本登账待裁\n gate-flow 47 个脚本、35 个有消费入口(新门禁已被推导为在链上),12 个流外且已具名\n ci-mirror 规范化 462 行逐行相同(两份工作流同步加了 check:fact-pii)\n\n后两份的作用域含本轮改动的 package.json 与两份 workflow,故一并回绑。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/748492c2a1013dbf03b6234f2a85dea73af7e9e6","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:28:00-07:00","added":["reports/fact-pii.latest.json"],"removed":[],"modified":["reports/ci-mirror.latest.json","reports/gate-flow.latest.json"]},{"id":"bb26784b4f44517b57389d78fbfacac5915a0317","message":"feat(治理): 补上 check:fact-pii——仓纪律 4 的三件事里,Fact payload 禁 PII 此前无人守\n\n纪律 4 把三件事并列:禁 ^/~(check:pins 守)、禁跨模块 import(check:module-imports 守)、\nFact payload 禁止复制 PII(**没有任何机器在守**)。check:facts 只校验「声明的 Fact 类型是否\n登记」,从不看 payload 里装什么——往某个 Fact schema 加一个 user_email 字段,全链门禁一片绿。\nFact 是跨域流转的事件:个人信息应当留在权威域里按权限查,不随事件复制到每个消费者的\nInbox 与审计链上。\n\n两条判红:\n\n PII_SHAPED_KEY 字段名命中 PII 模式且未显式豁免。按 (^|_)pattern($|_) 的词边界匹配——\n 裸子串会让 principal_id(princ-ip-al)、storage_kind(stor-age)误报,\n 门禁第一天就会被当成坏了而绕过。测试钉住了这一条。\n UNBOUNDED_PAYLOAD 对象缺 properties 或未禁 additionalProperties。这条不是锦上添花:\n 开放结构能装任意键,键名规则对它完全无效,不堵住它前一条只是君子协定。\n\n一条**不判红**:unconstrainedText——无 enum/pattern/format 约束的字符串字段(现有 25 个,\nbuyer_snapshot 这种名字含糊、maxLength 200 的自由文本最典型)。它们确实是 PII 的入口,\n但「这个字段实际装什么」是业务语义。这 25 个字段**全部没有 description**,我写不出可靠的\n豁免理由,编造 25 条登记只会污染治理真源。如实登账进报告,留给人裁定。\n\n判据单源是 governance/fact-pii-rules.json(63 条模式 + 豁免登记),不写死在脚本里——\nPII 形状会随业务扩张,写死就意味着每次扩张都要改门禁代码并重跑它的测试。与 otel-attributes.json\n同思路。豁免按 \u003cFact\u003e:\u003c字段路径\u003e 登记,不是裸键名:同名字段在不同 Fact 里性质可以不同。\n\n扫描面含 contracts/candidates/facts——候选必须一起扫,否则 PII 字段可以先进候选、\n再随批准转正,绕开本门禁。不扫 compatibility/baselines:历史兼容基线按定义不可改,报红也无从修。\n\n接入:根 check 链(check:facts 之后)、两份 CI 工作流(check:ci-mirror 守逐行一致,462 行通过)、\nevidence-scopes 作用域登记。本机实测:21 个 Fact / 116 字段 0 违规;篡改必红两种形态\n(加 PII 字段、改开放结构)均 exit 1,还原后 exit 0;门禁测试 8 例全过。\n\n顺带把纪律 4 里 check:pins 的判据范围写明为 @juhai/* —— 原措辞未限定,读起来像全仓禁 ^/~。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/bb26784b4f44517b57389d78fbfacac5915a0317","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:26:28-07:00","added":["governance/check-fact-pii.mjs","governance/fact-pii-rules.json","governance/test/check-fact-pii.test.mjs"],"removed":[],"modified":[".gitea/workflows/platform.yml",".github/workflows/platform.yml","CLAUDE.md","governance/evidence-scopes.json","governance/rebind-reports.mjs","package.json"]}],"total_commits":0,"head_commit":{"id":"748492c2a1013dbf03b6234f2a85dea73af7e9e6","message":"chore(reports): fact-pii / gate-flow / ci-mirror 三份回绑 @ bb26784\n\n经 governance/rebind-reports.mjs 在 HEAD 的临时干净检出里重跑,三份均绑 bb26784 /\nworktreeDirty=false:\n\n fact-pii 21 个 Fact / 116 个字段,0 处 PII 形状与开放结构,25 个自由文本登账待裁\n gate-flow 47 个脚本、35 个有消费入口(新门禁已被推导为在链上),12 个流外且已具名\n ci-mirror 规范化 462 行逐行相同(两份工作流同步加了 check:fact-pii)\n\n后两份的作用域含本轮改动的 package.json 与两份 workflow,故一并回绑。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/748492c2a1013dbf03b6234f2a85dea73af7e9e6","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:28:00-07:00","added":["reports/fact-pii.latest.json"],"removed":[],"modified":["reports/ci-mirror.latest.json","reports/gate-flow.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":20917,"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":44,"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-19T07:26: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
|
1789774132
|
1789774173
|
0
|
1789774131
|
1789774256
|
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
|
|
24531
|
docs(治理): 待裁决架构事项登记 DEC-045(M3 权限表清单勘误与 Grant 审批建表 docs(治理): 待裁决架构事项登记 DEC-045(M3 权限表清单勘误与 Grant 审批建表)与 DEC-049(平台模块生命周期审计中央转发)为草案待裁...
|
117
|
5
|
governance.yml
|
146
|
5
|
0
|
refs/heads/main
|
0092d7a9689407e3b8c64d5e9b6d62909105d4ce
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"2598fd585e668b685ee4129f9d20e78b2780688e","after":"0092d7a9689407e3b8c64d5e9b6d62909105d4ce","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/2598fd585e668b685ee4129f9d20e78b2780688e...0092d7a9689407e3b8c64d5e9b6d62909105d4ce","commits":[{"id":"0092d7a9689407e3b8c64d5e9b6d62909105d4ce","message":"docs(治理): 待裁决架构事项登记 DEC-045(M3 权限表清单勘误与 Grant 审批建表)与 DEC-049(平台模块生命周期审计中央转发)为草案待裁\n\n- §5 Scope 与权限 增 DEC-045 行(2026-09-23 起草,建议三分叉均 A,新建 `platform_permission_grant_request`)\n- §6 Audit、隐私与时间 增 DEC-049 行(2026-09-24 起草,建议模块自身为 producer / 进程内受理入口 / `audit.actions-register` 运维登记)\n- 两条 2026-09-24T23:10Z 均未登记进真源仓 `contracts/catalogs/decisions.json`,需另起 Catalog 提交登记为 pending(本提交不改 Catalog)\n- 链接指向 `平台治理/doc/decisions/` 下现有草案文件\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/0092d7a9689407e3b8c64d5e9b6d62909105d4ce","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-24T16:19:28-07:00","added":[],"removed":[],"modified":["平台治理/doc/decisions/待裁决架构事项.md"]},{"id":"5f7184df6deb4f4033050feba1d9a394e6993242","message":"docs(治理): 模块能力梳理 §11 N-5 补记真源仓 e9143be1 已收窄旧用户路由行为(PATCH status 回 400、DELETE 软停用),Identity Owner 是否裁定仍开口\n\n- 真源仓 `e9143be1`(2026-09-24T22:34Z,已在 Gitea origin/main):`runtime/modules/identity/src/contracts/user.ts` 的 `updateUserSchema` 加 `.strict()`;`runtime/test/e2e/identity-profile.test.ts` 新增一例钉住 PATCH `status` → 400、DELETE → `DEPROVISIONED` 保留同一行\n- DELETE 未改代码,只由用例确认;「是否视为 Identity Owner 裁定」未确认,§11 该条保持开口并指向 §12\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/5f7184df6deb4f4033050feba1d9a394e6993242","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-24T16:19:28-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/docs/企业控制面业务模块能力实现与应用梳理-2026-09-24.md"]},{"id":"4f371444bd02da00da498262fcb60097b1fbdbe7","message":"docs(治理): 开发计划按 2026-09-24T23:10Z 机器读数订正状态格(三端 3897e902、16 模块全 authority、47 裁决 40/4/3、identity RLS 已落、C16/C19 建表 DEC 已批、CHG-022/024 签署状态、补记 DEC-045/049 与 CHG-023/025 待裁待签)\n\n- §1 仓与远端:三端 main 重采为 `3897e902`(23:10Z),worktree 14 / 本地分支 9 / 远端 heads 40 / 45;注明 main 仍在并行推进、本表只是采样\n- 状态头与 §1 模块行:`runtime/modules.json` 16 个全部 `authority`(09-22 读数 7 / 9);`decisions.json` 47 = 40 approved / 4 rejected / 3 pending(DEC-045 / 049 尚未登记)\n- identity RLS:09-22 的「0 条 / rlsPending 待补」改为 09-23 已落(真源仓 `8f536444` 26 张 + `3ea59419` 1 张,实测 27 处 FORCE,runtime-acceptance @ e9143be1 tenantRlsEnforced=1);§3A「M1 identity RLS」行改 ✅,PF-07 余项与 §7 风险同步\n- §3A 域壳升档:前置改「已满足」,引用已批准的 DEC-042 / DEC-043(2026-09-23);§4 DEC-041 行改六域已升 authority\n- CHG:CHG-022 已于 09-23 批准、CHG-024 已于 09-24 签署并应用(`8d994575`);偏差 #41 只剩 CHG-021 半边、#43 对 `0d1356e9` 半边关闭;§1 CHG 行 / §5 ③ 补 CHG-023 待事后补签(`65e5f5a7`)、CHG-025 待签\n- §3A M3 表清单对齐与 §5 ③ f) 补 DEC-045 / DEC-049 草案待裁,两条需另起 Catalog 提交登记为 pending\n- §8 未加续记;数字均为读数时刻值,命令在各行内\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/4f371444bd02da00da498262fcb60097b1fbdbe7","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-24T16:18:28-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/开发计划.md"]}],"total_commits":0,"head_commit":{"id":"0092d7a9689407e3b8c64d5e9b6d62909105d4ce","message":"docs(治理): 待裁决架构事项登记 DEC-045(M3 权限表清单勘误与 Grant 审批建表)与 DEC-049(平台模块生命周期审计中央转发)为草案待裁\n\n- §5 Scope 与权限 增 DEC-045 行(2026-09-23 起草,建议三分叉均 A,新建 `platform_permission_grant_request`)\n- §6 Audit、隐私与时间 增 DEC-049 行(2026-09-24 起草,建议模块自身为 producer / 进程内受理入口 / `audit.actions-register` 运维登记)\n- 两条 2026-09-24T23:10Z 均未登记进真源仓 `contracts/catalogs/decisions.json`,需另起 Catalog 提交登记为 pending(本提交不改 Catalog)\n- 链接指向 `平台治理/doc/decisions/` 下现有草案文件\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/0092d7a9689407e3b8c64d5e9b6d62909105d4ce","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-24T16:19:28-07:00","added":[],"removed":[],"modified":["平台治理/doc/decisions/待裁决架构事项.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":17955,"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":4,"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-25T06:54:51+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
|
1790293204
|
1790294246
|
0
|
1790292826
|
1790294246
|
|
|
0
|
Edit
Delete
|
|
24541
|
test(governance): rebind reports after main merge
|
76
|
5
|
governance.yml
|
146
|
5
|
0
|
refs/heads/main
|
0ec1ffec8962590df5d7d130b04c445815f86a15
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"4a4c3e77cc30429ccc00f274c19e073053f52f73","after":"0ec1ffec8962590df5d7d130b04c445815f86a15","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/4a4c3e77cc30429ccc00f274c19e073053f52f73...0ec1ffec8962590df5d7d130b04c445815f86a15","commits":[{"id":"0ec1ffec8962590df5d7d130b04c445815f86a15","message":"test(governance): rebind reports after main merge\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/0ec1ffec8962590df5d7d130b04c445815f86a15","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-24T17:25:32-07:00","added":[],"removed":[],"modified":["reports/governance-docs.latest.json","reports/operations.latest.json","reports/report-transaction-lock.latest.json"]},{"id":"16214fdb3acba0c99e61216ea697b3c8925a4d5d","message":"Merge branch 'main' of https://github.com/laoluojuhai/digital-employee-os into codex/protected-http-mcp-20260924\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/16214fdb3acba0c99e61216ea697b3c8925a4d5d","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-24T17:24:34-07:00","added":["docs/operations/control-plane-deployment-wiring-2026-09-24.md"],"removed":[],"modified":[]},{"id":"72324a8f5601d0123c7b13e5c00c9db603da8fa9","message":"test(governance): refresh protected mcp evidence\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/72324a8f5601d0123c7b13e5c00c9db603da8fa9","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-24T17:21:34-07:00","added":[],"removed":[],"modified":["reports/governance-docs.latest.json","reports/operations.latest.json","reports/report-transaction-lock.latest.json"]},{"id":"d1d7d5e390239eb89464a53b19cfe22d59db0f93","message":"docs(governance): record protected control-plane acceptance\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/d1d7d5e390239eb89464a53b19cfe22d59db0f93","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-24T17:20:27-07:00","added":["governance/app-manifest.candidate.json"],"removed":[],"modified":["docs/domain/enterprise-control-plane-integration-governance.md","docs/operations/control-plane-integration-governance-2026-09-24.md"]},{"id":"bcdcdb68160ff63307841bffb9b7e08c40c0726a","message":"feat(mcp): connect OS to protected control plane\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/bcdcdb68160ff63307841bffb9b7e08c40c0726a","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-24T16:45:13-07:00","added":[],"removed":[],"modified":["apps/api-fastify/test/llm.acceptance.test.ts","apps/api-nestjs/test/llm.acceptance.test.ts","docs/domain/enterprise-control-plane-integration-governance.md","docs/domain/mcp-control-plane-blueprint.md","docs/domain/tool-execution-blueprint.md","docs/operations/control-plane-integration-governance-2026-09-24.md","docs/operations/production-runbook.md","packages/tool-runtime/src/implementations/control-plane-query-v1.ts","packages/tool-runtime/src/index.ts","packages/tool-runtime/src/mcp-control-plane.test.ts","packages/tool-runtime/src/mcp-control-plane.ts","packages/tool-runtime/src/mcp-dispatch.ts","reports/governance-docs.latest.json","reports/kernel-extensions.latest.json","reports/operations.latest.json","reports/report-transaction-lock.latest.json"]}],"total_commits":0,"head_commit":{"id":"0ec1ffec8962590df5d7d130b04c445815f86a15","message":"test(governance): rebind reports after main merge\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/0ec1ffec8962590df5d7d130b04c445815f86a15","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-24T17:25:32-07:00","added":[],"removed":[],"modified":["reports/governance-docs.latest.json","reports/operations.latest.json","reports/report-transaction-lock.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":97089,"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-25T07:09:39+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
|
1790296036
|
1790296046
|
0
|
1790295992
|
1790296070
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23777
|
Merge branch 'main' into feat/image-edit-u Merge branch 'main' into feat/image-edit-uiux...
|
57
|
5
|
governance.yml
|
147
|
5
|
0
|
refs/heads/main
|
7f17e8734c251f23fc73a5fb33e6f30d42e9fc4a
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"d2af460b33165da901b1eca68a3ae1538b4e9696","after":"7f17e8734c251f23fc73a5fb33e6f30d42e9fc4a","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/d2af460b33165da901b1eca68a3ae1538b4e9696...7f17e8734c251f23fc73a5fb33e6f30d42e9fc4a","commits":[{"id":"7f17e8734c251f23fc73a5fb33e6f30d42e9fc4a","message":"Merge branch 'main' into feat/image-edit-uiux\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/7f17e8734c251f23fc73a5fb33e6f30d42e9fc4a","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-09T03:28:23-07:00","added":["reports/industry-trend-sources-20260909/live-verification.json","reports/industry-trend-sources-20260909/summary.json"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-industry-trend-sources.md","reports/industry-trend-sources-20260909/README.md"]},{"id":"a4ae26c4188f53900a4311393fc09eecb04fa69e","message":"docs: record verified image editing UI rollout\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/a4ae26c4188f53900a4311393fc09eecb04fa69e","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-09T03:28:23-07:00","added":["docs/releases/2026-09-09-image-edit-uiux1.md"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-image-edit-uiux.md","docs/releases/current.md","reports/image-edit-uiux-20260909/README.md"]}],"total_commits":0,"head_commit":{"id":"7f17e8734c251f23fc73a5fb33e6f30d42e9fc4a","message":"Merge branch 'main' into feat/image-edit-uiux\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/7f17e8734c251f23fc73a5fb33e6f30d42e9fc4a","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-09T03:28:23-07:00","added":["reports/industry-trend-sources-20260909/live-verification.json","reports/industry-trend-sources-20260909/summary.json"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-industry-trend-sources.md","reports/industry-trend-sources-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":771894,"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-09T18:27: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
|
4
|
1788949719
|
1788949809
|
0
|
1788949718
|
1788949809
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24180
|
feat(治理): check:pins 扩到第三方依赖——发布包严格,应用侧走存量基线
|
116
|
5
|
platform.yml
|
147
|
5
|
0
|
refs/heads/main
|
63ff31f256e45886e0a52d5e819ef7b3730eba9b
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"748492c2a1013dbf03b6234f2a85dea73af7e9e6","after":"63ff31f256e45886e0a52d5e819ef7b3730eba9b","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/748492c2a1013dbf03b6234f2a85dea73af7e9e6...63ff31f256e45886e0a52d5e819ef7b3730eba9b","commits":[{"id":"63ff31f256e45886e0a52d5e819ef7b3730eba9b","message":"feat(治理): check:pins 扩到第三方依赖——发布包严格,应用侧走存量基线\n\n此前 check:pins 只管 @juhai/*,第三方 pin 完全不看。量了一下:256 个第三方依赖声明里\n218 个(85%)是 range。直接全判红等于让门禁第一天就红 218 处;全量 pin 则要改 218 处并\n重建 runtime / identity 两个 lockfile、触碰整棵依赖树——而 lockfile + --frozen-lockfile\n已经保证了日常构建可复现,range 的真实风险只是有人跑 pnpm update 时意外升级。\n目录负责人裁决:分层。\n\n三层判据:\n\n 1. @juhai/* 一律 exact / workspace:*(原有)\n 2. 对外发布包 第三方依赖也一律 exact。判定依据是 publishConfig 的存在——它是「这个包会被\n 发出去」的机器特征,比硬编码包目录好:新增发布包自动纳入,不必记得回来改门禁。\n 消费者装到的是发布时解析的那棵树,range 在他们那边会解析成别的版本。\n 3. 其余(应用) 存量 209 处登记在 governance/pins-baseline.json,登记外的新增必须 exact。\n 基线**只减不增**:登记项对应的依赖删了条目也要删,否则 BASELINE_STALE 判红。\n\n配套把 clients 三包的 9 处 devDeps pin 掉(@types/node 22.19.20 / typescript 5.9.3 /\nvitest 2.1.9,取自 lockfile 已解析的版本)。lockfile 只动了 9 行 specifier,\n**resolution 变更 0 行**,依赖树没变;pnpm install --frozen-lockfile 复验通过。\n\n**一处会炸下游的设计,改掉了:** 初版把「无基线」当空基线 fail closed。但 @juhai/governance\n是发布给消费者仓(HR / OS)的 CLI,他们跑 juhai-governance check:pins --require @juhai/contracts\n时仓里没有本仓基线,按空基线判会把他们全部第三方 range 判红——一次判据扩展直接炸掉所有下游。\n改为:无基线则第三方层不启用,且**在输出里明说**(不静默关闭)。测试钉住了这条契约。\n\n本机实测:本仓 37 处 @juhai/* + 第三方 256 处(47 exact,含发布包 17 处严格;209 处在基线内)\nexit 0;模拟消费者仓(无基线)exit 0 且第三方层未启用;四种违规场景(发布包 range、\n基线外新增、基线腐烂、无基线)行为逐一验过,退出码直取、不经管道。测试 10 → 17 例。\n\ngovernance/README.md 同步(它随包发布,判据表必须与实现一致);CLAUDE.md 纪律 4 同步。\npins-baseline.json 不进 governance 包的 files——它是本仓的存量账,对消费者无意义。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/63ff31f256e45886e0a52d5e819ef7b3730eba9b","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:37:14-07:00","added":["governance/pins-baseline.json"],"removed":[],"modified":["CLAUDE.md","governance/README.md","governance/check-pins.mjs","governance/test/check-pins.test.mjs","runtime/clients/fact/package.json","runtime/clients/identity/package.json","runtime/clients/permission/package.json","runtime/pnpm-lock.yaml"]},{"id":"8939e8fc35a7c42d4957e2297c8dcb8eb58cb663","message":"chore(reports): check:fixtures 回绑 @ 748492c —— 补上本会话四轮夹具增量欠的那一笔\n\nreports/fixtures.latest.json 此前绑在 7523bd0(17 套件 316 例),check:evidence 报 EVIDENCE_STALE:\n作用域内 14 个文件已变更。变更的大头是本会话四条加夹具的提交——1a1b37e(IM)、bdb662d(数据分析)、\n7a4b693(成本容量)、0b3dab6(Webhook)、4f36e22(注册中心)、4df190d(最后 9 条仅单测)。\n每轮提交信息里都写了「本次不回绑」,当时理由成立(工作树有并行会话 WIP,拿不到 worktreeDirty=false),\n但后续没人补,就成了欠账。\n\n回绑做法:在 企业控制面/.worktrees/rebind-fixtures 开 detached 干净检出(HEAD 748492c),\n把主检出的 node_modules 软链进去(软链不被 .gitignore 的 node_modules/ 目录规则匹配,故写进\n本地 info/exclude,不改仓内 .gitignore),build contracts 与七模块后跑 check:fixtures,\n确认 git status 为空再出报告,最后只把这一份 report 拷回主检出、按 pathspec 单独提交——\n主检出里并行会话另有 11 份报告在改,一份都没碰。\n\n结果:provenance gitSha=748492c、worktreeDirty=false,17 套件 458 例 0 失败 0 不可用\n(此前 316 例,+142 例即本会话四轮的夹具增量)。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/8939e8fc35a7c42d4957e2297c8dcb8eb58cb663","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:33:25-07:00","added":[],"removed":[],"modified":["reports/fixtures.latest.json"]}],"total_commits":0,"head_commit":{"id":"63ff31f256e45886e0a52d5e819ef7b3730eba9b","message":"feat(治理): check:pins 扩到第三方依赖——发布包严格,应用侧走存量基线\n\n此前 check:pins 只管 @juhai/*,第三方 pin 完全不看。量了一下:256 个第三方依赖声明里\n218 个(85%)是 range。直接全判红等于让门禁第一天就红 218 处;全量 pin 则要改 218 处并\n重建 runtime / identity 两个 lockfile、触碰整棵依赖树——而 lockfile + --frozen-lockfile\n已经保证了日常构建可复现,range 的真实风险只是有人跑 pnpm update 时意外升级。\n目录负责人裁决:分层。\n\n三层判据:\n\n 1. @juhai/* 一律 exact / workspace:*(原有)\n 2. 对外发布包 第三方依赖也一律 exact。判定依据是 publishConfig 的存在——它是「这个包会被\n 发出去」的机器特征,比硬编码包目录好:新增发布包自动纳入,不必记得回来改门禁。\n 消费者装到的是发布时解析的那棵树,range 在他们那边会解析成别的版本。\n 3. 其余(应用) 存量 209 处登记在 governance/pins-baseline.json,登记外的新增必须 exact。\n 基线**只减不增**:登记项对应的依赖删了条目也要删,否则 BASELINE_STALE 判红。\n\n配套把 clients 三包的 9 处 devDeps pin 掉(@types/node 22.19.20 / typescript 5.9.3 /\nvitest 2.1.9,取自 lockfile 已解析的版本)。lockfile 只动了 9 行 specifier,\n**resolution 变更 0 行**,依赖树没变;pnpm install --frozen-lockfile 复验通过。\n\n**一处会炸下游的设计,改掉了:** 初版把「无基线」当空基线 fail closed。但 @juhai/governance\n是发布给消费者仓(HR / OS)的 CLI,他们跑 juhai-governance check:pins --require @juhai/contracts\n时仓里没有本仓基线,按空基线判会把他们全部第三方 range 判红——一次判据扩展直接炸掉所有下游。\n改为:无基线则第三方层不启用,且**在输出里明说**(不静默关闭)。测试钉住了这条契约。\n\n本机实测:本仓 37 处 @juhai/* + 第三方 256 处(47 exact,含发布包 17 处严格;209 处在基线内)\nexit 0;模拟消费者仓(无基线)exit 0 且第三方层未启用;四种违规场景(发布包 range、\n基线外新增、基线腐烂、无基线)行为逐一验过,退出码直取、不经管道。测试 10 → 17 例。\n\ngovernance/README.md 同步(它随包发布,判据表必须与实现一致);CLAUDE.md 纪律 4 同步。\npins-baseline.json 不进 governance 包的 files——它是本仓的存量账,对消费者无意义。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/63ff31f256e45886e0a52d5e819ef7b3730eba9b","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:37:14-07:00","added":["governance/pins-baseline.json"],"removed":[],"modified":["CLAUDE.md","governance/README.md","governance/check-pins.mjs","governance/test/check-pins.test.mjs","runtime/clients/fact/package.json","runtime/clients/identity/package.json","runtime/clients/permission/package.json","runtime/pnpm-lock.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":20979,"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":44,"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-19T07:28:51+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
|
1789774677
|
1789774718
|
0
|
1789774677
|
1789774747
|
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
|
|
24537
|
docs(治理): 开发计划 §8 续记第四轮对抗验收 H-5 / M-1 落 main 与静态回绑 docs(治理): 开发计划 §8 续记第四轮对抗验收 H-5 / M-1 落 main 与静态回绑链收尾(本地 = Gitea 1c107178),§1 仓与远端按 2026-09-25T00:1xZ 读数订正...
|
117
|
5
|
governance.yml
|
147
|
5
|
0
|
refs/heads/main
|
43edfb9978e733834c299230fed47024685fd0a7
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"0092d7a9689407e3b8c64d5e9b6d62909105d4ce","after":"43edfb9978e733834c299230fed47024685fd0a7","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/0092d7a9689407e3b8c64d5e9b6d62909105d4ce...43edfb9978e733834c299230fed47024685fd0a7","commits":[{"id":"43edfb9978e733834c299230fed47024685fd0a7","message":"docs(治理): 开发计划 §8 续记第四轮对抗验收 H-5 / M-1 落 main 与静态回绑链收尾(本地 = Gitea 1c107178),§1 仓与远端按 2026-09-25T00:1xZ 读数订正\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/43edfb9978e733834c299230fed47024685fd0a7","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-24T17:04:15-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/开发计划.md"]}],"total_commits":0,"head_commit":{"id":"43edfb9978e733834c299230fed47024685fd0a7","message":"docs(治理): 开发计划 §8 续记第四轮对抗验收 H-5 / M-1 落 main 与静态回绑链收尾(本地 = Gitea 1c107178),§1 仓与远端按 2026-09-25T00:1xZ 读数订正\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/43edfb9978e733834c299230fed47024685fd0a7","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-24T17:04:15-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":18127,"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":4,"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-25T07:33: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
|
4
|
1790295398
|
1790295489
|
0
|
1790294675
|
1790295489
|
|
|
0
|
Edit
Delete
|
|
24542
|
test(governance): rebind reports after main merge
|
76
|
5
|
platform-governance.yml
|
147
|
5
|
0
|
refs/heads/main
|
0ec1ffec8962590df5d7d130b04c445815f86a15
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"4a4c3e77cc30429ccc00f274c19e073053f52f73","after":"0ec1ffec8962590df5d7d130b04c445815f86a15","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/4a4c3e77cc30429ccc00f274c19e073053f52f73...0ec1ffec8962590df5d7d130b04c445815f86a15","commits":[{"id":"0ec1ffec8962590df5d7d130b04c445815f86a15","message":"test(governance): rebind reports after main merge\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/0ec1ffec8962590df5d7d130b04c445815f86a15","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-24T17:25:32-07:00","added":[],"removed":[],"modified":["reports/governance-docs.latest.json","reports/operations.latest.json","reports/report-transaction-lock.latest.json"]},{"id":"16214fdb3acba0c99e61216ea697b3c8925a4d5d","message":"Merge branch 'main' of https://github.com/laoluojuhai/digital-employee-os into codex/protected-http-mcp-20260924\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/16214fdb3acba0c99e61216ea697b3c8925a4d5d","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-24T17:24:34-07:00","added":["docs/operations/control-plane-deployment-wiring-2026-09-24.md"],"removed":[],"modified":[]},{"id":"72324a8f5601d0123c7b13e5c00c9db603da8fa9","message":"test(governance): refresh protected mcp evidence\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/72324a8f5601d0123c7b13e5c00c9db603da8fa9","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-24T17:21:34-07:00","added":[],"removed":[],"modified":["reports/governance-docs.latest.json","reports/operations.latest.json","reports/report-transaction-lock.latest.json"]},{"id":"d1d7d5e390239eb89464a53b19cfe22d59db0f93","message":"docs(governance): record protected control-plane acceptance\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/d1d7d5e390239eb89464a53b19cfe22d59db0f93","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-24T17:20:27-07:00","added":["governance/app-manifest.candidate.json"],"removed":[],"modified":["docs/domain/enterprise-control-plane-integration-governance.md","docs/operations/control-plane-integration-governance-2026-09-24.md"]},{"id":"bcdcdb68160ff63307841bffb9b7e08c40c0726a","message":"feat(mcp): connect OS to protected control plane\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/bcdcdb68160ff63307841bffb9b7e08c40c0726a","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-24T16:45:13-07:00","added":[],"removed":[],"modified":["apps/api-fastify/test/llm.acceptance.test.ts","apps/api-nestjs/test/llm.acceptance.test.ts","docs/domain/enterprise-control-plane-integration-governance.md","docs/domain/mcp-control-plane-blueprint.md","docs/domain/tool-execution-blueprint.md","docs/operations/control-plane-integration-governance-2026-09-24.md","docs/operations/production-runbook.md","packages/tool-runtime/src/implementations/control-plane-query-v1.ts","packages/tool-runtime/src/index.ts","packages/tool-runtime/src/mcp-control-plane.test.ts","packages/tool-runtime/src/mcp-control-plane.ts","packages/tool-runtime/src/mcp-dispatch.ts","reports/governance-docs.latest.json","reports/kernel-extensions.latest.json","reports/operations.latest.json","reports/report-transaction-lock.latest.json"]}],"total_commits":0,"head_commit":{"id":"0ec1ffec8962590df5d7d130b04c445815f86a15","message":"test(governance): rebind reports after main merge\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/0ec1ffec8962590df5d7d130b04c445815f86a15","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-24T17:25:32-07:00","added":[],"removed":[],"modified":["reports/governance-docs.latest.json","reports/operations.latest.json","reports/report-transaction-lock.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":97089,"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-25T07:09:39+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
|
1790296046
|
1790296055
|
0
|
1790295992
|
1790296071
|
|
|
0
|
Edit
Delete
|
|
23778
|
Merge branch 'main' into feat/template-pre Merge branch 'main' into feat/template-preview...
|
57
|
5
|
governance.yml
|
148
|
5
|
0
|
refs/heads/main
|
5607ab611f1e74673856aa25aa3f8393e3140e35
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"7f17e8734c251f23fc73a5fb33e6f30d42e9fc4a","after":"5607ab611f1e74673856aa25aa3f8393e3140e35","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/7f17e8734c251f23fc73a5fb33e6f30d42e9fc4a...5607ab611f1e74673856aa25aa3f8393e3140e35","commits":[{"id":"5607ab611f1e74673856aa25aa3f8393e3140e35","message":"Merge branch 'main' into feat/template-preview\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/5607ab611f1e74673856aa25aa3f8393e3140e35","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-09T03:35:15-07:00","added":["docs/releases/2026-09-09-image-edit-uiux1.md","reports/industry-trend-sources-20260909/live-verification.json","reports/industry-trend-sources-20260909/summary.json"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-image-edit-uiux.md","docs/governance/log/2026-09-09-industry-trend-sources.md","docs/releases/current.md","reports/image-edit-uiux-20260909/README.md","reports/industry-trend-sources-20260909/README.md"]},{"id":"1d9d5bcdabbba5384c605a85967e098d040d65b7","message":"fix: preserve template preview during asset loading\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/1d9d5bcdabbba5384c605a85967e098d040d65b7","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-09T03:35:11-07:00","added":[],"removed":[],"modified":["CLAUDE.md","apps/web/src/components/material-factory/TemplateStudio.tsx","docs/governance/log/2026-09-09-template-preview.md","reports/contract-consumers.latest.json","reports/dependency-audit.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/production-security.latest.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/template-preview-20260909/README.md","reports/template-preview-20260909/summary.json","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/lib/template-preview-ui-acceptance.mjs"]}],"total_commits":0,"head_commit":{"id":"5607ab611f1e74673856aa25aa3f8393e3140e35","message":"Merge branch 'main' into feat/template-preview\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/5607ab611f1e74673856aa25aa3f8393e3140e35","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-09T03:35:15-07:00","added":["docs/releases/2026-09-09-image-edit-uiux1.md","reports/industry-trend-sources-20260909/live-verification.json","reports/industry-trend-sources-20260909/summary.json"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-image-edit-uiux.md","docs/governance/log/2026-09-09-industry-trend-sources.md","docs/releases/current.md","reports/image-edit-uiux-20260909/README.md","reports/industry-trend-sources-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":771982,"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-09T18:28:38+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
|
1788950145
|
1788950186
|
0
|
1788950145
|
1788950186
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24181
|
fix(workbench): 客户端独有的状态不得进首帧——修掉两处水合不一致(D-12)
|
116
|
5
|
platform.yml
|
148
|
5
|
0
|
refs/heads/main
|
59265a6ffc4d0d4ffda878fd880a5d5a308720bb
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"63ff31f256e45886e0a52d5e819ef7b3730eba9b","after":"59265a6ffc4d0d4ffda878fd880a5d5a308720bb","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/63ff31f256e45886e0a52d5e819ef7b3730eba9b...59265a6ffc4d0d4ffda878fd880a5d5a308720bb","commits":[{"id":"59265a6ffc4d0d4ffda878fd880a5d5a308720bb","message":"fix(workbench): 客户端独有的状态不得进首帧——修掉两处水合不一致(D-12)\n\nD-12 登记的是顶栏那一处,查下来是两处同病,其中一处每次打开登录页都在报:\n\n- `app-nav.tsx` 直接渲染会话里的 subject。工作台是 output: \"export\",HTML 在构建期定死,\n 里面不可能有会话,而首帧客户端已经有了。只在 sessionStorage 有令牌时触发。\n- `login/page.tsx` 的 `typeof window === \"undefined\" ? null : readOidcConfig(...)`:服务端恒为\n null(渲染「缺配置」),浏览器算得出配置(渲染登录按钮),**必然**对不上,与有没有会话无关。\n 同源托管记录 §4.3 记的那个「缺配置」就是产物原文,客户端随后整片换掉了。\n\n定位用的是对照实验而不是读代码猜:清空 sessionStorage 重载 / 不报错,植入会话再重载即报;\n重载 /login/ 在无会话时也报。\n\n修法统一为新增的 useMounted():客户端独有的状态(sessionStorage 会话、window.location)\n等挂载之后再渲染,首帧与构建期产物逐字一致。没有复用 store 的 hydrated 标志——那面旗由\nProviders 的 effect 翻,时序上依赖别的组件;组件自己的 useState(false) 在水合那一帧恒为 false。\n\n登录页因此多出第三种状态「读取中」。这与本仓一贯口径一致:配置还没读到时,既不能说\n「缺配置」也不能说「可登录」。\n\n验证:workbench typecheck / lint 通过;next build 六路由导出;重载 /login/ 与植入会话硬跳转 /\n均不再新增 hydration 报错。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/59265a6ffc4d0d4ffda878fd880a5d5a308720bb","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:41:05-07:00","added":["runtime/apps/workbench/src/lib/use-mounted.ts"],"removed":[],"modified":["runtime/apps/workbench/src/app/login/page.tsx","runtime/apps/workbench/src/components/app-nav.tsx"]}],"total_commits":0,"head_commit":{"id":"59265a6ffc4d0d4ffda878fd880a5d5a308720bb","message":"fix(workbench): 客户端独有的状态不得进首帧——修掉两处水合不一致(D-12)\n\nD-12 登记的是顶栏那一处,查下来是两处同病,其中一处每次打开登录页都在报:\n\n- `app-nav.tsx` 直接渲染会话里的 subject。工作台是 output: \"export\",HTML 在构建期定死,\n 里面不可能有会话,而首帧客户端已经有了。只在 sessionStorage 有令牌时触发。\n- `login/page.tsx` 的 `typeof window === \"undefined\" ? null : readOidcConfig(...)`:服务端恒为\n null(渲染「缺配置」),浏览器算得出配置(渲染登录按钮),**必然**对不上,与有没有会话无关。\n 同源托管记录 §4.3 记的那个「缺配置」就是产物原文,客户端随后整片换掉了。\n\n定位用的是对照实验而不是读代码猜:清空 sessionStorage 重载 / 不报错,植入会话再重载即报;\n重载 /login/ 在无会话时也报。\n\n修法统一为新增的 useMounted():客户端独有的状态(sessionStorage 会话、window.location)\n等挂载之后再渲染,首帧与构建期产物逐字一致。没有复用 store 的 hydrated 标志——那面旗由\nProviders 的 effect 翻,时序上依赖别的组件;组件自己的 useState(false) 在水合那一帧恒为 false。\n\n登录页因此多出第三种状态「读取中」。这与本仓一贯口径一致:配置还没读到时,既不能说\n「缺配置」也不能说「可登录」。\n\n验证:workbench typecheck / lint 通过;next build 六路由导出;重载 /login/ 与植入会话硬跳转 /\n均不再新增 hydration 报错。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/59265a6ffc4d0d4ffda878fd880a5d5a308720bb","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:41:05-07:00","added":["runtime/apps/workbench/src/lib/use-mounted.ts"],"removed":[],"modified":["runtime/apps/workbench/src/app/login/page.tsx","runtime/apps/workbench/src/components/app-nav.tsx"]},"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":21164,"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":44,"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-19T07:37: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
|
30
|
1789774883
|
1789774923
|
0
|
1789774882
|
1789775005
|
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
|
|
24538
|
docs(治理): 恢复开发计划全文(43edfb9 因写入中断被截断 322 行)并重做 §8 续 docs(治理): 恢复开发计划全文(43edfb9 因写入中断被截断 322 行)并重做 §8 续四与 §1 仓与远端订正(本地 = Gitea 1c107178、GitHub fecacc75)...
|
117
|
5
|
governance.yml
|
148
|
5
|
0
|
refs/heads/main
|
ff27fe763d5bf0b9e6a42e7e53f1eb44e98e0368
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"43edfb9978e733834c299230fed47024685fd0a7","after":"ff27fe763d5bf0b9e6a42e7e53f1eb44e98e0368","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/43edfb9978e733834c299230fed47024685fd0a7...ff27fe763d5bf0b9e6a42e7e53f1eb44e98e0368","commits":[{"id":"ff27fe763d5bf0b9e6a42e7e53f1eb44e98e0368","message":"docs(治理): 恢复开发计划全文(43edfb9 因写入中断被截断 322 行)并重做 §8 续四与 §1 仓与远端订正(本地 = Gitea 1c107178、GitHub fecacc75)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/ff27fe763d5bf0b9e6a42e7e53f1eb44e98e0368","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-24T17:05:51-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/开发计划.md"]}],"total_commits":0,"head_commit":{"id":"ff27fe763d5bf0b9e6a42e7e53f1eb44e98e0368","message":"docs(治理): 恢复开发计划全文(43edfb9 因写入中断被截断 322 行)并重做 §8 续四与 §1 仓与远端订正(本地 = Gitea 1c107178、GitHub fecacc75)\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/ff27fe763d5bf0b9e6a42e7e53f1eb44e98e0368","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-24T17:05:51-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":18128,"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":4,"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-25T08:04:35+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
|
1790295489
|
1790295579
|
0
|
1790294772
|
1790295579
|
|
|
0
|
Edit
Delete
|
|
24543
|
test(governance): bind integration experience evid test(governance): bind integration experience evidence...
|
76
|
5
|
governance.yml
|
148
|
5
|
0
|
refs/heads/main
|
b26d51b926223ee7c225026b86701bf5121b2e04
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"0ec1ffec8962590df5d7d130b04c445815f86a15","after":"b26d51b926223ee7c225026b86701bf5121b2e04","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/0ec1ffec8962590df5d7d130b04c445815f86a15...b26d51b926223ee7c225026b86701bf5121b2e04","commits":[{"id":"b26d51b926223ee7c225026b86701bf5121b2e04","message":"test(governance): bind integration experience evidence\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/b26d51b926223ee7c225026b86701bf5121b2e04","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-24T17:40:01-07:00","added":[],"removed":[],"modified":["reports/governance-docs.latest.json","reports/operations.latest.json","reports/report-transaction-lock.latest.json"]},{"id":"d95d68ba18c5dd9cbf57a43c80765333058903f5","message":"docs(control-plane): capture protected MCP integration lessons\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/d95d68ba18c5dd9cbf57a43c80765333058903f5","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-24T17:37:35-07:00","added":[],"removed":[],"modified":["docs/domain/enterprise-control-plane-integration-governance.md","docs/operations/control-plane-deployment-wiring-2026-09-24.md","docs/operations/control-plane-integration-governance-2026-09-24.md"]}],"total_commits":0,"head_commit":{"id":"b26d51b926223ee7c225026b86701bf5121b2e04","message":"test(governance): bind integration experience evidence\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/b26d51b926223ee7c225026b86701bf5121b2e04","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-24T17:40:01-07:00","added":[],"removed":[],"modified":["reports/governance-docs.latest.json","reports/operations.latest.json","reports/report-transaction-lock.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":97248,"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-25T08:26: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
|
36
|
1790297007
|
1790297098
|
0
|
1790297007
|
1790298139
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23779
|
merge: integrate completed director review workben merge: integrate completed director review workbench...
|
57
|
5
|
governance.yml
|
149
|
5
|
0
|
refs/heads/main
|
a7dc208b0a3f74330404cf65e778593857233112
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"5607ab611f1e74673856aa25aa3f8393e3140e35","after":"a7dc208b0a3f74330404cf65e778593857233112","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/5607ab611f1e74673856aa25aa3f8393e3140e35...a7dc208b0a3f74330404cf65e778593857233112","commits":[{"id":"a7dc208b0a3f74330404cf65e778593857233112","message":"merge: integrate completed director review workbench\n\n# Conflicts:\n#\tCLAUDE.md\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/a7dc208b0a3f74330404cf65e778593857233112","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-09T03:39:45-07:00","added":["docs/governance/log/2026-09-09-director-review.md","reports/director-review-20260909/README.md"],"removed":[],"modified":["CLAUDE.md","apps/web/src/components/material-factory/DirectorReviewWorkbench.tsx","apps/web/src/components/material-factory/StoryboardStudio.tsx","scripts/check-ui-acceptance.mjs"]},{"id":"748bb0072649cec3aa2503c079a8b9f14f8c8c4c","message":"fix(web): clarify completed director review and read-only fields\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/748bb0072649cec3aa2503c079a8b9f14f8c8c4c","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-09T03:30:43-07:00","added":[],"removed":[],"modified":["apps/web/src/components/material-factory/DirectorReviewWorkbench.tsx","scripts/check-ui-acceptance.mjs"]},{"id":"79c831a0a59a1a6328fe9a3166a9072da4854adb","message":"Merge branch 'main' into codex/director-review-20260909\n\n# Conflicts:\n#\tCLAUDE.md\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/79c831a0a59a1a6328fe9a3166a9072da4854adb","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-09T03:27:57-07:00","added":["apps/web/src/components/material-factory/useImageEditMask.ts","docs/governance/log/2026-09-09-image-edit-uiux.md","docs/releases/2026-09-09-history2.md","reports/image-edit-uiux-20260909/README.md","reports/image-edit-uiux-20260909/summary.json","reports/industry-trend-sources-20260909/live-verification.json","reports/industry-trend-sources-20260909/summary.json","scripts/lib/image-edit-ui-acceptance.mjs"],"removed":[],"modified":["CLAUDE.md","apps/web/e2e/specs/create-studio.spec.ts","apps/web/src/components/material-factory/InpaintStudio.tsx","docs/governance/log/2026-09-09-industry-trend-sources.md","docs/governance/log/2026-09-09-project-history.md","docs/releases/current.md","reports/contract-consumers.latest.json","reports/dependency-audit.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/industry-trend-sources-20260909/README.md","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/production-security.latest.json","reports/project-history-20260909/README.md","reports/project-history-20260909/summary.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-ui-acceptance.mjs","scripts/lib/storyboard-ui-fixture.mjs"]},{"id":"73f881750e86aec935991a2dfd1dc3e25c31cf46","message":"feat(web): complete director review workbench workflow\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/73f881750e86aec935991a2dfd1dc3e25c31cf46","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-09T03:26:42-07:00","added":["docs/governance/log/2026-09-09-director-review.md","reports/director-review-20260909/README.md"],"removed":[],"modified":["CLAUDE.md","apps/web/src/components/material-factory/DirectorReviewWorkbench.tsx","apps/web/src/components/material-factory/StoryboardStudio.tsx","scripts/check-ui-acceptance.mjs"]}],"total_commits":0,"head_commit":{"id":"a7dc208b0a3f74330404cf65e778593857233112","message":"merge: integrate completed director review workbench\n\n# Conflicts:\n#\tCLAUDE.md\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/a7dc208b0a3f74330404cf65e778593857233112","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-09T03:39:45-07:00","added":["docs/governance/log/2026-09-09-director-review.md","reports/director-review-20260909/README.md"],"removed":[],"modified":["CLAUDE.md","apps/web/src/components/material-factory/DirectorReviewWorkbench.tsx","apps/web/src/components/material-factory/StoryboardStudio.tsx","scripts/check-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":772118,"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-09T18:35: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
|
2
|
4
|
1788950404
|
1788950494
|
0
|
1788950403
|
1788950494
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24183
|
chore(reports): check:module-imports 回绑 @ 59265a6
|
116
|
5
|
platform.yml
|
149
|
5
|
0
|
refs/heads/main
|
ac4f5b8ef04795013b51bcb9bb6d4c353e091311
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"59265a6ffc4d0d4ffda878fd880a5d5a308720bb","after":"ac4f5b8ef04795013b51bcb9bb6d4c353e091311","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/59265a6ffc4d0d4ffda878fd880a5d5a308720bb...ac4f5b8ef04795013b51bcb9bb6d4c353e091311","commits":[{"id":"ac4f5b8ef04795013b51bcb9bb6d4c353e091311","message":"chore(reports): check:module-imports 回绑 @ 59265a6\n\n经 governance/rebind-reports.mjs 在 HEAD 的临时干净检出里重跑,绑 59265a6 /\nworktreeDirty=false,扫描 397 个源文件、0 处违规。\n\n上一次绑 557a95c,之后作用域内有两批改动:63ff31f 把 clients 三包的 devDeps pin 到 exact,\n59265a6 给 workbench 加了客户端状态 hook。397 = 上次的 396 + 新增的\nruntime/apps/workbench/src/lib/use-mounted.ts,数字对得上。\n\n这份报告此前卡了一轮:它的证据作用域含 runtime/apps,而并行会话正在改 workbench,\nrebind 按判据拒绝回绑(作用域内有未提交输入)。等其提交后抢的窗口。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/ac4f5b8ef04795013b51bcb9bb6d4c353e091311","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:41:33-07:00","added":[],"removed":[],"modified":["reports/module-imports.latest.json"]}],"total_commits":0,"head_commit":{"id":"ac4f5b8ef04795013b51bcb9bb6d4c353e091311","message":"chore(reports): check:module-imports 回绑 @ 59265a6\n\n经 governance/rebind-reports.mjs 在 HEAD 的临时干净检出里重跑,绑 59265a6 /\nworktreeDirty=false,扫描 397 个源文件、0 处违规。\n\n上一次绑 557a95c,之后作用域内有两批改动:63ff31f 把 clients 三包的 devDeps pin 到 exact,\n59265a6 给 workbench 加了客户端状态 hook。397 = 上次的 396 + 新增的\nruntime/apps/workbench/src/lib/use-mounted.ts,数字对得上。\n\n这份报告此前卡了一轮:它的证据作用域含 runtime/apps,而并行会话正在改 workbench,\nrebind 按判据拒绝回绑(作用域内有未提交输入)。等其提交后抢的窗口。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/ac4f5b8ef04795013b51bcb9bb6d4c353e091311","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:41:33-07:00","added":[],"removed":[],"modified":["reports/module-imports.latest.json"]},"repository":{"id":116,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"enterprise-platform","full_name":"luoanwu/enterprise-platform","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":21171,"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":44,"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-19T07:41:22+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
|
1789774924
|
0
|
1789774905
|
1789774924
|
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
|
|
24539
|
docs(治理): 开发计划 §8 续五记 GitHub 镜像同步(三端 1c107178,Acti docs(治理): 开发计划 §8 续五记 GitHub 镜像同步(三端 1c107178,Actions run 36076591423 steps=0 计费未恢复),§1 仓与远端订正...
|
117
|
5
|
governance.yml
|
149
|
5
|
0
|
refs/heads/main
|
794e1fc893d04c103e6d7d794a17077b2a9f2c88
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"ff27fe763d5bf0b9e6a42e7e53f1eb44e98e0368","after":"794e1fc893d04c103e6d7d794a17077b2a9f2c88","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/ff27fe763d5bf0b9e6a42e7e53f1eb44e98e0368...794e1fc893d04c103e6d7d794a17077b2a9f2c88","commits":[{"id":"794e1fc893d04c103e6d7d794a17077b2a9f2c88","message":"docs(治理): 开发计划 §8 续五记 GitHub 镜像同步(三端 1c107178,Actions run 36076591423 steps=0 计费未恢复),§1 仓与远端订正\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/794e1fc893d04c103e6d7d794a17077b2a9f2c88","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-24T17:15:53-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/开发计划.md"]}],"total_commits":0,"head_commit":{"id":"794e1fc893d04c103e6d7d794a17077b2a9f2c88","message":"docs(治理): 开发计划 §8 续五记 GitHub 镜像同步(三端 1c107178,Actions run 36076591423 steps=0 计费未恢复),§1 仓与远端订正\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/794e1fc893d04c103e6d7d794a17077b2a9f2c88","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-24T17:15:53-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":18239,"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":4,"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-25T08:06: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
|
4
|
1790295579
|
1790295610
|
0
|
1790295358
|
1790295610
|
|
|
0
|
Edit
Delete
|
|
24544
|
test(governance): bind integration experience evid test(governance): bind integration experience evidence...
|
76
|
5
|
platform-governance.yml
|
149
|
5
|
0
|
refs/heads/main
|
b26d51b926223ee7c225026b86701bf5121b2e04
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"0ec1ffec8962590df5d7d130b04c445815f86a15","after":"b26d51b926223ee7c225026b86701bf5121b2e04","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/0ec1ffec8962590df5d7d130b04c445815f86a15...b26d51b926223ee7c225026b86701bf5121b2e04","commits":[{"id":"b26d51b926223ee7c225026b86701bf5121b2e04","message":"test(governance): bind integration experience evidence\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/b26d51b926223ee7c225026b86701bf5121b2e04","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-24T17:40:01-07:00","added":[],"removed":[],"modified":["reports/governance-docs.latest.json","reports/operations.latest.json","reports/report-transaction-lock.latest.json"]},{"id":"d95d68ba18c5dd9cbf57a43c80765333058903f5","message":"docs(control-plane): capture protected MCP integration lessons\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/d95d68ba18c5dd9cbf57a43c80765333058903f5","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-24T17:37:35-07:00","added":[],"removed":[],"modified":["docs/domain/enterprise-control-plane-integration-governance.md","docs/operations/control-plane-deployment-wiring-2026-09-24.md","docs/operations/control-plane-integration-governance-2026-09-24.md"]}],"total_commits":0,"head_commit":{"id":"b26d51b926223ee7c225026b86701bf5121b2e04","message":"test(governance): bind integration experience evidence\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/b26d51b926223ee7c225026b86701bf5121b2e04","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-24T17:40:01-07:00","added":[],"removed":[],"modified":["reports/governance-docs.latest.json","reports/operations.latest.json","reports/report-transaction-lock.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":97248,"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-25T08:26: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
|
8
|
1790297098
|
1790298134
|
0
|
1790297007
|
1790298184
|
|
|
0
|
Edit
Delete
|
|
23780
|
Merge branch 'fix/storyboard-draft-model'
|
57
|
5
|
governance.yml
|
150
|
5
|
0
|
refs/heads/main
|
020ee8bcef399296b6afe1d19b912d8e7fcba72f
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"a7dc208b0a3f74330404cf65e778593857233112","after":"020ee8bcef399296b6afe1d19b912d8e7fcba72f","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/a7dc208b0a3f74330404cf65e778593857233112...020ee8bcef399296b6afe1d19b912d8e7fcba72f","commits":[{"id":"020ee8bcef399296b6afe1d19b912d8e7fcba72f","message":"Merge branch 'fix/storyboard-draft-model'\n\n# Conflicts:\n#\tCLAUDE.md\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/020ee8bcef399296b6afe1d19b912d8e7fcba72f","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-09T03:45:46-07:00","added":["docs/governance/log/2026-09-09-storyboard-asset-dialog.md","reports/storyboard-asset-dialog-20260909/README.md","reports/storyboard-asset-dialog-20260909/desktop.png","reports/storyboard-asset-dialog-20260909/mobile.png","reports/storyboard-asset-dialog-20260909/summary.json","scripts/lib/storyboard-asset-dialog-ui-acceptance.mjs"],"removed":[],"modified":["CLAUDE.md","apps/web/src/components/material-factory/StoryboardAssetGeneration.tsx","apps/web/src/components/material-factory/StoryboardStudio.tsx","reports/contract-consumers.latest.json","reports/dependency-audit.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/production-security.latest.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-ui-acceptance.mjs","scripts/lib/storyboard-ui-fixture.mjs"]},{"id":"cf8a43869accb16e1d0c5cea296cb3aef1c08493","message":"test(storyboard): verify frozen dialog release candidate\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/cf8a43869accb16e1d0c5cea296cb3aef1c08493","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-09T03:45:15-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/contract-consumers.latest.json","reports/dependency-audit.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/production-security.latest.json","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/sidecar-tests.latest.json","reports/storyboard-asset-dialog-20260909/README.md","reports/storyboard-asset-dialog-20260909/desktop.png","reports/storyboard-asset-dialog-20260909/summary.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json"]},{"id":"468f1626bf6182702b2f0588d493ff370b0e7942","message":"Merge branch 'main' into fix/storyboard-draft-model\n\n# Conflicts:\n#\tCLAUDE.md\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/468f1626bf6182702b2f0588d493ff370b0e7942","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-09T03:35:49-07:00","added":["docs/releases/2026-09-09-image-edit-uiux1.md"],"removed":[],"modified":["CLAUDE.md","apps/web/src/components/material-factory/TemplateStudio.tsx","docs/governance/log/2026-09-09-image-edit-uiux.md","docs/governance/log/2026-09-09-template-preview.md","docs/releases/current.md","reports/contract-consumers.latest.json","reports/dependency-audit.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/image-edit-uiux-20260909/README.md","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/production-security.latest.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/template-preview-20260909/README.md","reports/template-preview-20260909/summary.json","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/lib/template-preview-ui-acceptance.mjs"]},{"id":"bdf50df95829cfd505c2109cb70ae12e8179771e","message":"Merge branch 'main' into fix/storyboard-draft-model\n\n# Conflicts:\n#\tCLAUDE.md\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/bdf50df95829cfd505c2109cb70ae12e8179771e","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-09T03:28:10-07:00","added":["apps/web/src/components/material-factory/useImageEditMask.ts","docs/governance/log/2026-09-09-image-edit-uiux.md","docs/releases/2026-09-09-history2.md","reports/image-edit-uiux-20260909/README.md","reports/image-edit-uiux-20260909/summary.json","reports/industry-trend-sources-20260909/live-verification.json","reports/industry-trend-sources-20260909/summary.json","scripts/lib/image-edit-ui-acceptance.mjs"],"removed":[],"modified":["CLAUDE.md","apps/web/e2e/specs/create-studio.spec.ts","apps/web/src/components/material-factory/InpaintStudio.tsx","docs/governance/log/2026-09-09-industry-trend-sources.md","docs/governance/log/2026-09-09-project-history.md","docs/releases/current.md","reports/contract-consumers.latest.json","reports/dependency-audit.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/industry-trend-sources-20260909/README.md","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/production-security.latest.json","reports/project-history-20260909/README.md","reports/project-history-20260909/summary.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-ui-acceptance.mjs","scripts/lib/storyboard-ui-fixture.mjs"]},{"id":"e05f8bf3c4519bd7c8135ca93fc28c3f267db906","message":"test(storyboard): record verified asset generation dialog\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/e05f8bf3c4519bd7c8135ca93fc28c3f267db906","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-09T03:26:51-07:00","added":["reports/storyboard-asset-dialog-20260909/README.md","reports/storyboard-asset-dialog-20260909/desktop.png","reports/storyboard-asset-dialog-20260909/mobile.png","reports/storyboard-asset-dialog-20260909/summary.json"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-storyboard-asset-dialog.md"]}],"total_commits":0,"head_commit":{"id":"020ee8bcef399296b6afe1d19b912d8e7fcba72f","message":"Merge branch 'fix/storyboard-draft-model'\n\n# Conflicts:\n#\tCLAUDE.md\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/020ee8bcef399296b6afe1d19b912d8e7fcba72f","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-09T03:45:46-07:00","added":["docs/governance/log/2026-09-09-storyboard-asset-dialog.md","reports/storyboard-asset-dialog-20260909/README.md","reports/storyboard-asset-dialog-20260909/desktop.png","reports/storyboard-asset-dialog-20260909/mobile.png","reports/storyboard-asset-dialog-20260909/summary.json","scripts/lib/storyboard-asset-dialog-ui-acceptance.mjs"],"removed":[],"modified":["CLAUDE.md","apps/web/src/components/material-factory/StoryboardAssetGeneration.tsx","apps/web/src/components/material-factory/StoryboardStudio.tsx","reports/contract-consumers.latest.json","reports/dependency-audit.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/production-security.latest.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-ui-acceptance.mjs","scripts/lib/storyboard-ui-fixture.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":772416,"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-09T18:40: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
|
3
|
4
|
1788950764
|
1788950773
|
0
|
1788950764
|
1788950773
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24184
|
docs(部署): 记录补 §15——D-12 修掉(实为两处),以及重建产物撞出的两个部署坑
|
116
|
5
|
platform.yml
|
150
|
5
|
0
|
refs/heads/main
|
67e81931c6da187ea61adff37ad74a4d9b672e8e
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"ac4f5b8ef04795013b51bcb9bb6d4c353e091311","after":"67e81931c6da187ea61adff37ad74a4d9b672e8e","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/ac4f5b8ef04795013b51bcb9bb6d4c353e091311...67e81931c6da187ea61adff37ad74a4d9b672e8e","commits":[{"id":"67e81931c6da187ea61adff37ad74a4d9b672e8e","message":"docs(部署): 记录补 §15——D-12 修掉(实为两处),以及重建产物撞出的两个部署坑\n\n实现提交 59265a6。本节记三件事:\n\n一、D-12 登记的是顶栏,实际是两处同病,第二处(登录页的 typeof window 分支)每次打开都在报、\n与有没有会话无关。它还改写了一条既有结论:同源托管记录 §4.3 记的那个「缺配置」就是产物原文,\n客户端随后整片换掉了——当时看到的渲染没错,但那是水合失败后重渲染的结果,不是水合成功。\n定位用对照实验(清空会话重载不报、植入会话即报),不是读代码猜。\n\n二、重建静态产物撞出两个坑,都会让人误判成「发好了」:\n① next build 把 .env.local 烤进产物——第一次重建后 out/ 里出现 localhost:3098 与工作台\n clientId,而这份产物是给网关同源托管的,API 基地址本该为空。在有 .env.local 的开发机上\n 直接 build,等于把 dev 配置发到网关。\n② next build 删目录再造 out/,inode 变了,caddy 的绑定挂载失效、/srv/workbench 变空,\n 而网关照样回 200——发的是 25 字节占位响应。「200 且有内容」不等于「发的是你刚建的产物」。\n force-recreate 后恢复。时序上坑 ① 那份产物从未真正对外发过,因为坑 ② 同刻已让挂载失效。\n\n三、ui-acceptance 因改动落在 runtime/apps 按作用域过期,Owner 定:先提交、过期登记在案、\n重跑排到下一轮(D-14,与 D-13 同批)。在那之前该报告不覆盖本次工作台改动。\n\n同轮把已修的 D-12 从 §14.5 未闭环表摘出并指向 §15。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/67e81931c6da187ea61adff37ad74a4d9b672e8e","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:41:54-07:00","added":[],"removed":[],"modified":["docs/dev部署运行重做记录-2026-09-18.md"]}],"total_commits":0,"head_commit":{"id":"67e81931c6da187ea61adff37ad74a4d9b672e8e","message":"docs(部署): 记录补 §15——D-12 修掉(实为两处),以及重建产物撞出的两个部署坑\n\n实现提交 59265a6。本节记三件事:\n\n一、D-12 登记的是顶栏,实际是两处同病,第二处(登录页的 typeof window 分支)每次打开都在报、\n与有没有会话无关。它还改写了一条既有结论:同源托管记录 §4.3 记的那个「缺配置」就是产物原文,\n客户端随后整片换掉了——当时看到的渲染没错,但那是水合失败后重渲染的结果,不是水合成功。\n定位用对照实验(清空会话重载不报、植入会话即报),不是读代码猜。\n\n二、重建静态产物撞出两个坑,都会让人误判成「发好了」:\n① next build 把 .env.local 烤进产物——第一次重建后 out/ 里出现 localhost:3098 与工作台\n clientId,而这份产物是给网关同源托管的,API 基地址本该为空。在有 .env.local 的开发机上\n 直接 build,等于把 dev 配置发到网关。\n② next build 删目录再造 out/,inode 变了,caddy 的绑定挂载失效、/srv/workbench 变空,\n 而网关照样回 200——发的是 25 字节占位响应。「200 且有内容」不等于「发的是你刚建的产物」。\n force-recreate 后恢复。时序上坑 ① 那份产物从未真正对外发过,因为坑 ② 同刻已让挂载失效。\n\n三、ui-acceptance 因改动落在 runtime/apps 按作用域过期,Owner 定:先提交、过期登记在案、\n重跑排到下一轮(D-14,与 D-13 同批)。在那之前该报告不覆盖本次工作台改动。\n\n同轮把已修的 D-12 从 §14.5 未闭环表摘出并指向 §15。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/67e81931c6da187ea61adff37ad74a4d9b672e8e","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:41:54-07:00","added":[],"removed":[],"modified":["docs/dev部署运行重做记录-2026-09-18.md"]},"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":21174,"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":44,"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-19T07:41: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
|
2
|
30
|
1789774949
|
1789774987
|
0
|
1789774924
|
1789775032
|
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
|
|
24562
|
docs(设计): 订正基础设施实施基准与交付验收
|
117
|
5
|
governance.yml
|
150
|
5
|
0
|
refs/heads/main
|
cacfb5b139e429831a3d717c40834ec46fe9e442
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"794e1fc893d04c103e6d7d794a17077b2a9f2c88","after":"cacfb5b139e429831a3d717c40834ec46fe9e442","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/794e1fc893d04c103e6d7d794a17077b2a9f2c88...cacfb5b139e429831a3d717c40834ec46fe9e442","commits":[{"id":"cacfb5b139e429831a3d717c40834ec46fe9e442","message":"docs(设计): 订正基础设施实施基准与交付验收\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/cacfb5b139e429831a3d717c40834ec46fe9e442","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-24T20:48:19-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/docs/基础设施开发设计方案.md"]}],"total_commits":0,"head_commit":{"id":"cacfb5b139e429831a3d717c40834ec46fe9e442","message":"docs(设计): 订正基础设施实施基准与交付验收\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/cacfb5b139e429831a3d717c40834ec46fe9e442","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-24T20:48:19-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/docs/基础设施开发设计方案.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":18350,"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":4,"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-25T08:15: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
|
1790309184
|
1790309199
|
0
|
1790308148
|
1790309199
|
|
|
0
|
Edit
Delete
|
|
23781
|
Merge branch 'feat/template-preview'
|
57
|
5
|
governance.yml
|
151
|
5
|
0
|
refs/heads/main
|
257a004bb69bd2f85cb1fb75105e6cdc4e51b43c
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"020ee8bcef399296b6afe1d19b912d8e7fcba72f","after":"257a004bb69bd2f85cb1fb75105e6cdc4e51b43c","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/020ee8bcef399296b6afe1d19b912d8e7fcba72f...257a004bb69bd2f85cb1fb75105e6cdc4e51b43c","commits":[{"id":"257a004bb69bd2f85cb1fb75105e6cdc4e51b43c","message":"Merge branch 'feat/template-preview'\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/257a004bb69bd2f85cb1fb75105e6cdc4e51b43c","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-09T03:46:03-07:00","added":["docs/releases/2026-09-09-template-preview1.md","reports/template-preview-20260909/live-browser.json"],"removed":[],"modified":["docs/governance/log/2026-09-09-template-preview.md","docs/releases/current.md","reports/template-preview-20260909/README.md"]},{"id":"207f19c3f9c6c63a6595fa2c0b0358b3866027dd","message":"docs: record verified template preview rollout\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/207f19c3f9c6c63a6595fa2c0b0358b3866027dd","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-09T03:45:29-07:00","added":["docs/releases/2026-09-09-template-preview1.md","reports/template-preview-20260909/live-browser.json"],"removed":[],"modified":["docs/governance/log/2026-09-09-template-preview.md","docs/releases/current.md","reports/template-preview-20260909/README.md"]}],"total_commits":0,"head_commit":{"id":"257a004bb69bd2f85cb1fb75105e6cdc4e51b43c","message":"Merge branch 'feat/template-preview'\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/257a004bb69bd2f85cb1fb75105e6cdc4e51b43c","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-09T03:46:03-07:00","added":["docs/releases/2026-09-09-template-preview1.md","reports/template-preview-20260909/live-browser.json"],"removed":[],"modified":["docs/governance/log/2026-09-09-template-preview.md","docs/releases/current.md","reports/template-preview-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":772999,"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-09T18:46: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
|
1788950773
|
1788950878
|
0
|
1788950773
|
1788950878
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24185
|
chore(release): 三包推到 1.0.0-rc.5——pins 三层判据随包出去,fac chore(release): 三包推到 1.0.0-rc.5——pins 三层判据随包出去,fact-pii 有意留在仓内...
|
116
|
5
|
platform.yml
|
151
|
5
|
0
|
refs/heads/main
|
cf05344e117a84fedf092613be5fc13b7a07072b
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"67e81931c6da187ea61adff37ad74a4d9b672e8e","after":"cf05344e117a84fedf092613be5fc13b7a07072b","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/67e81931c6da187ea61adff37ad74a4d9b672e8e...cf05344e117a84fedf092613be5fc13b7a07072b","commits":[{"id":"cf05344e117a84fedf092613be5fc13b7a07072b","message":"chore(release): 三包推到 1.0.0-rc.5——pins 三层判据随包出去,fact-pii 有意留在仓内\n\n动因:check:pins 的三层判据(63ff31f)还不在任何已发布版本里,而 @juhai/governance 的\nrc.0—rc.4 已全部被占用,按 G-12 的边界只能往前发下一个 RC。\n\n**发布物里有什么、没有什么,说清楚免得下一个人误读:** check-pins.mjs 在 governance 包的\nfiles 里,所以三层判据随包出去,消费者仓跑 juhai-governance check:pins 会拿到新判据\n(他们没有 pins-baseline.json,第三方层不启用,行为与 rc.4 一致——这是设计好的向后兼容)。\n而 check-fact-pii.mjs 与 fact-pii-rules.json **有意不进 files**:它扫的是\ncontracts/schemas/facts/ 与 contracts/candidates/facts/,消费者仓根本没有这两个目录,\n发过去是道跑不起来的门禁。它属于本轮源码,但不是本轮发布物的一部分。\n\n自 rc.4 源 557a95c 起的随车内容(比 rc.4 那趟小得多):\n contracts 14 文件 / 6 提交(7 个代码文件,三个域的 fixture-evaluator 与其单测)\n governance 10 文件 / 3 提交(两道新门禁 + 夹具覆盖度算法入文档)\n runtime/clients/fact 1 文件 / 1 提交 —— **只有 package.json,零内容变更,纯跟车**\n\n通道:本地旁路(G-12 第四次使用)。2026-09-18 实测:GitHub Actions 最新 run 35404565689 仍\nfailure(两个 job failure、其余 skipped,计费停摆的典型形态),正道仍不可满足。\n\n**一处新情况:推送死锁已解开。** rc.4 那趟记的是「GitHub 镜像落后 237 条、因分支保护的\nrequired check 跑不起来而推不动」;本次实测镜像落后已降到 24 条,github/main 指向 54e6324,\n说明有人把提交推上去了。但 Actions 仍不启动,所以正道仍差这一半——计费恢复后即可直接走正道,\n不必再先解死锁。\n\n按 CL-5 打 tag packages-v1.0.0-rc.5。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/cf05344e117a84fedf092613be5fc13b7a07072b","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:45:09-07:00","added":[],"removed":[],"modified":["contracts/package.json","governance/package.json","runtime/clients/fact/package.json"]},{"id":"ff80f7e1b91b7fb012f0488736bce79b33db3ad5","message":"docs(记录): 一个会话的契约包入参硬化与证据收口——重点是四次自我更正\n\n把散在提交信息与开发计划登记行里的结论汇到一处。写的是单个会话的范围,不代为总结\n同日并行会话在九个域做的同类工作;凡带数字的当前状态一律标注为落盘时点快照。\n\n四次更正里三次是判断错了、一次是方法缺了一步:\n\n1. 注册中心那套被放弃是对的,且不是风格之争。我当时报的「远端那版大部分相当,唯一\n 差异是原因码命名」是靠读代码比对得出的,后被 7523bd0 的双向交叉实测推翻——被放弃\n 那套有 4 个实缺陷,其中一条是它自己的注释抱怨「同一摘要两种写法等于两个身份」,\n 却只在入口拒大写、升级比较那条路上没修完。整个会话的方法论是先实测再下结论,\n 对自己的产物我没照做。\n2. module-imports 那次回绑是多余的,已撤回未提交。判据应为「这份报告现在是否被判\n 过期」,而不是「作用域是否干净」。\n3. 独立索引提交后必须 git reset 刷回共享索引,否则并行会话下次从索引提交会把已提交\n 改动带回去——本会话实际发生过一次。\n4. 上述回退事件一度被我误判为对方回退,实为 --amend 改写 SHA 叠加 BSD grep 的 \\| 不是\n 或运算符导致核实命令恒返回 0。核实要用 grep -E,且以内容为准不以 SHA 为准。\n\n另记回绑需构建产物门禁的两条实操约束:检出必须落在工作区内(workspaceRelative 套件\n要向上找 workspace.json),以及该不该回绑看作用域内有无未提交输入而非全仓是否干净。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/ff80f7e1b91b7fb012f0488736bce79b33db3ad5","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:44:30-07:00","added":["docs/契约包入参硬化与证据收口-2026-09-18.md"],"removed":[],"modified":[]},{"id":"bf834ce6bcb9551474ff6a18abaa832f2302739f","message":"test(contracts): 配置与开关最大的一支规则不在门禁上——refresh 的六条原因码一条没钉,含明文密钥那条\n\n覆盖度探针对本套件的读数是「都没有 0 / 仅单测 0」,看上去已收口。但它按自述只变异夹具已有用例的\n字段,而 configuration-client.ts(167 行,LocalConfigurationClient 的 create / status / get / refresh)\n一条夹具用例都没有——整支规则从来不在它的统计口径里。两个规则文件零改动,只动夹具评估器。\n\n1. refresh() 的六条原因码一条都没钉:SNAPSHOT_FORMAT_INVALID、SNAPSHOT_VERSION_NOT_FORWARD、\n SNAPSHOT_NOT_APPROVED、SNAPSHOT_SCHEMA_INVALID、PLAINTEXT_SECRET_FORBIDDEN、SNAPSHOT_VERSION_STALE。\n 其中 PLAINTEXT_SECRET_FORBIDDEN 有两条到达路径——候选显式标注,以及键名命中密钥模式\n (normalizeSnapshot 把两者 OR 起来,apiToken 这样的键足以触发)——都在门禁之外。\n 新增 client 规则:按 active 建客户端再喂候选热更,APPLIED 为放行,否则返回 KEPT_LAST_KNOWN_GOOD\n 给出的 reasons;create 在两份快照都不可用时会抛,评估器收敛成 CONFIGURATION_UNAVAILABLE: 原因码,\n 而不是让整套夹具塌成 configurationError。\n\n2. snapshot 把 USE_LAST_KNOWN_GOOD 判成放行:候选被拒退回上一版与候选被采纳在夹具里是同一个结果,\n 实测「候选未批准」「候选含明文密钥」两种退回都判 ACCEPT。这一条改的是既有的、有意为之的口径\n (原评估器抬头写着「只有 USE_CANDIDATE / USE_LAST_KNOWN_GOOD 算放行」),理由是与同仓兄弟域对齐——\n 通知与 Webhook 的评估器写着「DUPLICATE / RETRY / DLQ / REJECT_REPLAY 都如实返回,因为它们在消费侧的\n 后果都不是『这次投递成功了』」。退回上一版同样不是「这次配置更新成功了」。\n 原 P04-falls-back-to-last-known-good 随之改名 N15-(门禁强制 id 前缀与 expect 一致)。\n\n一处明写不覆盖:refresh() 的 SNAPSHOT_VERSION_STALE 按构造不可达——active 建客户端时已过版本下限、\n候选又必须比 active 前进,合起来候选不可能低于下限;configuration-client.ts 抬头自己写明那是防御性\n补的一笔。N24 改钉「两份快照都不可用时 create 抛 CONFIGURATION_UNAVAILABLE:」这条真实出口。\n\n覆盖:夹具 18 → 28 例(正 4 / 反 24),定向测试 21 → 25 例,前一轮断言一条未改;\nfixture-coverage 稳定码 8 → 11,两档仍 0 / 0。变异探针(28 例 × 14 种脏值)4200 个变异点、0 处抛异常。\n\n未做(越界):分桶、发布状态机、kill switch 仍不在本仓,C13 按缺失模块完善清单仍是「裁决」;\nCatalog 登记未动(仍 module_e2、code_truth 指向工单仓 packages/configuration-client)。\n\n证据:pnpm --dir contracts build / typecheck 绿、check:generated 14 files / 12 schemas 无漂移、\nnode --test contracts/test/*.test.mjs 408/408、该套件夹具 28/28 失败 0。\n负向实测:把 N23(密钥键名那条)的声明改成 SNAPSHOT_NOT_APPROVED → 门禁 exit 1 并点名该例,还原后 exit 0。\n本次不回绑任何 reports/。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/bf834ce6bcb9551474ff6a18abaa832f2302739f","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:44:11-07:00","added":[],"removed":[],"modified":["contracts/SOURCE.md","contracts/src/domain/configuration-feature-flags/fixture-evaluator.ts","contracts/test/configuration-feature-flags-domain.test.mjs","contracts/test/fixtures/configuration-feature-flags.fixtures.json","docs/domain/feature-flag-blueprint.md"]}],"total_commits":0,"head_commit":{"id":"cf05344e117a84fedf092613be5fc13b7a07072b","message":"chore(release): 三包推到 1.0.0-rc.5——pins 三层判据随包出去,fact-pii 有意留在仓内\n\n动因:check:pins 的三层判据(63ff31f)还不在任何已发布版本里,而 @juhai/governance 的\nrc.0—rc.4 已全部被占用,按 G-12 的边界只能往前发下一个 RC。\n\n**发布物里有什么、没有什么,说清楚免得下一个人误读:** check-pins.mjs 在 governance 包的\nfiles 里,所以三层判据随包出去,消费者仓跑 juhai-governance check:pins 会拿到新判据\n(他们没有 pins-baseline.json,第三方层不启用,行为与 rc.4 一致——这是设计好的向后兼容)。\n而 check-fact-pii.mjs 与 fact-pii-rules.json **有意不进 files**:它扫的是\ncontracts/schemas/facts/ 与 contracts/candidates/facts/,消费者仓根本没有这两个目录,\n发过去是道跑不起来的门禁。它属于本轮源码,但不是本轮发布物的一部分。\n\n自 rc.4 源 557a95c 起的随车内容(比 rc.4 那趟小得多):\n contracts 14 文件 / 6 提交(7 个代码文件,三个域的 fixture-evaluator 与其单测)\n governance 10 文件 / 3 提交(两道新门禁 + 夹具覆盖度算法入文档)\n runtime/clients/fact 1 文件 / 1 提交 —— **只有 package.json,零内容变更,纯跟车**\n\n通道:本地旁路(G-12 第四次使用)。2026-09-18 实测:GitHub Actions 最新 run 35404565689 仍\nfailure(两个 job failure、其余 skipped,计费停摆的典型形态),正道仍不可满足。\n\n**一处新情况:推送死锁已解开。** rc.4 那趟记的是「GitHub 镜像落后 237 条、因分支保护的\nrequired check 跑不起来而推不动」;本次实测镜像落后已降到 24 条,github/main 指向 54e6324,\n说明有人把提交推上去了。但 Actions 仍不启动,所以正道仍差这一半——计费恢复后即可直接走正道,\n不必再先解死锁。\n\n按 CL-5 打 tag packages-v1.0.0-rc.5。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/cf05344e117a84fedf092613be5fc13b7a07072b","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:45:09-07:00","added":[],"removed":[],"modified":["contracts/package.json","governance/package.json","runtime/clients/fact/package.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":21200,"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":44,"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-19T07:42: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
|
2
|
30
|
1789775182
|
1789775222
|
0
|
1789775181
|
1789775251
|
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
|
|
24566
|
docs(治理): 开发计划 §8 续六记第四轮 H-3 / M-5 / M-7 由并行会话落地、本 docs(治理): 开发计划 §8 续六记第四轮 H-3 / M-5 / M-7 由并行会话落地、本会话落 C-9 (f)(本地 = Gitea cae00ac7)与分工教训...
|
117
|
5
|
governance.yml
|
151
|
5
|
0
|
refs/heads/main
|
a390d18fe5696d4becdb871a5d6f130638f87838
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"cacfb5b139e429831a3d717c40834ec46fe9e442","after":"a390d18fe5696d4becdb871a5d6f130638f87838","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/cacfb5b139e429831a3d717c40834ec46fe9e442...a390d18fe5696d4becdb871a5d6f130638f87838","commits":[{"id":"a390d18fe5696d4becdb871a5d6f130638f87838","message":"docs(治理): 开发计划 §8 续六记第四轮 H-3 / M-5 / M-7 由并行会话落地、本会话落 C-9 (f)(本地 = Gitea cae00ac7)与分工教训\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/a390d18fe5696d4becdb871a5d6f130638f87838","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-24T21:08:09-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/开发计划.md"]},{"id":"8758640b34321b1ebafb54d349013f352745fbfe","message":"docs(设计): 开发设计方案 v1.2.1 订正——历史快照范围扩至 §4.2 / §10—§18 / §20 与附录,§22.1 / §23 补 CHG-018 条件 A 已满足与工作台已建,§18 补 CHG-001—005 应用状态,证据新鲜度句绑定真源仓 08b17607 读数\n\n- 只增不删:§4.2 / §4.3 / §6.4 / §18 / §22.1 / §23 各加 2026-09-24 订正行(目录实测、10 个客户端包、CHG 应用状态、条件 A 已满足、工作台已建)\n- 治理一致性门禁 --only L4,L10:CLEAN(0 issues,4852 links);本文 30 处本地链接全部可解析\n- 仅改设计文档,不改 Catalog、模块档位或环境\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/8758640b34321b1ebafb54d349013f352745fbfe","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-24T21:05:25-07:00","added":[],"removed":[],"modified":["平台治理/基础设施文档/docs/基础设施开发设计方案.md"]}],"total_commits":0,"head_commit":{"id":"a390d18fe5696d4becdb871a5d6f130638f87838","message":"docs(治理): 开发计划 §8 续六记第四轮 H-3 / M-5 / M-7 由并行会话落地、本会话落 C-9 (f)(本地 = Gitea cae00ac7)与分工教训\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/a390d18fe5696d4becdb871a5d6f130638f87838","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-24T21:08:09-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":18383,"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":4,"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-25T11:49:08+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
|
1790309356
|
1790309372
|
0
|
1790309355
|
1790309372
|
|
|
0
|
Edit
Delete
|
|
23782
|
Merge branch 'fix/storyboard-draft-model'
|
57
|
5
|
governance.yml
|
152
|
5
|
0
|
refs/heads/main
|
2ffa994dd2e7905004da4ba204e7fc38fc491694
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"257a004bb69bd2f85cb1fb75105e6cdc4e51b43c","after":"2ffa994dd2e7905004da4ba204e7fc38fc491694","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/257a004bb69bd2f85cb1fb75105e6cdc4e51b43c...2ffa994dd2e7905004da4ba204e7fc38fc491694","commits":[{"id":"2ffa994dd2e7905004da4ba204e7fc38fc491694","message":"Merge branch 'fix/storyboard-draft-model'\n\n# Conflicts:\n#\tdocs/releases/current.md\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/2ffa994dd2e7905004da4ba204e7fc38fc491694","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-09T03:56:27-07:00","added":["docs/releases/2026-09-09-storyboard-assets1.md","reports/storyboard-asset-dialog-20260909/live-verification.json"],"removed":[],"modified":["docs/governance/log/2026-09-09-storyboard-asset-dialog.md","docs/releases/current.md","reports/storyboard-asset-dialog-20260909/README.md","reports/storyboard-asset-dialog-20260909/summary.json"]},{"id":"8bc9cb7853ab99b1886f416dbf6f4a3119a76756","message":"docs: record verified storyboard asset dialog rollout\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/8bc9cb7853ab99b1886f416dbf6f4a3119a76756","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-09T03:54:57-07:00","added":["docs/releases/2026-09-09-storyboard-assets1.md","reports/storyboard-asset-dialog-20260909/live-verification.json"],"removed":[],"modified":["docs/governance/log/2026-09-09-storyboard-asset-dialog.md","docs/releases/current.md","reports/storyboard-asset-dialog-20260909/README.md","reports/storyboard-asset-dialog-20260909/summary.json"]}],"total_commits":0,"head_commit":{"id":"2ffa994dd2e7905004da4ba204e7fc38fc491694","message":"Merge branch 'fix/storyboard-draft-model'\n\n# Conflicts:\n#\tdocs/releases/current.md\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/2ffa994dd2e7905004da4ba204e7fc38fc491694","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-09T03:56:27-07:00","added":["docs/releases/2026-09-09-storyboard-assets1.md","reports/storyboard-asset-dialog-20260909/live-verification.json"],"removed":[],"modified":["docs/governance/log/2026-09-09-storyboard-asset-dialog.md","docs/releases/current.md","reports/storyboard-asset-dialog-20260909/README.md","reports/storyboard-asset-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":773034,"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-09T18:46:13+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
|
1788951392
|
1788951453
|
0
|
1788951392
|
1788951453
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24186
|
docs(治理): 覆盖度探针读数为 0 不等于该域已收口——把最大的盲区和先做结构比对写进 CLA docs(治理): 覆盖度探针读数为 0 不等于该域已收口——把最大的盲区和先做结构比对写进 CLAUDE.md...
|
116
|
5
|
platform.yml
|
152
|
5
|
0
|
refs/heads/main
|
62c9d953569c6a146215a0e5511efc292e3f7740
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"cf05344e117a84fedf092613be5fc13b7a07072b","after":"62c9d953569c6a146215a0e5511efc292e3f7740","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/cf05344e117a84fedf092613be5fc13b7a07072b...62c9d953569c6a146215a0e5511efc292e3f7740","commits":[{"id":"62c9d953569c6a146215a0e5511efc292e3f7740","message":"docs(治理): 覆盖度探针读数为 0 不等于该域已收口——把最大的盲区和先做结构比对写进 CLAUDE.md\n\nfixture-coverage.mjs 的局限第一条「只变异夹具已有用例的字段」,实际后果比字面严重:\n整支规则若一条夹具用例都没有,它根本不进统计,读数会一直显示 0/0。只看读数会以为收完了。\n\n2026-09-18 四次命中同一形状,当时四个域的读数都是 0:\n collaboration-messaging plan 分不出 ADMIT 与 SKIP_DUPLICATE\n notification-webhook decideProviderOutcome 没有规则(退避与 Retry-After 钳制全在里面)\n application-contract-registry plan 把 BLOCKED 判成放行,且没有一条用例带合法快照\n configuration-feature-flags configuration-client.ts(167 行,本域最大的一支)整个文件没有规则\n\n补进去的是可操作的两步,不是结论:\n1. 先做结构比对再看读数——把 index.ts 导出的规则函数与 planner 的公开方法(plan / refresh / status /\n 域特有方法)列出来逐个对 *_FIXTURE_RULES,对不上的先补规则、补一条带合法快照的正例。\n2. 连带查评估器判据——写成 `\"reasons\" in r` 这类按字段存在与否判放行的,凡是不带 reasons 的非放行出口\n (BLOCKED / SKIP_DUPLICATE / DLQ / DUPLICATE_NOOP / USE_LAST_KNOWN_GOOD)都会被判成 ACCEPT,\n 一律改成按 kind 判定。\n并写明:补规则后覆盖度会先变差(新面第一次被走到),那是对的,把新暴露的原因码钉完再收工。\n\n顺带把同段的例数从 458 更正为 468(C13 那轮 +10),按实跑 check:fixtures 的输出校对过。\n\n证据:check:fixtures 17 套件 468 例 0 失败 0 不可用;fixture-coverage 15 套件两档仍全 0;\n工作区一致性门禁只剩既有的 L9 compose project 撞名,无新增 L4 / L13。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/62c9d953569c6a146215a0e5511efc292e3f7740","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:47:21-07:00","added":[],"removed":[],"modified":["CLAUDE.md"]}],"total_commits":0,"head_commit":{"id":"62c9d953569c6a146215a0e5511efc292e3f7740","message":"docs(治理): 覆盖度探针读数为 0 不等于该域已收口——把最大的盲区和先做结构比对写进 CLAUDE.md\n\nfixture-coverage.mjs 的局限第一条「只变异夹具已有用例的字段」,实际后果比字面严重:\n整支规则若一条夹具用例都没有,它根本不进统计,读数会一直显示 0/0。只看读数会以为收完了。\n\n2026-09-18 四次命中同一形状,当时四个域的读数都是 0:\n collaboration-messaging plan 分不出 ADMIT 与 SKIP_DUPLICATE\n notification-webhook decideProviderOutcome 没有规则(退避与 Retry-After 钳制全在里面)\n application-contract-registry plan 把 BLOCKED 判成放行,且没有一条用例带合法快照\n configuration-feature-flags configuration-client.ts(167 行,本域最大的一支)整个文件没有规则\n\n补进去的是可操作的两步,不是结论:\n1. 先做结构比对再看读数——把 index.ts 导出的规则函数与 planner 的公开方法(plan / refresh / status /\n 域特有方法)列出来逐个对 *_FIXTURE_RULES,对不上的先补规则、补一条带合法快照的正例。\n2. 连带查评估器判据——写成 `\"reasons\" in r` 这类按字段存在与否判放行的,凡是不带 reasons 的非放行出口\n (BLOCKED / SKIP_DUPLICATE / DLQ / DUPLICATE_NOOP / USE_LAST_KNOWN_GOOD)都会被判成 ACCEPT,\n 一律改成按 kind 判定。\n并写明:补规则后覆盖度会先变差(新面第一次被走到),那是对的,把新暴露的原因码钉完再收工。\n\n顺带把同段的例数从 458 更正为 468(C13 那轮 +10),按实跑 check:fixtures 的输出校对过。\n\n证据:check:fixtures 17 套件 468 例 0 失败 0 不可用;fixture-coverage 15 套件两档仍全 0;\n工作区一致性门禁只剩既有的 L9 compose project 撞名,无新增 L4 / L13。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/62c9d953569c6a146215a0e5511efc292e3f7740","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:47:21-07:00","added":[],"removed":[],"modified":["CLAUDE.md"]},"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":21284,"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":44,"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-19T07:46:22+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
|
1789775278
|
1789775318
|
0
|
1789775276
|
1789775347
|
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
|
|
23783
|
Merge branch 'main' into feat/template-mak Merge branch 'main' into feat/template-making-uiux...
|
57
|
5
|
governance.yml
|
153
|
5
|
0
|
refs/heads/main
|
83ca52c75109e9efbdc06a0891bc15c0a859ad21
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"2ffa994dd2e7905004da4ba204e7fc38fc491694","after":"83ca52c75109e9efbdc06a0891bc15c0a859ad21","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/2ffa994dd2e7905004da4ba204e7fc38fc491694...83ca52c75109e9efbdc06a0891bc15c0a859ad21","commits":[{"id":"83ca52c75109e9efbdc06a0891bc15c0a859ad21","message":"Merge branch 'main' into feat/template-making-uiux\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/83ca52c75109e9efbdc06a0891bc15c0a859ad21","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:02:57-07:00","added":["docs/releases/2026-09-09-storyboard-assets1.md","docs/releases/2026-09-09-template-preview1.md","reports/storyboard-asset-dialog-20260909/live-verification.json","reports/template-preview-20260909/live-browser.json"],"removed":[],"modified":["docs/governance/log/2026-09-09-storyboard-asset-dialog.md","docs/governance/log/2026-09-09-template-preview.md","docs/releases/current.md","reports/storyboard-asset-dialog-20260909/README.md","reports/storyboard-asset-dialog-20260909/summary.json","reports/template-preview-20260909/README.md"]},{"id":"7764b0fe9bd4e75717d55a15714ed5c3ec38dce2","message":"test: record complete template making acceptance evidence\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/7764b0fe9bd4e75717d55a15714ed5c3ec38dce2","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:02:57-07:00","added":["reports/template-making-uiux-20260909/summary.json"],"removed":[],"modified":["CLAUDE.md","docs/governance/log/2026-09-09-template-making-uiux.md","reports/contract-consumers.latest.json","reports/dependency-audit.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/production-security.latest.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/template-making-uiux-20260909/README.md","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json"]},{"id":"7f9a67663e90ee81dc1d8219c2f4cda76a049147","message":"test(web): wait for storyboard image catalog readiness\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/7f9a67663e90ee81dc1d8219c2f4cda76a049147","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-09T03:57:00-07:00","added":[],"removed":[],"modified":["scripts/lib/storyboard-asset-dialog-ui-acceptance.mjs"]},{"id":"e449ca48b347b2897711ac767363066627acbc4f","message":"Merge branch 'main' into feat/template-making-uiux\n\n# Conflicts:\n#\tCLAUDE.md\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/e449ca48b347b2897711ac767363066627acbc4f","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-09T03:46:40-07:00","added":["docs/governance/log/2026-09-09-storyboard-asset-dialog.md","reports/storyboard-asset-dialog-20260909/README.md","reports/storyboard-asset-dialog-20260909/desktop.png","reports/storyboard-asset-dialog-20260909/mobile.png","reports/storyboard-asset-dialog-20260909/summary.json","scripts/lib/storyboard-asset-dialog-ui-acceptance.mjs"],"removed":[],"modified":["apps/web/src/components/material-factory/StoryboardAssetGeneration.tsx","apps/web/src/components/material-factory/StoryboardStudio.tsx","reports/contract-consumers.latest.json","reports/dependency-audit.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/production-security.latest.json","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/sidecar-tests.latest.json","reports/storyboard-director-guard.latest.json","reports/toolchain.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-ui-acceptance.mjs","scripts/lib/storyboard-ui-fixture.mjs"]},{"id":"9762116a19c287d5a537d6c01ca135a743f48c7a","message":"test(web): account for explicitly injected master image failures\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/9762116a19c287d5a537d6c01ca135a743f48c7a","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-09T03:45:53-07:00","added":[],"removed":[],"modified":["scripts/check-ui-acceptance.mjs","scripts/lib/template-making-ui-acceptance.mjs"]}],"total_commits":0,"head_commit":{"id":"83ca52c75109e9efbdc06a0891bc15c0a859ad21","message":"Merge branch 'main' into feat/template-making-uiux\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/83ca52c75109e9efbdc06a0891bc15c0a859ad21","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:02:57-07:00","added":["docs/releases/2026-09-09-storyboard-assets1.md","docs/releases/2026-09-09-template-preview1.md","reports/storyboard-asset-dialog-20260909/live-verification.json","reports/template-preview-20260909/live-browser.json"],"removed":[],"modified":["docs/governance/log/2026-09-09-storyboard-asset-dialog.md","docs/governance/log/2026-09-09-template-preview.md","docs/releases/current.md","reports/storyboard-asset-dialog-20260909/README.md","reports/storyboard-asset-dialog-20260909/summary.json","reports/template-preview-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":773070,"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-09T18:56: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
|
4
|
1788951794
|
1788951834
|
0
|
1788951793
|
1788951834
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
24187
|
feat(governance): 覆盖度探针自己查「整支规则没接进评估器」——那是它此前按设计看不 feat(governance): 覆盖度探针自己查「整支规则没接进评估器」——那是它此前按设计看不见的盲区...
|
116
|
5
|
platform.yml
|
153
|
5
|
0
|
refs/heads/main
|
e79e5f2b943a633299851dbc7709455247a415ef
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62c9d953569c6a146215a0e5511efc292e3f7740","after":"e79e5f2b943a633299851dbc7709455247a415ef","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/62c9d953569c6a146215a0e5511efc292e3f7740...e79e5f2b943a633299851dbc7709455247a415ef","commits":[{"id":"e79e5f2b943a633299851dbc7709455247a415ef","message":"feat(governance): 覆盖度探针自己查「整支规则没接进评估器」——那是它此前按设计看不见的盲区\n\n上一条(62c9d95)把盲区与绕开它的两步写进了 CLAUDE.md,但那只是文档约束,人不比对就不会发现。\n本次把两项结构比对做进 governance/fixture-coverage.mjs:它们不依赖夹具,因而看得见「从没有用例的那一面」。\n\n1. 未接线列:导入域的 index.js,把导出的判定函数(assess|review|classify|select|decide|plan|preflight|\n evaluate 打头)与 planner 原型方法逐个对评估器源码里的引用,没被引用的报出来。\n2. !!! 行:评估器写成 `\"reasons\" in r ? … : []` 时提醒——该规则结果联合体里一旦出现不带 reasons 的\n 非放行出口(BLOCKED / SKIP_DUPLICATE / DLQ / DUPLICATE_NOOP / USE_LAST_KNOWN_GOOD)就会被静默判成 ACCEPT。\n\n对着 15 个真实套件跑,逮到两类误报,都已修,并写成用例钉住:\n- planner 多数经 createRuntimeX() 工厂到达,类名根本不出现在评估器里。按「类名没出现」判整支未接线会把\n 跨域流程、Webhook、public-file 等全报一遍。改成按「一个方法都没被调」判,并排除 status/get 这类\n 只读访问器与错误类(AiRouteRequestRejected / AuditRequestRejected 不是判定面)。\n- cost-capacity 与 notification-webhook 把旧写法 `\"reasons\" in d ? [...] : []` 抄在注释里当变更记录,\n 按原文匹配会把两个已经改对的域报成缺陷。改成先去注释再匹配。\n措辞也相应收敛:`!!!` 行现在说「今天未必已经出错,但联合体里一旦出现…就会被静默判成 ACCEPT」,\n而不是断言它已经错了——跨域流程那处就属于「今天正确、但脆」。\n\n新增 governance/test/fixture-coverage.test.mjs(3 例):该脚本此前是 governance/ 下唯一没有测试的。\n用临时自足域验三件事——只报没被调的方法、经工厂到达的类不报整支未接线、注释里的旧写法不报。\n\n当前读数(均未处理,已登记进 CLAUDE.md 同段):\n 九个契约包域 未接线 1 处:LocalWorkflowPlanner.refresh()\n 运行时模块侧 未接线 9 处:ai-gateway 2 / permission 3 / audit / credential / fact / scope 各 1\n\n证据:pnpm test(governance)364/364;check-fixtures 17 套件 468 例 0 失败;\n「夹具与单测都没有」仍 0 条;工作区一致性门禁只剩既有的 L9 compose project 撞名。\n脚本仍是诊断而非门禁——不写报告、不进 pnpm check,故本次不涉及 reports 回绑。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/e79e5f2b943a633299851dbc7709455247a415ef","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:51:13-07:00","added":["governance/test/fixture-coverage.test.mjs"],"removed":[],"modified":["governance/fixture-coverage.mjs"]},{"id":"fed1fd024bc60a4feef89dff7c2ec028e0bcb066","message":"docs(发布): 当场记录 rc.5 列车——三层判据随包出去,fact-pii 有意留在仓内\n\nrc.5 三包 2026-09-18 经本地旁路发出,源 cf05344,tag packages-v1.0.0-rc.5(连续第二趟按 CL-5\n打上)。三包均 registry integrity verified;产物 contracts 183.0 kB / governance 96.9 kB /\nclient-fact 17.4 kB,shasum 记在文档里。\n\n记录里写清了三件容易被误读的事:\n\n1. 发布物里有什么、没有什么。check-pins.mjs 在 governance 包的 files 里,三层判据随包出去,\n 消费者仓拿到新判据后因无 pins-baseline 而第三方层不启用,行为与 rc.4 一致(设计好的向后兼容)。\n check-fact-pii.mjs 与 fact-pii-rules.json **有意不进 files**——它扫 contracts/schemas/facts/,\n 消费者仓没有那个目录,发过去是道跑不起来的门禁。\n2. **CI 死锁解开了一半。** rc.4 那趟记的是双重不可用;本次实测 GitHub 镜像落后已从 237 条降到\n 24 条,推送死锁解开,但 Actions 最新 run 35404565689 仍 failure。计费一恢复即可直接走正道,\n 不必再先解死锁——这是四趟以来第一次出现的松动。\n3. 发布前验证的真实范围:构建 BUILD_EXIT=0、逐包核对产物内容与 provenance;**完整 pnpm check\n 没有在发布前跑**,发布后补跑(真实退出码 1,唯一失败是并行会话的 workbench-ops-snapshot 过期,\n 判据类全绿:pins、fact-pii、测试 361/361)。\n\n发布那一步由 Owner 在自己终端执行:本会话的 auto mode 安全分类器以 [Safety Bypass Flag] 拒绝了带\nPLATFORM_RELEASE_BYPASS_CI_EVIDENCE 的命令。那不算误伤,这个开关就是绕过 CI 证据链的。\n备料与验证由会话完成,最后一步由人按下——这个分工也记进了文档。\n\nCLAUDE.md 的 contracts 条目同步推到 rc.5,并记下 fact-pii 不随包这一条。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/fed1fd024bc60a4feef89dff7c2ec028e0bcb066","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:50:56-07:00","added":[],"removed":[],"modified":["CLAUDE.md","docs/G-12本地旁路发布记录-2026-09-13.md"]},{"id":"5116dc5951412d8e6f037aafb4fe532fa38207a7","message":"chore(reports): check:fixtures 回绑 @ 62c9d95 —— 配置开关补的 10 例还没进报告\n\n已提交版绑 748492c、记 458 例;其后 contracts/src/domain/configuration-feature-flags/\nfixture-evaluator.ts 与对应夹具各有一次变更,现测 17 套件 468 例、失败 0、不可用 0。\n按「作用域内有无变更」判定该回绑,非按提交距离。产出绑 62c9d95、worktreeDirty=false\n(生成时主工作区恰好干净,未用临时检出)。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/5116dc5951412d8e6f037aafb4fe532fa38207a7","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:49:08-07:00","added":[],"removed":[],"modified":["reports/fixtures.latest.json"]}],"total_commits":0,"head_commit":{"id":"e79e5f2b943a633299851dbc7709455247a415ef","message":"feat(governance): 覆盖度探针自己查「整支规则没接进评估器」——那是它此前按设计看不见的盲区\n\n上一条(62c9d95)把盲区与绕开它的两步写进了 CLAUDE.md,但那只是文档约束,人不比对就不会发现。\n本次把两项结构比对做进 governance/fixture-coverage.mjs:它们不依赖夹具,因而看得见「从没有用例的那一面」。\n\n1. 未接线列:导入域的 index.js,把导出的判定函数(assess|review|classify|select|decide|plan|preflight|\n evaluate 打头)与 planner 原型方法逐个对评估器源码里的引用,没被引用的报出来。\n2. !!! 行:评估器写成 `\"reasons\" in r ? … : []` 时提醒——该规则结果联合体里一旦出现不带 reasons 的\n 非放行出口(BLOCKED / SKIP_DUPLICATE / DLQ / DUPLICATE_NOOP / USE_LAST_KNOWN_GOOD)就会被静默判成 ACCEPT。\n\n对着 15 个真实套件跑,逮到两类误报,都已修,并写成用例钉住:\n- planner 多数经 createRuntimeX() 工厂到达,类名根本不出现在评估器里。按「类名没出现」判整支未接线会把\n 跨域流程、Webhook、public-file 等全报一遍。改成按「一个方法都没被调」判,并排除 status/get 这类\n 只读访问器与错误类(AiRouteRequestRejected / AuditRequestRejected 不是判定面)。\n- cost-capacity 与 notification-webhook 把旧写法 `\"reasons\" in d ? [...] : []` 抄在注释里当变更记录,\n 按原文匹配会把两个已经改对的域报成缺陷。改成先去注释再匹配。\n措辞也相应收敛:`!!!` 行现在说「今天未必已经出错,但联合体里一旦出现…就会被静默判成 ACCEPT」,\n而不是断言它已经错了——跨域流程那处就属于「今天正确、但脆」。\n\n新增 governance/test/fixture-coverage.test.mjs(3 例):该脚本此前是 governance/ 下唯一没有测试的。\n用临时自足域验三件事——只报没被调的方法、经工厂到达的类不报整支未接线、注释里的旧写法不报。\n\n当前读数(均未处理,已登记进 CLAUDE.md 同段):\n 九个契约包域 未接线 1 处:LocalWorkflowPlanner.refresh()\n 运行时模块侧 未接线 9 处:ai-gateway 2 / permission 3 / audit / credential / fact / scope 各 1\n\n证据:pnpm test(governance)364/364;check-fixtures 17 套件 468 例 0 失败;\n「夹具与单测都没有」仍 0 条;工作区一致性门禁只剩既有的 L9 compose project 撞名。\n脚本仍是诊断而非门禁——不写报告、不进 pnpm check,故本次不涉及 reports 回绑。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/e79e5f2b943a633299851dbc7709455247a415ef","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:51:13-07:00","added":["governance/test/fixture-coverage.test.mjs"],"removed":[],"modified":["governance/fixture-coverage.mjs"]},"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":21301,"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":44,"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-19T07:47: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
|
30
|
1789775554
|
1789775594
|
0
|
1789775554
|
1789775622
|
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
|