|
18273
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
deploy.yml
|
18193
|
5
|
0
|
refs/heads/main
|
3fa41aea52e84435c16a79dd19c6775f93236a33
|
0
|
0
|
0
|
workflow_run
|
{"action":"completed","workflo {"action":"completed","workflow":{"id":"test-pipeline.yml","name":"Test Pipeline","path":".github/workflows/test-pipeline.yml","state":"active","created_at":"2026-04-27T20:35:57-07:00","updated_at":"2026-04-27T20:35:57-07:00","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/workflows/test-pipeline.yml","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/src/branch/main/.github/workflows/test-pipeline.yml","badge_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/workflows/test-pipeline.yml/badge.svg?branch=main","deleted_at":"0001-01-01T00:00:00Z"},"workflow_run":{"id":18267,"url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/runs/18267","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/runs/18267","display_title":"Add Page AI Assist feature flags and governance audits","path":"test-pipeline.yml@refs/heads/main","event":"push","run_attempt":0,"run_number":18187,"head_sha":"3fa41aea52e84435c16a79dd19c6775f93236a33","head_branch":"main","status":"completed","actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"trigger_actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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":5230163,"language":"HTML","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-28T11:36:20+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":false,"push":false,"pull":false},"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":[]},"conclusion":"failure","started_at":"2026-04-28T11:39:19+08:00","completed_at":"2026-04-28T11:39:58+08:00"},"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":5230163,"language":"HTML","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-28T11:36:20+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"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"}}...
|
workflow_run
|
1
|
40
|
1777347686
|
1777347707
|
0
|
1777347685
|
1777347707
|
group: deploy-${{ github.ref }}
cancel-in-progress group: deploy-${{ github.ref }}
cancel-in-progress: "true"
...
|
deploy-refs/heads/main
|
1
|
Edit
Delete
|
|
18274
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18194
|
-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
|
1777347950
|
1777347950
|
0
|
1777347950
|
1777347950
|
|
|
0
|
Edit
Delete
|
|
18275
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18195
|
-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
|
1777348250
|
1777348251
|
0
|
1777348250
|
1777348251
|
|
|
0
|
Edit
Delete
|
|
18276
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18196
|
-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
|
1777348550
|
1777348550
|
0
|
1777348550
|
1777348550
|
|
|
0
|
Edit
Delete
|
|
18277
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18197
|
-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
|
1777348850
|
1777348851
|
0
|
1777348850
|
1777348851
|
|
|
0
|
Edit
Delete
|
|
18278
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18198
|
-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
|
1777349150
|
1777349151
|
0
|
1777349150
|
1777349151
|
|
|
0
|
Edit
Delete
|
|
18279
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18199
|
-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
|
1777349450
|
1777349450
|
0
|
1777349450
|
1777349450
|
|
|
0
|
Edit
Delete
|
|
18280
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18200
|
-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
|
1777349750
|
1777349751
|
0
|
1777349750
|
1777349751
|
|
|
0
|
Edit
Delete
|
|
18281
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18201
|
-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
|
1777350050
|
1777350051
|
0
|
1777350050
|
1777350051
|
|
|
0
|
Edit
Delete
|
|
18282
|
Add Page AI Assist feature flags and governance au Add Page AI Assist feature flags and governance audits...
|
6
|
5
|
health-check.yml
|
18202
|
-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
|
1777350350
|
1777350351
|
0
|
1777350350
|
1777350351
|
|
|
0
|
Edit
Delete
|
|
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
|
|
17762
|
ci(harness): 新增 governance-audit job 把 HIGH=0 锁为 P ci(harness): 新增 governance-audit job 把 HIGH=0 锁为 PR/main 硬门禁...
|
6
|
5
|
ci.yml
|
17683
|
5
|
0
|
refs/heads/main
|
39b8a4e31ee1b00ff5da03fd301042d13d8d1203
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"a67a4f5bf6bede6341ed368fb3af3caec8dcd71c","after":"39b8a4e31ee1b00ff5da03fd301042d13d8d1203","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/a67a4f5bf6bede6341ed368fb3af3caec8dcd71c...39b8a4e31ee1b00ff5da03fd301042d13d8d1203","commits":[{"id":"39b8a4e31ee1b00ff5da03fd301042d13d8d1203","message":"ci(harness): 新增 governance-audit job 把 HIGH=0 锁为 PR/main 硬门禁\n\n.github/workflows/ci.yml:\n- 新增 governance-audit job: 跑 audit:prisma-zod-contract / audit:formrules-zod / audit:response-columns / audit:field-payload / audit:enum-consistency + pnpm harness report 聚合 dashboard\n- 单项审计 continue-on-error: true,最终判定权统一交给 harness-dashboard.summary.high+critical\n- HIGH+CRITICAL \u003e 0 直接 exit 1 阻塞 PR;上传所有 audit JSON artifact + 写 step summary 表格供 reviewer 直读\n- build job 的 needs 加入 governance-audit,确保 main 推送的镜像产物必经治理门禁\n\nCLAUDE.md: 同步追加\"CI 治理门禁经验\"段,明确\"绝不直接调高门禁阈值,要放宽改 adapter/audit severity 映射\"治理纪律。\n\n锁住本会话治理成果——6 类 audit 盲区填补 + 4 类真业务 P1/bug 收口,新 PR 引入新 HIGH 时立即被拦下。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/39b8a4e31ee1b00ff5da03fd301042d13d8d1203","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:43:55-07:00","added":[],"removed":[],"modified":[".github/workflows/ci.yml","CLAUDE.md"]},{"id":"fc67c3eb51e91a01749234e389fcda8c5769bec5","message":"feat(harness): audit-response-columns 改 import-aware,自动反推真实数据源消除 46 处 view-API 错位误判\n\nscripts/audit-response-columns.ts:\n- 新增 extractApiModuleFromImports(filePath):解析 view 顶部 `import { xxxApi } from '@/api/modules/\u003cx\u003e'` 取首个 API 模块名\n- 主流程构建 viewModule → apiModule 映射;audit 时优先用 apiModule 查找 Prisma model 与 service include,失败回退 view 目录名\n\n仓库实际有 46 处 view 目录-API 模块错位(attribution-models→attribution / abm-marketing→campaign-targets / social-matrix→marketing-matrix / approval-configs→approval-templates 等);以前 audit 会把这 46 个 view 的列 prop 全部按错的 Prisma 表做比对,造成大量误报或漏报真 bug。改 import-aware 后自动用真实数据源做比对,不再需要手动加白名单。\n\nCLAUDE.md: 同步更新\"前端 view 目录与实际 API 模块错位经验\"段,记录 46 处实际错位案例与新增 import-aware 实现。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/fc67c3eb51e91a01749234e389fcda8c5769bec5","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:40:34-07:00","added":[],"removed":[],"modified":["CLAUDE.md","scripts/audit-response-columns.ts"]},{"id":"7e9897cf29abcfd1772faa00d204616200f0ab93","message":"fix(schema): 收口 formrules-zod 9 项 MEDIUM,前后端 description/category/name 全栈对齐\n\n5 处 description Zod max 收紧(前端早就 maxlength=500,后端 2000 是历史遗留):\n- attribution-models / customer-segmentation / lead-assignment / lead-scoring / store-configs:\n description Zod max(2000) → max(500),反向对齐前端 UX 上限\n\nai-agents skill-library FormRules 放宽到 Zod 上限:\n- skill-library/Form.vue: category FormRules max=50 → 100,对齐 Zod max(100)(category 50 字过紧)\n\nchannel-integrations Form 全栈对齐 Zod:\n- Form.vue: FormRules min=2/max=100 → min=1/max=200,maxlength=\"100\" → \"200\"\n 对齐 Zod min(1).max(200),原 min=2 拒绝 1 字符是过度严格\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/7e9897cf29abcfd1772faa00d204616200f0ab93","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:36:20-07:00","added":[],"removed":[],"modified":["backend/src/modules/attribution-models/attribution-models.schema.ts","backend/src/modules/customer-segmentation/customer-segmentation.schema.ts","backend/src/modules/lead-assignment/lead-assignment.schema.ts","backend/src/modules/lead-scoring/lead-scoring.schema.ts","backend/src/modules/store-configs/store-configs.schema.ts","frontend/src/views/ai-agents/skill-library/Form.vue","frontend/src/views/channel-integrations/Form.vue"]},{"id":"aba788bb6011125e1178d038c14f936480380368","message":"docs(governance): 追加 P1-P6 治理经验补充段(dashboard/adapter/audit 盲区/字段错位/maxlength/grade 联动)\n\n新增 5 段经验补充(2026-04-26):\n- Harness Dashboard / Adapter 一致性: dashboard 与 audit latest.json 时间戳必须同步;adapter 字段名严格对齐审计 JSON 真实 key;severity 按 audit raw severity 分级。\n- Prisma↔Zod 审计盲区: 4 类系统性盲区(嵌套子 schema 误匹配 / camel-snake 双计数 / .refine 后置约束 / service 层 auto-gen 字段)的识别与豁免规则。\n- 前端 view 目录与 API 模块错位: approval-configs/Index.vue 实际调 approvalTemplatesApi 这类目录-模块错位的治理路径与 audit 增强建议。\n- Form maxlength 同步: Zod .max(N) 改动必须同步 el-input maxlength;Zod 校验和 maxlength 是不同阶段(提交 vs 输入)。\n- Grade hasEventPublishing 与 moduleType 联动: BaseService 派生识别 + manifest moduleType 双重通路;CRUD 模块缺事件应补 publishEvent 而非加豁免。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/aba788bb6011125e1178d038c14f936480380368","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:32:19-07:00","added":[],"removed":[],"modified":["CLAUDE.md"]},{"id":"744548892f552934566e0879669c2aeb0829fe7d","message":"fix(schema): 收口 Prisma↔Zod 长度真 P1 + 同步前端 maxlength + 修 approval-configs 列名\n\n真 P1 收口(Zod max \u003e Prisma VarChar,DB 会拒绝写入):\n- alliance-agreements.content: Zod max(10000) → max(5000) 对齐 Prisma VarChar(5000)\n- product-categories.description: Zod max(2000) → max(500) 对齐 Prisma VarChar(500)\n\n前端 maxlength 同步(formrules-zod HIGH 4 项收口):\n- alliance-agreements/Form.vue: content maxlength=\"10000\"→\"5000\"\n- lead-scoring/Form.vue: field 字段 maxlength=\"100\", value 字段 maxlength=\"500\"\n- product-categories/Index.vue: 分类名 maxlength=\"200\"\n- supplier-center/Index.vue: 供应商名 maxlength=\"200\"\n\n真 bug 修复(response-columns HIGH 1 项):\n- approval-configs/Index.vue: prop=\"objectType\" / row.objectType / 查询参数 objectType 全部改为 entityType。原列名在 Prisma model 不存在且 API 返回字段是 entityType,原列永远显示空——是真 bug 不是审计噪声。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/744548892f552934566e0879669c2aeb0829fe7d","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:32:04-07:00","added":[],"removed":[],"modified":["backend/src/modules/alliance-agreements/alliance-agreement.schema.ts","backend/src/modules/product-categories/product-categories.schema.ts","frontend/src/views/alliance-agreements/Form.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/lead-scoring/Form.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/supplier-center/Index.vue"]}],"total_commits":0,"head_commit":{"id":"39b8a4e31ee1b00ff5da03fd301042d13d8d1203","message":"ci(harness): 新增 governance-audit job 把 HIGH=0 锁为 PR/main 硬门禁\n\n.github/workflows/ci.yml:\n- 新增 governance-audit job: 跑 audit:prisma-zod-contract / audit:formrules-zod / audit:response-columns / audit:field-payload / audit:enum-consistency + pnpm harness report 聚合 dashboard\n- 单项审计 continue-on-error: true,最终判定权统一交给 harness-dashboard.summary.high+critical\n- HIGH+CRITICAL \u003e 0 直接 exit 1 阻塞 PR;上传所有 audit JSON artifact + 写 step summary 表格供 reviewer 直读\n- build job 的 needs 加入 governance-audit,确保 main 推送的镜像产物必经治理门禁\n\nCLAUDE.md: 同步追加\"CI 治理门禁经验\"段,明确\"绝不直接调高门禁阈值,要放宽改 adapter/audit severity 映射\"治理纪律。\n\n锁住本会话治理成果——6 类 audit 盲区填补 + 4 类真业务 P1/bug 收口,新 PR 引入新 HIGH 时立即被拦下。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/39b8a4e31ee1b00ff5da03fd301042d13d8d1203","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:43:55-07:00","added":[],"removed":[],"modified":[".github/workflows/ci.yml","CLAUDE.md"]},"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":5218150,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":14,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-27T00:22: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
3
|
7
|
0
|
1777222086
|
0
|
1777221954
|
1777222086
|
group: ci-${{ github.ref }}
cancel-in-progress: group: ci-${{ github.ref }}
cancel-in-progress: "true"
...
|
ci-refs/heads/main
|
1
|
Edit
Delete
|
|
17763
|
ci(harness): 新增 governance-audit job 把 HIGH=0 锁为 P ci(harness): 新增 governance-audit job 把 HIGH=0 锁为 PR/main 硬门禁...
|
6
|
5
|
e2e-tests.yml
|
17684
|
5
|
0
|
refs/heads/main
|
39b8a4e31ee1b00ff5da03fd301042d13d8d1203
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"a67a4f5bf6bede6341ed368fb3af3caec8dcd71c","after":"39b8a4e31ee1b00ff5da03fd301042d13d8d1203","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/a67a4f5bf6bede6341ed368fb3af3caec8dcd71c...39b8a4e31ee1b00ff5da03fd301042d13d8d1203","commits":[{"id":"39b8a4e31ee1b00ff5da03fd301042d13d8d1203","message":"ci(harness): 新增 governance-audit job 把 HIGH=0 锁为 PR/main 硬门禁\n\n.github/workflows/ci.yml:\n- 新增 governance-audit job: 跑 audit:prisma-zod-contract / audit:formrules-zod / audit:response-columns / audit:field-payload / audit:enum-consistency + pnpm harness report 聚合 dashboard\n- 单项审计 continue-on-error: true,最终判定权统一交给 harness-dashboard.summary.high+critical\n- HIGH+CRITICAL \u003e 0 直接 exit 1 阻塞 PR;上传所有 audit JSON artifact + 写 step summary 表格供 reviewer 直读\n- build job 的 needs 加入 governance-audit,确保 main 推送的镜像产物必经治理门禁\n\nCLAUDE.md: 同步追加\"CI 治理门禁经验\"段,明确\"绝不直接调高门禁阈值,要放宽改 adapter/audit severity 映射\"治理纪律。\n\n锁住本会话治理成果——6 类 audit 盲区填补 + 4 类真业务 P1/bug 收口,新 PR 引入新 HIGH 时立即被拦下。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/39b8a4e31ee1b00ff5da03fd301042d13d8d1203","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:43:55-07:00","added":[],"removed":[],"modified":[".github/workflows/ci.yml","CLAUDE.md"]},{"id":"fc67c3eb51e91a01749234e389fcda8c5769bec5","message":"feat(harness): audit-response-columns 改 import-aware,自动反推真实数据源消除 46 处 view-API 错位误判\n\nscripts/audit-response-columns.ts:\n- 新增 extractApiModuleFromImports(filePath):解析 view 顶部 `import { xxxApi } from '@/api/modules/\u003cx\u003e'` 取首个 API 模块名\n- 主流程构建 viewModule → apiModule 映射;audit 时优先用 apiModule 查找 Prisma model 与 service include,失败回退 view 目录名\n\n仓库实际有 46 处 view 目录-API 模块错位(attribution-models→attribution / abm-marketing→campaign-targets / social-matrix→marketing-matrix / approval-configs→approval-templates 等);以前 audit 会把这 46 个 view 的列 prop 全部按错的 Prisma 表做比对,造成大量误报或漏报真 bug。改 import-aware 后自动用真实数据源做比对,不再需要手动加白名单。\n\nCLAUDE.md: 同步更新\"前端 view 目录与实际 API 模块错位经验\"段,记录 46 处实际错位案例与新增 import-aware 实现。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/fc67c3eb51e91a01749234e389fcda8c5769bec5","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:40:34-07:00","added":[],"removed":[],"modified":["CLAUDE.md","scripts/audit-response-columns.ts"]},{"id":"7e9897cf29abcfd1772faa00d204616200f0ab93","message":"fix(schema): 收口 formrules-zod 9 项 MEDIUM,前后端 description/category/name 全栈对齐\n\n5 处 description Zod max 收紧(前端早就 maxlength=500,后端 2000 是历史遗留):\n- attribution-models / customer-segmentation / lead-assignment / lead-scoring / store-configs:\n description Zod max(2000) → max(500),反向对齐前端 UX 上限\n\nai-agents skill-library FormRules 放宽到 Zod 上限:\n- skill-library/Form.vue: category FormRules max=50 → 100,对齐 Zod max(100)(category 50 字过紧)\n\nchannel-integrations Form 全栈对齐 Zod:\n- Form.vue: FormRules min=2/max=100 → min=1/max=200,maxlength=\"100\" → \"200\"\n 对齐 Zod min(1).max(200),原 min=2 拒绝 1 字符是过度严格\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/7e9897cf29abcfd1772faa00d204616200f0ab93","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:36:20-07:00","added":[],"removed":[],"modified":["backend/src/modules/attribution-models/attribution-models.schema.ts","backend/src/modules/customer-segmentation/customer-segmentation.schema.ts","backend/src/modules/lead-assignment/lead-assignment.schema.ts","backend/src/modules/lead-scoring/lead-scoring.schema.ts","backend/src/modules/store-configs/store-configs.schema.ts","frontend/src/views/ai-agents/skill-library/Form.vue","frontend/src/views/channel-integrations/Form.vue"]},{"id":"aba788bb6011125e1178d038c14f936480380368","message":"docs(governance): 追加 P1-P6 治理经验补充段(dashboard/adapter/audit 盲区/字段错位/maxlength/grade 联动)\n\n新增 5 段经验补充(2026-04-26):\n- Harness Dashboard / Adapter 一致性: dashboard 与 audit latest.json 时间戳必须同步;adapter 字段名严格对齐审计 JSON 真实 key;severity 按 audit raw severity 分级。\n- Prisma↔Zod 审计盲区: 4 类系统性盲区(嵌套子 schema 误匹配 / camel-snake 双计数 / .refine 后置约束 / service 层 auto-gen 字段)的识别与豁免规则。\n- 前端 view 目录与 API 模块错位: approval-configs/Index.vue 实际调 approvalTemplatesApi 这类目录-模块错位的治理路径与 audit 增强建议。\n- Form maxlength 同步: Zod .max(N) 改动必须同步 el-input maxlength;Zod 校验和 maxlength 是不同阶段(提交 vs 输入)。\n- Grade hasEventPublishing 与 moduleType 联动: BaseService 派生识别 + manifest moduleType 双重通路;CRUD 模块缺事件应补 publishEvent 而非加豁免。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/aba788bb6011125e1178d038c14f936480380368","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:32:19-07:00","added":[],"removed":[],"modified":["CLAUDE.md"]},{"id":"744548892f552934566e0879669c2aeb0829fe7d","message":"fix(schema): 收口 Prisma↔Zod 长度真 P1 + 同步前端 maxlength + 修 approval-configs 列名\n\n真 P1 收口(Zod max \u003e Prisma VarChar,DB 会拒绝写入):\n- alliance-agreements.content: Zod max(10000) → max(5000) 对齐 Prisma VarChar(5000)\n- product-categories.description: Zod max(2000) → max(500) 对齐 Prisma VarChar(500)\n\n前端 maxlength 同步(formrules-zod HIGH 4 项收口):\n- alliance-agreements/Form.vue: content maxlength=\"10000\"→\"5000\"\n- lead-scoring/Form.vue: field 字段 maxlength=\"100\", value 字段 maxlength=\"500\"\n- product-categories/Index.vue: 分类名 maxlength=\"200\"\n- supplier-center/Index.vue: 供应商名 maxlength=\"200\"\n\n真 bug 修复(response-columns HIGH 1 项):\n- approval-configs/Index.vue: prop=\"objectType\" / row.objectType / 查询参数 objectType 全部改为 entityType。原列名在 Prisma model 不存在且 API 返回字段是 entityType,原列永远显示空——是真 bug 不是审计噪声。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/744548892f552934566e0879669c2aeb0829fe7d","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:32:04-07:00","added":[],"removed":[],"modified":["backend/src/modules/alliance-agreements/alliance-agreement.schema.ts","backend/src/modules/product-categories/product-categories.schema.ts","frontend/src/views/alliance-agreements/Form.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/lead-scoring/Form.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/supplier-center/Index.vue"]}],"total_commits":0,"head_commit":{"id":"39b8a4e31ee1b00ff5da03fd301042d13d8d1203","message":"ci(harness): 新增 governance-audit job 把 HIGH=0 锁为 PR/main 硬门禁\n\n.github/workflows/ci.yml:\n- 新增 governance-audit job: 跑 audit:prisma-zod-contract / audit:formrules-zod / audit:response-columns / audit:field-payload / audit:enum-consistency + pnpm harness report 聚合 dashboard\n- 单项审计 continue-on-error: true,最终判定权统一交给 harness-dashboard.summary.high+critical\n- HIGH+CRITICAL \u003e 0 直接 exit 1 阻塞 PR;上传所有 audit JSON artifact + 写 step summary 表格供 reviewer 直读\n- build job 的 needs 加入 governance-audit,确保 main 推送的镜像产物必经治理门禁\n\nCLAUDE.md: 同步追加\"CI 治理门禁经验\"段,明确\"绝不直接调高门禁阈值,要放宽改 adapter/audit severity 映射\"治理纪律。\n\n锁住本会话治理成果——6 类 audit 盲区填补 + 4 类真业务 P1/bug 收口,新 PR 引入新 HIGH 时立即被拦下。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/39b8a4e31ee1b00ff5da03fd301042d13d8d1203","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:43:55-07:00","added":[],"removed":[],"modified":[".github/workflows/ci.yml","CLAUDE.md"]},"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":5218150,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":14,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-27T00:22: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
2
|
20
|
1777224042
|
1777224183
|
0
|
1777221955
|
1777225149
|
|
|
0
|
Edit
Delete
|
|
17764
|
ci(harness): 新增 governance-audit job 把 HIGH=0 锁为 P ci(harness): 新增 governance-audit job 把 HIGH=0 锁为 PR/main 硬门禁...
|
6
|
5
|
deploy.yml
|
17686
|
5
|
0
|
refs/heads/main
|
39b8a4e31ee1b00ff5da03fd301042d13d8d1203
|
0
|
0
|
0
|
workflow_run
|
{"action":"completed","workflo {"action":"completed","workflow":{"id":"test-pipeline.yml","name":"Test Pipeline","path":".github/workflows/test-pipeline.yml","state":"active","created_at":"2026-04-26T09:43:55-07:00","updated_at":"2026-04-26T09:43:55-07:00","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/workflows/test-pipeline.yml","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/src/branch/main/.github/workflows/test-pipeline.yml","badge_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/workflows/test-pipeline.yml/badge.svg?branch=main","deleted_at":"0001-01-01T00:00:00Z"},"workflow_run":{"id":17755,"url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/runs/17755","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/runs/17755","display_title":"Tighten CI workflows: Node 20, pnpm 9, lint enforcement, audit gaps","path":"test-pipeline.yml@refs/heads/main","event":"push","run_attempt":0,"run_number":17675,"head_sha":"a67a4f5bf6bede6341ed368fb3af3caec8dcd71c","head_branch":"main","status":"completed","actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"trigger_actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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":5218382,"language":"HTML","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":14,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-27T00:22:11+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":false,"push":false,"pull":false},"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":[]},"conclusion":"cancelled","started_at":"1970-01-01T08:00:00+08:00","completed_at":"2026-04-27T00:45:56+08:00"},"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":5218382,"language":"HTML","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":14,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-27T00:22: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"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"}}...
|
workflow_run
|
3
|
12
|
0
|
1777222095
|
0
|
1777221964
|
1777222097
|
group: deploy-${{ github.ref }}
cancel-in-progress group: deploy-${{ github.ref }}
cancel-in-progress: "true"
...
|
deploy-refs/heads/main
|
1
|
Edit
Delete
|
|
17765
|
ci(harness): 新增 governance-audit job 把 HIGH=0 锁为 P ci(harness): 新增 governance-audit job 把 HIGH=0 锁为 PR/main 硬门禁...
|
6
|
5
|
test-pipeline.yml
|
17685
|
5
|
0
|
refs/heads/main
|
39b8a4e31ee1b00ff5da03fd301042d13d8d1203
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"a67a4f5bf6bede6341ed368fb3af3caec8dcd71c","after":"39b8a4e31ee1b00ff5da03fd301042d13d8d1203","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/a67a4f5bf6bede6341ed368fb3af3caec8dcd71c...39b8a4e31ee1b00ff5da03fd301042d13d8d1203","commits":[{"id":"39b8a4e31ee1b00ff5da03fd301042d13d8d1203","message":"ci(harness): 新增 governance-audit job 把 HIGH=0 锁为 PR/main 硬门禁\n\n.github/workflows/ci.yml:\n- 新增 governance-audit job: 跑 audit:prisma-zod-contract / audit:formrules-zod / audit:response-columns / audit:field-payload / audit:enum-consistency + pnpm harness report 聚合 dashboard\n- 单项审计 continue-on-error: true,最终判定权统一交给 harness-dashboard.summary.high+critical\n- HIGH+CRITICAL \u003e 0 直接 exit 1 阻塞 PR;上传所有 audit JSON artifact + 写 step summary 表格供 reviewer 直读\n- build job 的 needs 加入 governance-audit,确保 main 推送的镜像产物必经治理门禁\n\nCLAUDE.md: 同步追加\"CI 治理门禁经验\"段,明确\"绝不直接调高门禁阈值,要放宽改 adapter/audit severity 映射\"治理纪律。\n\n锁住本会话治理成果——6 类 audit 盲区填补 + 4 类真业务 P1/bug 收口,新 PR 引入新 HIGH 时立即被拦下。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/39b8a4e31ee1b00ff5da03fd301042d13d8d1203","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:43:55-07:00","added":[],"removed":[],"modified":[".github/workflows/ci.yml","CLAUDE.md"]},{"id":"fc67c3eb51e91a01749234e389fcda8c5769bec5","message":"feat(harness): audit-response-columns 改 import-aware,自动反推真实数据源消除 46 处 view-API 错位误判\n\nscripts/audit-response-columns.ts:\n- 新增 extractApiModuleFromImports(filePath):解析 view 顶部 `import { xxxApi } from '@/api/modules/\u003cx\u003e'` 取首个 API 模块名\n- 主流程构建 viewModule → apiModule 映射;audit 时优先用 apiModule 查找 Prisma model 与 service include,失败回退 view 目录名\n\n仓库实际有 46 处 view 目录-API 模块错位(attribution-models→attribution / abm-marketing→campaign-targets / social-matrix→marketing-matrix / approval-configs→approval-templates 等);以前 audit 会把这 46 个 view 的列 prop 全部按错的 Prisma 表做比对,造成大量误报或漏报真 bug。改 import-aware 后自动用真实数据源做比对,不再需要手动加白名单。\n\nCLAUDE.md: 同步更新\"前端 view 目录与实际 API 模块错位经验\"段,记录 46 处实际错位案例与新增 import-aware 实现。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/fc67c3eb51e91a01749234e389fcda8c5769bec5","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:40:34-07:00","added":[],"removed":[],"modified":["CLAUDE.md","scripts/audit-response-columns.ts"]},{"id":"7e9897cf29abcfd1772faa00d204616200f0ab93","message":"fix(schema): 收口 formrules-zod 9 项 MEDIUM,前后端 description/category/name 全栈对齐\n\n5 处 description Zod max 收紧(前端早就 maxlength=500,后端 2000 是历史遗留):\n- attribution-models / customer-segmentation / lead-assignment / lead-scoring / store-configs:\n description Zod max(2000) → max(500),反向对齐前端 UX 上限\n\nai-agents skill-library FormRules 放宽到 Zod 上限:\n- skill-library/Form.vue: category FormRules max=50 → 100,对齐 Zod max(100)(category 50 字过紧)\n\nchannel-integrations Form 全栈对齐 Zod:\n- Form.vue: FormRules min=2/max=100 → min=1/max=200,maxlength=\"100\" → \"200\"\n 对齐 Zod min(1).max(200),原 min=2 拒绝 1 字符是过度严格\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/7e9897cf29abcfd1772faa00d204616200f0ab93","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:36:20-07:00","added":[],"removed":[],"modified":["backend/src/modules/attribution-models/attribution-models.schema.ts","backend/src/modules/customer-segmentation/customer-segmentation.schema.ts","backend/src/modules/lead-assignment/lead-assignment.schema.ts","backend/src/modules/lead-scoring/lead-scoring.schema.ts","backend/src/modules/store-configs/store-configs.schema.ts","frontend/src/views/ai-agents/skill-library/Form.vue","frontend/src/views/channel-integrations/Form.vue"]},{"id":"aba788bb6011125e1178d038c14f936480380368","message":"docs(governance): 追加 P1-P6 治理经验补充段(dashboard/adapter/audit 盲区/字段错位/maxlength/grade 联动)\n\n新增 5 段经验补充(2026-04-26):\n- Harness Dashboard / Adapter 一致性: dashboard 与 audit latest.json 时间戳必须同步;adapter 字段名严格对齐审计 JSON 真实 key;severity 按 audit raw severity 分级。\n- Prisma↔Zod 审计盲区: 4 类系统性盲区(嵌套子 schema 误匹配 / camel-snake 双计数 / .refine 后置约束 / service 层 auto-gen 字段)的识别与豁免规则。\n- 前端 view 目录与 API 模块错位: approval-configs/Index.vue 实际调 approvalTemplatesApi 这类目录-模块错位的治理路径与 audit 增强建议。\n- Form maxlength 同步: Zod .max(N) 改动必须同步 el-input maxlength;Zod 校验和 maxlength 是不同阶段(提交 vs 输入)。\n- Grade hasEventPublishing 与 moduleType 联动: BaseService 派生识别 + manifest moduleType 双重通路;CRUD 模块缺事件应补 publishEvent 而非加豁免。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/aba788bb6011125e1178d038c14f936480380368","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:32:19-07:00","added":[],"removed":[],"modified":["CLAUDE.md"]},{"id":"744548892f552934566e0879669c2aeb0829fe7d","message":"fix(schema): 收口 Prisma↔Zod 长度真 P1 + 同步前端 maxlength + 修 approval-configs 列名\n\n真 P1 收口(Zod max \u003e Prisma VarChar,DB 会拒绝写入):\n- alliance-agreements.content: Zod max(10000) → max(5000) 对齐 Prisma VarChar(5000)\n- product-categories.description: Zod max(2000) → max(500) 对齐 Prisma VarChar(500)\n\n前端 maxlength 同步(formrules-zod HIGH 4 项收口):\n- alliance-agreements/Form.vue: content maxlength=\"10000\"→\"5000\"\n- lead-scoring/Form.vue: field 字段 maxlength=\"100\", value 字段 maxlength=\"500\"\n- product-categories/Index.vue: 分类名 maxlength=\"200\"\n- supplier-center/Index.vue: 供应商名 maxlength=\"200\"\n\n真 bug 修复(response-columns HIGH 1 项):\n- approval-configs/Index.vue: prop=\"objectType\" / row.objectType / 查询参数 objectType 全部改为 entityType。原列名在 Prisma model 不存在且 API 返回字段是 entityType,原列永远显示空——是真 bug 不是审计噪声。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/744548892f552934566e0879669c2aeb0829fe7d","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:32:04-07:00","added":[],"removed":[],"modified":["backend/src/modules/alliance-agreements/alliance-agreement.schema.ts","backend/src/modules/product-categories/product-categories.schema.ts","frontend/src/views/alliance-agreements/Form.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/lead-scoring/Form.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/supplier-center/Index.vue"]}],"total_commits":0,"head_commit":{"id":"39b8a4e31ee1b00ff5da03fd301042d13d8d1203","message":"ci(harness): 新增 governance-audit job 把 HIGH=0 锁为 PR/main 硬门禁\n\n.github/workflows/ci.yml:\n- 新增 governance-audit job: 跑 audit:prisma-zod-contract / audit:formrules-zod / audit:response-columns / audit:field-payload / audit:enum-consistency + pnpm harness report 聚合 dashboard\n- 单项审计 continue-on-error: true,最终判定权统一交给 harness-dashboard.summary.high+critical\n- HIGH+CRITICAL \u003e 0 直接 exit 1 阻塞 PR;上传所有 audit JSON artifact + 写 step summary 表格供 reviewer 直读\n- build job 的 needs 加入 governance-audit,确保 main 推送的镜像产物必经治理门禁\n\nCLAUDE.md: 同步追加\"CI 治理门禁经验\"段,明确\"绝不直接调高门禁阈值,要放宽改 adapter/audit severity 映射\"治理纪律。\n\n锁住本会话治理成果——6 类 audit 盲区填补 + 4 类真业务 P1/bug 收口,新 PR 引入新 HIGH 时立即被拦下。\n\nCo-Authored-By: Claude Opus 4.7 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/39b8a4e31ee1b00ff5da03fd301042d13d8d1203","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-26T09:43:55-07:00","added":[],"removed":[],"modified":[".github/workflows/ci.yml","CLAUDE.md"]},"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":5218150,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":14,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-27T00:22: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":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
3
|
25
|
0
|
1777222090
|
0
|
1777221965
|
1777222094
|
group: test-pipeline-${{ github.ref }}
cancel-in-p group: test-pipeline-${{ github.ref }}
cancel-in-progress: "true"
...
|
test-pipeline-refs/heads/main
|
1
|
Edit
Delete
|
|
18561
|
Allow git merge in Claude settings
|
6
|
5
|
ci.yml
|
18481
|
5
|
0
|
refs/heads/main
|
3852c841f557d197a777c094ed1243a8198cdf8e
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"106c45ddee8406e0190ccbba4c3dcf6703cc6117","after":"3852c841f557d197a777c094ed1243a8198cdf8e","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/106c45ddee8406e0190ccbba4c3dcf6703cc6117...3852c841f557d197a777c094ed1243a8198cdf8e","commits":[{"id":"3852c841f557d197a777c094ed1243a8198cdf8e","message":"Allow git merge in Claude settings\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3852c841f557d197a777c094ed1243a8198cdf8e","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:36:26-07:00","added":[],"removed":[],"modified":[".claude/settings.json"]},{"id":"d2338c76ded8ede28829e066e9801cffd24cd7fd","message":"Merge branch 'codex-ai-assist-action-packs'\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2338c76ded8ede28829e066e9801cffd24cd7fd","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:36:01-07:00","added":["backend/prisma/migrations/20260428060000_drift_recovery_p0a_rls_phase2/migration.sql","backend/prisma/migrations/20260428060100_drift_recovery_p0b_missing_tables/migration.sql","backend/prisma/migrations/20260428060200_drift_recovery_p1_add_columns/migration.sql","backend/prisma/migrations/20260428060500_drift_recovery_p3c_enum_alignment/migration.sql","backend/prisma/migrations/20260428070000_add_lead_pool_auto_dispatch_strategy/migration.sql","backend/prisma/migrations/20260428080000_tighten_currency_varchar/migration.sql","backend/prisma/migrations/20260428090000_tighten_varchar_phase3/migration.sql","backend/prisma/migrations/20260429100000_add_member_benefits_baseline/migration.sql","backend/prisma/migrations/20260429100100_add_member_levels_baseline/migration.sql","backend/prisma/migrations/20260429100200_add_member_points_baseline/migration.sql","backend/prisma/migrations/20260429100300_add_members_baseline/migration.sql","backend/prisma/migrations/20260429100400_add_customer_segments_baseline/migration.sql","backend/prisma/migrations/20260429100500_add_ad_analytics_records_baseline/migration.sql","backend/prisma/migrations/20260429100600_add_attribution_reports_baseline/migration.sql","backend/prisma/migrations/20260429100700_add_notification_configs_baseline/migration.sql","backend/prisma/migrations/20260429100800_add_qr_codes_baseline/migration.sql","backend/prisma/migrations/20260429100900_add_utm_tracking_records_baseline/migration.sql","backend/prisma/migrations/20260429101000_add_video_analytics_records_baseline/migration.sql","backend/prisma/migrations/20260429101100_add_video_content_baseline/migration.sql","backend/prisma/migrations/20260429101200_add_video_publishing_records_baseline/migration.sql","backend/prisma/migrations/20260429101300_add_channel_integrations_baseline/migration.sql","backend/prisma/migrations/20260429101400_add_abm_campaigns_baseline/migration.sql","backend/prisma/migrations/20260429101500_add_groupbuy_pricing_rules_baseline/migration.sql","backend/prisma/migrations/20260429101600_add_groupbuy_time_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101700_add_groupbuy_volume_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101800_add_groupbuy_tier_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101900_add_groupbuy_demand_pricing_baseline/migration.sql","backend/prisma/migrations/20260429102000_add_groupbuy_bundles_baseline/migration.sql","backend/prisma/migrations/20260429102100_add_groupbuy_bundle_products_baseline/migration.sql","backend/prisma/migrations/20260429102200_add_local_events_baseline/migration.sql","backend/prisma/migrations/20260429102300_add_local_promotions_baseline/migration.sql","backend/prisma/migrations/20260429102400_add_state_machine_definitions_baseline/migration.sql","backend/prisma/migrations/20260429102500_add_custom_field_definitions_baseline/migration.sql","backend/prisma/migrations/20260429102600_add_workflow_designs_baseline/migration.sql","backend/prisma/migrations_pending_review/README.md","backend/src/modules/abm-marketing/abm-marketing.module-contract.test.ts","backend/src/modules/ad-analytics/ad-analytics.module-contract.test.ts","backend/src/modules/ai-assist/page-action-executor.ts","backend/src/modules/attribution-models/attribution-models.module-contract.test.ts","backend/src/modules/attribution-reports/attribution-reports.module-contract.test.ts","backend/src/modules/channel-integrations/channel-integrations.module-contract.test.ts","backend/src/modules/customer-segmentation/customer-segmentation.module-contract.test.ts","backend/src/modules/lead-assignment/lead-assignment.module-contract.test.ts","backend/src/modules/lead-scoring/lead-scoring.module-contract.test.ts","backend/src/modules/local-events/local-events.module-contract.test.ts","backend/src/modules/local-promotion/local-promotion.module-contract.test.ts","backend/src/modules/member-benefits/member-benefits.module-contract.test.ts","backend/src/modules/member-levels/member-levels.module-contract.test.ts","backend/src/modules/member-points/member-points.module-contract.test.ts","backend/src/modules/members/members.module-contract.test.ts","backend/src/modules/notification-configs/notification-configs.module-contract.test.ts","backend/src/modules/product-categories/product-categories.module-contract.test.ts","backend/src/modules/qr-codes/qr-codes.module-contract.test.ts","backend/src/modules/social-matrix/social-matrix.module-contract.test.ts","backend/src/modules/store-configs/store-configs.module-contract.test.ts","backend/src/modules/supplier-center/supplier-center.module-contract.test.ts","backend/src/modules/utm-tracking/utm-tracking.module-contract.test.ts","backend/src/modules/video-analytics/video-analytics.module-contract.test.ts","backend/src/modules/video-content/video-content.module-contract.test.ts","backend/src/modules/video-publishing/video-publishing.module-contract.test.ts","backend/src/modules/workflow-designer/workflow-designer.module-contract.test.ts","docs/governance/archive/p3_type_constraints_retired_2026-04-29/RETIRED.md","docs/governance/archive/p3_type_constraints_retired_2026-04-29/migration.sql","docs/governance/formrules-zod-product-decisions-2026-04-29.md","e2e/output/autopilot/ai_test_1777424021381/prepare-ok.json","e2e/output/autopilot/ai_test_1777424021381/result.json","e2e/output/autopilot/ai_test_1777424022537/result.json","e2e/output/autopilot/ai_test_1777424042064/prepare-ok.json","e2e/output/autopilot/ai_test_1777424042064/result.json","e2e/output/autopilot/ai_test_1777424274236/prepare-ok.json","e2e/output/autopilot/ai_test_1777424274236/result.json","e2e/output/autopilot/ai_test_1777424275358/result.json","e2e/output/autopilot/ai_test_1777424445747/prepare-ok.json","e2e/output/autopilot/ai_test_1777424445747/result.json","e2e/output/autopilot/ai_test_1777424648560/prepare-ok.json","e2e/output/autopilot/ai_test_1777424648560/result.json","e2e/test-results/crud-01-visible-menu-write-25883-写操作回放-当前可见主菜单页-当前可见页面动作契约回放-chromium/error-context.md","e2e/test-results/crud-01-visible-menu-write-25883-写操作回放-当前可见主菜单页-当前可见页面动作契约回放-chromium/test-failed-1.png","e2e/tests/auth/ai-assist-smoke.spec.ts","reports/ai-assist-context-provider-redact.latest.json","reports/migration-drift-diff.latest.sql","reports/migration-drift-summary.latest.json","reports/prisma-zod-contract-audit.2026-04-28.json","reports/prisma-zod-contract-audit.2026-04-28.md","reports/prisma-zod-contract-audit.2026-04-29.json","reports/prisma-zod-contract-audit.2026-04-29.md","scripts/ci-migration-deploy-gate.sh","scripts/sync-prisma-schema-mirror.ts"],"removed":["e2e/test-results/.last-run.json","e2e/test-results/results.json"],"modified":[".claude/settings.json",".env.example",".github/workflows/ci.yml",".github/workflows/migration-safety.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/prisma/schema/community.prisma","backend/prisma/schema/contracts.prisma","backend/prisma/schema/cpq.prisma","backend/prisma/schema/finance.prisma","backend/prisma/schema/leads.prisma","backend/prisma/schema/orders.prisma","backend/prisma/schema/service.prisma","backend/prisma/schema/stores.prisma","backend/prisma/schema/supply-chain.prisma","backend/prisma/schema/system.prisma","backend/scripts/audit-prisma-zod-contract.ts","backend/src/modules/admin-settings/admin-settings.schema.ts","backend/src/modules/ai-agent-skills/skill-execution-engine.service.ts","backend/src/modules/ai-agents/ai-autopilot-ai-test.service.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-assist/ai-assist.docs.ts","backend/src/modules/ai-assist/ai-assist.schema.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/page-capability.test.ts","backend/src/modules/ai-assist/page-capability.ts","backend/src/modules/ai-assist/skills/registry.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/modules/alliance-agreements/alliance-agreement.schema.ts","backend/src/modules/alliance-campaigns/alliance-campaign.schema.ts","backend/src/modules/campaign-use-case-templates/use-case-template.schema.ts","backend/src/modules/contract-templates/contract-template.schema.ts","backend/src/modules/groupbuy-platforms/groupbuy-platform.schema.ts","backend/src/modules/landing-pages/landing-page.schema.ts","backend/src/modules/lead-pools/lead-pools.docs.ts","backend/src/modules/lead-pools/lead-pools.mapper.ts","backend/src/modules/lead-pools/lead-pools.schema.ts","backend/src/modules/lead-pools/lead-pools.service.ts","backend/src/modules/meddpicc-analyses/meddpicc.schema.ts","backend/src/modules/quotes/quote.schema.ts","backend/src/modules/renewal-tasks/renewal-task.schema.ts","backend/src/modules/roles/role.schema.ts","backend/src/modules/sample-requests/sample-request.schema.ts","backend/src/modules/store-configs/store-configs.schema.ts","backend/src/modules/tenant-configs/tenant-config.schema.ts","backend/src/shared/constants/statuses.ts","backend/tests/api/ai-assist.test.ts","backend/tests/api/ai-review-queue.test.ts","docs/governance/baseline-and-experience.md","docs/reports/view-audit-domains/a1-acquisition-center-2026-04-28.md","docs/reports/view-audit-domains/a3-ai-knowledge-2026-04-28.md","docs/reports/view-audit-domains/a4-store-groupbuy-alliance-2026-04-28.md","docs/reports/view-audit-domains/a5-admin-center-2026-04-28.md","docs/reports/view-audit-domains/a6-synergy-hr-2026-04-28.md","docs/reports/view-audit-domains/a7-analytics-marketing-2026-04-28.md","docs/reports/view-audit-domains/a8-system-center-2026-04-28.md","docs/reports/view-audit-domains/a9-service-sales-fulfillment-2026-04-28.md","docs/reports/view-audit-full-matrix-2026-04-28.md","e2e/.auth/admin.json","e2e/playwright-report/index.html","frontend/.env.development","frontend/.env.example","frontend/package.json","frontend/src/api/modules/ai-assist.ts","frontend/src/api/modules/alliance-agreements.ts","frontend/src/api/modules/alliance-campaigns.ts","frontend/src/api/modules/campaign-targets.ts","frontend/src/api/modules/events.ts","frontend/src/api/modules/lead-pools.ts","frontend/src/components/business/PageAIAssistDrawer.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/router/types.ts","frontend/src/services/eventBus.ts","frontend/src/views/abm-marketing/Index.vue","frontend/src/views/abm-marketing/__tests__/abm-marketing.smoke.test.ts","frontend/src/views/ai-agents/review-queue/Index.vue","frontend/src/views/alliance-agreements/Form.vue","frontend/src/views/campaign-use-case-templates/Form.vue","frontend/src/views/contract-templates/Form.vue","frontend/src/views/customer-journey-orchestration/Index.vue","frontend/src/views/landing-pages/Form.vue","frontend/src/views/lead-pools/Form.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/sample-requests/Form.vue","frontend/src/views/social-posts/Detail.vue","frontend/src/views/store-configs/Form.vue","frontend/src/views/supplier-management/StoreSuppliers.vue","frontend/src/views/suppliers/Detail.vue","frontend/src/views/suppliers/Form.vue","frontend/src/views/targets/Detail.vue","mobile/.env.development","output/playwright/full-menu-write-batches/ai-acquisition-content/batch-state.json","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/center-summary.json","output/playwright/full-menu-write-batches/center-summary.md","output/playwright/full-menu-write-batches/finance/batch-state.json","output/playwright/full-menu-write-batches/growth-sales-stores-service/batch-state.json","output/playwright/full-menu-write-batches/hr/batch-state.json","output/playwright/full-menu-write-batches/preflight.json","output/playwright/full-menu-write-batches/supply-chain/batch-state.json","output/playwright/full-menu-write-batches/synergy/batch-state.json","output/playwright/full-menu-write-batches/system-infra/batch-state.json","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/api-test-coverage.latest.json","reports/api-test-coverage.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","reports/enum-consistency-audit.latest.json","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/field-payload-audit.latest.json","reports/formrules-zod-audit.latest.json","reports/harness-dashboard.latest.json","reports/list-page-routes-audit.latest.json","reports/menu-inventory-audit.latest.json","reports/module-coverage-matrix.latest.json","reports/module-grades.latest.json","reports/module-placeholder-audit.latest.json","reports/module-placeholder-audit.latest.md","reports/outbox-atomicity-audit.latest.json","reports/prisma-zod-contract-audit.latest.json","reports/prisma-zod-contract-audit.latest.md","reports/project-census.baseline.json","reports/project-census.latest.json","reports/response-columns-audit.latest.json","reports/route-registration-audit.latest.json","reports/route-registration-audit.latest.md","reports/state-machine-integration-audit.latest.json","reports/state-machine-integration-audit.latest.md","reports/type-debt-audit.latest.json","reports/view-module-audit.latest.json","scripts/audit-context-provider-redact.ts","scripts/audit-enum-consistency.ts","scripts/audit-formrules-zod.ts","scripts/audit-response-columns.ts","scripts/ci-migration-check.sh","scripts/harness/audit-registry.ts","scripts/sync-local-env.sh"]},{"id":"bbf1f85eb2b823f39875ae6131d7f0986cd4d49f","message":"Align Prisma truth source and document formrules decisions\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/bbf1f85eb2b823f39875ae6131d7f0986cd4d49f","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:35:35-07:00","added":["e2e/output/autopilot/ai_test_1777424021381/prepare-ok.json","e2e/output/autopilot/ai_test_1777424021381/result.json","e2e/output/autopilot/ai_test_1777424022537/result.json","e2e/output/autopilot/ai_test_1777424042064/prepare-ok.json","e2e/output/autopilot/ai_test_1777424042064/result.json","e2e/output/autopilot/ai_test_1777424274236/prepare-ok.json","e2e/output/autopilot/ai_test_1777424274236/result.json","e2e/output/autopilot/ai_test_1777424275358/result.json","e2e/output/autopilot/ai_test_1777424445747/prepare-ok.json","e2e/output/autopilot/ai_test_1777424445747/result.json","e2e/output/autopilot/ai_test_1777424648560/prepare-ok.json","e2e/output/autopilot/ai_test_1777424648560/result.json","e2e/test-results/crud-01-visible-menu-write-25883-写操作回放-当前可见主菜单页-当前可见页面动作契约回放-chromium/error-context.md","e2e/test-results/crud-01-visible-menu-write-25883-写操作回放-当前可见主菜单页-当前可见页面动作契约回放-chromium/test-failed-1.png"],"removed":["e2e/test-results/.last-run.json","e2e/test-results/results.json"],"modified":["e2e/playwright-report/index.html"]},{"id":"ede22d5f7acd681ea5ae1a18518c4126d2f8866b","message":"chore: governance收口 + 27张缺失表迁移 + enum对齐 + 内存上限提升\n\n- prisma-zod-contract / formrules-zod / enum-consistency 三项审计清零(HIGH=0)\n- tighten_varchar_phase3 补视图/policy 守卫后落档主目录;p3_type_constraints 退休归档\n- 新增 27 张 schema/ 真源已声明但 migration 缺失的建表迁移(member/groupbuy/analytics/system 四类)\n- statuses.ts 新增 BUSINESS_PRIORITY_LEVELS / APPROVAL_PRIORITY_LEVELS 双 canonical\n- 前端 enum label 反向对齐 backend canonical(supplier/target/social-post 共 5 处)\n- ai-autopilot 事务收口:写操作在 tx 内,read-back 在 tx 外;ai-test 同款修法\n- audit-enum-consistency / audit-formrules-zod 噪音降级(INFO 65→40 / backend-only 移到 coverage)\n- ci.yml harness report --save 确保 artifact 落盘;migration-safety.yml 同步收口\n- frontend Node 内存上限 12288→16384 MB(type-check / build / build:deploy 三条脚本)\n- docs/governance 更新迁移验收口径、schema 双源债、p3 退休理由\n\nCo-Authored-By: Claude Sonnet 4.6 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/ede22d5f7acd681ea5ae1a18518c4126d2f8866b","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:34:57-07:00","added":["backend/prisma/migrations/20260428090000_tighten_varchar_phase3/migration.sql","backend/prisma/migrations/20260429100000_add_member_benefits_baseline/migration.sql","backend/prisma/migrations/20260429100100_add_member_levels_baseline/migration.sql","backend/prisma/migrations/20260429100200_add_member_points_baseline/migration.sql","backend/prisma/migrations/20260429100300_add_members_baseline/migration.sql","backend/prisma/migrations/20260429100400_add_customer_segments_baseline/migration.sql","backend/prisma/migrations/20260429100500_add_ad_analytics_records_baseline/migration.sql","backend/prisma/migrations/20260429100600_add_attribution_reports_baseline/migration.sql","backend/prisma/migrations/20260429100700_add_notification_configs_baseline/migration.sql","backend/prisma/migrations/20260429100800_add_qr_codes_baseline/migration.sql","backend/prisma/migrations/20260429100900_add_utm_tracking_records_baseline/migration.sql","backend/prisma/migrations/20260429101000_add_video_analytics_records_baseline/migration.sql","backend/prisma/migrations/20260429101100_add_video_content_baseline/migration.sql","backend/prisma/migrations/20260429101200_add_video_publishing_records_baseline/migration.sql","backend/prisma/migrations/20260429101300_add_channel_integrations_baseline/migration.sql","backend/prisma/migrations/20260429101400_add_abm_campaigns_baseline/migration.sql","backend/prisma/migrations/20260429101500_add_groupbuy_pricing_rules_baseline/migration.sql","backend/prisma/migrations/20260429101600_add_groupbuy_time_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101700_add_groupbuy_volume_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101800_add_groupbuy_tier_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101900_add_groupbuy_demand_pricing_baseline/migration.sql","backend/prisma/migrations/20260429102000_add_groupbuy_bundles_baseline/migration.sql","backend/prisma/migrations/20260429102100_add_groupbuy_bundle_products_baseline/migration.sql","backend/prisma/migrations/20260429102200_add_local_events_baseline/migration.sql","backend/prisma/migrations/20260429102300_add_local_promotions_baseline/migration.sql","backend/prisma/migrations/20260429102400_add_state_machine_definitions_baseline/migration.sql","backend/prisma/migrations/20260429102500_add_custom_field_definitions_baseline/migration.sql","backend/prisma/migrations/20260429102600_add_workflow_designs_baseline/migration.sql","docs/governance/archive/p3_type_constraints_retired_2026-04-29/RETIRED.md","docs/governance/archive/p3_type_constraints_retired_2026-04-29/migration.sql","docs/governance/formrules-zod-product-decisions-2026-04-29.md","e2e/tests/auth/ai-assist-smoke.spec.ts","reports/prisma-zod-contract-audit.2026-04-29.json","reports/prisma-zod-contract-audit.2026-04-29.md","scripts/sync-prisma-schema-mirror.ts"],"removed":[".claude/scheduled_tasks.lock","backend/prisma/migrations_pending_review/20260428060300_drift_recovery_p3_type_constraints/migration.sql","backend/prisma/migrations_pending_review/20260428090000_tighten_varchar_phase3/migration.sql"],"modified":[".claude/settings.json",".github/workflows/ci.yml",".github/workflows/migration-safety.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/migrations_pending_review/README.md","backend/prisma/schema.prisma","backend/src/modules/ai-agents/ai-autopilot-ai-test.service.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/shared/constants/statuses.ts","docs/governance/baseline-and-experience.md","e2e/.auth/admin.json","frontend/package.json","frontend/src/views/social-posts/Detail.vue","frontend/src/views/supplier-management/StoreSuppliers.vue","frontend/src/views/suppliers/Detail.vue","frontend/src/views/suppliers/Form.vue","frontend/src/views/targets/Detail.vue","output/playwright/full-menu-write-batches/ai-acquisition-content/batch-state.json","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/center-summary.json","output/playwright/full-menu-write-batches/center-summary.md","output/playwright/full-menu-write-batches/finance/batch-state.json","output/playwright/full-menu-write-batches/growth-sales-stores-service/batch-state.json","output/playwright/full-menu-write-batches/hr/batch-state.json","output/playwright/full-menu-write-batches/preflight.json","output/playwright/full-menu-write-batches/supply-chain/batch-state.json","output/playwright/full-menu-write-batches/synergy/batch-state.json","output/playwright/full-menu-write-batches/system-infra/batch-state.json","package.json","reports/ai-assist-context-provider-redact.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/enum-consistency-audit.latest.json","reports/field-payload-audit.latest.json","reports/formrules-zod-audit.latest.json","reports/harness-dashboard.latest.json","reports/list-page-routes-audit.latest.json","reports/migration-drift-diff.latest.sql","reports/migration-drift-summary.latest.json","reports/module-coverage-matrix.latest.json","reports/module-grades.latest.json","reports/prisma-zod-contract-audit.2026-04-28.json","reports/prisma-zod-contract-audit.2026-04-28.md","reports/prisma-zod-contract-audit.latest.json","reports/prisma-zod-contract-audit.latest.md","reports/project-census.baseline.json","reports/project-census.latest.json","reports/response-columns-audit.latest.json","reports/type-debt-audit.latest.json","scripts/audit-enum-consistency.ts","scripts/audit-formrules-zod.ts","scripts/ci-migration-check.sh","scripts/ci-migration-deploy-gate.sh"]},{"id":"73367a67e894c06a03ec05ef20317873c15bc7ee","message":"Fix governance contract mismatches and module coverage\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/73367a67e894c06a03ec05ef20317873c15bc7ee","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T10:43:21-07:00","added":["backend/src/modules/abm-marketing/abm-marketing.module-contract.test.ts","backend/src/modules/ad-analytics/ad-analytics.module-contract.test.ts","backend/src/modules/attribution-models/attribution-models.module-contract.test.ts","backend/src/modules/attribution-reports/attribution-reports.module-contract.test.ts","backend/src/modules/channel-integrations/channel-integrations.module-contract.test.ts","backend/src/modules/customer-segmentation/customer-segmentation.module-contract.test.ts","backend/src/modules/lead-assignment/lead-assignment.module-contract.test.ts","backend/src/modules/lead-scoring/lead-scoring.module-contract.test.ts","backend/src/modules/local-events/local-events.module-contract.test.ts","backend/src/modules/local-promotion/local-promotion.module-contract.test.ts","backend/src/modules/member-benefits/member-benefits.module-contract.test.ts","backend/src/modules/member-levels/member-levels.module-contract.test.ts","backend/src/modules/member-points/member-points.module-contract.test.ts","backend/src/modules/members/members.module-contract.test.ts","backend/src/modules/notification-configs/notification-configs.module-contract.test.ts","backend/src/modules/product-categories/product-categories.module-contract.test.ts","backend/src/modules/qr-codes/qr-codes.module-contract.test.ts","backend/src/modules/social-matrix/social-matrix.module-contract.test.ts","backend/src/modules/store-configs/store-configs.module-contract.test.ts","backend/src/modules/supplier-center/supplier-center.module-contract.test.ts","backend/src/modules/utm-tracking/utm-tracking.module-contract.test.ts","backend/src/modules/video-analytics/video-analytics.module-contract.test.ts","backend/src/modules/video-content/video-content.module-contract.test.ts","backend/src/modules/video-publishing/video-publishing.module-contract.test.ts","backend/src/modules/workflow-designer/workflow-designer.module-contract.test.ts"],"removed":[],"modified":[".claude/settings.json","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/scripts/audit-prisma-zod-contract.ts","backend/src/modules/alliance-agreements/alliance-agreement.schema.ts","backend/src/modules/alliance-campaigns/alliance-campaign.schema.ts","backend/src/modules/quotes/quote.schema.ts","docs/governance/baseline-and-experience.md","frontend/src/api/modules/alliance-agreements.ts","frontend/src/api/modules/alliance-campaigns.ts","frontend/src/views/campaign-use-case-templates/Form.vue","frontend/src/views/contract-templates/Form.vue","frontend/src/views/landing-pages/Form.vue","frontend/src/views/sample-requests/Form.vue","frontend/src/views/store-configs/Form.vue","reports/enum-consistency-audit.latest.json","reports/field-payload-audit.latest.json","reports/formrules-zod-audit.latest.json","reports/harness-dashboard.latest.json","reports/migration-drift-diff.latest.sql","reports/migration-drift-summary.latest.json","reports/module-coverage-matrix.latest.json","reports/module-grades.latest.json","reports/prisma-zod-contract-audit.2026-04-28.json","reports/prisma-zod-contract-audit.2026-04-28.md","reports/prisma-zod-contract-audit.latest.json","reports/prisma-zod-contract-audit.latest.md","reports/project-census.baseline.json","reports/project-census.latest.json","reports/response-columns-audit.latest.json","reports/type-debt-audit.latest.json","scripts/audit-response-columns.ts"]}],"total_commits":0,"head_commit":{"id":"3852c841f557d197a777c094ed1243a8198cdf8e","message":"Allow git merge in Claude settings\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3852c841f557d197a777c094ed1243a8198cdf8e","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:36:26-07:00","added":[],"removed":[],"modified":[".claude/settings.json"]},"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":5232338,"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":17,"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-29T01:43:35+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
2
|
16
|
1777426590
|
1777426772
|
0
|
1777426588
|
1777427168
|
group: ci-${{ github.ref }}
cancel-in-progress: group: ci-${{ github.ref }}
cancel-in-progress: "true"
...
|
ci-refs/heads/main
|
1
|
Edit
Delete
|
|
18562
|
Allow git merge in Claude settings
|
6
|
5
|
e2e-tests.yml
|
18482
|
5
|
0
|
refs/heads/main
|
3852c841f557d197a777c094ed1243a8198cdf8e
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"106c45ddee8406e0190ccbba4c3dcf6703cc6117","after":"3852c841f557d197a777c094ed1243a8198cdf8e","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/106c45ddee8406e0190ccbba4c3dcf6703cc6117...3852c841f557d197a777c094ed1243a8198cdf8e","commits":[{"id":"3852c841f557d197a777c094ed1243a8198cdf8e","message":"Allow git merge in Claude settings\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3852c841f557d197a777c094ed1243a8198cdf8e","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:36:26-07:00","added":[],"removed":[],"modified":[".claude/settings.json"]},{"id":"d2338c76ded8ede28829e066e9801cffd24cd7fd","message":"Merge branch 'codex-ai-assist-action-packs'\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2338c76ded8ede28829e066e9801cffd24cd7fd","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:36:01-07:00","added":["backend/prisma/migrations/20260428060000_drift_recovery_p0a_rls_phase2/migration.sql","backend/prisma/migrations/20260428060100_drift_recovery_p0b_missing_tables/migration.sql","backend/prisma/migrations/20260428060200_drift_recovery_p1_add_columns/migration.sql","backend/prisma/migrations/20260428060500_drift_recovery_p3c_enum_alignment/migration.sql","backend/prisma/migrations/20260428070000_add_lead_pool_auto_dispatch_strategy/migration.sql","backend/prisma/migrations/20260428080000_tighten_currency_varchar/migration.sql","backend/prisma/migrations/20260428090000_tighten_varchar_phase3/migration.sql","backend/prisma/migrations/20260429100000_add_member_benefits_baseline/migration.sql","backend/prisma/migrations/20260429100100_add_member_levels_baseline/migration.sql","backend/prisma/migrations/20260429100200_add_member_points_baseline/migration.sql","backend/prisma/migrations/20260429100300_add_members_baseline/migration.sql","backend/prisma/migrations/20260429100400_add_customer_segments_baseline/migration.sql","backend/prisma/migrations/20260429100500_add_ad_analytics_records_baseline/migration.sql","backend/prisma/migrations/20260429100600_add_attribution_reports_baseline/migration.sql","backend/prisma/migrations/20260429100700_add_notification_configs_baseline/migration.sql","backend/prisma/migrations/20260429100800_add_qr_codes_baseline/migration.sql","backend/prisma/migrations/20260429100900_add_utm_tracking_records_baseline/migration.sql","backend/prisma/migrations/20260429101000_add_video_analytics_records_baseline/migration.sql","backend/prisma/migrations/20260429101100_add_video_content_baseline/migration.sql","backend/prisma/migrations/20260429101200_add_video_publishing_records_baseline/migration.sql","backend/prisma/migrations/20260429101300_add_channel_integrations_baseline/migration.sql","backend/prisma/migrations/20260429101400_add_abm_campaigns_baseline/migration.sql","backend/prisma/migrations/20260429101500_add_groupbuy_pricing_rules_baseline/migration.sql","backend/prisma/migrations/20260429101600_add_groupbuy_time_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101700_add_groupbuy_volume_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101800_add_groupbuy_tier_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101900_add_groupbuy_demand_pricing_baseline/migration.sql","backend/prisma/migrations/20260429102000_add_groupbuy_bundles_baseline/migration.sql","backend/prisma/migrations/20260429102100_add_groupbuy_bundle_products_baseline/migration.sql","backend/prisma/migrations/20260429102200_add_local_events_baseline/migration.sql","backend/prisma/migrations/20260429102300_add_local_promotions_baseline/migration.sql","backend/prisma/migrations/20260429102400_add_state_machine_definitions_baseline/migration.sql","backend/prisma/migrations/20260429102500_add_custom_field_definitions_baseline/migration.sql","backend/prisma/migrations/20260429102600_add_workflow_designs_baseline/migration.sql","backend/prisma/migrations_pending_review/README.md","backend/src/modules/abm-marketing/abm-marketing.module-contract.test.ts","backend/src/modules/ad-analytics/ad-analytics.module-contract.test.ts","backend/src/modules/ai-assist/page-action-executor.ts","backend/src/modules/attribution-models/attribution-models.module-contract.test.ts","backend/src/modules/attribution-reports/attribution-reports.module-contract.test.ts","backend/src/modules/channel-integrations/channel-integrations.module-contract.test.ts","backend/src/modules/customer-segmentation/customer-segmentation.module-contract.test.ts","backend/src/modules/lead-assignment/lead-assignment.module-contract.test.ts","backend/src/modules/lead-scoring/lead-scoring.module-contract.test.ts","backend/src/modules/local-events/local-events.module-contract.test.ts","backend/src/modules/local-promotion/local-promotion.module-contract.test.ts","backend/src/modules/member-benefits/member-benefits.module-contract.test.ts","backend/src/modules/member-levels/member-levels.module-contract.test.ts","backend/src/modules/member-points/member-points.module-contract.test.ts","backend/src/modules/members/members.module-contract.test.ts","backend/src/modules/notification-configs/notification-configs.module-contract.test.ts","backend/src/modules/product-categories/product-categories.module-contract.test.ts","backend/src/modules/qr-codes/qr-codes.module-contract.test.ts","backend/src/modules/social-matrix/social-matrix.module-contract.test.ts","backend/src/modules/store-configs/store-configs.module-contract.test.ts","backend/src/modules/supplier-center/supplier-center.module-contract.test.ts","backend/src/modules/utm-tracking/utm-tracking.module-contract.test.ts","backend/src/modules/video-analytics/video-analytics.module-contract.test.ts","backend/src/modules/video-content/video-content.module-contract.test.ts","backend/src/modules/video-publishing/video-publishing.module-contract.test.ts","backend/src/modules/workflow-designer/workflow-designer.module-contract.test.ts","docs/governance/archive/p3_type_constraints_retired_2026-04-29/RETIRED.md","docs/governance/archive/p3_type_constraints_retired_2026-04-29/migration.sql","docs/governance/formrules-zod-product-decisions-2026-04-29.md","e2e/output/autopilot/ai_test_1777424021381/prepare-ok.json","e2e/output/autopilot/ai_test_1777424021381/result.json","e2e/output/autopilot/ai_test_1777424022537/result.json","e2e/output/autopilot/ai_test_1777424042064/prepare-ok.json","e2e/output/autopilot/ai_test_1777424042064/result.json","e2e/output/autopilot/ai_test_1777424274236/prepare-ok.json","e2e/output/autopilot/ai_test_1777424274236/result.json","e2e/output/autopilot/ai_test_1777424275358/result.json","e2e/output/autopilot/ai_test_1777424445747/prepare-ok.json","e2e/output/autopilot/ai_test_1777424445747/result.json","e2e/output/autopilot/ai_test_1777424648560/prepare-ok.json","e2e/output/autopilot/ai_test_1777424648560/result.json","e2e/test-results/crud-01-visible-menu-write-25883-写操作回放-当前可见主菜单页-当前可见页面动作契约回放-chromium/error-context.md","e2e/test-results/crud-01-visible-menu-write-25883-写操作回放-当前可见主菜单页-当前可见页面动作契约回放-chromium/test-failed-1.png","e2e/tests/auth/ai-assist-smoke.spec.ts","reports/ai-assist-context-provider-redact.latest.json","reports/migration-drift-diff.latest.sql","reports/migration-drift-summary.latest.json","reports/prisma-zod-contract-audit.2026-04-28.json","reports/prisma-zod-contract-audit.2026-04-28.md","reports/prisma-zod-contract-audit.2026-04-29.json","reports/prisma-zod-contract-audit.2026-04-29.md","scripts/ci-migration-deploy-gate.sh","scripts/sync-prisma-schema-mirror.ts"],"removed":["e2e/test-results/.last-run.json","e2e/test-results/results.json"],"modified":[".claude/settings.json",".env.example",".github/workflows/ci.yml",".github/workflows/migration-safety.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/prisma/schema/community.prisma","backend/prisma/schema/contracts.prisma","backend/prisma/schema/cpq.prisma","backend/prisma/schema/finance.prisma","backend/prisma/schema/leads.prisma","backend/prisma/schema/orders.prisma","backend/prisma/schema/service.prisma","backend/prisma/schema/stores.prisma","backend/prisma/schema/supply-chain.prisma","backend/prisma/schema/system.prisma","backend/scripts/audit-prisma-zod-contract.ts","backend/src/modules/admin-settings/admin-settings.schema.ts","backend/src/modules/ai-agent-skills/skill-execution-engine.service.ts","backend/src/modules/ai-agents/ai-autopilot-ai-test.service.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-assist/ai-assist.docs.ts","backend/src/modules/ai-assist/ai-assist.schema.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/page-capability.test.ts","backend/src/modules/ai-assist/page-capability.ts","backend/src/modules/ai-assist/skills/registry.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/modules/alliance-agreements/alliance-agreement.schema.ts","backend/src/modules/alliance-campaigns/alliance-campaign.schema.ts","backend/src/modules/campaign-use-case-templates/use-case-template.schema.ts","backend/src/modules/contract-templates/contract-template.schema.ts","backend/src/modules/groupbuy-platforms/groupbuy-platform.schema.ts","backend/src/modules/landing-pages/landing-page.schema.ts","backend/src/modules/lead-pools/lead-pools.docs.ts","backend/src/modules/lead-pools/lead-pools.mapper.ts","backend/src/modules/lead-pools/lead-pools.schema.ts","backend/src/modules/lead-pools/lead-pools.service.ts","backend/src/modules/meddpicc-analyses/meddpicc.schema.ts","backend/src/modules/quotes/quote.schema.ts","backend/src/modules/renewal-tasks/renewal-task.schema.ts","backend/src/modules/roles/role.schema.ts","backend/src/modules/sample-requests/sample-request.schema.ts","backend/src/modules/store-configs/store-configs.schema.ts","backend/src/modules/tenant-configs/tenant-config.schema.ts","backend/src/shared/constants/statuses.ts","backend/tests/api/ai-assist.test.ts","backend/tests/api/ai-review-queue.test.ts","docs/governance/baseline-and-experience.md","docs/reports/view-audit-domains/a1-acquisition-center-2026-04-28.md","docs/reports/view-audit-domains/a3-ai-knowledge-2026-04-28.md","docs/reports/view-audit-domains/a4-store-groupbuy-alliance-2026-04-28.md","docs/reports/view-audit-domains/a5-admin-center-2026-04-28.md","docs/reports/view-audit-domains/a6-synergy-hr-2026-04-28.md","docs/reports/view-audit-domains/a7-analytics-marketing-2026-04-28.md","docs/reports/view-audit-domains/a8-system-center-2026-04-28.md","docs/reports/view-audit-domains/a9-service-sales-fulfillment-2026-04-28.md","docs/reports/view-audit-full-matrix-2026-04-28.md","e2e/.auth/admin.json","e2e/playwright-report/index.html","frontend/.env.development","frontend/.env.example","frontend/package.json","frontend/src/api/modules/ai-assist.ts","frontend/src/api/modules/alliance-agreements.ts","frontend/src/api/modules/alliance-campaigns.ts","frontend/src/api/modules/campaign-targets.ts","frontend/src/api/modules/events.ts","frontend/src/api/modules/lead-pools.ts","frontend/src/components/business/PageAIAssistDrawer.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/router/types.ts","frontend/src/services/eventBus.ts","frontend/src/views/abm-marketing/Index.vue","frontend/src/views/abm-marketing/__tests__/abm-marketing.smoke.test.ts","frontend/src/views/ai-agents/review-queue/Index.vue","frontend/src/views/alliance-agreements/Form.vue","frontend/src/views/campaign-use-case-templates/Form.vue","frontend/src/views/contract-templates/Form.vue","frontend/src/views/customer-journey-orchestration/Index.vue","frontend/src/views/landing-pages/Form.vue","frontend/src/views/lead-pools/Form.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/sample-requests/Form.vue","frontend/src/views/social-posts/Detail.vue","frontend/src/views/store-configs/Form.vue","frontend/src/views/supplier-management/StoreSuppliers.vue","frontend/src/views/suppliers/Detail.vue","frontend/src/views/suppliers/Form.vue","frontend/src/views/targets/Detail.vue","mobile/.env.development","output/playwright/full-menu-write-batches/ai-acquisition-content/batch-state.json","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/center-summary.json","output/playwright/full-menu-write-batches/center-summary.md","output/playwright/full-menu-write-batches/finance/batch-state.json","output/playwright/full-menu-write-batches/growth-sales-stores-service/batch-state.json","output/playwright/full-menu-write-batches/hr/batch-state.json","output/playwright/full-menu-write-batches/preflight.json","output/playwright/full-menu-write-batches/supply-chain/batch-state.json","output/playwright/full-menu-write-batches/synergy/batch-state.json","output/playwright/full-menu-write-batches/system-infra/batch-state.json","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/api-test-coverage.latest.json","reports/api-test-coverage.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","reports/enum-consistency-audit.latest.json","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/field-payload-audit.latest.json","reports/formrules-zod-audit.latest.json","reports/harness-dashboard.latest.json","reports/list-page-routes-audit.latest.json","reports/menu-inventory-audit.latest.json","reports/module-coverage-matrix.latest.json","reports/module-grades.latest.json","reports/module-placeholder-audit.latest.json","reports/module-placeholder-audit.latest.md","reports/outbox-atomicity-audit.latest.json","reports/prisma-zod-contract-audit.latest.json","reports/prisma-zod-contract-audit.latest.md","reports/project-census.baseline.json","reports/project-census.latest.json","reports/response-columns-audit.latest.json","reports/route-registration-audit.latest.json","reports/route-registration-audit.latest.md","reports/state-machine-integration-audit.latest.json","reports/state-machine-integration-audit.latest.md","reports/type-debt-audit.latest.json","reports/view-module-audit.latest.json","scripts/audit-context-provider-redact.ts","scripts/audit-enum-consistency.ts","scripts/audit-formrules-zod.ts","scripts/audit-response-columns.ts","scripts/ci-migration-check.sh","scripts/harness/audit-registry.ts","scripts/sync-local-env.sh"]},{"id":"bbf1f85eb2b823f39875ae6131d7f0986cd4d49f","message":"Align Prisma truth source and document formrules decisions\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/bbf1f85eb2b823f39875ae6131d7f0986cd4d49f","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:35:35-07:00","added":["e2e/output/autopilot/ai_test_1777424021381/prepare-ok.json","e2e/output/autopilot/ai_test_1777424021381/result.json","e2e/output/autopilot/ai_test_1777424022537/result.json","e2e/output/autopilot/ai_test_1777424042064/prepare-ok.json","e2e/output/autopilot/ai_test_1777424042064/result.json","e2e/output/autopilot/ai_test_1777424274236/prepare-ok.json","e2e/output/autopilot/ai_test_1777424274236/result.json","e2e/output/autopilot/ai_test_1777424275358/result.json","e2e/output/autopilot/ai_test_1777424445747/prepare-ok.json","e2e/output/autopilot/ai_test_1777424445747/result.json","e2e/output/autopilot/ai_test_1777424648560/prepare-ok.json","e2e/output/autopilot/ai_test_1777424648560/result.json","e2e/test-results/crud-01-visible-menu-write-25883-写操作回放-当前可见主菜单页-当前可见页面动作契约回放-chromium/error-context.md","e2e/test-results/crud-01-visible-menu-write-25883-写操作回放-当前可见主菜单页-当前可见页面动作契约回放-chromium/test-failed-1.png"],"removed":["e2e/test-results/.last-run.json","e2e/test-results/results.json"],"modified":["e2e/playwright-report/index.html"]},{"id":"ede22d5f7acd681ea5ae1a18518c4126d2f8866b","message":"chore: governance收口 + 27张缺失表迁移 + enum对齐 + 内存上限提升\n\n- prisma-zod-contract / formrules-zod / enum-consistency 三项审计清零(HIGH=0)\n- tighten_varchar_phase3 补视图/policy 守卫后落档主目录;p3_type_constraints 退休归档\n- 新增 27 张 schema/ 真源已声明但 migration 缺失的建表迁移(member/groupbuy/analytics/system 四类)\n- statuses.ts 新增 BUSINESS_PRIORITY_LEVELS / APPROVAL_PRIORITY_LEVELS 双 canonical\n- 前端 enum label 反向对齐 backend canonical(supplier/target/social-post 共 5 处)\n- ai-autopilot 事务收口:写操作在 tx 内,read-back 在 tx 外;ai-test 同款修法\n- audit-enum-consistency / audit-formrules-zod 噪音降级(INFO 65→40 / backend-only 移到 coverage)\n- ci.yml harness report --save 确保 artifact 落盘;migration-safety.yml 同步收口\n- frontend Node 内存上限 12288→16384 MB(type-check / build / build:deploy 三条脚本)\n- docs/governance 更新迁移验收口径、schema 双源债、p3 退休理由\n\nCo-Authored-By: Claude Sonnet 4.6 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/ede22d5f7acd681ea5ae1a18518c4126d2f8866b","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:34:57-07:00","added":["backend/prisma/migrations/20260428090000_tighten_varchar_phase3/migration.sql","backend/prisma/migrations/20260429100000_add_member_benefits_baseline/migration.sql","backend/prisma/migrations/20260429100100_add_member_levels_baseline/migration.sql","backend/prisma/migrations/20260429100200_add_member_points_baseline/migration.sql","backend/prisma/migrations/20260429100300_add_members_baseline/migration.sql","backend/prisma/migrations/20260429100400_add_customer_segments_baseline/migration.sql","backend/prisma/migrations/20260429100500_add_ad_analytics_records_baseline/migration.sql","backend/prisma/migrations/20260429100600_add_attribution_reports_baseline/migration.sql","backend/prisma/migrations/20260429100700_add_notification_configs_baseline/migration.sql","backend/prisma/migrations/20260429100800_add_qr_codes_baseline/migration.sql","backend/prisma/migrations/20260429100900_add_utm_tracking_records_baseline/migration.sql","backend/prisma/migrations/20260429101000_add_video_analytics_records_baseline/migration.sql","backend/prisma/migrations/20260429101100_add_video_content_baseline/migration.sql","backend/prisma/migrations/20260429101200_add_video_publishing_records_baseline/migration.sql","backend/prisma/migrations/20260429101300_add_channel_integrations_baseline/migration.sql","backend/prisma/migrations/20260429101400_add_abm_campaigns_baseline/migration.sql","backend/prisma/migrations/20260429101500_add_groupbuy_pricing_rules_baseline/migration.sql","backend/prisma/migrations/20260429101600_add_groupbuy_time_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101700_add_groupbuy_volume_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101800_add_groupbuy_tier_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101900_add_groupbuy_demand_pricing_baseline/migration.sql","backend/prisma/migrations/20260429102000_add_groupbuy_bundles_baseline/migration.sql","backend/prisma/migrations/20260429102100_add_groupbuy_bundle_products_baseline/migration.sql","backend/prisma/migrations/20260429102200_add_local_events_baseline/migration.sql","backend/prisma/migrations/20260429102300_add_local_promotions_baseline/migration.sql","backend/prisma/migrations/20260429102400_add_state_machine_definitions_baseline/migration.sql","backend/prisma/migrations/20260429102500_add_custom_field_definitions_baseline/migration.sql","backend/prisma/migrations/20260429102600_add_workflow_designs_baseline/migration.sql","docs/governance/archive/p3_type_constraints_retired_2026-04-29/RETIRED.md","docs/governance/archive/p3_type_constraints_retired_2026-04-29/migration.sql","docs/governance/formrules-zod-product-decisions-2026-04-29.md","e2e/tests/auth/ai-assist-smoke.spec.ts","reports/prisma-zod-contract-audit.2026-04-29.json","reports/prisma-zod-contract-audit.2026-04-29.md","scripts/sync-prisma-schema-mirror.ts"],"removed":[".claude/scheduled_tasks.lock","backend/prisma/migrations_pending_review/20260428060300_drift_recovery_p3_type_constraints/migration.sql","backend/prisma/migrations_pending_review/20260428090000_tighten_varchar_phase3/migration.sql"],"modified":[".claude/settings.json",".github/workflows/ci.yml",".github/workflows/migration-safety.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/migrations_pending_review/README.md","backend/prisma/schema.prisma","backend/src/modules/ai-agents/ai-autopilot-ai-test.service.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/shared/constants/statuses.ts","docs/governance/baseline-and-experience.md","e2e/.auth/admin.json","frontend/package.json","frontend/src/views/social-posts/Detail.vue","frontend/src/views/supplier-management/StoreSuppliers.vue","frontend/src/views/suppliers/Detail.vue","frontend/src/views/suppliers/Form.vue","frontend/src/views/targets/Detail.vue","output/playwright/full-menu-write-batches/ai-acquisition-content/batch-state.json","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/center-summary.json","output/playwright/full-menu-write-batches/center-summary.md","output/playwright/full-menu-write-batches/finance/batch-state.json","output/playwright/full-menu-write-batches/growth-sales-stores-service/batch-state.json","output/playwright/full-menu-write-batches/hr/batch-state.json","output/playwright/full-menu-write-batches/preflight.json","output/playwright/full-menu-write-batches/supply-chain/batch-state.json","output/playwright/full-menu-write-batches/synergy/batch-state.json","output/playwright/full-menu-write-batches/system-infra/batch-state.json","package.json","reports/ai-assist-context-provider-redact.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/enum-consistency-audit.latest.json","reports/field-payload-audit.latest.json","reports/formrules-zod-audit.latest.json","reports/harness-dashboard.latest.json","reports/list-page-routes-audit.latest.json","reports/migration-drift-diff.latest.sql","reports/migration-drift-summary.latest.json","reports/module-coverage-matrix.latest.json","reports/module-grades.latest.json","reports/prisma-zod-contract-audit.2026-04-28.json","reports/prisma-zod-contract-audit.2026-04-28.md","reports/prisma-zod-contract-audit.latest.json","reports/prisma-zod-contract-audit.latest.md","reports/project-census.baseline.json","reports/project-census.latest.json","reports/response-columns-audit.latest.json","reports/type-debt-audit.latest.json","scripts/audit-enum-consistency.ts","scripts/audit-formrules-zod.ts","scripts/ci-migration-check.sh","scripts/ci-migration-deploy-gate.sh"]},{"id":"73367a67e894c06a03ec05ef20317873c15bc7ee","message":"Fix governance contract mismatches and module coverage\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/73367a67e894c06a03ec05ef20317873c15bc7ee","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T10:43:21-07:00","added":["backend/src/modules/abm-marketing/abm-marketing.module-contract.test.ts","backend/src/modules/ad-analytics/ad-analytics.module-contract.test.ts","backend/src/modules/attribution-models/attribution-models.module-contract.test.ts","backend/src/modules/attribution-reports/attribution-reports.module-contract.test.ts","backend/src/modules/channel-integrations/channel-integrations.module-contract.test.ts","backend/src/modules/customer-segmentation/customer-segmentation.module-contract.test.ts","backend/src/modules/lead-assignment/lead-assignment.module-contract.test.ts","backend/src/modules/lead-scoring/lead-scoring.module-contract.test.ts","backend/src/modules/local-events/local-events.module-contract.test.ts","backend/src/modules/local-promotion/local-promotion.module-contract.test.ts","backend/src/modules/member-benefits/member-benefits.module-contract.test.ts","backend/src/modules/member-levels/member-levels.module-contract.test.ts","backend/src/modules/member-points/member-points.module-contract.test.ts","backend/src/modules/members/members.module-contract.test.ts","backend/src/modules/notification-configs/notification-configs.module-contract.test.ts","backend/src/modules/product-categories/product-categories.module-contract.test.ts","backend/src/modules/qr-codes/qr-codes.module-contract.test.ts","backend/src/modules/social-matrix/social-matrix.module-contract.test.ts","backend/src/modules/store-configs/store-configs.module-contract.test.ts","backend/src/modules/supplier-center/supplier-center.module-contract.test.ts","backend/src/modules/utm-tracking/utm-tracking.module-contract.test.ts","backend/src/modules/video-analytics/video-analytics.module-contract.test.ts","backend/src/modules/video-content/video-content.module-contract.test.ts","backend/src/modules/video-publishing/video-publishing.module-contract.test.ts","backend/src/modules/workflow-designer/workflow-designer.module-contract.test.ts"],"removed":[],"modified":[".claude/settings.json","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/scripts/audit-prisma-zod-contract.ts","backend/src/modules/alliance-agreements/alliance-agreement.schema.ts","backend/src/modules/alliance-campaigns/alliance-campaign.schema.ts","backend/src/modules/quotes/quote.schema.ts","docs/governance/baseline-and-experience.md","frontend/src/api/modules/alliance-agreements.ts","frontend/src/api/modules/alliance-campaigns.ts","frontend/src/views/campaign-use-case-templates/Form.vue","frontend/src/views/contract-templates/Form.vue","frontend/src/views/landing-pages/Form.vue","frontend/src/views/sample-requests/Form.vue","frontend/src/views/store-configs/Form.vue","reports/enum-consistency-audit.latest.json","reports/field-payload-audit.latest.json","reports/formrules-zod-audit.latest.json","reports/harness-dashboard.latest.json","reports/migration-drift-diff.latest.sql","reports/migration-drift-summary.latest.json","reports/module-coverage-matrix.latest.json","reports/module-grades.latest.json","reports/prisma-zod-contract-audit.2026-04-28.json","reports/prisma-zod-contract-audit.2026-04-28.md","reports/prisma-zod-contract-audit.latest.json","reports/prisma-zod-contract-audit.latest.md","reports/project-census.baseline.json","reports/project-census.latest.json","reports/response-columns-audit.latest.json","reports/type-debt-audit.latest.json","scripts/audit-response-columns.ts"]}],"total_commits":0,"head_commit":{"id":"3852c841f557d197a777c094ed1243a8198cdf8e","message":"Allow git merge in Claude settings\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3852c841f557d197a777c094ed1243a8198cdf8e","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:36:26-07:00","added":[],"removed":[],"modified":[".claude/settings.json"]},"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":5232338,"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":17,"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-29T01:43:35+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
2
|
20
|
1777426773
|
1777427065
|
0
|
1777426589
|
1777427261
|
|
|
0
|
Edit
Delete
|
|
18563
|
Allow git merge in Claude settings
|
6
|
5
|
migration-safety.yml
|
18483
|
5
|
0
|
refs/heads/main
|
3852c841f557d197a777c094ed1243a8198cdf8e
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"106c45ddee8406e0190ccbba4c3dcf6703cc6117","after":"3852c841f557d197a777c094ed1243a8198cdf8e","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/106c45ddee8406e0190ccbba4c3dcf6703cc6117...3852c841f557d197a777c094ed1243a8198cdf8e","commits":[{"id":"3852c841f557d197a777c094ed1243a8198cdf8e","message":"Allow git merge in Claude settings\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3852c841f557d197a777c094ed1243a8198cdf8e","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:36:26-07:00","added":[],"removed":[],"modified":[".claude/settings.json"]},{"id":"d2338c76ded8ede28829e066e9801cffd24cd7fd","message":"Merge branch 'codex-ai-assist-action-packs'\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2338c76ded8ede28829e066e9801cffd24cd7fd","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:36:01-07:00","added":["backend/prisma/migrations/20260428060000_drift_recovery_p0a_rls_phase2/migration.sql","backend/prisma/migrations/20260428060100_drift_recovery_p0b_missing_tables/migration.sql","backend/prisma/migrations/20260428060200_drift_recovery_p1_add_columns/migration.sql","backend/prisma/migrations/20260428060500_drift_recovery_p3c_enum_alignment/migration.sql","backend/prisma/migrations/20260428070000_add_lead_pool_auto_dispatch_strategy/migration.sql","backend/prisma/migrations/20260428080000_tighten_currency_varchar/migration.sql","backend/prisma/migrations/20260428090000_tighten_varchar_phase3/migration.sql","backend/prisma/migrations/20260429100000_add_member_benefits_baseline/migration.sql","backend/prisma/migrations/20260429100100_add_member_levels_baseline/migration.sql","backend/prisma/migrations/20260429100200_add_member_points_baseline/migration.sql","backend/prisma/migrations/20260429100300_add_members_baseline/migration.sql","backend/prisma/migrations/20260429100400_add_customer_segments_baseline/migration.sql","backend/prisma/migrations/20260429100500_add_ad_analytics_records_baseline/migration.sql","backend/prisma/migrations/20260429100600_add_attribution_reports_baseline/migration.sql","backend/prisma/migrations/20260429100700_add_notification_configs_baseline/migration.sql","backend/prisma/migrations/20260429100800_add_qr_codes_baseline/migration.sql","backend/prisma/migrations/20260429100900_add_utm_tracking_records_baseline/migration.sql","backend/prisma/migrations/20260429101000_add_video_analytics_records_baseline/migration.sql","backend/prisma/migrations/20260429101100_add_video_content_baseline/migration.sql","backend/prisma/migrations/20260429101200_add_video_publishing_records_baseline/migration.sql","backend/prisma/migrations/20260429101300_add_channel_integrations_baseline/migration.sql","backend/prisma/migrations/20260429101400_add_abm_campaigns_baseline/migration.sql","backend/prisma/migrations/20260429101500_add_groupbuy_pricing_rules_baseline/migration.sql","backend/prisma/migrations/20260429101600_add_groupbuy_time_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101700_add_groupbuy_volume_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101800_add_groupbuy_tier_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101900_add_groupbuy_demand_pricing_baseline/migration.sql","backend/prisma/migrations/20260429102000_add_groupbuy_bundles_baseline/migration.sql","backend/prisma/migrations/20260429102100_add_groupbuy_bundle_products_baseline/migration.sql","backend/prisma/migrations/20260429102200_add_local_events_baseline/migration.sql","backend/prisma/migrations/20260429102300_add_local_promotions_baseline/migration.sql","backend/prisma/migrations/20260429102400_add_state_machine_definitions_baseline/migration.sql","backend/prisma/migrations/20260429102500_add_custom_field_definitions_baseline/migration.sql","backend/prisma/migrations/20260429102600_add_workflow_designs_baseline/migration.sql","backend/prisma/migrations_pending_review/README.md","backend/src/modules/abm-marketing/abm-marketing.module-contract.test.ts","backend/src/modules/ad-analytics/ad-analytics.module-contract.test.ts","backend/src/modules/ai-assist/page-action-executor.ts","backend/src/modules/attribution-models/attribution-models.module-contract.test.ts","backend/src/modules/attribution-reports/attribution-reports.module-contract.test.ts","backend/src/modules/channel-integrations/channel-integrations.module-contract.test.ts","backend/src/modules/customer-segmentation/customer-segmentation.module-contract.test.ts","backend/src/modules/lead-assignment/lead-assignment.module-contract.test.ts","backend/src/modules/lead-scoring/lead-scoring.module-contract.test.ts","backend/src/modules/local-events/local-events.module-contract.test.ts","backend/src/modules/local-promotion/local-promotion.module-contract.test.ts","backend/src/modules/member-benefits/member-benefits.module-contract.test.ts","backend/src/modules/member-levels/member-levels.module-contract.test.ts","backend/src/modules/member-points/member-points.module-contract.test.ts","backend/src/modules/members/members.module-contract.test.ts","backend/src/modules/notification-configs/notification-configs.module-contract.test.ts","backend/src/modules/product-categories/product-categories.module-contract.test.ts","backend/src/modules/qr-codes/qr-codes.module-contract.test.ts","backend/src/modules/social-matrix/social-matrix.module-contract.test.ts","backend/src/modules/store-configs/store-configs.module-contract.test.ts","backend/src/modules/supplier-center/supplier-center.module-contract.test.ts","backend/src/modules/utm-tracking/utm-tracking.module-contract.test.ts","backend/src/modules/video-analytics/video-analytics.module-contract.test.ts","backend/src/modules/video-content/video-content.module-contract.test.ts","backend/src/modules/video-publishing/video-publishing.module-contract.test.ts","backend/src/modules/workflow-designer/workflow-designer.module-contract.test.ts","docs/governance/archive/p3_type_constraints_retired_2026-04-29/RETIRED.md","docs/governance/archive/p3_type_constraints_retired_2026-04-29/migration.sql","docs/governance/formrules-zod-product-decisions-2026-04-29.md","e2e/output/autopilot/ai_test_1777424021381/prepare-ok.json","e2e/output/autopilot/ai_test_1777424021381/result.json","e2e/output/autopilot/ai_test_1777424022537/result.json","e2e/output/autopilot/ai_test_1777424042064/prepare-ok.json","e2e/output/autopilot/ai_test_1777424042064/result.json","e2e/output/autopilot/ai_test_1777424274236/prepare-ok.json","e2e/output/autopilot/ai_test_1777424274236/result.json","e2e/output/autopilot/ai_test_1777424275358/result.json","e2e/output/autopilot/ai_test_1777424445747/prepare-ok.json","e2e/output/autopilot/ai_test_1777424445747/result.json","e2e/output/autopilot/ai_test_1777424648560/prepare-ok.json","e2e/output/autopilot/ai_test_1777424648560/result.json","e2e/test-results/crud-01-visible-menu-write-25883-写操作回放-当前可见主菜单页-当前可见页面动作契约回放-chromium/error-context.md","e2e/test-results/crud-01-visible-menu-write-25883-写操作回放-当前可见主菜单页-当前可见页面动作契约回放-chromium/test-failed-1.png","e2e/tests/auth/ai-assist-smoke.spec.ts","reports/ai-assist-context-provider-redact.latest.json","reports/migration-drift-diff.latest.sql","reports/migration-drift-summary.latest.json","reports/prisma-zod-contract-audit.2026-04-28.json","reports/prisma-zod-contract-audit.2026-04-28.md","reports/prisma-zod-contract-audit.2026-04-29.json","reports/prisma-zod-contract-audit.2026-04-29.md","scripts/ci-migration-deploy-gate.sh","scripts/sync-prisma-schema-mirror.ts"],"removed":["e2e/test-results/.last-run.json","e2e/test-results/results.json"],"modified":[".claude/settings.json",".env.example",".github/workflows/ci.yml",".github/workflows/migration-safety.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/prisma/schema/community.prisma","backend/prisma/schema/contracts.prisma","backend/prisma/schema/cpq.prisma","backend/prisma/schema/finance.prisma","backend/prisma/schema/leads.prisma","backend/prisma/schema/orders.prisma","backend/prisma/schema/service.prisma","backend/prisma/schema/stores.prisma","backend/prisma/schema/supply-chain.prisma","backend/prisma/schema/system.prisma","backend/scripts/audit-prisma-zod-contract.ts","backend/src/modules/admin-settings/admin-settings.schema.ts","backend/src/modules/ai-agent-skills/skill-execution-engine.service.ts","backend/src/modules/ai-agents/ai-autopilot-ai-test.service.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-assist/ai-assist.docs.ts","backend/src/modules/ai-assist/ai-assist.schema.ts","backend/src/modules/ai-assist/ai-assist.service.ts","backend/src/modules/ai-assist/context-providers/finance-aggregate.ts","backend/src/modules/ai-assist/context-providers/lead.ts","backend/src/modules/ai-assist/context-providers/social-hot-topic.ts","backend/src/modules/ai-assist/context-providers/ticket.ts","backend/src/modules/ai-assist/page-capability.test.ts","backend/src/modules/ai-assist/page-capability.ts","backend/src/modules/ai-assist/skills/registry.ts","backend/src/modules/ai-review-queue/ai-review-queue.service.ts","backend/src/modules/alliance-agreements/alliance-agreement.schema.ts","backend/src/modules/alliance-campaigns/alliance-campaign.schema.ts","backend/src/modules/campaign-use-case-templates/use-case-template.schema.ts","backend/src/modules/contract-templates/contract-template.schema.ts","backend/src/modules/groupbuy-platforms/groupbuy-platform.schema.ts","backend/src/modules/landing-pages/landing-page.schema.ts","backend/src/modules/lead-pools/lead-pools.docs.ts","backend/src/modules/lead-pools/lead-pools.mapper.ts","backend/src/modules/lead-pools/lead-pools.schema.ts","backend/src/modules/lead-pools/lead-pools.service.ts","backend/src/modules/meddpicc-analyses/meddpicc.schema.ts","backend/src/modules/quotes/quote.schema.ts","backend/src/modules/renewal-tasks/renewal-task.schema.ts","backend/src/modules/roles/role.schema.ts","backend/src/modules/sample-requests/sample-request.schema.ts","backend/src/modules/store-configs/store-configs.schema.ts","backend/src/modules/tenant-configs/tenant-config.schema.ts","backend/src/shared/constants/statuses.ts","backend/tests/api/ai-assist.test.ts","backend/tests/api/ai-review-queue.test.ts","docs/governance/baseline-and-experience.md","docs/reports/view-audit-domains/a1-acquisition-center-2026-04-28.md","docs/reports/view-audit-domains/a3-ai-knowledge-2026-04-28.md","docs/reports/view-audit-domains/a4-store-groupbuy-alliance-2026-04-28.md","docs/reports/view-audit-domains/a5-admin-center-2026-04-28.md","docs/reports/view-audit-domains/a6-synergy-hr-2026-04-28.md","docs/reports/view-audit-domains/a7-analytics-marketing-2026-04-28.md","docs/reports/view-audit-domains/a8-system-center-2026-04-28.md","docs/reports/view-audit-domains/a9-service-sales-fulfillment-2026-04-28.md","docs/reports/view-audit-full-matrix-2026-04-28.md","e2e/.auth/admin.json","e2e/playwright-report/index.html","frontend/.env.development","frontend/.env.example","frontend/package.json","frontend/src/api/modules/ai-assist.ts","frontend/src/api/modules/alliance-agreements.ts","frontend/src/api/modules/alliance-campaigns.ts","frontend/src/api/modules/campaign-targets.ts","frontend/src/api/modules/events.ts","frontend/src/api/modules/lead-pools.ts","frontend/src/components/business/PageAIAssistDrawer.vue","frontend/src/composables/usePageAIAssist.ts","frontend/src/router/types.ts","frontend/src/services/eventBus.ts","frontend/src/views/abm-marketing/Index.vue","frontend/src/views/abm-marketing/__tests__/abm-marketing.smoke.test.ts","frontend/src/views/ai-agents/review-queue/Index.vue","frontend/src/views/alliance-agreements/Form.vue","frontend/src/views/campaign-use-case-templates/Form.vue","frontend/src/views/contract-templates/Form.vue","frontend/src/views/customer-journey-orchestration/Index.vue","frontend/src/views/landing-pages/Form.vue","frontend/src/views/lead-pools/Form.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/sample-requests/Form.vue","frontend/src/views/social-posts/Detail.vue","frontend/src/views/store-configs/Form.vue","frontend/src/views/supplier-management/StoreSuppliers.vue","frontend/src/views/suppliers/Detail.vue","frontend/src/views/suppliers/Form.vue","frontend/src/views/targets/Detail.vue","mobile/.env.development","output/playwright/full-menu-write-batches/ai-acquisition-content/batch-state.json","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/center-summary.json","output/playwright/full-menu-write-batches/center-summary.md","output/playwright/full-menu-write-batches/finance/batch-state.json","output/playwright/full-menu-write-batches/growth-sales-stores-service/batch-state.json","output/playwright/full-menu-write-batches/hr/batch-state.json","output/playwright/full-menu-write-batches/preflight.json","output/playwright/full-menu-write-batches/supply-chain/batch-state.json","output/playwright/full-menu-write-batches/synergy/batch-state.json","output/playwright/full-menu-write-batches/system-infra/batch-state.json","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/api-test-coverage.latest.json","reports/api-test-coverage.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md","reports/enum-consistency-audit.latest.json","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/field-payload-audit.latest.json","reports/formrules-zod-audit.latest.json","reports/harness-dashboard.latest.json","reports/list-page-routes-audit.latest.json","reports/menu-inventory-audit.latest.json","reports/module-coverage-matrix.latest.json","reports/module-grades.latest.json","reports/module-placeholder-audit.latest.json","reports/module-placeholder-audit.latest.md","reports/outbox-atomicity-audit.latest.json","reports/prisma-zod-contract-audit.latest.json","reports/prisma-zod-contract-audit.latest.md","reports/project-census.baseline.json","reports/project-census.latest.json","reports/response-columns-audit.latest.json","reports/route-registration-audit.latest.json","reports/route-registration-audit.latest.md","reports/state-machine-integration-audit.latest.json","reports/state-machine-integration-audit.latest.md","reports/type-debt-audit.latest.json","reports/view-module-audit.latest.json","scripts/audit-context-provider-redact.ts","scripts/audit-enum-consistency.ts","scripts/audit-formrules-zod.ts","scripts/audit-response-columns.ts","scripts/ci-migration-check.sh","scripts/harness/audit-registry.ts","scripts/sync-local-env.sh"]},{"id":"bbf1f85eb2b823f39875ae6131d7f0986cd4d49f","message":"Align Prisma truth source and document formrules decisions\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/bbf1f85eb2b823f39875ae6131d7f0986cd4d49f","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:35:35-07:00","added":["e2e/output/autopilot/ai_test_1777424021381/prepare-ok.json","e2e/output/autopilot/ai_test_1777424021381/result.json","e2e/output/autopilot/ai_test_1777424022537/result.json","e2e/output/autopilot/ai_test_1777424042064/prepare-ok.json","e2e/output/autopilot/ai_test_1777424042064/result.json","e2e/output/autopilot/ai_test_1777424274236/prepare-ok.json","e2e/output/autopilot/ai_test_1777424274236/result.json","e2e/output/autopilot/ai_test_1777424275358/result.json","e2e/output/autopilot/ai_test_1777424445747/prepare-ok.json","e2e/output/autopilot/ai_test_1777424445747/result.json","e2e/output/autopilot/ai_test_1777424648560/prepare-ok.json","e2e/output/autopilot/ai_test_1777424648560/result.json","e2e/test-results/crud-01-visible-menu-write-25883-写操作回放-当前可见主菜单页-当前可见页面动作契约回放-chromium/error-context.md","e2e/test-results/crud-01-visible-menu-write-25883-写操作回放-当前可见主菜单页-当前可见页面动作契约回放-chromium/test-failed-1.png"],"removed":["e2e/test-results/.last-run.json","e2e/test-results/results.json"],"modified":["e2e/playwright-report/index.html"]},{"id":"ede22d5f7acd681ea5ae1a18518c4126d2f8866b","message":"chore: governance收口 + 27张缺失表迁移 + enum对齐 + 内存上限提升\n\n- prisma-zod-contract / formrules-zod / enum-consistency 三项审计清零(HIGH=0)\n- tighten_varchar_phase3 补视图/policy 守卫后落档主目录;p3_type_constraints 退休归档\n- 新增 27 张 schema/ 真源已声明但 migration 缺失的建表迁移(member/groupbuy/analytics/system 四类)\n- statuses.ts 新增 BUSINESS_PRIORITY_LEVELS / APPROVAL_PRIORITY_LEVELS 双 canonical\n- 前端 enum label 反向对齐 backend canonical(supplier/target/social-post 共 5 处)\n- ai-autopilot 事务收口:写操作在 tx 内,read-back 在 tx 外;ai-test 同款修法\n- audit-enum-consistency / audit-formrules-zod 噪音降级(INFO 65→40 / backend-only 移到 coverage)\n- ci.yml harness report --save 确保 artifact 落盘;migration-safety.yml 同步收口\n- frontend Node 内存上限 12288→16384 MB(type-check / build / build:deploy 三条脚本)\n- docs/governance 更新迁移验收口径、schema 双源债、p3 退休理由\n\nCo-Authored-By: Claude Sonnet 4.6 (1M context) \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/ede22d5f7acd681ea5ae1a18518c4126d2f8866b","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:34:57-07:00","added":["backend/prisma/migrations/20260428090000_tighten_varchar_phase3/migration.sql","backend/prisma/migrations/20260429100000_add_member_benefits_baseline/migration.sql","backend/prisma/migrations/20260429100100_add_member_levels_baseline/migration.sql","backend/prisma/migrations/20260429100200_add_member_points_baseline/migration.sql","backend/prisma/migrations/20260429100300_add_members_baseline/migration.sql","backend/prisma/migrations/20260429100400_add_customer_segments_baseline/migration.sql","backend/prisma/migrations/20260429100500_add_ad_analytics_records_baseline/migration.sql","backend/prisma/migrations/20260429100600_add_attribution_reports_baseline/migration.sql","backend/prisma/migrations/20260429100700_add_notification_configs_baseline/migration.sql","backend/prisma/migrations/20260429100800_add_qr_codes_baseline/migration.sql","backend/prisma/migrations/20260429100900_add_utm_tracking_records_baseline/migration.sql","backend/prisma/migrations/20260429101000_add_video_analytics_records_baseline/migration.sql","backend/prisma/migrations/20260429101100_add_video_content_baseline/migration.sql","backend/prisma/migrations/20260429101200_add_video_publishing_records_baseline/migration.sql","backend/prisma/migrations/20260429101300_add_channel_integrations_baseline/migration.sql","backend/prisma/migrations/20260429101400_add_abm_campaigns_baseline/migration.sql","backend/prisma/migrations/20260429101500_add_groupbuy_pricing_rules_baseline/migration.sql","backend/prisma/migrations/20260429101600_add_groupbuy_time_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101700_add_groupbuy_volume_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101800_add_groupbuy_tier_pricing_baseline/migration.sql","backend/prisma/migrations/20260429101900_add_groupbuy_demand_pricing_baseline/migration.sql","backend/prisma/migrations/20260429102000_add_groupbuy_bundles_baseline/migration.sql","backend/prisma/migrations/20260429102100_add_groupbuy_bundle_products_baseline/migration.sql","backend/prisma/migrations/20260429102200_add_local_events_baseline/migration.sql","backend/prisma/migrations/20260429102300_add_local_promotions_baseline/migration.sql","backend/prisma/migrations/20260429102400_add_state_machine_definitions_baseline/migration.sql","backend/prisma/migrations/20260429102500_add_custom_field_definitions_baseline/migration.sql","backend/prisma/migrations/20260429102600_add_workflow_designs_baseline/migration.sql","docs/governance/archive/p3_type_constraints_retired_2026-04-29/RETIRED.md","docs/governance/archive/p3_type_constraints_retired_2026-04-29/migration.sql","docs/governance/formrules-zod-product-decisions-2026-04-29.md","e2e/tests/auth/ai-assist-smoke.spec.ts","reports/prisma-zod-contract-audit.2026-04-29.json","reports/prisma-zod-contract-audit.2026-04-29.md","scripts/sync-prisma-schema-mirror.ts"],"removed":[".claude/scheduled_tasks.lock","backend/prisma/migrations_pending_review/20260428060300_drift_recovery_p3_type_constraints/migration.sql","backend/prisma/migrations_pending_review/20260428090000_tighten_varchar_phase3/migration.sql"],"modified":[".claude/settings.json",".github/workflows/ci.yml",".github/workflows/migration-safety.yml","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/migrations_pending_review/README.md","backend/prisma/schema.prisma","backend/src/modules/ai-agents/ai-autopilot-ai-test.service.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/shared/constants/statuses.ts","docs/governance/baseline-and-experience.md","e2e/.auth/admin.json","frontend/package.json","frontend/src/views/social-posts/Detail.vue","frontend/src/views/supplier-management/StoreSuppliers.vue","frontend/src/views/suppliers/Detail.vue","frontend/src/views/suppliers/Form.vue","frontend/src/views/targets/Detail.vue","output/playwright/full-menu-write-batches/ai-acquisition-content/batch-state.json","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/center-summary.json","output/playwright/full-menu-write-batches/center-summary.md","output/playwright/full-menu-write-batches/finance/batch-state.json","output/playwright/full-menu-write-batches/growth-sales-stores-service/batch-state.json","output/playwright/full-menu-write-batches/hr/batch-state.json","output/playwright/full-menu-write-batches/preflight.json","output/playwright/full-menu-write-batches/supply-chain/batch-state.json","output/playwright/full-menu-write-batches/synergy/batch-state.json","output/playwright/full-menu-write-batches/system-infra/batch-state.json","package.json","reports/ai-assist-context-provider-redact.latest.json","reports/ai-assist-coverage.latest.json","reports/ai-assist-skill-binding.latest.json","reports/enum-consistency-audit.latest.json","reports/field-payload-audit.latest.json","reports/formrules-zod-audit.latest.json","reports/harness-dashboard.latest.json","reports/list-page-routes-audit.latest.json","reports/migration-drift-diff.latest.sql","reports/migration-drift-summary.latest.json","reports/module-coverage-matrix.latest.json","reports/module-grades.latest.json","reports/prisma-zod-contract-audit.2026-04-28.json","reports/prisma-zod-contract-audit.2026-04-28.md","reports/prisma-zod-contract-audit.latest.json","reports/prisma-zod-contract-audit.latest.md","reports/project-census.baseline.json","reports/project-census.latest.json","reports/response-columns-audit.latest.json","reports/type-debt-audit.latest.json","scripts/audit-enum-consistency.ts","scripts/audit-formrules-zod.ts","scripts/ci-migration-check.sh","scripts/ci-migration-deploy-gate.sh"]},{"id":"73367a67e894c06a03ec05ef20317873c15bc7ee","message":"Fix governance contract mismatches and module coverage\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/73367a67e894c06a03ec05ef20317873c15bc7ee","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T10:43:21-07:00","added":["backend/src/modules/abm-marketing/abm-marketing.module-contract.test.ts","backend/src/modules/ad-analytics/ad-analytics.module-contract.test.ts","backend/src/modules/attribution-models/attribution-models.module-contract.test.ts","backend/src/modules/attribution-reports/attribution-reports.module-contract.test.ts","backend/src/modules/channel-integrations/channel-integrations.module-contract.test.ts","backend/src/modules/customer-segmentation/customer-segmentation.module-contract.test.ts","backend/src/modules/lead-assignment/lead-assignment.module-contract.test.ts","backend/src/modules/lead-scoring/lead-scoring.module-contract.test.ts","backend/src/modules/local-events/local-events.module-contract.test.ts","backend/src/modules/local-promotion/local-promotion.module-contract.test.ts","backend/src/modules/member-benefits/member-benefits.module-contract.test.ts","backend/src/modules/member-levels/member-levels.module-contract.test.ts","backend/src/modules/member-points/member-points.module-contract.test.ts","backend/src/modules/members/members.module-contract.test.ts","backend/src/modules/notification-configs/notification-configs.module-contract.test.ts","backend/src/modules/product-categories/product-categories.module-contract.test.ts","backend/src/modules/qr-codes/qr-codes.module-contract.test.ts","backend/src/modules/social-matrix/social-matrix.module-contract.test.ts","backend/src/modules/store-configs/store-configs.module-contract.test.ts","backend/src/modules/supplier-center/supplier-center.module-contract.test.ts","backend/src/modules/utm-tracking/utm-tracking.module-contract.test.ts","backend/src/modules/video-analytics/video-analytics.module-contract.test.ts","backend/src/modules/video-content/video-content.module-contract.test.ts","backend/src/modules/video-publishing/video-publishing.module-contract.test.ts","backend/src/modules/workflow-designer/workflow-designer.module-contract.test.ts"],"removed":[],"modified":[".claude/settings.json","AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/scripts/audit-prisma-zod-contract.ts","backend/src/modules/alliance-agreements/alliance-agreement.schema.ts","backend/src/modules/alliance-campaigns/alliance-campaign.schema.ts","backend/src/modules/quotes/quote.schema.ts","docs/governance/baseline-and-experience.md","frontend/src/api/modules/alliance-agreements.ts","frontend/src/api/modules/alliance-campaigns.ts","frontend/src/views/campaign-use-case-templates/Form.vue","frontend/src/views/contract-templates/Form.vue","frontend/src/views/landing-pages/Form.vue","frontend/src/views/sample-requests/Form.vue","frontend/src/views/store-configs/Form.vue","reports/enum-consistency-audit.latest.json","reports/field-payload-audit.latest.json","reports/formrules-zod-audit.latest.json","reports/harness-dashboard.latest.json","reports/migration-drift-diff.latest.sql","reports/migration-drift-summary.latest.json","reports/module-coverage-matrix.latest.json","reports/module-grades.latest.json","reports/prisma-zod-contract-audit.2026-04-28.json","reports/prisma-zod-contract-audit.2026-04-28.md","reports/prisma-zod-contract-audit.latest.json","reports/prisma-zod-contract-audit.latest.md","reports/project-census.baseline.json","reports/project-census.latest.json","reports/response-columns-audit.latest.json","reports/type-debt-audit.latest.json","scripts/audit-response-columns.ts"]}],"total_commits":0,"head_commit":{"id":"3852c841f557d197a777c094ed1243a8198cdf8e","message":"Allow git merge in Claude settings\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/3852c841f557d197a777c094ed1243a8198cdf8e","author":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"committer":{"name":"luoguoguo","email":"luoguoguo@luoguoguodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-04-28T18:36:26-07:00","added":[],"removed":[],"modified":[".claude/settings.json"]},"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":5232338,"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":17,"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-29T01:43:35+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
2
|
4
|
1777427072
|
1777427102
|
0
|
1777426590
|
1777427102
|
|
|
0
|
Edit
Delete
|