|
18283
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18203
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777350650
|
1777350651
|
0
|
1777350650
|
1777350651
|
|
|
0
|
Edit
Delete
|
|
18284
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18204
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777350950
|
1777350950
|
0
|
1777350950
|
1777350950
|
|
|
0
|
Edit
Delete
|
|
18285
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18205
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777351250
|
1777351251
|
0
|
1777351250
|
1777351251
|
|
|
0
|
Edit
Delete
|
|
18286
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18206
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777351550
|
1777351550
|
0
|
1777351550
|
1777351550
|
|
|
0
|
Edit
Delete
|
|
18287
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18207
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777351850
|
1777351850
|
0
|
1777351850
|
1777351850
|
|
|
0
|
Edit
Delete
|
|
18288
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18208
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777352150
|
1777352150
|
0
|
1777352150
|
1777352150
|
|
|
0
|
Edit
Delete
|
|
18289
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18209
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777352450
|
1777352450
|
0
|
1777352450
|
1777352450
|
|
|
0
|
Edit
Delete
|
|
18290
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18210
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777352750
|
1777352751
|
0
|
1777352750
|
1777352751
|
|
|
0
|
Edit
Delete
|
|
18291
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18211
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777353050
|
1777353051
|
0
|
1777353050
|
1777353051
|
|
|
0
|
Edit
Delete
|
|
18292
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18212
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777353350
|
1777353351
|
0
|
1777353350
|
1777353351
|
|
|
0
|
Edit
Delete
|
|
18293
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18213
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777353650
|
1777353650
|
0
|
1777353650
|
1777353650
|
|
|
0
|
Edit
Delete
|
|
18294
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18214
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777353950
|
1777353951
|
0
|
1777353950
|
1777353951
|
|
|
0
|
Edit
Delete
|
|
18295
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18215
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777354250
|
1777354251
|
0
|
1777354250
|
1777354251
|
|
|
0
|
Edit
Delete
|
|
18296
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18216
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777354550
|
1777354551
|
0
|
1777354550
|
1777354551
|
|
|
0
|
Edit
Delete
|
|
18297
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18217
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777354850
|
1777354851
|
0
|
1777354850
|
1777354851
|
|
|
0
|
Edit
Delete
|
|
18298
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18218
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777355150
|
1777355151
|
0
|
1777355150
|
1777355151
|
|
|
0
|
Edit
Delete
|
|
18299
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18219
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777355450
|
1777355450
|
0
|
1777355450
|
1777355450
|
|
|
0
|
Edit
Delete
|
|
18300
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18220
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777355750
|
1777355750
|
0
|
1777355750
|
1777355750
|
|
|
0
|
Edit
Delete
|
|
18301
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18221
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777356050
|
1777356051
|
0
|
1777356050
|
1777356051
|
|
|
0
|
Edit
Delete
|
|
18302
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18222
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777356350
|
1777356350
|
0
|
1777356350
|
1777356350
|
|
|
0
|
Edit
Delete
|
|
18303
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18223
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777356650
|
1777356650
|
0
|
1777356650
|
1777356650
|
|
|
0
|
Edit
Delete
|
|
18304
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18224
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777356950
|
1777356951
|
0
|
1777356950
|
1777356951
|
|
|
0
|
Edit
Delete
|
|
18305
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18225
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777357250
|
1777357251
|
0
|
1777357250
|
1777357251
|
|
|
0
|
Edit
Delete
|
|
18306
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18226
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777357550
|
1777357551
|
0
|
1777357550
|
1777357551
|
|
|
0
|
Edit
Delete
|
|
18307
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18227
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777357850
|
1777357851
|
0
|
1777357850
|
1777357851
|
|
|
0
|
Edit
Delete
|
|
18308
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18228
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777358150
|
1777358150
|
0
|
1777358150
|
1777358150
|
|
|
0
|
Edit
Delete
|
|
18309
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18229
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777358450
|
1777358450
|
0
|
1777358450
|
1777358450
|
|
|
0
|
Edit
Delete
|
|
18310
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18230
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777358750
|
1777358751
|
0
|
1777358750
|
1777358751
|
|
|
0
|
Edit
Delete
|
|
18311
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18231
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777359050
|
1777359050
|
0
|
1777359050
|
1777359050
|
|
|
0
|
Edit
Delete
|
|
18312
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18232
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777359350
|
1777359351
|
0
|
1777359350
|
1777359351
|
|
|
0
|
Edit
Delete
|
|
18313
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18233
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777359650
|
1777359651
|
0
|
1777359650
|
1777359651
|
|
|
0
|
Edit
Delete
|
|
18314
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18234
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777359950
|
1777359951
|
0
|
1777359950
|
1777359951
|
|
|
0
|
Edit
Delete
|
|
18315
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18235
|
-2
|
331
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"62f424f94b745efdce16bde3aa2c73e3839a9264","after":"3fa41aea52e84435c16a79dd19c6775f93236a33","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/62f424f94b745efdce16bde3aa2c73e3839a9264...3fa41aea52e84435c16a79dd19c6775f93236a33","commits":[{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]}],"total_commits":0,"head_commit":{"id":"3fa41aea52e84435c16a79dd19c6775f93236a33","message":"Add Page AI Assist feature flags and governance audits\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3fa41aea52e84435c16a79dd19c6775f93236a33","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-27T20:35:57-07:00","added":["backend/src/modules/ai-assist/context-providers/ai-agents.ts","backend/src/modules/ai-assist/context-providers/campaign.ts","backend/src/modules/ai-assist/context-providers/collaboration.ts","backend/src/modules/ai-assist/context-providers/content-item.ts","backend/src/modules/ai-assist/context-providers/contract.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/hr-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/marketing-workflow.ts","backend/src/modules/ai-assist/context-providers/order.ts","backend/src/modules/ai-assist/context-providers/quote.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/social-post.ts","backend/src/modules/ai-assist/context-providers/stores.ts","backend/src/modules/ai-assist/context-providers/supply-chain.ts","backend/src/modules/ai-assist/context-providers/system-infra-aggregate.ts","backend/src/modules/ai-assist/context-providers/workbench.ts","scripts/audit-context-provider-redact.ts"],"removed":[],"modified":[".env.example",".env.production.example",".github/workflows/ci.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/.env.example","backend/src/config/env.ts","backend/src/modules/ai-agents/ai-agent.controller.test.ts","backend/src/modules/ai-agents/ai-agent.controller.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/generic.ts","backend/src/modules/ai-assist/context-providers/opportunity.ts","backend/src/modules/ai-assist/context-providers/redact.ts","backend/src/modules/ai-assist/context-providers/registry.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/context-providers/types.ts","backend/src/modules/ai-review-queue/ai-review-queue.controller.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.test.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/shared/constants/permissions.ts","backend/tests/api/ai-assist.test.ts","frontend/.env.example","frontend/src/components/business/AICopilotSidebar.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/env.d.ts","package.json","reports/ai-assist-context-providers.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","scripts/audit-ai-assist-context-providers.ts","scripts/harness/audit-registry.ts"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5229727,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":16,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-28T09:36: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
schedule
|
4
|
4
|
1777360250
|
1777360250
|
0
|
1777360250
|
1777360250
|
|
|
0
|
Edit
Delete
|
|
27054
|
chore(reports): 工作台发布快照与 Release Manifest 联建 @ 157 chore(reports): 工作台发布快照与 Release Manifest 联建 @ 1577fb836...
|
116
|
5
|
platform.yml
|
1405
|
5
|
0
|
refs/heads/main
|
3f7c56525bd93584a1ee4db803cbdb91685a5e43
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"5354750e8fe4447df29cd3e4df84e67a82303a39","after":"3f7c56525bd93584a1ee4db803cbdb91685a5e43","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/5354750e8fe4447df29cd3e4df84e67a82303a39...3f7c56525bd93584a1ee4db803cbdb91685a5e43","commits":[{"id":"3f7c56525bd93584a1ee4db803cbdb91685a5e43","message":"chore(reports): 工作台发布快照与 Release Manifest 联建 @ 1577fb836\n\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3f7c56525bd93584a1ee4db803cbdb91685a5e43","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-11-04T18:07:51-08:00","added":[],"removed":[],"modified":["reports/release-manifest.latest.json","reports/workbench-catalog-snapshot.latest.json","reports/workbench-ops-snapshot.latest.json"]},{"id":"1577fb836609557c994bb7401dc39e0b944f672d","message":"chore(reports): naming 与 fork-readiness 回绑 @ f23ab7f9c\n\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/1577fb836609557c994bb7401dc39e0b944f672d","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-11-04T18:07:31-08:00","added":[],"removed":[],"modified":["runtime/reports/fork-readiness.latest.json","runtime/reports/naming.latest.json"]},{"id":"f23ab7f9c13715ec5141e192a9331112294584ee","message":"chore(reports): runtime 治理报告回绑 @ 863e8c906\n\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/f23ab7f9c13715ec5141e192a9331112294584ee","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-11-04T18:06:46-08:00","added":[],"removed":[],"modified":["runtime/reports/governance.latest.json","runtime/reports/runtime-governance.latest.json"]},{"id":"863e8c906e352fed8fc3d017006011dd16bc4ef0","message":"chore(reports): 静态门禁回绑 @ 72a9bece3\n\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/863e8c906e352fed8fc3d017006011dd16bc4ef0","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-11-04T18:05:53-08:00","added":[],"removed":[],"modified":["reports/doc-claims.latest.json","reports/module-imports.latest.json","reports/release-drift.latest.json","reports/stub-surface.latest.json"]},{"id":"72a9bece39f40983ad674f52c819d338c3bb3844","message":"chore(reports): workbench-ui 回绑 @ 1456585f3\n\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/72a9bece39f40983ad674f52c819d338c3bb3844","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-11-04T18:04:54-08:00","added":[],"removed":[],"modified":["reports/workbench-ui.latest.json"]}],"total_commits":0,"head_commit":{"id":"3f7c56525bd93584a1ee4db803cbdb91685a5e43","message":"chore(reports): 工作台发布快照与 Release Manifest 联建 @ 1577fb836\n\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3f7c56525bd93584a1ee4db803cbdb91685a5e43","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-11-04T18:07:51-08:00","added":[],"removed":[],"modified":["reports/release-manifest.latest.json","reports/workbench-catalog-snapshot.latest.json","reports/workbench-ops-snapshot.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":157126,"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":1,"watchers_count":1,"branch_count":188,"open_issues_count":0,"open_pr_counter":5,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-09-11T07:33:25+08:00","updated_at":"2026-11-05T09:38:44+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
|
22
|
1793845475
|
1793845482
|
0
|
1793844880
|
1793845953
|
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
|
|
23454
|
初始提交:SongFormer 结构时间歌词行(治理底座 + 双阶段流水线 + 复核工作台)
|
67
|
5
|
governance.yml
|
1
|
5
|
0
|
refs/heads/main
|
3f76d2e5e9efe72c7ebe9d9faa2f335ccd2dbf4f
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"0000000000000000000000000000000000000000","after":"3f76d2e5e9efe72c7ebe9d9faa2f335ccd2dbf4f","compare_url":"https://gitea.g-hi.com/","commits":[{"id":"3f76d2e5e9efe72c7ebe9d9faa2f335ccd2dbf4f","message":"初始提交:SongFormer 结构时间歌词行(治理底座 + 双阶段流水线 + 复核工作台)\n\n- 基础框架迁移(git archive 受管文件 + 身份改造 + 三级门禁,静态 pnpm check 全绿)\n- phase1 结构→歌词行全局单调 DP 对齐:以官方歌词为准强制覆盖、非演唱结构防幻听先验、\n 六语种语音层(拼音/jyutping/kakasi读音/jamo/metaphone/拉丁)、多块投票定语言、\n 异体字读音等价;phase2 MMS 三句滑窗 + VAD 尾校验产出行/字级时间\n- 四模型本地部署(SongFormer/Qwen3-ASR-1.7B/mms-fa/HTDemucs,权重不进 git,\n manifest SHA256 + check:model-assets 门禁 + smoke 证据)\n- Web 复核工作台 /review:载入/一键执行/重跑、试听/连续播放/逐字对比、问题行过滤、\n 语言徽标、错配警示;run_song 一键编排(缺歌声自动分离,产物落原目录复用)\n- pytest 48/48;真歌验证:晴天×3路径、后来、日语/粤语曲目(精度未做人工金标验收)\n\nCo-Authored-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/songformer-structure-lyrics/commit/3f76d2e5e9efe72c7ebe9d9faa2f335ccd2dbf4f","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-27T23:15:09-07:00","added":[".agents/skills/frontend-api-react/SKILL.md",".agents/skills/frontend-view-react/SKILL.md",".agents/skills/frontend-view-react/references/view-templates.md",".agents/skills/fullstack-7layer-react/SKILL.md",".agents/skills/fullstack-7layer-react/references/fullstack-react-templates.md",".agents/skills/zustand-store/SKILL.md",".claude/agents/acceptance-runner.md",".claude/agents/module-blueprint.md",".claude/launch.json",".claude/skills/business-module-intake/SKILL.md",".claude/skills/frontend-api-react/SKILL.md",".claude/skills/frontend-view-react/SKILL.md",".claude/skills/frontend-view-react/references/view-templates.md",".claude/skills/fullstack-7layer-react/SKILL.md",".claude/skills/fullstack-7layer-react/references/fullstack-react-templates.md",".claude/skills/zustand-store/SKILL.md",".github/pull_request_template.md",".github/workflows/governance.yml",".gitignore","AGENTS.md","CLAUDE.md","README.md","apps/api-fastify/.env.example","apps/api-fastify/.gitignore","apps/api-fastify/package.json","apps/api-fastify/pnpm-lock.yaml","apps/api-fastify/prisma/migrations/20260608150500_init/migration.sql","apps/api-fastify/prisma/migrations/20260705080000_outbox_dead_letter/migration.sql","apps/api-fastify/prisma/migrations/migration_lock.toml","apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/app.ts","apps/api-fastify/src/lib/orderMachine.ts","apps/api-fastify/src/lib/statemachine.ts","apps/api-fastify/src/modules/orders/orders.service.ts","apps/api-fastify/src/modules/tenant.ts","apps/api-fastify/src/modules/users/users.service.ts","apps/api-fastify/src/plugins/events.ts","apps/api-fastify/src/plugins/outbox.ts","apps/api-fastify/src/plugins/prisma.ts","apps/api-fastify/src/plugins/queue.ts","apps/api-fastify/src/plugins/redis.ts","apps/api-fastify/src/routes/health.ts","apps/api-fastify/src/routes/jobs.ts","apps/api-fastify/src/routes/orders.ts","apps/api-fastify/src/routes/sse.ts","apps/api-fastify/src/routes/users.ts","apps/api-fastify/src/routes/ws.ts","apps/api-fastify/src/server.ts","apps/api-fastify/src/types.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-fastify/test/orders.integration.test.ts","apps/api-fastify/test/outbox.deadletter.test.ts","apps/api-fastify/test/realtime.tenant.test.ts","apps/api-fastify/tsconfig.json","apps/api-fastify/vitest.config.ts","apps/api-nestjs/.env.example","apps/api-nestjs/.gitignore","apps/api-nestjs/docker-compose.yml","apps/api-nestjs/nest-cli.json","apps/api-nestjs/package.json","apps/api-nestjs/pnpm-lock.yaml","apps/api-nestjs/prisma/migrations/20260608150500_init/migration.sql","apps/api-nestjs/prisma/migrations/20260705080000_outbox_dead_letter/migration.sql","apps/api-nestjs/prisma/migrations/migration_lock.toml","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/prisma/seed.ts","apps/api-nestjs/src/app.module.ts","apps/api-nestjs/src/common/envelope.ts","apps/api-nestjs/src/common/tenant.decorator.ts","apps/api-nestjs/src/common/zod-validation.pipe.ts","apps/api-nestjs/src/create-app.ts","apps/api-nestjs/src/events/event-bus.service.ts","apps/api-nestjs/src/events/events.gateway.ts","apps/api-nestjs/src/events/events.module.ts","apps/api-nestjs/src/events/fanout.service.ts","apps/api-nestjs/src/events/outbox-dispatcher.service.ts","apps/api-nestjs/src/health/health.controller.ts","apps/api-nestjs/src/health/health.module.ts","apps/api-nestjs/src/main.ts","apps/api-nestjs/src/orders/orders.controller.ts","apps/api-nestjs/src/orders/orders.module.ts","apps/api-nestjs/src/orders/orders.service.ts","apps/api-nestjs/src/prisma/prisma.module.ts","apps/api-nestjs/src/prisma/prisma.service.ts","apps/api-nestjs/src/queue/jobs.controller.ts","apps/api-nestjs/src/queue/jobs.processor.ts","apps/api-nestjs/src/queue/queue.module.ts","apps/api-nestjs/src/queue/queue.types.ts","apps/api-nestjs/src/redis/redis.module.ts","apps/api-nestjs/src/sse/sse.controller.ts","apps/api-nestjs/src/sse/sse.module.ts","apps/api-nestjs/src/statemachine/index.ts","apps/api-nestjs/src/statemachine/order.machine.ts","apps/api-nestjs/src/statemachine/statemachine.engine.ts","apps/api-nestjs/src/statemachine/statemachine.types.ts","apps/api-nestjs/src/users/users.controller.ts","apps/api-nestjs/src/users/users.module.ts","apps/api-nestjs/src/users/users.service.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/api-nestjs/test/orders.integration.test.ts","apps/api-nestjs/test/outbox.deadletter.test.ts","apps/api-nestjs/test/realtime.tenant.test.ts","apps/api-nestjs/tsconfig.build.json","apps/api-nestjs/tsconfig.json","apps/api-nestjs/vitest.config.ts","apps/web/.env.example","apps/web/.gitignore","apps/web/components.json","apps/web/e2e/acceptance.spec.ts","apps/web/eslint.config.mjs","apps/web/next.config.ts","apps/web/package.json","apps/web/playwright.config.ts","apps/web/pnpm-lock.yaml","apps/web/postcss.config.js","apps/web/src/app/api/review/audio/route.ts","apps/web/src/app/api/review/browse/route.ts","apps/web/src/app/api/review/route.ts","apps/web/src/app/api/review/run/route.ts","apps/web/src/app/globals.css","apps/web/src/app/layout.tsx","apps/web/src/app/page.tsx","apps/web/src/app/review/page.tsx","apps/web/src/components/EventFeed.tsx","apps/web/src/components/OrdersPanel.tsx","apps/web/src/components/RealtimeBar.tsx","apps/web/src/components/UsersPanel.tsx","apps/web/src/components/ui/badge.tsx","apps/web/src/components/ui/button.tsx","apps/web/src/components/ui/card.tsx","apps/web/src/components/ui/input.tsx","apps/web/src/components/ui/label.tsx","apps/web/src/components/ui/separator.tsx","apps/web/src/hooks/useRealtime.ts","apps/web/src/lib/api.ts","apps/web/src/lib/providers.tsx","apps/web/src/lib/types.ts","apps/web/src/lib/utils.ts","apps/web/src/store/realtime.ts","apps/web/src/store/useAppStore.ts","apps/web/tailwind.config.ts","apps/web/tsconfig.json","docs/README.md","docs/adr/0001-use-typescript-fullstack.md","docs/adr/0002-use-nextjs-app-router.md","docs/adr/0003-use-nestjs-with-fastify-adapter.md","docs/adr/0004-use-postgresql.md","docs/adr/0005-use-prisma.md","docs/adr/0006-realtime-sse-and-websocket.md","docs/adr/0007-use-bullmq-queue.md","docs/adr/0008-monorepo-pnpm-turborepo.md","docs/adr/0009-dual-backend-governance-parity.md","docs/adr/README.md","docs/domain-glossary.md","docs/domain/owner-matrix.md","docs/domain/structure-lyrics-phase1-blueprint.md","docs/governance-experience.md","docs/migration-notes.md","docs/standards/api-standard.md","docs/standards/backend-standard.md","docs/standards/database-standard.md","docs/standards/frontend-standard.md","docs/standards/git-standard.md","docs/standards/naming-standard.md","docs/standards/review-standard.md","models/model-assets.v1.json","package.json","packages/config/eslint/base.mjs","packages/config/package.json","packages/config/prettier/index.json","packages/config/tsconfig/base.json","packages/config/tsconfig/nextjs.json","packages/config/tsconfig/node.json","packages/contracts/package.json","packages/contracts/src/contracts.test.ts","packages/contracts/src/index.ts","packages/contracts/src/order.ts","packages/contracts/src/realtime.ts","packages/contracts/src/statemachine.test.ts","packages/contracts/src/statemachine.ts","packages/contracts/src/tenant.ts","packages/contracts/src/user.ts","packages/contracts/tsconfig.json","pnpm-lock.yaml","pnpm-workspace.yaml","reports/baseline.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/model-assets.latest.json","reports/model-evidence/htdemucs-smoke.latest.json","reports/model-evidence/mms-fa-smoke.latest.json","reports/model-evidence/qwen3-asr-smoke.latest.json","reports/model-evidence/structure-smoke.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/validation-source.latest.json","scripts/check-contract-consumers.mjs","scripts/check-docs-truth.mjs","scripts/check-dual-backend-parity.mjs","scripts/check-governance-docs.mjs","scripts/check-migrations.mjs","scripts/check-model-assets.mjs","scripts/check-naming.mjs","scripts/check-order-concurrency-guard.mjs","scripts/check-runtime-acceptance.mjs","scripts/check-schema-sync.mjs","scripts/check-ui-acceptance.mjs","scripts/check-validation-source.mjs","scripts/governance-report.mjs","services/structure_lyrics/README.md","services/structure_lyrics/examples/demo_song/asr.json","services/structure_lyrics/examples/demo_song/lyrics.txt","services/structure_lyrics/examples/demo_song/structure.json","services/structure_lyrics/phase1/__init__.py","services/structure_lyrics/phase1/align.py","services/structure_lyrics/phase1/asr.py","services/structure_lyrics/phase1/audio.py","services/structure_lyrics/phase1/cli.py","services/structure_lyrics/phase1/lyrics.py","services/structure_lyrics/phase1/models.py","services/structure_lyrics/phase1/pipeline.py","services/structure_lyrics/phase1/similarity.py","services/structure_lyrics/phase1/structure.py","services/structure_lyrics/phase1/textnorm.py","services/structure_lyrics/phase2/__init__.py","services/structure_lyrics/phase2/audio_io.py","services/structure_lyrics/phase2/backend.py","services/structure_lyrics/phase2/cli.py","services/structure_lyrics/phase2/pipeline.py","services/structure_lyrics/phase2/refine.py","services/structure_lyrics/requirements.txt","services/structure_lyrics/run_song.py","services/structure_lyrics/tests/test_align.py","services/structure_lyrics/tests/test_language.py","services/structure_lyrics/tests/test_multilang.py","services/structure_lyrics/tests/test_phase2.py","tsconfig.base.json","turbo.json","workers/demucs/requirements_demucs.txt","workers/demucs/run_separate.py","workers/mms-fa/README.md","workers/mms-fa/align_tasks.py","workers/mms-fa/requirements_mms_fa.txt","workers/mms-fa/run_mms_fa.py","workers/qwen3-asr/README.md","workers/qwen3-asr/requirements_qwen3_asr.txt","workers/qwen3-asr/run_qwen3_asr.py","workers/qwen3-asr/testdata/asr_zh.txt","workers/qwen3-asr/testdata/asr_zh.wav","workers/qwen3-asr/vendor/qwen3_asr/__init__.py","workers/qwen3-asr/vendor/qwen3_asr/align/__init__.py","workers/qwen3-asr/vendor/qwen3_asr/align/boundary.py","workers/qwen3-asr/vendor/qwen3_asr/align/chars.py","workers/qwen3-asr/vendor/qwen3_asr/align/monotonic.py","workers/qwen3-asr/vendor/qwen3_asr/align/observation.py","workers/qwen3-asr/vendor/qwen3_asr/align/pcenter.py","workers/qwen3-asr/vendor/qwen3_asr/align/pipeline.py","workers/qwen3-asr/vendor/qwen3_asr/align/progress.py","workers/qwen3-asr/vendor/qwen3_asr/align/tail.py","workers/qwen3-asr/vendor/qwen3_asr/align/text.py","workers/qwen3-asr/vendor/qwen3_asr/align/windows.py","workers/qwen3-asr/vendor/qwen3_asr/align/wordless.py","workers/qwen3-asr/vendor/qwen3_asr/align_cli.py","workers/qwen3-asr/vendor/qwen3_asr/audio.py","workers/qwen3-asr/vendor/qwen3_asr/cache.py","workers/qwen3-asr/vendor/qwen3_asr/cli.py","workers/qwen3-asr/vendor/qwen3_asr/config.py","workers/qwen3-asr/vendor/qwen3_asr/diagnostics_cli.py","workers/qwen3-asr/vendor/qwen3_asr/engine.py","workers/qwen3-asr/vendor/qwen3_asr/forced_aligner.py","workers/qwen3-asr/vendor/qwen3_asr/service.py","workers/qwen3-asr/vendor/qwen3_asr/stream.py","workers/qwen3-asr/vendor/qwen3_asr/stream_cli.py","workers/qwen3-asr/vendor/qwen3_asr/structure.py","workers/qwen3-asr/vendor/qwen3_asr/textutil.py","workers/qwen3-asr/vendor/qwen3_asr/unowned_voice_review.py","workers/qwen3-asr/vendor/qwen3_asr/unowned_voice_review_cli.py","workers/qwen3-asr/vendor/qwen3_asr/unowned_voice_score.py","workers/qwen3-asr/vendor/qwen3_asr/unowned_voice_score_cli.py","workers/qwen3-asr/vendor/qwen3_asr/voice_diagnostics.py","workers/structure/README.md","workers/structure/requirements_structure.txt","workers/structure/run_structure.py","workers/structure/vendor/wav2vec2-conformer-rope-large-960h-ft.config.json"],"removed":[],"modified":[]}],"total_commits":0,"head_commit":{"id":"3f76d2e5e9efe72c7ebe9d9faa2f335ccd2dbf4f","message":"初始提交:SongFormer 结构时间歌词行(治理底座 + 双阶段流水线 + 复核工作台)\n\n- 基础框架迁移(git archive 受管文件 + 身份改造 + 三级门禁,静态 pnpm check 全绿)\n- phase1 结构→歌词行全局单调 DP 对齐:以官方歌词为准强制覆盖、非演唱结构防幻听先验、\n 六语种语音层(拼音/jyutping/kakasi读音/jamo/metaphone/拉丁)、多块投票定语言、\n 异体字读音等价;phase2 MMS 三句滑窗 + VAD 尾校验产出行/字级时间\n- 四模型本地部署(SongFormer/Qwen3-ASR-1.7B/mms-fa/HTDemucs,权重不进 git,\n manifest SHA256 + check:model-assets 门禁 + smoke 证据)\n- Web 复核工作台 /review:载入/一键执行/重跑、试听/连续播放/逐字对比、问题行过滤、\n 语言徽标、错配警示;run_song 一键编排(缺歌声自动分离,产物落原目录复用)\n- pytest 48/48;真歌验证:晴天×3路径、后来、日语/粤语曲目(精度未做人工金标验收)\n\nCo-Authored-By: Claude Fable 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/songformer-structure-lyrics/commit/3f76d2e5e9efe72c7ebe9d9faa2f335ccd2dbf4f","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-27T23:15:09-07:00","added":[".agents/skills/frontend-api-react/SKILL.md",".agents/skills/frontend-view-react/SKILL.md",".agents/skills/frontend-view-react/references/view-templates.md",".agents/skills/fullstack-7layer-react/SKILL.md",".agents/skills/fullstack-7layer-react/references/fullstack-react-templates.md",".agents/skills/zustand-store/SKILL.md",".claude/agents/acceptance-runner.md",".claude/agents/module-blueprint.md",".claude/launch.json",".claude/skills/business-module-intake/SKILL.md",".claude/skills/frontend-api-react/SKILL.md",".claude/skills/frontend-view-react/SKILL.md",".claude/skills/frontend-view-react/references/view-templates.md",".claude/skills/fullstack-7layer-react/SKILL.md",".claude/skills/fullstack-7layer-react/references/fullstack-react-templates.md",".claude/skills/zustand-store/SKILL.md",".github/pull_request_template.md",".github/workflows/governance.yml",".gitignore","AGENTS.md","CLAUDE.md","README.md","apps/api-fastify/.env.example","apps/api-fastify/.gitignore","apps/api-fastify/package.json","apps/api-fastify/pnpm-lock.yaml","apps/api-fastify/prisma/migrations/20260608150500_init/migration.sql","apps/api-fastify/prisma/migrations/20260705080000_outbox_dead_letter/migration.sql","apps/api-fastify/prisma/migrations/migration_lock.toml","apps/api-fastify/prisma/schema.prisma","apps/api-fastify/src/app.ts","apps/api-fastify/src/lib/orderMachine.ts","apps/api-fastify/src/lib/statemachine.ts","apps/api-fastify/src/modules/orders/orders.service.ts","apps/api-fastify/src/modules/tenant.ts","apps/api-fastify/src/modules/users/users.service.ts","apps/api-fastify/src/plugins/events.ts","apps/api-fastify/src/plugins/outbox.ts","apps/api-fastify/src/plugins/prisma.ts","apps/api-fastify/src/plugins/queue.ts","apps/api-fastify/src/plugins/redis.ts","apps/api-fastify/src/routes/health.ts","apps/api-fastify/src/routes/jobs.ts","apps/api-fastify/src/routes/orders.ts","apps/api-fastify/src/routes/sse.ts","apps/api-fastify/src/routes/users.ts","apps/api-fastify/src/routes/ws.ts","apps/api-fastify/src/server.ts","apps/api-fastify/src/types.ts","apps/api-fastify/test/http.acceptance.test.ts","apps/api-fastify/test/orders.integration.test.ts","apps/api-fastify/test/outbox.deadletter.test.ts","apps/api-fastify/test/realtime.tenant.test.ts","apps/api-fastify/tsconfig.json","apps/api-fastify/vitest.config.ts","apps/api-nestjs/.env.example","apps/api-nestjs/.gitignore","apps/api-nestjs/docker-compose.yml","apps/api-nestjs/nest-cli.json","apps/api-nestjs/package.json","apps/api-nestjs/pnpm-lock.yaml","apps/api-nestjs/prisma/migrations/20260608150500_init/migration.sql","apps/api-nestjs/prisma/migrations/20260705080000_outbox_dead_letter/migration.sql","apps/api-nestjs/prisma/migrations/migration_lock.toml","apps/api-nestjs/prisma/schema.prisma","apps/api-nestjs/prisma/seed.ts","apps/api-nestjs/src/app.module.ts","apps/api-nestjs/src/common/envelope.ts","apps/api-nestjs/src/common/tenant.decorator.ts","apps/api-nestjs/src/common/zod-validation.pipe.ts","apps/api-nestjs/src/create-app.ts","apps/api-nestjs/src/events/event-bus.service.ts","apps/api-nestjs/src/events/events.gateway.ts","apps/api-nestjs/src/events/events.module.ts","apps/api-nestjs/src/events/fanout.service.ts","apps/api-nestjs/src/events/outbox-dispatcher.service.ts","apps/api-nestjs/src/health/health.controller.ts","apps/api-nestjs/src/health/health.module.ts","apps/api-nestjs/src/main.ts","apps/api-nestjs/src/orders/orders.controller.ts","apps/api-nestjs/src/orders/orders.module.ts","apps/api-nestjs/src/orders/orders.service.ts","apps/api-nestjs/src/prisma/prisma.module.ts","apps/api-nestjs/src/prisma/prisma.service.ts","apps/api-nestjs/src/queue/jobs.controller.ts","apps/api-nestjs/src/queue/jobs.processor.ts","apps/api-nestjs/src/queue/queue.module.ts","apps/api-nestjs/src/queue/queue.types.ts","apps/api-nestjs/src/redis/redis.module.ts","apps/api-nestjs/src/sse/sse.controller.ts","apps/api-nestjs/src/sse/sse.module.ts","apps/api-nestjs/src/statemachine/index.ts","apps/api-nestjs/src/statemachine/order.machine.ts","apps/api-nestjs/src/statemachine/statemachine.engine.ts","apps/api-nestjs/src/statemachine/statemachine.types.ts","apps/api-nestjs/src/users/users.controller.ts","apps/api-nestjs/src/users/users.module.ts","apps/api-nestjs/src/users/users.service.ts","apps/api-nestjs/test/http.acceptance.test.ts","apps/api-nestjs/test/orders.integration.test.ts","apps/api-nestjs/test/outbox.deadletter.test.ts","apps/api-nestjs/test/realtime.tenant.test.ts","apps/api-nestjs/tsconfig.build.json","apps/api-nestjs/tsconfig.json","apps/api-nestjs/vitest.config.ts","apps/web/.env.example","apps/web/.gitignore","apps/web/components.json","apps/web/e2e/acceptance.spec.ts","apps/web/eslint.config.mjs","apps/web/next.config.ts","apps/web/package.json","apps/web/playwright.config.ts","apps/web/pnpm-lock.yaml","apps/web/postcss.config.js","apps/web/src/app/api/review/audio/route.ts","apps/web/src/app/api/review/browse/route.ts","apps/web/src/app/api/review/route.ts","apps/web/src/app/api/review/run/route.ts","apps/web/src/app/globals.css","apps/web/src/app/layout.tsx","apps/web/src/app/page.tsx","apps/web/src/app/review/page.tsx","apps/web/src/components/EventFeed.tsx","apps/web/src/components/OrdersPanel.tsx","apps/web/src/components/RealtimeBar.tsx","apps/web/src/components/UsersPanel.tsx","apps/web/src/components/ui/badge.tsx","apps/web/src/components/ui/button.tsx","apps/web/src/components/ui/card.tsx","apps/web/src/components/ui/input.tsx","apps/web/src/components/ui/label.tsx","apps/web/src/components/ui/separator.tsx","apps/web/src/hooks/useRealtime.ts","apps/web/src/lib/api.ts","apps/web/src/lib/providers.tsx","apps/web/src/lib/types.ts","apps/web/src/lib/utils.ts","apps/web/src/store/realtime.ts","apps/web/src/store/useAppStore.ts","apps/web/tailwind.config.ts","apps/web/tsconfig.json","docs/README.md","docs/adr/0001-use-typescript-fullstack.md","docs/adr/0002-use-nextjs-app-router.md","docs/adr/0003-use-nestjs-with-fastify-adapter.md","docs/adr/0004-use-postgresql.md","docs/adr/0005-use-prisma.md","docs/adr/0006-realtime-sse-and-websocket.md","docs/adr/0007-use-bullmq-queue.md","docs/adr/0008-monorepo-pnpm-turborepo.md","docs/adr/0009-dual-backend-governance-parity.md","docs/adr/README.md","docs/domain-glossary.md","docs/domain/owner-matrix.md","docs/domain/structure-lyrics-phase1-blueprint.md","docs/governance-experience.md","docs/migration-notes.md","docs/standards/api-standard.md","docs/standards/backend-standard.md","docs/standards/database-standard.md","docs/standards/frontend-standard.md","docs/standards/git-standard.md","docs/standards/naming-standard.md","docs/standards/review-standard.md","models/model-assets.v1.json","package.json","packages/config/eslint/base.mjs","packages/config/package.json","packages/config/prettier/index.json","packages/config/tsconfig/base.json","packages/config/tsconfig/nextjs.json","packages/config/tsconfig/node.json","packages/contracts/package.json","packages/contracts/src/contracts.test.ts","packages/contracts/src/index.ts","packages/contracts/src/order.ts","packages/contracts/src/realtime.ts","packages/contracts/src/statemachine.test.ts","packages/contracts/src/statemachine.ts","packages/contracts/src/tenant.ts","packages/contracts/src/user.ts","packages/contracts/tsconfig.json","pnpm-lock.yaml","pnpm-workspace.yaml","reports/baseline.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/model-assets.latest.json","reports/model-evidence/htdemucs-smoke.latest.json","reports/model-evidence/mms-fa-smoke.latest.json","reports/model-evidence/qwen3-asr-smoke.latest.json","reports/model-evidence/structure-smoke.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/validation-source.latest.json","scripts/check-contract-consumers.mjs","scripts/check-docs-truth.mjs","scripts/check-dual-backend-parity.mjs","scripts/check-governance-docs.mjs","scripts/check-migrations.mjs","scripts/check-model-assets.mjs","scripts/check-naming.mjs","scripts/check-order-concurrency-guard.mjs","scripts/check-runtime-acceptance.mjs","scripts/check-schema-sync.mjs","scripts/check-ui-acceptance.mjs","scripts/check-validation-source.mjs","scripts/governance-report.mjs","services/structure_lyrics/README.md","services/structure_lyrics/examples/demo_song/asr.json","services/structure_lyrics/examples/demo_song/lyrics.txt","services/structure_lyrics/examples/demo_song/structure.json","services/structure_lyrics/phase1/__init__.py","services/structure_lyrics/phase1/align.py","services/structure_lyrics/phase1/asr.py","services/structure_lyrics/phase1/audio.py","services/structure_lyrics/phase1/cli.py","services/structure_lyrics/phase1/lyrics.py","services/structure_lyrics/phase1/models.py","services/structure_lyrics/phase1/pipeline.py","services/structure_lyrics/phase1/similarity.py","services/structure_lyrics/phase1/structure.py","services/structure_lyrics/phase1/textnorm.py","services/structure_lyrics/phase2/__init__.py","services/structure_lyrics/phase2/audio_io.py","services/structure_lyrics/phase2/backend.py","services/structure_lyrics/phase2/cli.py","services/structure_lyrics/phase2/pipeline.py","services/structure_lyrics/phase2/refine.py","services/structure_lyrics/requirements.txt","services/structure_lyrics/run_song.py","services/structure_lyrics/tests/test_align.py","services/structure_lyrics/tests/test_language.py","services/structure_lyrics/tests/test_multilang.py","services/structure_lyrics/tests/test_phase2.py","tsconfig.base.json","turbo.json","workers/demucs/requirements_demucs.txt","workers/demucs/run_separate.py","workers/mms-fa/README.md","workers/mms-fa/align_tasks.py","workers/mms-fa/requirements_mms_fa.txt","workers/mms-fa/run_mms_fa.py","workers/qwen3-asr/README.md","workers/qwen3-asr/requirements_qwen3_asr.txt","workers/qwen3-asr/run_qwen3_asr.py","workers/qwen3-asr/testdata/asr_zh.txt","workers/qwen3-asr/testdata/asr_zh.wav","workers/qwen3-asr/vendor/qwen3_asr/__init__.py","workers/qwen3-asr/vendor/qwen3_asr/align/__init__.py","workers/qwen3-asr/vendor/qwen3_asr/align/boundary.py","workers/qwen3-asr/vendor/qwen3_asr/align/chars.py","workers/qwen3-asr/vendor/qwen3_asr/align/monotonic.py","workers/qwen3-asr/vendor/qwen3_asr/align/observation.py","workers/qwen3-asr/vendor/qwen3_asr/align/pcenter.py","workers/qwen3-asr/vendor/qwen3_asr/align/pipeline.py","workers/qwen3-asr/vendor/qwen3_asr/align/progress.py","workers/qwen3-asr/vendor/qwen3_asr/align/tail.py","workers/qwen3-asr/vendor/qwen3_asr/align/text.py","workers/qwen3-asr/vendor/qwen3_asr/align/windows.py","workers/qwen3-asr/vendor/qwen3_asr/align/wordless.py","workers/qwen3-asr/vendor/qwen3_asr/align_cli.py","workers/qwen3-asr/vendor/qwen3_asr/audio.py","workers/qwen3-asr/vendor/qwen3_asr/cache.py","workers/qwen3-asr/vendor/qwen3_asr/cli.py","workers/qwen3-asr/vendor/qwen3_asr/config.py","workers/qwen3-asr/vendor/qwen3_asr/diagnostics_cli.py","workers/qwen3-asr/vendor/qwen3_asr/engine.py","workers/qwen3-asr/vendor/qwen3_asr/forced_aligner.py","workers/qwen3-asr/vendor/qwen3_asr/service.py","workers/qwen3-asr/vendor/qwen3_asr/stream.py","workers/qwen3-asr/vendor/qwen3_asr/stream_cli.py","workers/qwen3-asr/vendor/qwen3_asr/structure.py","workers/qwen3-asr/vendor/qwen3_asr/textutil.py","workers/qwen3-asr/vendor/qwen3_asr/unowned_voice_review.py","workers/qwen3-asr/vendor/qwen3_asr/unowned_voice_review_cli.py","workers/qwen3-asr/vendor/qwen3_asr/unowned_voice_score.py","workers/qwen3-asr/vendor/qwen3_asr/unowned_voice_score_cli.py","workers/qwen3-asr/vendor/qwen3_asr/voice_diagnostics.py","workers/structure/README.md","workers/structure/requirements_structure.txt","workers/structure/run_structure.py","workers/structure/vendor/wav2vec2-conformer-rope-large-960h-ft.config.json"],"removed":[],"modified":[]},"repository":{"id":67,"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":"songformer-structure-lyrics","full_name":"luoanwu/songformer-structure-lyrics","description":"SongFormer 结构时间歌词行:结构→歌词行→字级时间流水线 + 治理底座","empty":false,"private":true,"fork":false,"template":false,"mirror":false,"size":27,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/songformer-structure-lyrics/languages","html_url":"https://gitea.g-hi.com/luoanwu/songformer-structure-lyrics","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/songformer-structure-lyrics","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/songformer-structure-lyrics.git","clone_url":"https://gitea.g-hi.com/luoanwu/songformer-structure-lyrics.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-28T14:19:19+08:00","updated_at":"2026-07-28T14:20: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
|
5
|
1785219618
|
1785219660
|
0
|
1785219617
|
1785219660
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
25967
|
fix: preserve native SYSTEM bootstrap envelope con fix: preserve native SYSTEM bootstrap envelope contract...
|
116
|
5
|
platform.yml
|
830
|
5
|
0
|
refs/heads/main
|
3f6b61284b58f262bda8ac7509ad851117fd40a3
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"358b147fb2e98c334705291480726ec9d1c233df","after":"3f6b61284b58f262bda8ac7509ad851117fd40a3","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/358b147fb2e98c334705291480726ec9d1c233df...3f6b61284b58f262bda8ac7509ad851117fd40a3","commits":[{"id":"3f6b61284b58f262bda8ac7509ad851117fd40a3","message":"fix: preserve native SYSTEM bootstrap envelope contract\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3f6b61284b58f262bda8ac7509ad851117fd40a3","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-16T19:29:06-07:00","added":["docs/企业实体服务/tools/yggdrasil-development/owner-envelope.mjs","docs/企业实体服务/tools/yggdrasil-development/owner-envelope.test.mjs"],"removed":[],"modified":["docs/企业实体服务/tools/yggdrasil-development/README.md","docs/企业实体服务/tools/yggdrasil-development/ees-development.mjs"]}],"total_commits":0,"head_commit":{"id":"3f6b61284b58f262bda8ac7509ad851117fd40a3","message":"fix: preserve native SYSTEM bootstrap envelope contract\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3f6b61284b58f262bda8ac7509ad851117fd40a3","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-16T19:29:06-07:00","added":["docs/企业实体服务/tools/yggdrasil-development/owner-envelope.mjs","docs/企业实体服务/tools/yggdrasil-development/owner-envelope.test.mjs"],"removed":[],"modified":["docs/企业实体服务/tools/yggdrasil-development/README.md","docs/企业实体服务/tools/yggdrasil-development/ees-development.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":46803,"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":60,"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-10-17T10:23:53+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":true,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
3
|
10
|
0
|
1792204250
|
0
|
1792204149
|
1792204250
|
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
|
|
24302
|
docs(验收): 治理门禁对抗性验收 2026-09-20——check:fact-pii 三条绕 docs(验收): 治理门禁对抗性验收 2026-09-20——check:fact-pii 三条绕过与候选空扫、作业 active≠可执行 @ 263b2ec1...
|
116
|
5
|
platform.yml
|
224
|
5
|
0
|
refs/heads/main
|
3f001b924e0fc354a830cc765d8f38d2c8488adb
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"1d6b6fac418274b366726bc75136bf9968583d82","after":"3f001b924e0fc354a830cc765d8f38d2c8488adb","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/1d6b6fac418274b366726bc75136bf9968583d82...3f001b924e0fc354a830cc765d8f38d2c8488adb","commits":[{"id":"3f001b924e0fc354a830cc765d8f38d2c8488adb","message":"docs(验收): 治理门禁对抗性验收 2026-09-20——check:fact-pii 三条绕过与候选空扫、作业 active≠可执行 @ 263b2ec1\n\n靶面为 09-19 晚至 09-20 新落地的四块机制:check:fact-pii、job-readiness 对账、审计中继链、check:deployed 验收覆盖。\n中继链与 check:deployed 守住;fact-pii 对 camelCase 键名、$ref 引用与候选目录(五个条目 0 字段)三条路均 exit 0,\nDEC-039 材料里已有 3 处 PII 形状键;identity.session-cleanup 登记 active 但 dev 上被未登记的 IDP_SESSION_CLEANUP_ENABLED=false 关着;\ncheck:modules 接线判定为文本启发式、stub-surface 看不见直接抛 JOB_NOT_IMPLEMENTED 的处理器(runtime 链可红、根链绿)。\n变异在 scratch worktree 完成,仓内 reports/ 未动;证据见 docs/acceptance/2026-09-20/。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3f001b924e0fc354a830cc765d8f38d2c8488adb","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-09-20T20:02:22-07:00","added":["docs/acceptance/2026-09-20/fact-pii-bypass.json","docs/acceptance/2026-09-20/gate-baselines.json","docs/acceptance/2026-09-20/http-probes.json","docs/acceptance/2026-09-20/job-readiness-mutations.json","docs/治理门禁对抗性验收-2026-09-20.md"],"removed":[],"modified":[]}],"total_commits":0,"head_commit":{"id":"3f001b924e0fc354a830cc765d8f38d2c8488adb","message":"docs(验收): 治理门禁对抗性验收 2026-09-20——check:fact-pii 三条绕过与候选空扫、作业 active≠可执行 @ 263b2ec1\n\n靶面为 09-19 晚至 09-20 新落地的四块机制:check:fact-pii、job-readiness 对账、审计中继链、check:deployed 验收覆盖。\n中继链与 check:deployed 守住;fact-pii 对 camelCase 键名、$ref 引用与候选目录(五个条目 0 字段)三条路均 exit 0,\nDEC-039 材料里已有 3 处 PII 形状键;identity.session-cleanup 登记 active 但 dev 上被未登记的 IDP_SESSION_CLEANUP_ENABLED=false 关着;\ncheck:modules 接线判定为文本启发式、stub-surface 看不见直接抛 JOB_NOT_IMPLEMENTED 的处理器(runtime 链可红、根链绿)。\n变异在 scratch worktree 完成,仓内 reports/ 未动;证据见 docs/acceptance/2026-09-20/。\n\nCo-Authored-By: Claude Fable 5.1 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3f001b924e0fc354a830cc765d8f38d2c8488adb","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-09-20T20:02:22-07:00","added":["docs/acceptance/2026-09-20/fact-pii-bypass.json","docs/acceptance/2026-09-20/gate-baselines.json","docs/acceptance/2026-09-20/http-probes.json","docs/acceptance/2026-09-20/job-readiness-mutations.json","docs/治理门禁对抗性验收-2026-09-20.md"],"removed":[],"modified":[]},"repository":{"id":116,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"enterprise-platform","full_name":"luoanwu/enterprise-platform","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":31278,"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-21T11:01:53+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":true,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
2
|
34
|
1789959763
|
1789959811
|
0
|
1789959744
|
1789959898
|
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
|
|
27084
|
docs(status): 工作台第五批登记,58080 曾采用 99901f4e7 后由 6474 docs(status): 工作台第五批登记,58080 曾采用 99901f4e7 后由 64747d9a0 接替...
|
116
|
5
|
platform.yml
|
1419
|
5
|
0
|
refs/heads/main
|
3efdcc1ae26f28249900716c785cffbfc7c30c5d
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9c55dce03378ae8efaf5d62d44e5c41ff0948616","after":"3efdcc1ae26f28249900716c785cffbfc7c30c5d","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/9c55dce03378ae8efaf5d62d44e5c41ff0948616...3efdcc1ae26f28249900716c785cffbfc7c30c5d","commits":[{"id":"3efdcc1ae26f28249900716c785cffbfc7c30c5d","message":"docs(status): 工作台第五批登记,58080 曾采用 99901f4e7 后由 64747d9a0 接替\n\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3efdcc1ae26f28249900716c785cffbfc7c30c5d","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-11-05T01:31:31-08:00","added":[],"removed":[],"modified":["docs/runbook.md","docs/当前状态与验收边界.md"]}],"total_commits":0,"head_commit":{"id":"3efdcc1ae26f28249900716c785cffbfc7c30c5d","message":"docs(status): 工作台第五批登记,58080 曾采用 99901f4e7 后由 64747d9a0 接替\n\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3efdcc1ae26f28249900716c785cffbfc7c30c5d","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-11-05T01:31:31-08:00","added":[],"removed":[],"modified":["docs/runbook.md","docs/当前状态与验收边界.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":166021,"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":1,"watchers_count":1,"branch_count":188,"open_issues_count":0,"open_pr_counter":5,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-09-11T07:33:25+08:00","updated_at":"2026-11-05T17:21:28+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
|
1793871134
|
1793871145
|
0
|
1793871094
|
1793871174
|
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
|
|
26315
|
chore(reports): 收口策略管理实际发布的部署与文档门禁
|
116
|
5
|
platform.yml
|
997
|
5
|
0
|
refs/heads/main
|
3ed52392bd9eb806d0044a87d018ef215981414f
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"646168384ed37b557d4fb93044d76129ac737e6c","after":"3ed52392bd9eb806d0044a87d018ef215981414f","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/646168384ed37b557d4fb93044d76129ac737e6c...3ed52392bd9eb806d0044a87d018ef215981414f","commits":[{"id":"3ed52392bd9eb806d0044a87d018ef215981414f","message":"chore(reports): 收口策略管理实际发布的部署与文档门禁\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3ed52392bd9eb806d0044a87d018ef215981414f","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-22T01:45:10-07:00","added":[],"removed":[],"modified":["reports/deployed-runtime.latest.json","reports/doc-claims.latest.json","reports/evidence-freshness.latest.json","reports/facts.latest.json","reports/fixture-coverage.latest.json","reports/fixtures.latest.json","reports/migration-decs.latest.json","reports/module-imports.latest.json","reports/release-manifest.latest.json","reports/stub-surface.latest.json","reports/workbench-catalog-snapshot.latest.json","reports/workbench-ops-snapshot.latest.json","runtime/reports/docs-truth.latest.json"]},{"id":"0c1b265f1821c6e9b81b05665e197fd45aaf90d7","message":"docs(workbench): 收口通知与公共文件策略实际发布及浏览器核验\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/0c1b265f1821c6e9b81b05665e197fd45aaf90d7","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-22T01:44:14-07:00","added":["docs/evidence/workspace-management-2026-10-21/policy-history-browser-check.json","docs/evidence/workspace-management-2026-10-21/policy-history-workbench-publication.json"],"removed":[],"modified":["README.md","docs/当前状态与验收边界.md","docs/模块工作区管理能力补齐-2026-10-21.json","docs/模块工作区管理能力补齐-2026-10-21.md","runtime/clients/notification-webhook/README.md","runtime/clients/public-file/README.md","runtime/modules/notification-webhook/README.md","runtime/modules/public-file/README.md"]}],"total_commits":0,"head_commit":{"id":"3ed52392bd9eb806d0044a87d018ef215981414f","message":"chore(reports): 收口策略管理实际发布的部署与文档门禁\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3ed52392bd9eb806d0044a87d018ef215981414f","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-22T01:45:10-07:00","added":[],"removed":[],"modified":["reports/deployed-runtime.latest.json","reports/doc-claims.latest.json","reports/evidence-freshness.latest.json","reports/facts.latest.json","reports/fixture-coverage.latest.json","reports/fixtures.latest.json","reports/migration-decs.latest.json","reports/module-imports.latest.json","reports/release-manifest.latest.json","reports/stub-surface.latest.json","reports/workbench-catalog-snapshot.latest.json","reports/workbench-ops-snapshot.latest.json","runtime/reports/docs-truth.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":69614,"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":146,"open_issues_count":0,"open_pr_counter":2,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-09-11T07:33:25+08:00","updated_at":"2026-10-22T16:41: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
|
30
|
1792658740
|
1792658743
|
0
|
1792658739
|
1792658755
|
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
|
|
24408
|
docs(notification): record real platform acceptanc docs(notification): record real platform acceptance...
|
81
|
5
|
governance.yml
|
11
|
5
|
0
|
refs/heads/main
|
3ece79dcc83c32531df95129cd9d687bb66fe66b
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"066afd0a04f4765ee9a8aefae9f2eb8272bb88b2","after":"3ece79dcc83c32531df95129cd9d687bb66fe66b","compare_url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system/compare/066afd0a04f4765ee9a8aefae9f2eb8272bb88b2...3ece79dcc83c32531df95129cd9d687bb66fe66b","commits":[{"id":"3ece79dcc83c32531df95129cd9d687bb66fe66b","message":"docs(notification): record real platform acceptance\n","url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system/commit/3ece79dcc83c32531df95129cd9d687bb66fe66b","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-09-23T07:00:29-07:00","added":[],"removed":[],"modified":["docs/deployment-record-2026-09-23-platform-notification-consumer.md"]}],"total_commits":0,"head_commit":{"id":"3ece79dcc83c32531df95129cd9d687bb66fe66b","message":"docs(notification): record real platform acceptance\n","url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system/commit/3ece79dcc83c32531df95129cd9d687bb66fe66b","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-09-23T07:00:29-07:00","added":[],"removed":[],"modified":["docs/deployment-record-2026-09-23-platform-notification-consumer.md"]},"repository":{"id":81,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhai-after-sales-service-system","full_name":"luoanwu/juhai-after-sales-service-system","description":"巨嗨智服:受治理的 AI 售后服务系统","empty":false,"private":true,"fork":false,"template":false,"mirror":false,"size":3409,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhai-after-sales-service-system/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhai-after-sales-service-system","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhai-after-sales-service-system.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhai-after-sales-service-system.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-08-26T08:47:15+08:00","updated_at":"2026-09-23T21:27: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
|
6
|
1790172106
|
1790172115
|
0
|
1790172104
|
1790172115
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23458
|
feat: harden voiceprint query integrity
|
62
|
5
|
governance.yml
|
8
|
5
|
0
|
refs/heads/main
|
3e9e11cd8aef1d8572f13e41bfc4a9ad091cea59
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"3d3d1a4d8c4ab00b1cefbc239838007a04296172","after":"3e9e11cd8aef1d8572f13e41bfc4a9ad091cea59","compare_url":"https://gitea.g-hi.com/luoanwu/voiceprint-recognition/compare/3d3d1a4d8c4ab00b1cefbc239838007a04296172...3e9e11cd8aef1d8572f13e41bfc4a9ad091cea59","commits":[{"id":"3e9e11cd8aef1d8572f13e41bfc4a9ad091cea59","message":"feat: harden voiceprint query integrity\n","url":"https://gitea.g-hi.com/luoanwu/voiceprint-recognition/commit/3e9e11cd8aef1d8572f13e41bfc4a9ad091cea59","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-30T02:09:01-07:00","added":[],"removed":[],"modified":["CLAUDE.md","README.md","apps/web/e2e/acceptance.spec.ts","apps/web/src/components/voiceprint/IdentifyPanel.tsx","docs/domain/voiceprint-blueprint.md","docs/karaoke-singer-personalized-dsp-system-design.md","docs/product-prd.md","packages/contracts/src/voiceprint.test.ts","packages/contracts/src/voiceprint.ts","reports/baseline.json","reports/contract-consumers.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/voiceprint-sidecar-ui-stub.mjs","src/speaker_embedding/extractor.py","src/speaker_embedding/sidecar.py","src/speaker_embedding/speaker_db.py","tests/test_sidecar.py","tests/test_speaker_db.py"]},{"id":"7d5bf03ace3e1daf460a271e6fabff8c5da00b8b","message":"feat: improve voiceprint recognition governance\n","url":"https://gitea.g-hi.com/luoanwu/voiceprint-recognition/commit/7d5bf03ace3e1daf460a271e6fabff8c5da00b8b","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-30T01:32:56-07:00","added":["scripts/repair-vm-redis-aof.sh","scripts/run-python-tests.sh"],"removed":[],"modified":[".github/workflows/governance.yml","CLAUDE.md","README.md","apps/api-fastify/src/modules/voiceprint/sidecar-client.ts","apps/api-fastify/src/modules/voiceprint/tasks.service.ts","apps/api-nestjs/src/voiceprint/sidecar.client.ts","apps/api-nestjs/src/voiceprint/voiceprint.service.ts","apps/web/e2e/acceptance.spec.ts","apps/web/src/components/voiceprint/AudioPicker.tsx","apps/web/src/components/voiceprint/IdentifyPanel.tsx","apps/web/src/components/voiceprint/VoiceProfileCard.tsx","docs/deployment-vm.md","docs/domain/voiceprint-blueprint.md","docs/karaoke-singer-personalized-dsp-system-design.md","docs/product-prd.md","docs/research-age-gender.md","package.json","packages/contracts/src/voiceprint.test.ts","packages/contracts/src/voiceprint.ts","reports/baseline.json","reports/contract-consumers.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/check-runtime-acceptance.mjs","scripts/governance-report.mjs","scripts/voiceprint-sidecar-ui-stub.mjs","src/speaker_embedding/age_gender_research.py","src/speaker_embedding/sidecar.py","src/speaker_embedding/speaker_db.py","tests/test_age_gender_research.py","tests/test_age_gender_sidecar.py","tests/test_sidecar.py","tests/test_speaker_db.py"]}],"total_commits":0,"head_commit":{"id":"3e9e11cd8aef1d8572f13e41bfc4a9ad091cea59","message":"feat: harden voiceprint query integrity\n","url":"https://gitea.g-hi.com/luoanwu/voiceprint-recognition/commit/3e9e11cd8aef1d8572f13e41bfc4a9ad091cea59","author":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@gmail.com","username":""},"verification":null,"timestamp":"2026-07-30T02:09:01-07:00","added":[],"removed":[],"modified":["CLAUDE.md","README.md","apps/web/e2e/acceptance.spec.ts","apps/web/src/components/voiceprint/IdentifyPanel.tsx","docs/domain/voiceprint-blueprint.md","docs/karaoke-singer-personalized-dsp-system-design.md","docs/product-prd.md","packages/contracts/src/voiceprint.test.ts","packages/contracts/src/voiceprint.ts","reports/baseline.json","reports/contract-consumers.latest.json","reports/dual-backend-parity.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/migrations.latest.json","reports/naming.latest.json","reports/order-concurrency-guard.latest.json","reports/runtime-acceptance.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/ui-acceptance.latest.json","reports/validation-source.latest.json","scripts/voiceprint-sidecar-ui-stub.mjs","src/speaker_embedding/extractor.py","src/speaker_embedding/sidecar.py","src/speaker_embedding/speaker_db.py","tests/test_sidecar.py","tests/test_speaker_db.py"]},"repository":{"id":62,"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":"voiceprint-recognition","full_name":"luoanwu/voiceprint-recognition","description":"ECAPA+WavLM 声纹注册识别、1:N ANN 检索与声音特征画像平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":1473,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/voiceprint-recognition/languages","html_url":"https://gitea.g-hi.com/luoanwu/voiceprint-recognition","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/voiceprint-recognition","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/voiceprint-recognition.git","clone_url":"https://gitea.g-hi.com/luoanwu/voiceprint-recognition.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":2,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-15T08:42:42+08:00","updated_at":"2026-07-22T09:58: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
|
8
|
1785407063
|
1785410372
|
0
|
1785407062
|
1785410372
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
23731
|
docs(release): record verified trends detail deplo docs(release): record verified trends detail deployment...
|
57
|
5
|
governance.yml
|
102
|
5
|
0
|
refs/heads/main
|
3e98c60c0b42dcbf0ecaf8770cf55db804dc81a6
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"6aa559f46b9af7f04282b2a928af87b9905e2cd4","after":"3e98c60c0b42dcbf0ecaf8770cf55db804dc81a6","compare_url":"https://gitea.g-hi.com/luoanwu/image-generation/compare/6aa559f46b9af7f04282b2a928af87b9905e2cd4...3e98c60c0b42dcbf0ecaf8770cf55db804dc81a6","commits":[{"id":"3e98c60c0b42dcbf0ecaf8770cf55db804dc81a6","message":"docs(release): record verified trends detail deployment\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/3e98c60c0b42dcbf0ecaf8770cf55db804dc81a6","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-09-08T16:20:59-07:00","added":["docs/releases/2026-09-08-trends-detail2.md","reports/industry-trends-detail-2026-09-08/backup-verification.json","reports/industry-trends-detail-2026-09-08/browser-verification.json","reports/industry-trends-detail-2026-09-08/deployed-verify.json","reports/industry-trends-detail-2026-09-08/post-deployment-smoke.json"],"removed":[],"modified":["docs/governance/log/2026-09-08-industry-trends-detail.md","docs/releases/current.md","reports/industry-trends-detail-2026-09-08/README.md"]}],"total_commits":0,"head_commit":{"id":"3e98c60c0b42dcbf0ecaf8770cf55db804dc81a6","message":"docs(release): record verified trends detail deployment\n","url":"https://gitea.g-hi.com/luoanwu/image-generation/commit/3e98c60c0b42dcbf0ecaf8770cf55db804dc81a6","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-09-08T16:20:59-07:00","added":["docs/releases/2026-09-08-trends-detail2.md","reports/industry-trends-detail-2026-09-08/backup-verification.json","reports/industry-trends-detail-2026-09-08/browser-verification.json","reports/industry-trends-detail-2026-09-08/deployed-verify.json","reports/industry-trends-detail-2026-09-08/post-deployment-smoke.json"],"removed":[],"modified":["docs/governance/log/2026-09-08-industry-trends-detail.md","docs/releases/current.md","reports/industry-trends-detail-2026-09-08/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":703656,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation/languages","html_url":"https://gitea.g-hi.com/luoanwu/image-generation","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/image-generation","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/image-generation.git","clone_url":"https://gitea.g-hi.com/luoanwu/image-generation.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":7,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-06T17:04:22+08:00","updated_at":"2026-09-09T07:07: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
|
1788909677
|
1788909716
|
0
|
1788909675
|
1788909716
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|
|
26131
|
chore(reports): bind final documentation verificat chore(reports): bind final documentation verification...
|
116
|
5
|
platform.yml
|
905
|
5
|
0
|
refs/heads/main
|
3e80ae6d1c18612a1ae9766247492b0d1ab4d179
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"b0b1bb834bc334e62232d7c57fc12ed3f0c6f6d5","after":"3e80ae6d1c18612a1ae9766247492b0d1ab4d179","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/b0b1bb834bc334e62232d7c57fc12ed3f0c6f6d5...3e80ae6d1c18612a1ae9766247492b0d1ab4d179","commits":[{"id":"3e80ae6d1c18612a1ae9766247492b0d1ab4d179","message":"chore(reports): bind final documentation verification\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3e80ae6d1c18612a1ae9766247492b0d1ab4d179","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-19T18:04:57-07:00","added":[],"removed":[],"modified":["reports/doc-claims.latest.json"]},{"id":"d0ed1e48a3721d1ce810a4e5c4fe8d585ecd1a2a","message":"docs: record snapshot publication and final verification limits\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/d0ed1e48a3721d1ce810a4e5c4fe8d585ecd1a2a","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-19T18:04:57-07:00","added":["docs/evidence/three-historical-reports-2026-10-19/cleanup.json","docs/evidence/three-historical-reports-2026-10-19/snapshot-publication.json"],"removed":[],"modified":["docs/三份历史专项重新验证-2026-10-19.md","docs/当前状态与验收边界.md"]},{"id":"0cd30704e3bb00b47a90956d3f1f342e49ec4974","message":"chore(reports): embed fully refreshed evidence in workbench snapshots\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/0cd30704e3bb00b47a90956d3f1f342e49ec4974","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-19T18:03:42-07:00","added":[],"removed":[],"modified":["reports/release-manifest.latest.json","reports/workbench-catalog-snapshot.latest.json","reports/workbench-ops-snapshot.latest.json"]},{"id":"c7664194006b37c4a4acc51b935180f43688595f","message":"chore(reports): close three stale warnings with real evidence\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/c7664194006b37c4a4acc51b935180f43688595f","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-19T18:03:41-07:00","added":[],"removed":[],"modified":["reports/evidence-freshness.latest.json"]},{"id":"934c7118b2828b3a41bacf35863873d1936d7a5c","message":"chore(reports): rebuild workbench snapshots after specialty verification\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/934c7118b2828b3a41bacf35863873d1936d7a5c","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-19T18:03:28-07:00","added":[],"removed":[],"modified":["reports/release-manifest.latest.json","reports/workbench-catalog-snapshot.latest.json","reports/workbench-ops-snapshot.latest.json"]}],"total_commits":0,"head_commit":{"id":"3e80ae6d1c18612a1ae9766247492b0d1ab4d179","message":"chore(reports): bind final documentation verification\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3e80ae6d1c18612a1ae9766247492b0d1ab4d179","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-19T18:04:57-07:00","added":[],"removed":[],"modified":["reports/doc-claims.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":85470,"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":119,"open_issues_count":0,"open_pr_counter":2,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-09-11T07:33:25+08:00","updated_at":"2026-10-20T09:01: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
|
30
|
1792458329
|
1792458331
|
0
|
1792458329
|
1792458343
|
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
|
|
25747
|
Add regression tests for CJK characters (#471)
|
139
|
5
|
test.yml
|
57
|
5
|
0
|
refs/tags/v8.0.1
|
3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c
|
0
|
0
|
0
|
push
|
{"ref":"refs/tags/v8.0.1","bef {"ref":"refs/tags/v8.0.1","before":"0000000000000000000000000000000000000000","after":"3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c","compare_url":"https://gitea.g-hi.com/luoanwu/actions-download-artifact/compare/0000000000000000000000000000000000000000...3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c","commits":[],"total_commits":0,"head_commit":{"id":"3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c","message":"Add regression tests for CJK characters (#471)\n\n* Add regression tests for CJK characters\n\n* Dedupe the names and remove the ignored `name` param\n\n* Bump @actions/artifact to v6.2.1\n\n* Run `npm run release`\n\n* Update licenses","url":"https://gitea.g-hi.com/luoanwu/actions-download-artifact/commit/3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c","author":{"name":"Daniel Kennedy","email":"danwkennedy@github.com","username":""},"committer":{"name":"GitHub","email":"noreply@github.com","username":""},"verification":null,"timestamp":"2026-03-11T11:35:54-04:00","added":[],"removed":[],"modified":[".github/workflows/test.yml",".licenses/npm/@actions/artifact.dep.yml","README.md","dist/index.js","package-lock.json","package.json"]},"repository":{"id":139,"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":"actions-download-artifact","full_name":"luoanwu/actions-download-artifact","description":"Mirror of github.com/actions/download-artifact for Gitea Actions (MIT)","empty":false,"private":true,"fork":false,"template":false,"mirror":false,"size":27,"language":"TypeScript","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/actions-download-artifact/languages","html_url":"https://gitea.g-hi.com/luoanwu/actions-download-artifact","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/actions-download-artifact","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/actions-download-artifact.git","clone_url":"https://gitea.g-hi.com/luoanwu/actions-download-artifact.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-10-13T06:37:23+08:00","updated_at":"2026-10-13T06:38:59+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":true,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
3
|
6
|
1791858964
|
1791950483
|
0
|
1791844749
|
1791950483
|
|
|
0
|
Edit
Delete
|
|
25927
|
feat(enterprise): add five-layer development integ feat(enterprise): add five-layer development integration and activation handoff...
|
51
|
5
|
ci.yml
|
84
|
5
|
0
|
refs/heads/main
|
3e5c8601b69669cd3fa1689d03d7c3a60d5014f3
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"80ef8d68e96afb51f1b6b62cc34883f0d7712b06","after":"3e5c8601b69669cd3fa1689d03d7c3a60d5014f3","compare_url":"https://gitea.g-hi.com/luoanwu/yggdrasil-local-life-tools/compare/80ef8d68e96afb51f1b6b62cc34883f0d7712b06...3e5c8601b69669cd3fa1689d03d7c3a60d5014f3","commits":[{"id":"3e5c8601b69669cd3fa1689d03d7c3a60d5014f3","message":"feat(enterprise): add five-layer development integration and activation handoff\n","url":"https://gitea.g-hi.com/luoanwu/yggdrasil-local-life-tools/commit/3e5c8601b69669cd3fa1689d03d7c3a60d5014f3","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-16T17:15:21-07:00","added":["docs/contracts/enterprise-integration.md","docs/enterprise-integration-2026-10-16.md","docs/enterprise-model-inventory.md","e2e/tests/18-enterprise-integration.spec.ts","governance/enterprise-bindings.example.json","governance/enterprise-integration.json","governance/model-dispositions.json","scripts/check-enterprise-integration.mjs","server/src/lib/request-context.ts","server/src/modules/enterprise/bindings.ts","server/src/modules/enterprise/routes.ts","server/src/modules/enterprise/schema.ts","server/src/modules/enterprise/service.ts","server/test/enterprise-integration.unit.test.ts","server/test/r63-enterprise-integration.test.ts"],"removed":[],"modified":[".gitea/workflows/ci.yml",".github/workflows/ci.yml",".gitignore","CLAUDE.md","README.md","docs/platform-onboarding.md","e2e/package.json","server/.env.example","server/README.md","server/package-lock.json","server/package.json","server/src/app.ts","server/src/config/env.ts","server/src/openapi.ts","server/src/routes.ts","团购本地生活AI运营App/api.js","团购本地生活AI运营App/package.json","团购本地生活AI运营App/screen-governance.generated.json","团购本地生活AI运营App/screens-more.jsx","团购本地生活AI运营App/screens-real-modules.jsx","团购本地生活AI运营App/scripts/screen-governance.mjs","团购本地生活AI运营App/scripts/test-static.mjs","开发计划.md"]}],"total_commits":0,"head_commit":{"id":"3e5c8601b69669cd3fa1689d03d7c3a60d5014f3","message":"feat(enterprise): add five-layer development integration and activation handoff\n","url":"https://gitea.g-hi.com/luoanwu/yggdrasil-local-life-tools/commit/3e5c8601b69669cd3fa1689d03d7c3a60d5014f3","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-16T17:15:21-07:00","added":["docs/contracts/enterprise-integration.md","docs/enterprise-integration-2026-10-16.md","docs/enterprise-model-inventory.md","e2e/tests/18-enterprise-integration.spec.ts","governance/enterprise-bindings.example.json","governance/enterprise-integration.json","governance/model-dispositions.json","scripts/check-enterprise-integration.mjs","server/src/lib/request-context.ts","server/src/modules/enterprise/bindings.ts","server/src/modules/enterprise/routes.ts","server/src/modules/enterprise/schema.ts","server/src/modules/enterprise/service.ts","server/test/enterprise-integration.unit.test.ts","server/test/r63-enterprise-integration.test.ts"],"removed":[],"modified":[".gitea/workflows/ci.yml",".github/workflows/ci.yml",".gitignore","CLAUDE.md","README.md","docs/platform-onboarding.md","e2e/package.json","server/.env.example","server/README.md","server/package-lock.json","server/package.json","server/src/app.ts","server/src/config/env.ts","server/src/openapi.ts","server/src/routes.ts","团购本地生活AI运营App/api.js","团购本地生活AI运营App/package.json","团购本地生活AI运营App/screen-governance.generated.json","团购本地生活AI运营App/screens-more.jsx","团购本地生活AI运营App/screens-real-modules.jsx","团购本地生活AI运营App/scripts/screen-governance.mjs","团购本地生活AI运营App/scripts/test-static.mjs","开发计划.md"]},"repository":{"id":51,"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":"yggdrasil-local-life-tools","full_name":"luoanwu/yggdrasil-local-life-tools","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":93439,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/yggdrasil-local-life-tools/languages","html_url":"https://gitea.g-hi.com/luoanwu/yggdrasil-local-life-tools","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/yggdrasil-local-life-tools","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/yggdrasil-local-life-tools.git","clone_url":"https://gitea.g-hi.com/luoanwu/yggdrasil-local-life-tools.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":2,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-02T16:02:07+08:00","updated_at":"2026-10-05T09:22: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
|
1792196126
|
1792196217
|
0
|
1792196126
|
1792196217
|
group: ci-${{ github.ref }}
cancel-in-progress: group: ci-${{ github.ref }}
cancel-in-progress: "true"
...
|
ci-refs/heads/main
|
1
|
Edit
Delete
|
|
25928
|
feat(enterprise): add five-layer development integ feat(enterprise): add five-layer development integration and activation handoff...
|
51
|
5
|
e2e.yml
|
85
|
5
|
0
|
refs/heads/main
|
3e5c8601b69669cd3fa1689d03d7c3a60d5014f3
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"80ef8d68e96afb51f1b6b62cc34883f0d7712b06","after":"3e5c8601b69669cd3fa1689d03d7c3a60d5014f3","compare_url":"https://gitea.g-hi.com/luoanwu/yggdrasil-local-life-tools/compare/80ef8d68e96afb51f1b6b62cc34883f0d7712b06...3e5c8601b69669cd3fa1689d03d7c3a60d5014f3","commits":[{"id":"3e5c8601b69669cd3fa1689d03d7c3a60d5014f3","message":"feat(enterprise): add five-layer development integration and activation handoff\n","url":"https://gitea.g-hi.com/luoanwu/yggdrasil-local-life-tools/commit/3e5c8601b69669cd3fa1689d03d7c3a60d5014f3","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-16T17:15:21-07:00","added":["docs/contracts/enterprise-integration.md","docs/enterprise-integration-2026-10-16.md","docs/enterprise-model-inventory.md","e2e/tests/18-enterprise-integration.spec.ts","governance/enterprise-bindings.example.json","governance/enterprise-integration.json","governance/model-dispositions.json","scripts/check-enterprise-integration.mjs","server/src/lib/request-context.ts","server/src/modules/enterprise/bindings.ts","server/src/modules/enterprise/routes.ts","server/src/modules/enterprise/schema.ts","server/src/modules/enterprise/service.ts","server/test/enterprise-integration.unit.test.ts","server/test/r63-enterprise-integration.test.ts"],"removed":[],"modified":[".gitea/workflows/ci.yml",".github/workflows/ci.yml",".gitignore","CLAUDE.md","README.md","docs/platform-onboarding.md","e2e/package.json","server/.env.example","server/README.md","server/package-lock.json","server/package.json","server/src/app.ts","server/src/config/env.ts","server/src/openapi.ts","server/src/routes.ts","团购本地生活AI运营App/api.js","团购本地生活AI运营App/package.json","团购本地生活AI运营App/screen-governance.generated.json","团购本地生活AI运营App/screens-more.jsx","团购本地生活AI运营App/screens-real-modules.jsx","团购本地生活AI运营App/scripts/screen-governance.mjs","团购本地生活AI运营App/scripts/test-static.mjs","开发计划.md"]}],"total_commits":0,"head_commit":{"id":"3e5c8601b69669cd3fa1689d03d7c3a60d5014f3","message":"feat(enterprise): add five-layer development integration and activation handoff\n","url":"https://gitea.g-hi.com/luoanwu/yggdrasil-local-life-tools/commit/3e5c8601b69669cd3fa1689d03d7c3a60d5014f3","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-16T17:15:21-07:00","added":["docs/contracts/enterprise-integration.md","docs/enterprise-integration-2026-10-16.md","docs/enterprise-model-inventory.md","e2e/tests/18-enterprise-integration.spec.ts","governance/enterprise-bindings.example.json","governance/enterprise-integration.json","governance/model-dispositions.json","scripts/check-enterprise-integration.mjs","server/src/lib/request-context.ts","server/src/modules/enterprise/bindings.ts","server/src/modules/enterprise/routes.ts","server/src/modules/enterprise/schema.ts","server/src/modules/enterprise/service.ts","server/test/enterprise-integration.unit.test.ts","server/test/r63-enterprise-integration.test.ts"],"removed":[],"modified":[".gitea/workflows/ci.yml",".github/workflows/ci.yml",".gitignore","CLAUDE.md","README.md","docs/platform-onboarding.md","e2e/package.json","server/.env.example","server/README.md","server/package-lock.json","server/package.json","server/src/app.ts","server/src/config/env.ts","server/src/openapi.ts","server/src/routes.ts","团购本地生活AI运营App/api.js","团购本地生活AI运营App/package.json","团购本地生活AI运营App/screen-governance.generated.json","团购本地生活AI运营App/screens-more.jsx","团购本地生活AI运营App/screens-real-modules.jsx","团购本地生活AI运营App/scripts/screen-governance.mjs","团购本地生活AI运营App/scripts/test-static.mjs","开发计划.md"]},"repository":{"id":51,"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":"yggdrasil-local-life-tools","full_name":"luoanwu/yggdrasil-local-life-tools","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":93439,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/yggdrasil-local-life-tools/languages","html_url":"https://gitea.g-hi.com/luoanwu/yggdrasil-local-life-tools","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/yggdrasil-local-life-tools","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/yggdrasil-local-life-tools.git","clone_url":"https://gitea.g-hi.com/luoanwu/yggdrasil-local-life-tools.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":2,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-07-02T16:02:07+08:00","updated_at":"2026-10-05T09:22: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
|
4
|
1792196217
|
1792196238
|
0
|
1792196126
|
1792196238
|
|
|
0
|
Edit
Delete
|
|
25916
|
docs: confirm workbench proxy after EES update
|
116
|
5
|
platform.yml
|
804
|
5
|
0
|
refs/heads/main
|
3e3030286015e1e7e10d72dbf3a6bfda3a62a7ab
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"66deab95e762c8842240830c084c18fe7481fbd1","after":"3e3030286015e1e7e10d72dbf3a6bfda3a62a7ab","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/66deab95e762c8842240830c084c18fe7481fbd1...3e3030286015e1e7e10d72dbf3a6bfda3a62a7ab","commits":[{"id":"3e3030286015e1e7e10d72dbf3a6bfda3a62a7ab","message":"docs: confirm workbench proxy after EES update\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3e3030286015e1e7e10d72dbf3a6bfda3a62a7ab","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-16T08:27:41-07:00","added":[],"removed":[],"modified":["docs/evidence/business-breakpoints-2026-10-16/README.md"]},{"id":"1445076417d806fb3f58b0f24088ce01c6157760","message":"docs: record fixed EES deployment and remaining business decisions\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/1445076417d806fb3f58b0f24088ce01c6157760","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-16T08:26:49-07:00","added":["docs/evidence/business-breakpoints-2026-10-16/README.md","docs/evidence/business-breakpoints-2026-10-16/deployment.json"],"removed":[],"modified":[]}],"total_commits":0,"head_commit":{"id":"3e3030286015e1e7e10d72dbf3a6bfda3a62a7ab","message":"docs: confirm workbench proxy after EES update\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3e3030286015e1e7e10d72dbf3a6bfda3a62a7ab","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-10-16T08:27:41-07:00","added":[],"removed":[],"modified":["docs/evidence/business-breakpoints-2026-10-16/README.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":87030,"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":59,"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-10-16T23:23:28+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
|
1792164497
|
1792164500
|
0
|
1792164497
|
1792164512
|
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
|
|
27093
|
chore(reports): 工作台发布快照与 Release Manifest 联建 @ 915 chore(reports): 工作台发布快照与 Release Manifest 联建 @ 915479856...
|
116
|
5
|
platform.yml
|
1426
|
5
|
0
|
refs/heads/main
|
3e2adb8001a409e0f32644cf51dfbab639a1cdbf
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"91547985693a90dfce037a326452d3ea81ff5983","after":"3e2adb8001a409e0f32644cf51dfbab639a1cdbf","compare_url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/compare/91547985693a90dfce037a326452d3ea81ff5983...3e2adb8001a409e0f32644cf51dfbab639a1cdbf","commits":[{"id":"3e2adb8001a409e0f32644cf51dfbab639a1cdbf","message":"chore(reports): 工作台发布快照与 Release Manifest 联建 @ 915479856\n\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3e2adb8001a409e0f32644cf51dfbab639a1cdbf","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-11-05T03:34:34-08:00","added":[],"removed":[],"modified":["reports/release-manifest.latest.json","reports/workbench-catalog-snapshot.latest.json","reports/workbench-ops-snapshot.latest.json"]}],"total_commits":0,"head_commit":{"id":"3e2adb8001a409e0f32644cf51dfbab639a1cdbf","message":"chore(reports): 工作台发布快照与 Release Manifest 联建 @ 915479856\n\nCo-Authored-By: Claude Opus 5.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/enterprise-platform/commit/3e2adb8001a409e0f32644cf51dfbab639a1cdbf","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-11-05T03:34:34-08:00","added":[],"removed":[],"modified":["reports/release-manifest.latest.json","reports/workbench-catalog-snapshot.latest.json","reports/workbench-ops-snapshot.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":173945,"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":1,"watchers_count":1,"branch_count":188,"open_issues_count":0,"open_pr_counter":5,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-09-11T07:33:25+08:00","updated_at":"2026-11-05T19:32: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
|
30
|
1793878570
|
1793878751
|
0
|
1793878569
|
1793878794
|
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
|
|
24239
|
docs(基础): 治理测试计数由 471 改 480 —— 随 check:modules 投影准 docs(基础): 治理测试计数由 471 改 480 —— 随 check:modules 投影准入新增 8 例...
|
117
|
5
|
governance.yml
|
85
|
5
|
0
|
refs/heads/main
|
3e1c4767a1d962075bfbcd815c9ce1f1bb7fd0a2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"97e65b262e22f4bfef8755e848e5bacbf33574b3","after":"3e1c4767a1d962075bfbcd815c9ce1f1bb7fd0a2","compare_url":"https://gitea.g-hi.com/luoanwu/platform-governance/compare/97e65b262e22f4bfef8755e848e5bacbf33574b3...3e1c4767a1d962075bfbcd815c9ce1f1bb7fd0a2","commits":[{"id":"3e1c4767a1d962075bfbcd815c9ce1f1bb7fd0a2","message":"docs(基础): 治理测试计数由 471 改 480 —— 随 check:modules 投影准入新增 8 例\n\n真源仓 `c1d6baa` 给 check:modules 加了投影类模块准入(CHG-022 §3.2 第 10 条\n可机器判定的那一半),带 8 个负向用例;另有并行会话 1 例。两条跑法复测都是\n480 例 479 通过 / 0 失败 / 1 跳过,`reports/` 仍一个字节不动。\n\n两仓数字一起改(本目录 CLAUDE.md 纪律):真源仓改实现,治理层改引用。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/3e1c4767a1d962075bfbcd815c9ce1f1bb7fd0a2","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-09-19T04:15:39-07:00","added":[],"removed":[],"modified":["企业控制面/CLAUDE.md"]}],"total_commits":0,"head_commit":{"id":"3e1c4767a1d962075bfbcd815c9ce1f1bb7fd0a2","message":"docs(基础): 治理测试计数由 471 改 480 —— 随 check:modules 投影准入新增 8 例\n\n真源仓 `c1d6baa` 给 check:modules 加了投影类模块准入(CHG-022 §3.2 第 10 条\n可机器判定的那一半),带 8 个负向用例;另有并行会话 1 例。两条跑法复测都是\n480 例 479 通过 / 0 失败 / 1 跳过,`reports/` 仍一个字节不动。\n\n两仓数字一起改(本目录 CLAUDE.md 纪律):真源仓改实现,治理层改引用。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/platform-governance/commit/3e1c4767a1d962075bfbcd815c9ce1f1bb7fd0a2","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-09-19T04:15:39-07:00","added":[],"removed":[],"modified":["企业控制面/CLAUDE.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":12056,"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-19T17:55: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
|
1789823691
|
1789823781
|
0
|
1789823568
|
1789823781
|
|
|
0
|
Edit
Delete
|
|
24123
|
chore(reports): PEER_UNSATISFIED 判据的二十八份静态证据 回绑 @ chore(reports): PEER_UNSATISFIED 判据的二十八份静态证据 回绑 @ 8e5c633,刷新快照锚点...
|
76
|
5
|
governance.yml
|
72
|
5
|
0
|
refs/heads/main
|
3deb4ea37b83c2e2977c9c2b8e8166c101002860
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"fd3ba87ed111d9245012f0578178cccb4743ab20","after":"3deb4ea37b83c2e2977c9c2b8e8166c101002860","compare_url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/compare/fd3ba87ed111d9245012f0578178cccb4743ab20...3deb4ea37b83c2e2977c9c2b8e8166c101002860","commits":[{"id":"3deb4ea37b83c2e2977c9c2b8e8166c101002860","message":"chore(reports): PEER_UNSATISFIED 判据的二十八份静态证据 回绑 @ 8e5c633,刷新快照锚点\n\n本批次最后一个提交,按 C241 同时刷新快照锚点到 8e5c633(声明落后 0,本提交自身使实测\n落后 1,在 +1 自指窗内)。\n\n二十八份 reports/*.latest.json 全部 clean 绑定(gitSha=8e5c633、worktreeDirty:false)。\n整轮 28 步全执行,前 27 步全绿,末步 check:kernel-admission 仍是那 8 处已知诚实红。\n\nplatform-dependency-provenance 报告新增一处 registered:PEER_UNSATISFIED(client-fact\nrc.3 的 peer 0.16.1 ↔ 本仓已解析 0.22.0),期限 2026-12-18。门禁整体仍绿——登记的作用是\n把「pnpm 只打 WARN、门禁零覆盖」变成「可见、有期限、到期转红」,不是让它消失。\n\n工作区内三份 reports/ui-*.latest.json 的改动早于本批次,未提交也未还原。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/3deb4ea37b83c2e2977c9c2b8e8166c101002860","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-09-18T02:38:50-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/agent-adapters.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fixtures.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/kernel-admission.latest.json","reports/kernel-boundaries.latest.json","reports/kernel-downstream.latest.json","reports/kernel-extensions.latest.json","reports/kernel-packages.latest.json","reports/list-bounds.latest.json","reports/llm-eval.latest.json","reports/migrations.latest.json","reports/mobile-export.latest.json","reports/naming.latest.json","reports/operations.latest.json","reports/platform-dependency-provenance.latest.json","reports/product-acceptance.latest.json","reports/product-migrations.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},{"id":"8e5c633cbfbc16afc61c95b8cfcecb90a2f1aa88","message":"feat(governance): PEER_UNSATISFIED 判据——把 pnpm 只打 WARN 的跨包版本不一致变成可见可登记\n\nB1 pin @juhai/kernel@0.22.0 后 pnpm 报了一行 unmet peer 就继续装,**本仓原有门禁一条都\n抓不到**。按内核退回 pin 立项 §6 三条出路裁为 ③(登记偏差 + 加判据,不停等发布列车)。\n\n新判据 PEER_UNSATISFIED:lock 里 @juhai/* 之间声明的 peer 必须被已解析版本满足;\n未满足即红,可按既有五字段口径登记降级为 registered,过期转红。peer 指向本仓根本没装的\n包时不判(防过度判红)。自检从 7 条扩到 12 条,新增 5 条全覆盖上述分支。\n\n实测命中一条真问题,并顺带拆出更深的一层:\n\n- 已发布的 @juhai/client-fact@1.0.0-rc.3 声明 peer @juhai/kernel: 0.16.1(发布物自证),\n 而控制面仓里**同版本的源码**声明 0.22.0——2026-09-17 框架同步只改了 package.json 没重发\n- 把 registry 上的 rc.3 拆开看:dist 里**没有** Authorization 回查鉴权,而源码 reader.ts:31\n 发 Bearer ${token}。**同一个版本号,registry 与源码是两份不同的代码**\n- 该发布物 provenance.json 为 runner:\"local\" / reports:[] / **gitSha:\"\"**——空字符串。\n 任何消费者都无法验证装到的包出自哪次提交,上一条「同版本不同内容」因此无法被机器发现\n\n不兼容风险经 delta 分析可论证为极低:内核 v0.16.1 → v0.22.0 只改 health.ts(+126)、\nalert.ts(+53)、tenant.ts(+12) 三处纯增,client-fact 一个都不消费。故登记而非阻断,\n期限 2026-12-18,blockedBy 指向平台发布列车(G-12 计费阻塞)。\n\n为什么不选另两条路(立项 §6 已记):② 退回 pin 0.16.1 的当前代价几乎为零——三处加固\n(replay cursor-unknown、WS 载荷上限、订阅数上限)**实测都已在 v0.16.1 里**,我上一轮说\n「退回等于放弃 6 个版本加固」是错的——但它是伪解,B2 要迁 alert/tenant、B3 要迁 health 时\npeer 冲突原样回来;① 等平台重发会把本仓进度挂在不可控的跨仓列车上,且若仍走本地旁路,\nprovenance 依旧无 gitSha,只解决 peer 不解决可对账性。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/8e5c633cbfbc16afc61c95b8cfcecb90a2f1aa88","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-09-18T02:37:17-07:00","added":[],"removed":[],"modified":["CLAUDE.md","governance/platform-dependency-deviations.json","scripts/check-platform-dependency-provenance.mjs"]}],"total_commits":0,"head_commit":{"id":"3deb4ea37b83c2e2977c9c2b8e8166c101002860","message":"chore(reports): PEER_UNSATISFIED 判据的二十八份静态证据 回绑 @ 8e5c633,刷新快照锚点\n\n本批次最后一个提交,按 C241 同时刷新快照锚点到 8e5c633(声明落后 0,本提交自身使实测\n落后 1,在 +1 自指窗内)。\n\n二十八份 reports/*.latest.json 全部 clean 绑定(gitSha=8e5c633、worktreeDirty:false)。\n整轮 28 步全执行,前 27 步全绿,末步 check:kernel-admission 仍是那 8 处已知诚实红。\n\nplatform-dependency-provenance 报告新增一处 registered:PEER_UNSATISFIED(client-fact\nrc.3 的 peer 0.16.1 ↔ 本仓已解析 0.22.0),期限 2026-12-18。门禁整体仍绿——登记的作用是\n把「pnpm 只打 WARN、门禁零覆盖」变成「可见、有期限、到期转红」,不是让它消失。\n\n工作区内三份 reports/ui-*.latest.json 的改动早于本批次,未提交也未还原。\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/digital-employee-os/commit/3deb4ea37b83c2e2977c9c2b8e8166c101002860","author":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"committer":{"name":"juhailaoluo pro","email":"hillao@juhailaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-09-18T02:38:50-07:00","added":[],"removed":[],"modified":["CLAUDE.md","reports/agent-adapters.latest.json","reports/contract-consumers.latest.json","reports/docs-truth.latest.json","reports/dual-backend-parity.latest.json","reports/fixtures.latest.json","reports/fork-readiness.latest.json","reports/governance-docs.latest.json","reports/governance.latest.json","reports/kernel-admission.latest.json","reports/kernel-boundaries.latest.json","reports/kernel-downstream.latest.json","reports/kernel-extensions.latest.json","reports/kernel-packages.latest.json","reports/list-bounds.latest.json","reports/llm-eval.latest.json","reports/migrations.latest.json","reports/mobile-export.latest.json","reports/naming.latest.json","reports/operations.latest.json","reports/platform-dependency-provenance.latest.json","reports/product-acceptance.latest.json","reports/product-migrations.latest.json","reports/report-transaction-lock.latest.json","reports/rls.latest.json","reports/runtime-governance.latest.json","reports/schema-sync.latest.json","reports/statemachine-write-guard.latest.json","reports/validation-source.latest.json"]},"repository":{"id":76,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"digital-employee-os","full_name":"luoanwu/digital-employee-os","description":"","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":87099,"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-18T17:08: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
|
2
|
36
|
1789724337
|
1789724347
|
0
|
1789724335
|
1789724362
|
group: governance-${{ github.workflow }}-${{ githu group: governance-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: "true"
...
|
governance-governance.yml-refs/heads/main
|
1
|
Edit
Delete
|