|
7183
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7110
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773957934
|
1773957934
|
0
|
1773957933
|
1773957934
|
|
|
0
|
Edit
Delete
|
|
7184
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7111
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773958234
|
1773958234
|
0
|
1773958233
|
1773958234
|
|
|
0
|
Edit
Delete
|
|
7185
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7112
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773958534
|
1773958534
|
0
|
1773958533
|
1773958534
|
|
|
0
|
Edit
Delete
|
|
7186
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7113
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773958834
|
1773958834
|
0
|
1773958833
|
1773958834
|
|
|
0
|
Edit
Delete
|
|
7187
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7114
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773959134
|
1773959134
|
0
|
1773959133
|
1773959134
|
|
|
0
|
Edit
Delete
|
|
7188
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7115
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773959434
|
1773959434
|
0
|
1773959433
|
1773959434
|
|
|
0
|
Edit
Delete
|
|
7189
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7116
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773959734
|
1773959734
|
0
|
1773959733
|
1773959734
|
|
|
0
|
Edit
Delete
|
|
7190
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7117
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773960034
|
1773960034
|
0
|
1773960033
|
1773960034
|
|
|
0
|
Edit
Delete
|
|
7191
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7118
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773960334
|
1773960334
|
0
|
1773960333
|
1773960334
|
|
|
0
|
Edit
Delete
|
|
7192
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7119
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773960634
|
1773960634
|
0
|
1773960633
|
1773960634
|
|
|
0
|
Edit
Delete
|
|
7193
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7120
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773960934
|
1773960934
|
0
|
1773960933
|
1773960934
|
|
|
0
|
Edit
Delete
|
|
7194
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7121
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773961234
|
1773961234
|
0
|
1773961233
|
1773961234
|
|
|
0
|
Edit
Delete
|
|
7195
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7122
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773961534
|
1773961534
|
0
|
1773961533
|
1773961534
|
|
|
0
|
Edit
Delete
|
|
7196
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7123
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773961834
|
1773961834
|
0
|
1773961833
|
1773961834
|
|
|
0
|
Edit
Delete
|
|
7197
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7124
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773962134
|
1773962134
|
0
|
1773962133
|
1773962134
|
|
|
0
|
Edit
Delete
|
|
7198
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7125
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773962434
|
1773962434
|
0
|
1773962433
|
1773962434
|
|
|
0
|
Edit
Delete
|
|
7199
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7126
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773962734
|
1773962734
|
0
|
1773962733
|
1773962734
|
|
|
0
|
Edit
Delete
|
|
7200
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7127
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773963034
|
1773963034
|
0
|
1773963033
|
1773963034
|
|
|
0
|
Edit
Delete
|
|
7201
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7128
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773963334
|
1773963334
|
0
|
1773963333
|
1773963334
|
|
|
0
|
Edit
Delete
|
|
7202
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7129
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773963634
|
1773963634
|
0
|
1773963633
|
1773963634
|
|
|
0
|
Edit
Delete
|
|
7203
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7130
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773963934
|
1773963934
|
0
|
1773963933
|
1773963934
|
|
|
0
|
Edit
Delete
|
|
7204
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7131
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773964234
|
1773964234
|
0
|
1773964233
|
1773964234
|
|
|
0
|
Edit
Delete
|
|
7205
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7132
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773964534
|
1773964534
|
0
|
1773964533
|
1773964534
|
|
|
0
|
Edit
Delete
|
|
7206
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7133
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773964834
|
1773964834
|
0
|
1773964833
|
1773964834
|
|
|
0
|
Edit
Delete
|
|
7207
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
e2e-tests.yml
|
7134
|
-2
|
91
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
2
|
20
|
1773964836
|
1773964932
|
0
|
1773964833
|
1773964935
|
|
|
0
|
Edit
Delete
|
|
7208
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7135
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773965134
|
1773965134
|
0
|
1773965133
|
1773965134
|
|
|
0
|
Edit
Delete
|
|
7209
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7136
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773965434
|
1773965434
|
0
|
1773965433
|
1773965434
|
|
|
0
|
Edit
Delete
|
|
7210
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7137
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773965734
|
1773965734
|
0
|
1773965733
|
1773965734
|
|
|
0
|
Edit
Delete
|
|
7211
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7138
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773966034
|
1773966034
|
0
|
1773966033
|
1773966034
|
|
|
0
|
Edit
Delete
|
|
7212
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7139
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773966334
|
1773966334
|
0
|
1773966333
|
1773966334
|
|
|
0
|
Edit
Delete
|
|
7213
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7140
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773966634
|
1773966634
|
0
|
1773966633
|
1773966634
|
|
|
0
|
Edit
Delete
|
|
7214
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7141
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773966934
|
1773966934
|
0
|
1773966933
|
1773966934
|
|
|
0
|
Edit
Delete
|
|
7215
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7142
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773967234
|
1773967234
|
0
|
1773967233
|
1773967234
|
|
|
0
|
Edit
Delete
|
|
7216
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7143
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773967534
|
1773967534
|
0
|
1773967533
|
1773967534
|
|
|
0
|
Edit
Delete
|
|
7217
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7144
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773967834
|
1773967834
|
0
|
1773967833
|
1773967834
|
|
|
0
|
Edit
Delete
|
|
7218
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7145
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773968134
|
1773968134
|
0
|
1773968133
|
1773968134
|
|
|
0
|
Edit
Delete
|
|
7219
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7146
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773968434
|
1773968434
|
0
|
1773968433
|
1773968434
|
|
|
0
|
Edit
Delete
|
|
7220
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7147
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773968734
|
1773968734
|
0
|
1773968733
|
1773968734
|
|
|
0
|
Edit
Delete
|
|
7221
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7148
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773969034
|
1773969034
|
0
|
1773969033
|
1773969034
|
|
|
0
|
Edit
Delete
|
|
7222
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7149
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773969334
|
1773969334
|
0
|
1773969333
|
1773969334
|
|
|
0
|
Edit
Delete
|
|
7223
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7150
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773969634
|
1773969634
|
0
|
1773969633
|
1773969634
|
|
|
0
|
Edit
Delete
|
|
7224
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7151
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773969939
|
1773969940
|
0
|
1773969937
|
1773969940
|
|
|
0
|
Edit
Delete
|
|
7225
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7152
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773970238
|
1773970238
|
0
|
1773970237
|
1773970238
|
|
|
0
|
Edit
Delete
|
|
7226
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7153
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773970538
|
1773970538
|
0
|
1773970537
|
1773970538
|
|
|
0
|
Edit
Delete
|
|
7227
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7154
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773970810
|
1773970811
|
0
|
1773970805
|
1773970811
|
|
|
0
|
Edit
Delete
|
|
7228
|
Refine AI agent menus and add pending tasks review Refine AI agent menus and add pending tasks review page...
|
6
|
5
|
health-check.yml
|
7155
|
-2
|
92
|
refs/heads/main
|
979d9c81063fbda12f1445bf80b0c0027b0fbac2
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f","after":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/9771b23ae7aaee164f15f9c4ccbdb18eb68fc71f...979d9c81063fbda12f1445bf80b0c0027b0fbac2","commits":[{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},{"id":"8e492fbd580d447f4eaefeb6287810a0ca9bffbe","message":"Implement AI autopilot canonical flows and governance updates\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8e492fbd580d447f4eaefeb6287810a0ca9bffbe","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-19T23:41:26+08:00","added":["backend/prisma/migrations/20260319120000_autopilot_v1_canonical/migration.sql","backend/prisma/migrations/20260319134500_autopilot_hardening/migration.sql","backend/src/modules/ai-agents/ai-autopilot.controller.ts","backend/src/modules/ai-agents/ai-autopilot.docs.ts","backend/src/modules/ai-agents/ai-autopilot.routes.ts","backend/src/modules/ai-agents/ai-autopilot.schema.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-executor-registry.service.ts","backend/tests/api/ai-autopilot.test.ts","backend/tests/helpers/ensure-ai-autopilot-runtime-schema.ts","e2e/agents/playwright-agent/inspectors/ad-campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/campaign-inspector.ts","e2e/agents/playwright-agent/inspectors/social-interaction-inspector.ts","e2e/agents/playwright-agent/inspectors/social-publish-inspector.ts","e2e/tests/auth/ai-autopilot-smoke.spec.ts","frontend/src/api/modules/ai-autopilot.ts","frontend/src/views/ai-agents/__tests__/ai-autopilot.smoke.test.ts","frontend/src/views/ai-agents/autopilot/AutoGrowth.vue","frontend/src/views/ai-agents/autopilot/AutoOps.vue","frontend/src/views/ai-agents/autopilot/Flows.vue","frontend/src/views/ai-agents/autopilot/Overview.vue","frontend/src/views/ai-agents/autopilot/RunDetail.vue","frontend/src/views/ai-agents/autopilot/Runs.vue"],"removed":[],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","backend/package.json","backend/prisma/schema.prisma","backend/scripts/audit-docs-single-source.ts","backend/src/modules/ai-agents/ai-agent.docs.ts","backend/src/modules/ai-agents/ai-agent.routes.ts","backend/src/modules/ai-agents/ai-agent.schema.ts","backend/src/modules/ai-agents/ai-agent.types.ts","backend/src/shared/constants/events.ts","backend/src/shared/openapi/all-docs.ts","backend/src/shared/process-core/default-workflow-definitions.ts","backend/src/shared/state-machines/machines/ai-task.machine.ts","backend/src/shared/state-machines/utils/transitions.ts","backend/tests/api/ai-agents-conversations.test.ts","backend/tests/api/ai-agents-im-queue.test.ts","backend/tests/api/ai-agents-workflows-training.test.ts","e2e/.auth/admin.json","e2e/agents/playwright-agent/index.ts","e2e/agents/playwright-agent/inspectors/index.ts","e2e/agents/playwright-agent/reporters/backend-reporter.ts","e2e/package.json","e2e/playwright-report/index.html","e2e/scripts/verify-view-governance.mjs","e2e/test-results/results.json","e2e/tests/navigation/requested-menu-whitelist.ts","e2e/tests/ui-modules/02-view-governance.spec.ts","e2e/tests/ui-modules/view-governance.generated.json","frontend/package.json","frontend/src/api/index.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/types/ai-agent.ts","package.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","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","shared/src/types/ai-agents.ts"]}],"total_commits":0,"head_commit":{"id":"979d9c81063fbda12f1445bf80b0c0027b0fbac2","message":"Refine AI agent menus and add pending tasks review page\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/979d9c81063fbda12f1445bf80b0c0027b0fbac2","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-20T00:05:17+08:00","added":[],"removed":[],"modified":["e2e/tests/navigation/requested-menu-whitelist.ts","frontend/src/router/index.ts","frontend/src/router/menu.ts","frontend/src/views/ai-agents/TasksPending.vue"]},"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":1904980,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-19T22:10:19+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1773971139
|
1773971139
|
0
|
1773971138
|
1773971139
|
|
|
0
|
Edit
Delete
|
|
6300
|
修改测试111
|
2
|
2
|
hello-world.yaml
|
44
|
1
|
0
|
refs/heads/main
|
252852cf322c50ffd2a193223a08e9e4b567bf78
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"930eca9fb53f66e8bd5c691867946eecb08d648e","after":"252852cf322c50ffd2a193223a08e9e4b567bf78","compare_url":"https://gitea.g-hi.com/juhai/testpc/compare/930eca9fb53f66e8bd5c691867946eecb08d648e...252852cf322c50ffd2a193223a08e9e4b567bf78","commits":[{"id":"252852cf322c50ffd2a193223a08e9e4b567bf78","message":"修改测试111\n","url":"https://gitea.g-hi.com/juhai/testpc/commit/252852cf322c50ffd2a193223a08e9e4b567bf78","author":{"name":"zhangjunnan","email":"121158035@qq.com","username":"zhangjunnan"},"committer":{"name":"zhangjunnan","email":"121158035@qq.com","username":"zhangjunnan"},"verification":null,"timestamp":"2026-03-17T11:13:35+08:00","added":[],"removed":[],"modified":["pc/application/controllers/Bill.php"]}],"total_commits":0,"head_commit":{"id":"252852cf322c50ffd2a193223a08e9e4b567bf78","message":"修改测试111\n","url":"https://gitea.g-hi.com/juhai/testpc/commit/252852cf322c50ffd2a193223a08e9e4b567bf78","author":{"name":"zhangjunnan","email":"121158035@qq.com","username":"zhangjunnan"},"committer":{"name":"zhangjunnan","email":"121158035@qq.com","username":"zhangjunnan"},"verification":null,"timestamp":"2026-03-17T11:13:35+08:00","added":[],"removed":[],"modified":["pc/application/controllers/Bill.php"]},"repository":{"id":2,"owner":{"id":2,"login":"juhai","login_name":"","source_id":0,"full_name":"","email":"","avatar_url":"https://gitea.g-hi.com/avatars/8edeea9a6ada1d3d48db9231e9328f15","html_url":"https://gitea.g-hi.com/juhai","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T15:37:00+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"private","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"juhai"},"name":"testpc","full_name":"juhai/testpc","description":"pc测试环境","empty":false,"private":false,"fork":false,"template":false,"parent":null,"mirror":false,"size":17798,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/juhai/testpc/languages","html_url":"https://gitea.g-hi.com/juhai/testpc","url":"https://gitea.g-hi.com/api/v1/repos/juhai/testpc","link":"","ssh_url":"git@gitea.g-hi.com:juhai/testpc.git","clone_url":"https://gitea.g-hi.com/juhai/testpc.git","original_url":"","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"open_issues_count":8,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-06T13:52:11+08:00","updated_at":"2026-03-17T10:24:14+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":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,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":true,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","repo_transfer":null},"pusher":{"id":1,"login":"zhangjunnan","login_name":"","source_id":0,"full_name":"","email":"zhangjunnan@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/db7dcb12d6f370df9341167b55583f8b","html_url":"https://gitea.g-hi.com/zhangjunnan","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T15:36:25+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"zhangjunnan"},"sender":{"id":1,"login":"zhangjunnan","login_name":"","source_id":0,"full_name":"","email":"zhangjunnan@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/db7dcb12d6f370df9341167b55583f8b","html_url":"https://gitea.g-hi.com/zhangjunnan","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T15:36:25+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"zhangjunnan"}}...
|
push
|
1
|
3
|
1773717226
|
1773717229
|
0
|
1773717225
|
1773717229
|
NULL
|
|
0
|
Edit
Delete
|
|
7649
|
feat: 四线并行治理 — Record清零+v-permission扩展+Redis缓存+as feat: 四线并行治理 — Record清零+v-permission扩展+Redis缓存+as any清理...
|
6
|
5
|
e2e-tests.yml
|
7574
|
5
|
0
|
refs/heads/main
|
dbf34b08bbb60650d15b0c55262dbfe8d0a3a655
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"8c39619c9cdb0d888d10942bf50533c8238021df","after":"dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/8c39619c9cdb0d888d10942bf50533c8238021df...dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","commits":[{"id":"dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","message":"feat: 四线并行治理 — Record清零+v-permission扩展+Redis缓存+as any清理\n\n## Line 1: Record\u003cstring,any\u003e 全前端清零 (637→0)\n- 262 个文件批量替换 Record\u003cstring, any\u003e → Record\u003cstring, unknown\u003e\n- 覆盖 API 模块层 137 文件 + 视图/stores/composables 100 文件\n\n## Line 2: v-permission 全面覆盖 (53→104 个视图文件)\n- 新增 51 个视图的 v-permission 指令\n- 覆盖: products/departments/contract-templates/spare-parts/pm/\n stage-knowledge/email-templates/approval-templates/ad-campaigns/\n groupbuy-*/community-*/alliance-*/livestream-*/social-*/content-*/\n geo-*/segments/lead-pools/bom/expense-claims/ap-ledger 等\n\n## Line 3: Redis 缓存扩展 (5→14 个缓存点, 10 个模块)\n- 新建 cache-utils.ts 统一缓存工具层 (withCache + invalidation)\n- 高优: tenant-configs(300s) + roles(1800s) + products(600s) +\n departments(600s) + sla(1800s) + contract-templates(600s)\n- 中优: price-books(600s) + notifications(300s)\n- 写后失效: 所有 create/update/delete 自动清除缓存\n\n## Line 4: as any 清理 (25处)\n- campaign-analytics.controller: 8→0 (精确查询类型)\n- social-interactions.service: 9→0 (Prisma UncheckedCreateInput)\n- store-staff.service: 6→0 (prismaModel 代理)\n- scheduled-jobs.consumer: 2→0 (直接使用已有类型)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T10:14:13+08:00","added":["backend/src/shared/constants/events/common.ts","backend/src/shared/constants/events/finance.ts","backend/src/shared/constants/events/hr.ts","backend/src/shared/constants/events/im.ts","backend/src/shared/constants/events/index.ts","backend/src/shared/constants/events/knowledge.ts","backend/src/shared/constants/events/lifecycle.ts","backend/src/shared/constants/events/marketing.ts","backend/src/shared/constants/events/sales.ts","backend/src/shared/constants/events/service.ts","backend/src/shared/constants/events/store.ts","backend/src/shared/constants/events/supply_chain.ts","backend/src/shared/constants/events/system.ts","backend/src/shared/services/list-cache.service.ts","backend/src/shared/utils/cache-utils.ts"],"removed":[],"modified":["backend/src/consumers/attribution.consumer.ts","backend/src/consumers/campaign-effectiveness.consumer.ts","backend/src/consumers/marketing-workflow-executor.consumer.ts","backend/src/consumers/scheduled-jobs.consumer.ts","backend/src/modules/ai-agents/services/knowledge-vector-enhanced.service.ts","backend/src/modules/alliance-settlements/alliance-settlement.service.test.ts","backend/src/modules/campaign-analytics/campaign-analytics.controller.ts","backend/src/modules/contract-templates/contract-template.service.ts","backend/src/modules/contracts/contract.controller.ts","backend/src/modules/contracts/contract.routes.ts","backend/src/modules/contracts/contract.service.ts","backend/src/modules/customers/customer.service.ts","backend/src/modules/departments/department.service.test.ts","backend/src/modules/departments/department.service.ts","backend/src/modules/leads/lead-ai-scoring.service.ts","backend/src/modules/leads/lead-sla.service.ts","backend/src/modules/leads/lead-smart-assignment.service.ts","backend/src/modules/leads/lead.service.ts","backend/src/modules/livestream-interactions/livestream-realtime.service.ts","backend/src/modules/marketing-automation/workflow-trigger.service.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.controller.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.routes.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.service.ts","backend/src/modules/notifications/notification.service.ts","backend/src/modules/opportunities/opportunity.service.ts","backend/src/modules/orders/order.service.ts","backend/src/modules/payments/payment.service.test.ts","backend/src/modules/price-books/price-book.service.ts","backend/src/modules/products/services/product.service.ts","backend/src/modules/quotes/quote.service.ts","backend/src/modules/roles/role.service.ts","backend/src/modules/segments/segment.service.ts","backend/src/modules/sla/sla.service.ts","backend/src/modules/social-interactions/social-interactions.service.ts","backend/src/modules/store-staff/store-staff.service.ts","backend/src/modules/tenant-configs/tenant-config.service.ts","backend/src/modules/tickets/ticket.service.ts","backend/src/shared/constants/events.ts","backend/src/shared/services/partition-maintenance.service.ts","backend/src/shared/state-machines/machines/contract.machine.ts","backend/src/shared/state-machines/machines/order.machine.ts","backend/src/shared/state-machines/types.ts","backend/src/shared/state-machines/utils/transitions/sales.transitions.ts","backend/src/shared/utils/biz-code.ts","frontend/src/api/adapters.ts","frontend/src/api/im-binding.ts","frontend/src/api/modules/ad-accounts.ts","frontend/src/api/modules/ad-audiences.ts","frontend/src/api/modules/ad-creatives.ts","frontend/src/api/modules/ad-placement.ts","frontend/src/api/modules/ad-reports.ts","frontend/src/api/modules/agent-group.ts","frontend/src/api/modules/ai-agent.ts","frontend/src/api/modules/alliance-analytics.ts","frontend/src/api/modules/alliance-merchants.ts","frontend/src/api/modules/alliance-products.ts","frontend/src/api/modules/alliance-promotions.ts","frontend/src/api/modules/alliance-referrals.ts","frontend/src/api/modules/analytics.ts","frontend/src/api/modules/approvals.ts","frontend/src/api/modules/assets.ts","frontend/src/api/modules/attribution.ts","frontend/src/api/modules/audit-logs.ts","frontend/src/api/modules/campaign-drafts.ts","frontend/src/api/modules/campaign-library.ts","frontend/src/api/modules/campaign-targets.ts","frontend/src/api/modules/campaign-tools.ts","frontend/src/api/modules/campaign-use-case-templates.ts","frontend/src/api/modules/campaign-wizard.ts","frontend/src/api/modules/campaigns.ts","frontend/src/api/modules/cohort-analysis.ts","frontend/src/api/modules/commissions.ts","frontend/src/api/modules/community-activities.ts","frontend/src/api/modules/community-analytics.ts","frontend/src/api/modules/community-bots.ts","frontend/src/api/modules/community-groups.ts","frontend/src/api/modules/community-levels.ts","frontend/src/api/modules/community-members.ts","frontend/src/api/modules/community-messages.ts","frontend/src/api/modules/community-points.ts","frontend/src/api/modules/consumer-behavior-analytics.ts","frontend/src/api/modules/content-categories.ts","frontend/src/api/modules/content-copyright.ts","frontend/src/api/modules/content-creation.ts","frontend/src/api/modules/content-distribution.ts","frontend/src/api/modules/content-library.ts","frontend/src/api/modules/content-templates.ts","frontend/src/api/modules/contract-templates.ts","frontend/src/api/modules/cpq.ts","frontend/src/api/modules/cross-domain-funnel.ts","frontend/src/api/modules/customer-analytics.ts","frontend/src/api/modules/customer-health.ts","frontend/src/api/modules/customer-journey.ts","frontend/src/api/modules/customer-ltv.ts","frontend/src/api/modules/customer-marketing.ts","frontend/src/api/modules/customer-segmentation.ts","frontend/src/api/modules/devices.ts","frontend/src/api/modules/dictionaries.ts","frontend/src/api/modules/dimension-transform.ts","frontend/src/api/modules/email-marketing.ts","frontend/src/api/modules/email-templates.ts","frontend/src/api/modules/event-logs.ts","frontend/src/api/modules/events.ts","frontend/src/api/modules/expense.ts","frontend/src/api/modules/financial-reports.ts","frontend/src/api/modules/fulfillment.ts","frontend/src/api/modules/geo-fences.ts","frontend/src/api/modules/geo-pois.ts","frontend/src/api/modules/groupbuy-analytics.ts","frontend/src/api/modules/groupbuy-campaigns.ts","frontend/src/api/modules/groupbuy-platforms.ts","frontend/src/api/modules/groupbuy-pricing.ts","frontend/src/api/modules/groupbuy-products.ts","frontend/src/api/modules/groupbuy-settlements.ts","frontend/src/api/modules/hr-benefits.ts","frontend/src/api/modules/hr-payroll.ts","frontend/src/api/modules/im-channels.ts","frontend/src/api/modules/im.ts","frontend/src/api/modules/integration-services.ts","frontend/src/api/modules/intent-analyzer.ts","frontend/src/api/modules/journey-orchestration.ts","frontend/src/api/modules/knowledge-candidates.ts","frontend/src/api/modules/knowledge-capture.ts","frontend/src/api/modules/landing-pages.ts","frontend/src/api/modules/lead-scoring-ai.ts","frontend/src/api/modules/livestream-groupbuy-conversion.ts","frontend/src/api/modules/livestream-groupbuy.ts","frontend/src/api/modules/livestream-interactions.ts","frontend/src/api/modules/livestream-rooms.ts","frontend/src/api/modules/livestream-schedules.ts","frontend/src/api/modules/livestream.ts","frontend/src/api/modules/location-assessments.ts","frontend/src/api/modules/login-logs.ts","frontend/src/api/modules/maintenance.ts","frontend/src/api/modules/marketing-automation.ts","frontend/src/api/modules/marketing-calendar.ts","frontend/src/api/modules/marketing-chatbot.ts","frontend/src/api/modules/marketing-content.ts","frontend/src/api/modules/marketing-forms.ts","frontend/src/api/modules/marketing-matrix.ts","frontend/src/api/modules/marketing-north-star.ts","frontend/src/api/modules/marketing-timeslots.ts","frontend/src/api/modules/marketing.ts","frontend/src/api/modules/omnichannel-dashboard.ts","frontend/src/api/modules/omnichannel-data-hub.ts","frontend/src/api/modules/omnichannel-touchpoints.ts","frontend/src/api/modules/operation-logs.ts","frontend/src/api/modules/opportunities.ts","frontend/src/api/modules/predictive-analytics.ts","frontend/src/api/modules/process-designer.ts","frontend/src/api/modules/process.ts","frontend/src/api/modules/products.ts","frontend/src/api/modules/realtime-trigger.ts","frontend/src/api/modules/reports.ts","frontend/src/api/modules/resource-requests.ts","frontend/src/api/modules/revenue.ts","frontend/src/api/modules/rfm-analysis.ts","frontend/src/api/modules/rma.ts","frontend/src/api/modules/satisfaction.ts","frontend/src/api/modules/scheduled-jobs.ts","frontend/src/api/modules/search.ts","frontend/src/api/modules/segments.ts","frontend/src/api/modules/service-monitor.ts","frontend/src/api/modules/sms-marketing.ts","frontend/src/api/modules/social-accounts.ts","frontend/src/api/modules/social-auto-replies.ts","frontend/src/api/modules/social-competitors.ts","frontend/src/api/modules/social-hot-topics.ts","frontend/src/api/modules/social-interactions.ts","frontend/src/api/modules/spare-parts.ts","frontend/src/api/modules/store-performance.ts","frontend/src/api/modules/stores.ts","frontend/src/api/modules/supplier-management.ts","frontend/src/api/modules/swot-analyses.ts","frontend/src/api/modules/system-events.ts","frontend/src/api/modules/ticket-workflows.ts","frontend/src/api/modules/tickets.ts","frontend/src/api/modules/tob-toc-gateway.ts","frontend/src/api/modules/unified-campaign.ts","frontend/src/api/modules/web-tracking.ts","frontend/src/api/modules/workflow-generator.ts","frontend/src/api/response-normalizer.ts","frontend/src/components/business/ActivityTimeline.vue","frontend/src/components/business/EventStreamPanel.vue","frontend/src/components/business/IMPanel.vue","frontend/src/components/common/DataTable.vue","frontend/src/components/common/ResponsiveDataTable.vue","frontend/src/components/mobile/MobileFilter.vue","frontend/src/components/responsive/ResponsiveFilterBar.vue","frontend/src/types/ai-agent.ts","frontend/src/utils/echarts.ts","frontend/src/views/__tests__/standard-crud-smoke.helper.ts","frontend/src/views/abm-marketing/Index.vue","frontend/src/views/acquisition/Index.vue","frontend/src/views/ad-accounts/Form.vue","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-analytics/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-placement/ABTests.vue","frontend/src/views/ad-placement/AudiencePacks.vue","frontend/src/views/ad-placement/BudgetAlerts.vue","frontend/src/views/ad-placement/Creatives.vue","frontend/src/views/ad-placement/Index.vue","frontend/src/views/ad-placement/RoiAnalysis.vue","frontend/src/views/alliance-agreements/Index.vue","frontend/src/views/alliance-campaigns/Index.vue","frontend/src/views/alliance-coupons/Index.vue","frontend/src/views/alliance-packages/Index.vue","frontend/src/views/alliance-partners/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/analytics/roi/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Form.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Form.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/attribution/Index.vue","frontend/src/views/auth/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-analytics/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-targets/Index.vue","frontend/src/views/campaign-tools/Index.vue","frontend/src/views/campaigns/Detail.vue","frontend/src/views/campaigns/Index.vue","frontend/src/views/campaigns/components/ToolConfigDialog.vue","frontend/src/views/campaigns/wizard/Step3Tools.vue","frontend/src/views/campaigns/wizard/Step4BasicInfo.vue","frontend/src/views/campaigns/wizard/Step7Review.vue","frontend/src/views/campaigns/wizard/components/ToolConfigForms.vue","frontend/src/views/channel-analytics/Index.vue","frontend/src/views/community-bots/Index.vue","frontend/src/views/community-fission/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-materials/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/community-tasks/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Detail.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/contracts/Form.vue","frontend/src/views/conversion-paths/Index.vue","frontend/src/views/cost-allocation/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Detail.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Form.vue","frontend/src/views/departments/Detail.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Alerts.vue","frontend/src/views/devices/Form.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/geo-pois/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-inventory/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-platforms/Index.vue","frontend/src/views/groupbuy-pricing/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-promotions/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/hr/attendance/components/AttendanceTab.vue","frontend/src/views/hr/attendance/components/HolidaysTab.vue","frontend/src/views/hr/attendance/components/LeavesTab.vue","frontend/src/views/hr/attendance/components/OvertimeTab.vue","frontend/src/views/hr/attendance/components/ShiftsTab.vue","frontend/src/views/hr/training/components/CertificatesTab.vue","frontend/src/views/hr/training/components/CompetencyTab.vue","frontend/src/views/hr/training/components/CoursesTab.vue","frontend/src/views/hr/training/components/ExamsTab.vue","frontend/src/views/hr/training/components/PlansTab.vue","frontend/src/views/hr/training/components/SessionsTab.vue","frontend/src/views/inventory/Counts.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/inventory/Snapshots.vue","frontend/src/views/journey-orchestration/Form.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/lead-assignment/Form.vue","frontend/src/views/lead-pools/Form.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/lead-qualification/Form.vue","frontend/src/views/lead-qualification/Index.vue","frontend/src/views/leads/Form.vue","frontend/src/views/leads/Index.vue","frontend/src/views/livestream-gifts/Index.vue","frontend/src/views/livestream-groupbuy-conversion/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/maintenance/Index.vue","frontend/src/views/maintenance/TaskDetail.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Detail.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/marketing/budget-alerts/Index.vue","frontend/src/views/mdm/Index.vue","frontend/src/views/member-benefits/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/menus/Index.vue","frontend/src/views/notification-configs/Index.vue","frontend/src/views/notifications/Index.vue","frontend/src/views/omnichannel-dashboard/Index.vue","frontend/src/views/omnichannel-data-hub/Index.vue","frontend/src/views/opportunities/Form.vue","frontend/src/views/orders/Form.vue","frontend/src/views/orders/Index.vue","frontend/src/views/org-chart/Index.vue","frontend/src/views/partners/Detail.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/predictive-analytics/Form.vue","frontend/src/views/process-designer/Designer.vue","frontend/src/views/product-analytics/Index.vue","frontend/src/views/products/Index.vue","frontend/src/views/qr-codes/Index.vue","frontend/src/views/quotes/Form.vue","frontend/src/views/realtime-trigger/Form.vue","frontend/src/views/renewal-tasks/Index.vue","frontend/src/views/rfm-analysis/Detail.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/scheduled-jobs/Index.vue","frontend/src/views/segments/Index.vue","frontend/src/views/service-monitor/Index.vue","frontend/src/views/settings/Index.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-matrix/Index.vue","frontend/src/views/social-posts/Detail.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/spare-parts/components/TransactionHistory.vue","frontend/src/views/stage-knowledge/Index.vue","frontend/src/views/store-configs/Index.vue","frontend/src/views/stores/Detail.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/suppliers/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/system-monitor/Index.vue","frontend/src/views/system/AuditLogs.vue","frontend/src/views/tenant-configs/Index.vue","frontend/src/views/tickets/Form.vue","frontend/src/views/tickets/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/utm-tracking/Form.vue","frontend/src/views/video-publishing/Index.vue","frontend/src/views/web-tracking/Index.vue"]}],"total_commits":0,"head_commit":{"id":"dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","message":"feat: 四线并行治理 — Record清零+v-permission扩展+Redis缓存+as any清理\n\n## Line 1: Record\u003cstring,any\u003e 全前端清零 (637→0)\n- 262 个文件批量替换 Record\u003cstring, any\u003e → Record\u003cstring, unknown\u003e\n- 覆盖 API 模块层 137 文件 + 视图/stores/composables 100 文件\n\n## Line 2: v-permission 全面覆盖 (53→104 个视图文件)\n- 新增 51 个视图的 v-permission 指令\n- 覆盖: products/departments/contract-templates/spare-parts/pm/\n stage-knowledge/email-templates/approval-templates/ad-campaigns/\n groupbuy-*/community-*/alliance-*/livestream-*/social-*/content-*/\n geo-*/segments/lead-pools/bom/expense-claims/ap-ledger 等\n\n## Line 3: Redis 缓存扩展 (5→14 个缓存点, 10 个模块)\n- 新建 cache-utils.ts 统一缓存工具层 (withCache + invalidation)\n- 高优: tenant-configs(300s) + roles(1800s) + products(600s) +\n departments(600s) + sla(1800s) + contract-templates(600s)\n- 中优: price-books(600s) + notifications(300s)\n- 写后失效: 所有 create/update/delete 自动清除缓存\n\n## Line 4: as any 清理 (25处)\n- campaign-analytics.controller: 8→0 (精确查询类型)\n- social-interactions.service: 9→0 (Prisma UncheckedCreateInput)\n- store-staff.service: 6→0 (prismaModel 代理)\n- scheduled-jobs.consumer: 2→0 (直接使用已有类型)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T10:14:13+08:00","added":["backend/src/shared/constants/events/common.ts","backend/src/shared/constants/events/finance.ts","backend/src/shared/constants/events/hr.ts","backend/src/shared/constants/events/im.ts","backend/src/shared/constants/events/index.ts","backend/src/shared/constants/events/knowledge.ts","backend/src/shared/constants/events/lifecycle.ts","backend/src/shared/constants/events/marketing.ts","backend/src/shared/constants/events/sales.ts","backend/src/shared/constants/events/service.ts","backend/src/shared/constants/events/store.ts","backend/src/shared/constants/events/supply_chain.ts","backend/src/shared/constants/events/system.ts","backend/src/shared/services/list-cache.service.ts","backend/src/shared/utils/cache-utils.ts"],"removed":[],"modified":["backend/src/consumers/attribution.consumer.ts","backend/src/consumers/campaign-effectiveness.consumer.ts","backend/src/consumers/marketing-workflow-executor.consumer.ts","backend/src/consumers/scheduled-jobs.consumer.ts","backend/src/modules/ai-agents/services/knowledge-vector-enhanced.service.ts","backend/src/modules/alliance-settlements/alliance-settlement.service.test.ts","backend/src/modules/campaign-analytics/campaign-analytics.controller.ts","backend/src/modules/contract-templates/contract-template.service.ts","backend/src/modules/contracts/contract.controller.ts","backend/src/modules/contracts/contract.routes.ts","backend/src/modules/contracts/contract.service.ts","backend/src/modules/customers/customer.service.ts","backend/src/modules/departments/department.service.test.ts","backend/src/modules/departments/department.service.ts","backend/src/modules/leads/lead-ai-scoring.service.ts","backend/src/modules/leads/lead-sla.service.ts","backend/src/modules/leads/lead-smart-assignment.service.ts","backend/src/modules/leads/lead.service.ts","backend/src/modules/livestream-interactions/livestream-realtime.service.ts","backend/src/modules/marketing-automation/workflow-trigger.service.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.controller.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.routes.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.service.ts","backend/src/modules/notifications/notification.service.ts","backend/src/modules/opportunities/opportunity.service.ts","backend/src/modules/orders/order.service.ts","backend/src/modules/payments/payment.service.test.ts","backend/src/modules/price-books/price-book.service.ts","backend/src/modules/products/services/product.service.ts","backend/src/modules/quotes/quote.service.ts","backend/src/modules/roles/role.service.ts","backend/src/modules/segments/segment.service.ts","backend/src/modules/sla/sla.service.ts","backend/src/modules/social-interactions/social-interactions.service.ts","backend/src/modules/store-staff/store-staff.service.ts","backend/src/modules/tenant-configs/tenant-config.service.ts","backend/src/modules/tickets/ticket.service.ts","backend/src/shared/constants/events.ts","backend/src/shared/services/partition-maintenance.service.ts","backend/src/shared/state-machines/machines/contract.machine.ts","backend/src/shared/state-machines/machines/order.machine.ts","backend/src/shared/state-machines/types.ts","backend/src/shared/state-machines/utils/transitions/sales.transitions.ts","backend/src/shared/utils/biz-code.ts","frontend/src/api/adapters.ts","frontend/src/api/im-binding.ts","frontend/src/api/modules/ad-accounts.ts","frontend/src/api/modules/ad-audiences.ts","frontend/src/api/modules/ad-creatives.ts","frontend/src/api/modules/ad-placement.ts","frontend/src/api/modules/ad-reports.ts","frontend/src/api/modules/agent-group.ts","frontend/src/api/modules/ai-agent.ts","frontend/src/api/modules/alliance-analytics.ts","frontend/src/api/modules/alliance-merchants.ts","frontend/src/api/modules/alliance-products.ts","frontend/src/api/modules/alliance-promotions.ts","frontend/src/api/modules/alliance-referrals.ts","frontend/src/api/modules/analytics.ts","frontend/src/api/modules/approvals.ts","frontend/src/api/modules/assets.ts","frontend/src/api/modules/attribution.ts","frontend/src/api/modules/audit-logs.ts","frontend/src/api/modules/campaign-drafts.ts","frontend/src/api/modules/campaign-library.ts","frontend/src/api/modules/campaign-targets.ts","frontend/src/api/modules/campaign-tools.ts","frontend/src/api/modules/campaign-use-case-templates.ts","frontend/src/api/modules/campaign-wizard.ts","frontend/src/api/modules/campaigns.ts","frontend/src/api/modules/cohort-analysis.ts","frontend/src/api/modules/commissions.ts","frontend/src/api/modules/community-activities.ts","frontend/src/api/modules/community-analytics.ts","frontend/src/api/modules/community-bots.ts","frontend/src/api/modules/community-groups.ts","frontend/src/api/modules/community-levels.ts","frontend/src/api/modules/community-members.ts","frontend/src/api/modules/community-messages.ts","frontend/src/api/modules/community-points.ts","frontend/src/api/modules/consumer-behavior-analytics.ts","frontend/src/api/modules/content-categories.ts","frontend/src/api/modules/content-copyright.ts","frontend/src/api/modules/content-creation.ts","frontend/src/api/modules/content-distribution.ts","frontend/src/api/modules/content-library.ts","frontend/src/api/modules/content-templates.ts","frontend/src/api/modules/contract-templates.ts","frontend/src/api/modules/cpq.ts","frontend/src/api/modules/cross-domain-funnel.ts","frontend/src/api/modules/customer-analytics.ts","frontend/src/api/modules/customer-health.ts","frontend/src/api/modules/customer-journey.ts","frontend/src/api/modules/customer-ltv.ts","frontend/src/api/modules/customer-marketing.ts","frontend/src/api/modules/customer-segmentation.ts","frontend/src/api/modules/devices.ts","frontend/src/api/modules/dictionaries.ts","frontend/src/api/modules/dimension-transform.ts","frontend/src/api/modules/email-marketing.ts","frontend/src/api/modules/email-templates.ts","frontend/src/api/modules/event-logs.ts","frontend/src/api/modules/events.ts","frontend/src/api/modules/expense.ts","frontend/src/api/modules/financial-reports.ts","frontend/src/api/modules/fulfillment.ts","frontend/src/api/modules/geo-fences.ts","frontend/src/api/modules/geo-pois.ts","frontend/src/api/modules/groupbuy-analytics.ts","frontend/src/api/modules/groupbuy-campaigns.ts","frontend/src/api/modules/groupbuy-platforms.ts","frontend/src/api/modules/groupbuy-pricing.ts","frontend/src/api/modules/groupbuy-products.ts","frontend/src/api/modules/groupbuy-settlements.ts","frontend/src/api/modules/hr-benefits.ts","frontend/src/api/modules/hr-payroll.ts","frontend/src/api/modules/im-channels.ts","frontend/src/api/modules/im.ts","frontend/src/api/modules/integration-services.ts","frontend/src/api/modules/intent-analyzer.ts","frontend/src/api/modules/journey-orchestration.ts","frontend/src/api/modules/knowledge-candidates.ts","frontend/src/api/modules/knowledge-capture.ts","frontend/src/api/modules/landing-pages.ts","frontend/src/api/modules/lead-scoring-ai.ts","frontend/src/api/modules/livestream-groupbuy-conversion.ts","frontend/src/api/modules/livestream-groupbuy.ts","frontend/src/api/modules/livestream-interactions.ts","frontend/src/api/modules/livestream-rooms.ts","frontend/src/api/modules/livestream-schedules.ts","frontend/src/api/modules/livestream.ts","frontend/src/api/modules/location-assessments.ts","frontend/src/api/modules/login-logs.ts","frontend/src/api/modules/maintenance.ts","frontend/src/api/modules/marketing-automation.ts","frontend/src/api/modules/marketing-calendar.ts","frontend/src/api/modules/marketing-chatbot.ts","frontend/src/api/modules/marketing-content.ts","frontend/src/api/modules/marketing-forms.ts","frontend/src/api/modules/marketing-matrix.ts","frontend/src/api/modules/marketing-north-star.ts","frontend/src/api/modules/marketing-timeslots.ts","frontend/src/api/modules/marketing.ts","frontend/src/api/modules/omnichannel-dashboard.ts","frontend/src/api/modules/omnichannel-data-hub.ts","frontend/src/api/modules/omnichannel-touchpoints.ts","frontend/src/api/modules/operation-logs.ts","frontend/src/api/modules/opportunities.ts","frontend/src/api/modules/predictive-analytics.ts","frontend/src/api/modules/process-designer.ts","frontend/src/api/modules/process.ts","frontend/src/api/modules/products.ts","frontend/src/api/modules/realtime-trigger.ts","frontend/src/api/modules/reports.ts","frontend/src/api/modules/resource-requests.ts","frontend/src/api/modules/revenue.ts","frontend/src/api/modules/rfm-analysis.ts","frontend/src/api/modules/rma.ts","frontend/src/api/modules/satisfaction.ts","frontend/src/api/modules/scheduled-jobs.ts","frontend/src/api/modules/search.ts","frontend/src/api/modules/segments.ts","frontend/src/api/modules/service-monitor.ts","frontend/src/api/modules/sms-marketing.ts","frontend/src/api/modules/social-accounts.ts","frontend/src/api/modules/social-auto-replies.ts","frontend/src/api/modules/social-competitors.ts","frontend/src/api/modules/social-hot-topics.ts","frontend/src/api/modules/social-interactions.ts","frontend/src/api/modules/spare-parts.ts","frontend/src/api/modules/store-performance.ts","frontend/src/api/modules/stores.ts","frontend/src/api/modules/supplier-management.ts","frontend/src/api/modules/swot-analyses.ts","frontend/src/api/modules/system-events.ts","frontend/src/api/modules/ticket-workflows.ts","frontend/src/api/modules/tickets.ts","frontend/src/api/modules/tob-toc-gateway.ts","frontend/src/api/modules/unified-campaign.ts","frontend/src/api/modules/web-tracking.ts","frontend/src/api/modules/workflow-generator.ts","frontend/src/api/response-normalizer.ts","frontend/src/components/business/ActivityTimeline.vue","frontend/src/components/business/EventStreamPanel.vue","frontend/src/components/business/IMPanel.vue","frontend/src/components/common/DataTable.vue","frontend/src/components/common/ResponsiveDataTable.vue","frontend/src/components/mobile/MobileFilter.vue","frontend/src/components/responsive/ResponsiveFilterBar.vue","frontend/src/types/ai-agent.ts","frontend/src/utils/echarts.ts","frontend/src/views/__tests__/standard-crud-smoke.helper.ts","frontend/src/views/abm-marketing/Index.vue","frontend/src/views/acquisition/Index.vue","frontend/src/views/ad-accounts/Form.vue","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-analytics/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-placement/ABTests.vue","frontend/src/views/ad-placement/AudiencePacks.vue","frontend/src/views/ad-placement/BudgetAlerts.vue","frontend/src/views/ad-placement/Creatives.vue","frontend/src/views/ad-placement/Index.vue","frontend/src/views/ad-placement/RoiAnalysis.vue","frontend/src/views/alliance-agreements/Index.vue","frontend/src/views/alliance-campaigns/Index.vue","frontend/src/views/alliance-coupons/Index.vue","frontend/src/views/alliance-packages/Index.vue","frontend/src/views/alliance-partners/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/analytics/roi/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Form.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Form.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/attribution/Index.vue","frontend/src/views/auth/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-analytics/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-targets/Index.vue","frontend/src/views/campaign-tools/Index.vue","frontend/src/views/campaigns/Detail.vue","frontend/src/views/campaigns/Index.vue","frontend/src/views/campaigns/components/ToolConfigDialog.vue","frontend/src/views/campaigns/wizard/Step3Tools.vue","frontend/src/views/campaigns/wizard/Step4BasicInfo.vue","frontend/src/views/campaigns/wizard/Step7Review.vue","frontend/src/views/campaigns/wizard/components/ToolConfigForms.vue","frontend/src/views/channel-analytics/Index.vue","frontend/src/views/community-bots/Index.vue","frontend/src/views/community-fission/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-materials/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/community-tasks/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Detail.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/contracts/Form.vue","frontend/src/views/conversion-paths/Index.vue","frontend/src/views/cost-allocation/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Detail.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Form.vue","frontend/src/views/departments/Detail.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Alerts.vue","frontend/src/views/devices/Form.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/geo-pois/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-inventory/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-platforms/Index.vue","frontend/src/views/groupbuy-pricing/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-promotions/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/hr/attendance/components/AttendanceTab.vue","frontend/src/views/hr/attendance/components/HolidaysTab.vue","frontend/src/views/hr/attendance/components/LeavesTab.vue","frontend/src/views/hr/attendance/components/OvertimeTab.vue","frontend/src/views/hr/attendance/components/ShiftsTab.vue","frontend/src/views/hr/training/components/CertificatesTab.vue","frontend/src/views/hr/training/components/CompetencyTab.vue","frontend/src/views/hr/training/components/CoursesTab.vue","frontend/src/views/hr/training/components/ExamsTab.vue","frontend/src/views/hr/training/components/PlansTab.vue","frontend/src/views/hr/training/components/SessionsTab.vue","frontend/src/views/inventory/Counts.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/inventory/Snapshots.vue","frontend/src/views/journey-orchestration/Form.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/lead-assignment/Form.vue","frontend/src/views/lead-pools/Form.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/lead-qualification/Form.vue","frontend/src/views/lead-qualification/Index.vue","frontend/src/views/leads/Form.vue","frontend/src/views/leads/Index.vue","frontend/src/views/livestream-gifts/Index.vue","frontend/src/views/livestream-groupbuy-conversion/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/maintenance/Index.vue","frontend/src/views/maintenance/TaskDetail.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Detail.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/marketing/budget-alerts/Index.vue","frontend/src/views/mdm/Index.vue","frontend/src/views/member-benefits/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/menus/Index.vue","frontend/src/views/notification-configs/Index.vue","frontend/src/views/notifications/Index.vue","frontend/src/views/omnichannel-dashboard/Index.vue","frontend/src/views/omnichannel-data-hub/Index.vue","frontend/src/views/opportunities/Form.vue","frontend/src/views/orders/Form.vue","frontend/src/views/orders/Index.vue","frontend/src/views/org-chart/Index.vue","frontend/src/views/partners/Detail.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/predictive-analytics/Form.vue","frontend/src/views/process-designer/Designer.vue","frontend/src/views/product-analytics/Index.vue","frontend/src/views/products/Index.vue","frontend/src/views/qr-codes/Index.vue","frontend/src/views/quotes/Form.vue","frontend/src/views/realtime-trigger/Form.vue","frontend/src/views/renewal-tasks/Index.vue","frontend/src/views/rfm-analysis/Detail.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/scheduled-jobs/Index.vue","frontend/src/views/segments/Index.vue","frontend/src/views/service-monitor/Index.vue","frontend/src/views/settings/Index.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-matrix/Index.vue","frontend/src/views/social-posts/Detail.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/spare-parts/components/TransactionHistory.vue","frontend/src/views/stage-knowledge/Index.vue","frontend/src/views/store-configs/Index.vue","frontend/src/views/stores/Detail.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/suppliers/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/system-monitor/Index.vue","frontend/src/views/system/AuditLogs.vue","frontend/src/views/tenant-configs/Index.vue","frontend/src/views/tickets/Form.vue","frontend/src/views/tickets/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/utm-tracking/Form.vue","frontend/src/views/video-publishing/Index.vue","frontend/src/views/web-tracking/Index.vue"]},"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":1956552,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:45:16+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1774318462
|
1774319005
|
0
|
1774318460
|
1774319045
|
|
|
0
|
Edit
Delete
|
|
7650
|
feat: 四线并行治理 — Record清零+v-permission扩展+Redis缓存+as feat: 四线并行治理 — Record清零+v-permission扩展+Redis缓存+as any清理...
|
6
|
5
|
test-pipeline.yml
|
7575
|
5
|
0
|
refs/heads/main
|
dbf34b08bbb60650d15b0c55262dbfe8d0a3a655
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"8c39619c9cdb0d888d10942bf50533c8238021df","after":"dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/8c39619c9cdb0d888d10942bf50533c8238021df...dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","commits":[{"id":"dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","message":"feat: 四线并行治理 — Record清零+v-permission扩展+Redis缓存+as any清理\n\n## Line 1: Record\u003cstring,any\u003e 全前端清零 (637→0)\n- 262 个文件批量替换 Record\u003cstring, any\u003e → Record\u003cstring, unknown\u003e\n- 覆盖 API 模块层 137 文件 + 视图/stores/composables 100 文件\n\n## Line 2: v-permission 全面覆盖 (53→104 个视图文件)\n- 新增 51 个视图的 v-permission 指令\n- 覆盖: products/departments/contract-templates/spare-parts/pm/\n stage-knowledge/email-templates/approval-templates/ad-campaigns/\n groupbuy-*/community-*/alliance-*/livestream-*/social-*/content-*/\n geo-*/segments/lead-pools/bom/expense-claims/ap-ledger 等\n\n## Line 3: Redis 缓存扩展 (5→14 个缓存点, 10 个模块)\n- 新建 cache-utils.ts 统一缓存工具层 (withCache + invalidation)\n- 高优: tenant-configs(300s) + roles(1800s) + products(600s) +\n departments(600s) + sla(1800s) + contract-templates(600s)\n- 中优: price-books(600s) + notifications(300s)\n- 写后失效: 所有 create/update/delete 自动清除缓存\n\n## Line 4: as any 清理 (25处)\n- campaign-analytics.controller: 8→0 (精确查询类型)\n- social-interactions.service: 9→0 (Prisma UncheckedCreateInput)\n- store-staff.service: 6→0 (prismaModel 代理)\n- scheduled-jobs.consumer: 2→0 (直接使用已有类型)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T10:14:13+08:00","added":["backend/src/shared/constants/events/common.ts","backend/src/shared/constants/events/finance.ts","backend/src/shared/constants/events/hr.ts","backend/src/shared/constants/events/im.ts","backend/src/shared/constants/events/index.ts","backend/src/shared/constants/events/knowledge.ts","backend/src/shared/constants/events/lifecycle.ts","backend/src/shared/constants/events/marketing.ts","backend/src/shared/constants/events/sales.ts","backend/src/shared/constants/events/service.ts","backend/src/shared/constants/events/store.ts","backend/src/shared/constants/events/supply_chain.ts","backend/src/shared/constants/events/system.ts","backend/src/shared/services/list-cache.service.ts","backend/src/shared/utils/cache-utils.ts"],"removed":[],"modified":["backend/src/consumers/attribution.consumer.ts","backend/src/consumers/campaign-effectiveness.consumer.ts","backend/src/consumers/marketing-workflow-executor.consumer.ts","backend/src/consumers/scheduled-jobs.consumer.ts","backend/src/modules/ai-agents/services/knowledge-vector-enhanced.service.ts","backend/src/modules/alliance-settlements/alliance-settlement.service.test.ts","backend/src/modules/campaign-analytics/campaign-analytics.controller.ts","backend/src/modules/contract-templates/contract-template.service.ts","backend/src/modules/contracts/contract.controller.ts","backend/src/modules/contracts/contract.routes.ts","backend/src/modules/contracts/contract.service.ts","backend/src/modules/customers/customer.service.ts","backend/src/modules/departments/department.service.test.ts","backend/src/modules/departments/department.service.ts","backend/src/modules/leads/lead-ai-scoring.service.ts","backend/src/modules/leads/lead-sla.service.ts","backend/src/modules/leads/lead-smart-assignment.service.ts","backend/src/modules/leads/lead.service.ts","backend/src/modules/livestream-interactions/livestream-realtime.service.ts","backend/src/modules/marketing-automation/workflow-trigger.service.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.controller.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.routes.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.service.ts","backend/src/modules/notifications/notification.service.ts","backend/src/modules/opportunities/opportunity.service.ts","backend/src/modules/orders/order.service.ts","backend/src/modules/payments/payment.service.test.ts","backend/src/modules/price-books/price-book.service.ts","backend/src/modules/products/services/product.service.ts","backend/src/modules/quotes/quote.service.ts","backend/src/modules/roles/role.service.ts","backend/src/modules/segments/segment.service.ts","backend/src/modules/sla/sla.service.ts","backend/src/modules/social-interactions/social-interactions.service.ts","backend/src/modules/store-staff/store-staff.service.ts","backend/src/modules/tenant-configs/tenant-config.service.ts","backend/src/modules/tickets/ticket.service.ts","backend/src/shared/constants/events.ts","backend/src/shared/services/partition-maintenance.service.ts","backend/src/shared/state-machines/machines/contract.machine.ts","backend/src/shared/state-machines/machines/order.machine.ts","backend/src/shared/state-machines/types.ts","backend/src/shared/state-machines/utils/transitions/sales.transitions.ts","backend/src/shared/utils/biz-code.ts","frontend/src/api/adapters.ts","frontend/src/api/im-binding.ts","frontend/src/api/modules/ad-accounts.ts","frontend/src/api/modules/ad-audiences.ts","frontend/src/api/modules/ad-creatives.ts","frontend/src/api/modules/ad-placement.ts","frontend/src/api/modules/ad-reports.ts","frontend/src/api/modules/agent-group.ts","frontend/src/api/modules/ai-agent.ts","frontend/src/api/modules/alliance-analytics.ts","frontend/src/api/modules/alliance-merchants.ts","frontend/src/api/modules/alliance-products.ts","frontend/src/api/modules/alliance-promotions.ts","frontend/src/api/modules/alliance-referrals.ts","frontend/src/api/modules/analytics.ts","frontend/src/api/modules/approvals.ts","frontend/src/api/modules/assets.ts","frontend/src/api/modules/attribution.ts","frontend/src/api/modules/audit-logs.ts","frontend/src/api/modules/campaign-drafts.ts","frontend/src/api/modules/campaign-library.ts","frontend/src/api/modules/campaign-targets.ts","frontend/src/api/modules/campaign-tools.ts","frontend/src/api/modules/campaign-use-case-templates.ts","frontend/src/api/modules/campaign-wizard.ts","frontend/src/api/modules/campaigns.ts","frontend/src/api/modules/cohort-analysis.ts","frontend/src/api/modules/commissions.ts","frontend/src/api/modules/community-activities.ts","frontend/src/api/modules/community-analytics.ts","frontend/src/api/modules/community-bots.ts","frontend/src/api/modules/community-groups.ts","frontend/src/api/modules/community-levels.ts","frontend/src/api/modules/community-members.ts","frontend/src/api/modules/community-messages.ts","frontend/src/api/modules/community-points.ts","frontend/src/api/modules/consumer-behavior-analytics.ts","frontend/src/api/modules/content-categories.ts","frontend/src/api/modules/content-copyright.ts","frontend/src/api/modules/content-creation.ts","frontend/src/api/modules/content-distribution.ts","frontend/src/api/modules/content-library.ts","frontend/src/api/modules/content-templates.ts","frontend/src/api/modules/contract-templates.ts","frontend/src/api/modules/cpq.ts","frontend/src/api/modules/cross-domain-funnel.ts","frontend/src/api/modules/customer-analytics.ts","frontend/src/api/modules/customer-health.ts","frontend/src/api/modules/customer-journey.ts","frontend/src/api/modules/customer-ltv.ts","frontend/src/api/modules/customer-marketing.ts","frontend/src/api/modules/customer-segmentation.ts","frontend/src/api/modules/devices.ts","frontend/src/api/modules/dictionaries.ts","frontend/src/api/modules/dimension-transform.ts","frontend/src/api/modules/email-marketing.ts","frontend/src/api/modules/email-templates.ts","frontend/src/api/modules/event-logs.ts","frontend/src/api/modules/events.ts","frontend/src/api/modules/expense.ts","frontend/src/api/modules/financial-reports.ts","frontend/src/api/modules/fulfillment.ts","frontend/src/api/modules/geo-fences.ts","frontend/src/api/modules/geo-pois.ts","frontend/src/api/modules/groupbuy-analytics.ts","frontend/src/api/modules/groupbuy-campaigns.ts","frontend/src/api/modules/groupbuy-platforms.ts","frontend/src/api/modules/groupbuy-pricing.ts","frontend/src/api/modules/groupbuy-products.ts","frontend/src/api/modules/groupbuy-settlements.ts","frontend/src/api/modules/hr-benefits.ts","frontend/src/api/modules/hr-payroll.ts","frontend/src/api/modules/im-channels.ts","frontend/src/api/modules/im.ts","frontend/src/api/modules/integration-services.ts","frontend/src/api/modules/intent-analyzer.ts","frontend/src/api/modules/journey-orchestration.ts","frontend/src/api/modules/knowledge-candidates.ts","frontend/src/api/modules/knowledge-capture.ts","frontend/src/api/modules/landing-pages.ts","frontend/src/api/modules/lead-scoring-ai.ts","frontend/src/api/modules/livestream-groupbuy-conversion.ts","frontend/src/api/modules/livestream-groupbuy.ts","frontend/src/api/modules/livestream-interactions.ts","frontend/src/api/modules/livestream-rooms.ts","frontend/src/api/modules/livestream-schedules.ts","frontend/src/api/modules/livestream.ts","frontend/src/api/modules/location-assessments.ts","frontend/src/api/modules/login-logs.ts","frontend/src/api/modules/maintenance.ts","frontend/src/api/modules/marketing-automation.ts","frontend/src/api/modules/marketing-calendar.ts","frontend/src/api/modules/marketing-chatbot.ts","frontend/src/api/modules/marketing-content.ts","frontend/src/api/modules/marketing-forms.ts","frontend/src/api/modules/marketing-matrix.ts","frontend/src/api/modules/marketing-north-star.ts","frontend/src/api/modules/marketing-timeslots.ts","frontend/src/api/modules/marketing.ts","frontend/src/api/modules/omnichannel-dashboard.ts","frontend/src/api/modules/omnichannel-data-hub.ts","frontend/src/api/modules/omnichannel-touchpoints.ts","frontend/src/api/modules/operation-logs.ts","frontend/src/api/modules/opportunities.ts","frontend/src/api/modules/predictive-analytics.ts","frontend/src/api/modules/process-designer.ts","frontend/src/api/modules/process.ts","frontend/src/api/modules/products.ts","frontend/src/api/modules/realtime-trigger.ts","frontend/src/api/modules/reports.ts","frontend/src/api/modules/resource-requests.ts","frontend/src/api/modules/revenue.ts","frontend/src/api/modules/rfm-analysis.ts","frontend/src/api/modules/rma.ts","frontend/src/api/modules/satisfaction.ts","frontend/src/api/modules/scheduled-jobs.ts","frontend/src/api/modules/search.ts","frontend/src/api/modules/segments.ts","frontend/src/api/modules/service-monitor.ts","frontend/src/api/modules/sms-marketing.ts","frontend/src/api/modules/social-accounts.ts","frontend/src/api/modules/social-auto-replies.ts","frontend/src/api/modules/social-competitors.ts","frontend/src/api/modules/social-hot-topics.ts","frontend/src/api/modules/social-interactions.ts","frontend/src/api/modules/spare-parts.ts","frontend/src/api/modules/store-performance.ts","frontend/src/api/modules/stores.ts","frontend/src/api/modules/supplier-management.ts","frontend/src/api/modules/swot-analyses.ts","frontend/src/api/modules/system-events.ts","frontend/src/api/modules/ticket-workflows.ts","frontend/src/api/modules/tickets.ts","frontend/src/api/modules/tob-toc-gateway.ts","frontend/src/api/modules/unified-campaign.ts","frontend/src/api/modules/web-tracking.ts","frontend/src/api/modules/workflow-generator.ts","frontend/src/api/response-normalizer.ts","frontend/src/components/business/ActivityTimeline.vue","frontend/src/components/business/EventStreamPanel.vue","frontend/src/components/business/IMPanel.vue","frontend/src/components/common/DataTable.vue","frontend/src/components/common/ResponsiveDataTable.vue","frontend/src/components/mobile/MobileFilter.vue","frontend/src/components/responsive/ResponsiveFilterBar.vue","frontend/src/types/ai-agent.ts","frontend/src/utils/echarts.ts","frontend/src/views/__tests__/standard-crud-smoke.helper.ts","frontend/src/views/abm-marketing/Index.vue","frontend/src/views/acquisition/Index.vue","frontend/src/views/ad-accounts/Form.vue","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-analytics/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-placement/ABTests.vue","frontend/src/views/ad-placement/AudiencePacks.vue","frontend/src/views/ad-placement/BudgetAlerts.vue","frontend/src/views/ad-placement/Creatives.vue","frontend/src/views/ad-placement/Index.vue","frontend/src/views/ad-placement/RoiAnalysis.vue","frontend/src/views/alliance-agreements/Index.vue","frontend/src/views/alliance-campaigns/Index.vue","frontend/src/views/alliance-coupons/Index.vue","frontend/src/views/alliance-packages/Index.vue","frontend/src/views/alliance-partners/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/analytics/roi/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Form.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Form.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/attribution/Index.vue","frontend/src/views/auth/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-analytics/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-targets/Index.vue","frontend/src/views/campaign-tools/Index.vue","frontend/src/views/campaigns/Detail.vue","frontend/src/views/campaigns/Index.vue","frontend/src/views/campaigns/components/ToolConfigDialog.vue","frontend/src/views/campaigns/wizard/Step3Tools.vue","frontend/src/views/campaigns/wizard/Step4BasicInfo.vue","frontend/src/views/campaigns/wizard/Step7Review.vue","frontend/src/views/campaigns/wizard/components/ToolConfigForms.vue","frontend/src/views/channel-analytics/Index.vue","frontend/src/views/community-bots/Index.vue","frontend/src/views/community-fission/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-materials/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/community-tasks/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Detail.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/contracts/Form.vue","frontend/src/views/conversion-paths/Index.vue","frontend/src/views/cost-allocation/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Detail.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Form.vue","frontend/src/views/departments/Detail.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Alerts.vue","frontend/src/views/devices/Form.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/geo-pois/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-inventory/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-platforms/Index.vue","frontend/src/views/groupbuy-pricing/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-promotions/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/hr/attendance/components/AttendanceTab.vue","frontend/src/views/hr/attendance/components/HolidaysTab.vue","frontend/src/views/hr/attendance/components/LeavesTab.vue","frontend/src/views/hr/attendance/components/OvertimeTab.vue","frontend/src/views/hr/attendance/components/ShiftsTab.vue","frontend/src/views/hr/training/components/CertificatesTab.vue","frontend/src/views/hr/training/components/CompetencyTab.vue","frontend/src/views/hr/training/components/CoursesTab.vue","frontend/src/views/hr/training/components/ExamsTab.vue","frontend/src/views/hr/training/components/PlansTab.vue","frontend/src/views/hr/training/components/SessionsTab.vue","frontend/src/views/inventory/Counts.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/inventory/Snapshots.vue","frontend/src/views/journey-orchestration/Form.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/lead-assignment/Form.vue","frontend/src/views/lead-pools/Form.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/lead-qualification/Form.vue","frontend/src/views/lead-qualification/Index.vue","frontend/src/views/leads/Form.vue","frontend/src/views/leads/Index.vue","frontend/src/views/livestream-gifts/Index.vue","frontend/src/views/livestream-groupbuy-conversion/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/maintenance/Index.vue","frontend/src/views/maintenance/TaskDetail.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Detail.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/marketing/budget-alerts/Index.vue","frontend/src/views/mdm/Index.vue","frontend/src/views/member-benefits/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/menus/Index.vue","frontend/src/views/notification-configs/Index.vue","frontend/src/views/notifications/Index.vue","frontend/src/views/omnichannel-dashboard/Index.vue","frontend/src/views/omnichannel-data-hub/Index.vue","frontend/src/views/opportunities/Form.vue","frontend/src/views/orders/Form.vue","frontend/src/views/orders/Index.vue","frontend/src/views/org-chart/Index.vue","frontend/src/views/partners/Detail.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/predictive-analytics/Form.vue","frontend/src/views/process-designer/Designer.vue","frontend/src/views/product-analytics/Index.vue","frontend/src/views/products/Index.vue","frontend/src/views/qr-codes/Index.vue","frontend/src/views/quotes/Form.vue","frontend/src/views/realtime-trigger/Form.vue","frontend/src/views/renewal-tasks/Index.vue","frontend/src/views/rfm-analysis/Detail.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/scheduled-jobs/Index.vue","frontend/src/views/segments/Index.vue","frontend/src/views/service-monitor/Index.vue","frontend/src/views/settings/Index.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-matrix/Index.vue","frontend/src/views/social-posts/Detail.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/spare-parts/components/TransactionHistory.vue","frontend/src/views/stage-knowledge/Index.vue","frontend/src/views/store-configs/Index.vue","frontend/src/views/stores/Detail.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/suppliers/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/system-monitor/Index.vue","frontend/src/views/system/AuditLogs.vue","frontend/src/views/tenant-configs/Index.vue","frontend/src/views/tickets/Form.vue","frontend/src/views/tickets/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/utm-tracking/Form.vue","frontend/src/views/video-publishing/Index.vue","frontend/src/views/web-tracking/Index.vue"]}],"total_commits":0,"head_commit":{"id":"dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","message":"feat: 四线并行治理 — Record清零+v-permission扩展+Redis缓存+as any清理\n\n## Line 1: Record\u003cstring,any\u003e 全前端清零 (637→0)\n- 262 个文件批量替换 Record\u003cstring, any\u003e → Record\u003cstring, unknown\u003e\n- 覆盖 API 模块层 137 文件 + 视图/stores/composables 100 文件\n\n## Line 2: v-permission 全面覆盖 (53→104 个视图文件)\n- 新增 51 个视图的 v-permission 指令\n- 覆盖: products/departments/contract-templates/spare-parts/pm/\n stage-knowledge/email-templates/approval-templates/ad-campaigns/\n groupbuy-*/community-*/alliance-*/livestream-*/social-*/content-*/\n geo-*/segments/lead-pools/bom/expense-claims/ap-ledger 等\n\n## Line 3: Redis 缓存扩展 (5→14 个缓存点, 10 个模块)\n- 新建 cache-utils.ts 统一缓存工具层 (withCache + invalidation)\n- 高优: tenant-configs(300s) + roles(1800s) + products(600s) +\n departments(600s) + sla(1800s) + contract-templates(600s)\n- 中优: price-books(600s) + notifications(300s)\n- 写后失效: 所有 create/update/delete 自动清除缓存\n\n## Line 4: as any 清理 (25处)\n- campaign-analytics.controller: 8→0 (精确查询类型)\n- social-interactions.service: 9→0 (Prisma UncheckedCreateInput)\n- store-staff.service: 6→0 (prismaModel 代理)\n- scheduled-jobs.consumer: 2→0 (直接使用已有类型)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T10:14:13+08:00","added":["backend/src/shared/constants/events/common.ts","backend/src/shared/constants/events/finance.ts","backend/src/shared/constants/events/hr.ts","backend/src/shared/constants/events/im.ts","backend/src/shared/constants/events/index.ts","backend/src/shared/constants/events/knowledge.ts","backend/src/shared/constants/events/lifecycle.ts","backend/src/shared/constants/events/marketing.ts","backend/src/shared/constants/events/sales.ts","backend/src/shared/constants/events/service.ts","backend/src/shared/constants/events/store.ts","backend/src/shared/constants/events/supply_chain.ts","backend/src/shared/constants/events/system.ts","backend/src/shared/services/list-cache.service.ts","backend/src/shared/utils/cache-utils.ts"],"removed":[],"modified":["backend/src/consumers/attribution.consumer.ts","backend/src/consumers/campaign-effectiveness.consumer.ts","backend/src/consumers/marketing-workflow-executor.consumer.ts","backend/src/consumers/scheduled-jobs.consumer.ts","backend/src/modules/ai-agents/services/knowledge-vector-enhanced.service.ts","backend/src/modules/alliance-settlements/alliance-settlement.service.test.ts","backend/src/modules/campaign-analytics/campaign-analytics.controller.ts","backend/src/modules/contract-templates/contract-template.service.ts","backend/src/modules/contracts/contract.controller.ts","backend/src/modules/contracts/contract.routes.ts","backend/src/modules/contracts/contract.service.ts","backend/src/modules/customers/customer.service.ts","backend/src/modules/departments/department.service.test.ts","backend/src/modules/departments/department.service.ts","backend/src/modules/leads/lead-ai-scoring.service.ts","backend/src/modules/leads/lead-sla.service.ts","backend/src/modules/leads/lead-smart-assignment.service.ts","backend/src/modules/leads/lead.service.ts","backend/src/modules/livestream-interactions/livestream-realtime.service.ts","backend/src/modules/marketing-automation/workflow-trigger.service.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.controller.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.routes.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.service.ts","backend/src/modules/notifications/notification.service.ts","backend/src/modules/opportunities/opportunity.service.ts","backend/src/modules/orders/order.service.ts","backend/src/modules/payments/payment.service.test.ts","backend/src/modules/price-books/price-book.service.ts","backend/src/modules/products/services/product.service.ts","backend/src/modules/quotes/quote.service.ts","backend/src/modules/roles/role.service.ts","backend/src/modules/segments/segment.service.ts","backend/src/modules/sla/sla.service.ts","backend/src/modules/social-interactions/social-interactions.service.ts","backend/src/modules/store-staff/store-staff.service.ts","backend/src/modules/tenant-configs/tenant-config.service.ts","backend/src/modules/tickets/ticket.service.ts","backend/src/shared/constants/events.ts","backend/src/shared/services/partition-maintenance.service.ts","backend/src/shared/state-machines/machines/contract.machine.ts","backend/src/shared/state-machines/machines/order.machine.ts","backend/src/shared/state-machines/types.ts","backend/src/shared/state-machines/utils/transitions/sales.transitions.ts","backend/src/shared/utils/biz-code.ts","frontend/src/api/adapters.ts","frontend/src/api/im-binding.ts","frontend/src/api/modules/ad-accounts.ts","frontend/src/api/modules/ad-audiences.ts","frontend/src/api/modules/ad-creatives.ts","frontend/src/api/modules/ad-placement.ts","frontend/src/api/modules/ad-reports.ts","frontend/src/api/modules/agent-group.ts","frontend/src/api/modules/ai-agent.ts","frontend/src/api/modules/alliance-analytics.ts","frontend/src/api/modules/alliance-merchants.ts","frontend/src/api/modules/alliance-products.ts","frontend/src/api/modules/alliance-promotions.ts","frontend/src/api/modules/alliance-referrals.ts","frontend/src/api/modules/analytics.ts","frontend/src/api/modules/approvals.ts","frontend/src/api/modules/assets.ts","frontend/src/api/modules/attribution.ts","frontend/src/api/modules/audit-logs.ts","frontend/src/api/modules/campaign-drafts.ts","frontend/src/api/modules/campaign-library.ts","frontend/src/api/modules/campaign-targets.ts","frontend/src/api/modules/campaign-tools.ts","frontend/src/api/modules/campaign-use-case-templates.ts","frontend/src/api/modules/campaign-wizard.ts","frontend/src/api/modules/campaigns.ts","frontend/src/api/modules/cohort-analysis.ts","frontend/src/api/modules/commissions.ts","frontend/src/api/modules/community-activities.ts","frontend/src/api/modules/community-analytics.ts","frontend/src/api/modules/community-bots.ts","frontend/src/api/modules/community-groups.ts","frontend/src/api/modules/community-levels.ts","frontend/src/api/modules/community-members.ts","frontend/src/api/modules/community-messages.ts","frontend/src/api/modules/community-points.ts","frontend/src/api/modules/consumer-behavior-analytics.ts","frontend/src/api/modules/content-categories.ts","frontend/src/api/modules/content-copyright.ts","frontend/src/api/modules/content-creation.ts","frontend/src/api/modules/content-distribution.ts","frontend/src/api/modules/content-library.ts","frontend/src/api/modules/content-templates.ts","frontend/src/api/modules/contract-templates.ts","frontend/src/api/modules/cpq.ts","frontend/src/api/modules/cross-domain-funnel.ts","frontend/src/api/modules/customer-analytics.ts","frontend/src/api/modules/customer-health.ts","frontend/src/api/modules/customer-journey.ts","frontend/src/api/modules/customer-ltv.ts","frontend/src/api/modules/customer-marketing.ts","frontend/src/api/modules/customer-segmentation.ts","frontend/src/api/modules/devices.ts","frontend/src/api/modules/dictionaries.ts","frontend/src/api/modules/dimension-transform.ts","frontend/src/api/modules/email-marketing.ts","frontend/src/api/modules/email-templates.ts","frontend/src/api/modules/event-logs.ts","frontend/src/api/modules/events.ts","frontend/src/api/modules/expense.ts","frontend/src/api/modules/financial-reports.ts","frontend/src/api/modules/fulfillment.ts","frontend/src/api/modules/geo-fences.ts","frontend/src/api/modules/geo-pois.ts","frontend/src/api/modules/groupbuy-analytics.ts","frontend/src/api/modules/groupbuy-campaigns.ts","frontend/src/api/modules/groupbuy-platforms.ts","frontend/src/api/modules/groupbuy-pricing.ts","frontend/src/api/modules/groupbuy-products.ts","frontend/src/api/modules/groupbuy-settlements.ts","frontend/src/api/modules/hr-benefits.ts","frontend/src/api/modules/hr-payroll.ts","frontend/src/api/modules/im-channels.ts","frontend/src/api/modules/im.ts","frontend/src/api/modules/integration-services.ts","frontend/src/api/modules/intent-analyzer.ts","frontend/src/api/modules/journey-orchestration.ts","frontend/src/api/modules/knowledge-candidates.ts","frontend/src/api/modules/knowledge-capture.ts","frontend/src/api/modules/landing-pages.ts","frontend/src/api/modules/lead-scoring-ai.ts","frontend/src/api/modules/livestream-groupbuy-conversion.ts","frontend/src/api/modules/livestream-groupbuy.ts","frontend/src/api/modules/livestream-interactions.ts","frontend/src/api/modules/livestream-rooms.ts","frontend/src/api/modules/livestream-schedules.ts","frontend/src/api/modules/livestream.ts","frontend/src/api/modules/location-assessments.ts","frontend/src/api/modules/login-logs.ts","frontend/src/api/modules/maintenance.ts","frontend/src/api/modules/marketing-automation.ts","frontend/src/api/modules/marketing-calendar.ts","frontend/src/api/modules/marketing-chatbot.ts","frontend/src/api/modules/marketing-content.ts","frontend/src/api/modules/marketing-forms.ts","frontend/src/api/modules/marketing-matrix.ts","frontend/src/api/modules/marketing-north-star.ts","frontend/src/api/modules/marketing-timeslots.ts","frontend/src/api/modules/marketing.ts","frontend/src/api/modules/omnichannel-dashboard.ts","frontend/src/api/modules/omnichannel-data-hub.ts","frontend/src/api/modules/omnichannel-touchpoints.ts","frontend/src/api/modules/operation-logs.ts","frontend/src/api/modules/opportunities.ts","frontend/src/api/modules/predictive-analytics.ts","frontend/src/api/modules/process-designer.ts","frontend/src/api/modules/process.ts","frontend/src/api/modules/products.ts","frontend/src/api/modules/realtime-trigger.ts","frontend/src/api/modules/reports.ts","frontend/src/api/modules/resource-requests.ts","frontend/src/api/modules/revenue.ts","frontend/src/api/modules/rfm-analysis.ts","frontend/src/api/modules/rma.ts","frontend/src/api/modules/satisfaction.ts","frontend/src/api/modules/scheduled-jobs.ts","frontend/src/api/modules/search.ts","frontend/src/api/modules/segments.ts","frontend/src/api/modules/service-monitor.ts","frontend/src/api/modules/sms-marketing.ts","frontend/src/api/modules/social-accounts.ts","frontend/src/api/modules/social-auto-replies.ts","frontend/src/api/modules/social-competitors.ts","frontend/src/api/modules/social-hot-topics.ts","frontend/src/api/modules/social-interactions.ts","frontend/src/api/modules/spare-parts.ts","frontend/src/api/modules/store-performance.ts","frontend/src/api/modules/stores.ts","frontend/src/api/modules/supplier-management.ts","frontend/src/api/modules/swot-analyses.ts","frontend/src/api/modules/system-events.ts","frontend/src/api/modules/ticket-workflows.ts","frontend/src/api/modules/tickets.ts","frontend/src/api/modules/tob-toc-gateway.ts","frontend/src/api/modules/unified-campaign.ts","frontend/src/api/modules/web-tracking.ts","frontend/src/api/modules/workflow-generator.ts","frontend/src/api/response-normalizer.ts","frontend/src/components/business/ActivityTimeline.vue","frontend/src/components/business/EventStreamPanel.vue","frontend/src/components/business/IMPanel.vue","frontend/src/components/common/DataTable.vue","frontend/src/components/common/ResponsiveDataTable.vue","frontend/src/components/mobile/MobileFilter.vue","frontend/src/components/responsive/ResponsiveFilterBar.vue","frontend/src/types/ai-agent.ts","frontend/src/utils/echarts.ts","frontend/src/views/__tests__/standard-crud-smoke.helper.ts","frontend/src/views/abm-marketing/Index.vue","frontend/src/views/acquisition/Index.vue","frontend/src/views/ad-accounts/Form.vue","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-analytics/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-placement/ABTests.vue","frontend/src/views/ad-placement/AudiencePacks.vue","frontend/src/views/ad-placement/BudgetAlerts.vue","frontend/src/views/ad-placement/Creatives.vue","frontend/src/views/ad-placement/Index.vue","frontend/src/views/ad-placement/RoiAnalysis.vue","frontend/src/views/alliance-agreements/Index.vue","frontend/src/views/alliance-campaigns/Index.vue","frontend/src/views/alliance-coupons/Index.vue","frontend/src/views/alliance-packages/Index.vue","frontend/src/views/alliance-partners/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/analytics/roi/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Form.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Form.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/attribution/Index.vue","frontend/src/views/auth/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-analytics/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-targets/Index.vue","frontend/src/views/campaign-tools/Index.vue","frontend/src/views/campaigns/Detail.vue","frontend/src/views/campaigns/Index.vue","frontend/src/views/campaigns/components/ToolConfigDialog.vue","frontend/src/views/campaigns/wizard/Step3Tools.vue","frontend/src/views/campaigns/wizard/Step4BasicInfo.vue","frontend/src/views/campaigns/wizard/Step7Review.vue","frontend/src/views/campaigns/wizard/components/ToolConfigForms.vue","frontend/src/views/channel-analytics/Index.vue","frontend/src/views/community-bots/Index.vue","frontend/src/views/community-fission/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-materials/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/community-tasks/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Detail.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/contracts/Form.vue","frontend/src/views/conversion-paths/Index.vue","frontend/src/views/cost-allocation/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Detail.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Form.vue","frontend/src/views/departments/Detail.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Alerts.vue","frontend/src/views/devices/Form.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/geo-pois/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-inventory/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-platforms/Index.vue","frontend/src/views/groupbuy-pricing/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-promotions/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/hr/attendance/components/AttendanceTab.vue","frontend/src/views/hr/attendance/components/HolidaysTab.vue","frontend/src/views/hr/attendance/components/LeavesTab.vue","frontend/src/views/hr/attendance/components/OvertimeTab.vue","frontend/src/views/hr/attendance/components/ShiftsTab.vue","frontend/src/views/hr/training/components/CertificatesTab.vue","frontend/src/views/hr/training/components/CompetencyTab.vue","frontend/src/views/hr/training/components/CoursesTab.vue","frontend/src/views/hr/training/components/ExamsTab.vue","frontend/src/views/hr/training/components/PlansTab.vue","frontend/src/views/hr/training/components/SessionsTab.vue","frontend/src/views/inventory/Counts.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/inventory/Snapshots.vue","frontend/src/views/journey-orchestration/Form.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/lead-assignment/Form.vue","frontend/src/views/lead-pools/Form.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/lead-qualification/Form.vue","frontend/src/views/lead-qualification/Index.vue","frontend/src/views/leads/Form.vue","frontend/src/views/leads/Index.vue","frontend/src/views/livestream-gifts/Index.vue","frontend/src/views/livestream-groupbuy-conversion/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/maintenance/Index.vue","frontend/src/views/maintenance/TaskDetail.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Detail.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/marketing/budget-alerts/Index.vue","frontend/src/views/mdm/Index.vue","frontend/src/views/member-benefits/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/menus/Index.vue","frontend/src/views/notification-configs/Index.vue","frontend/src/views/notifications/Index.vue","frontend/src/views/omnichannel-dashboard/Index.vue","frontend/src/views/omnichannel-data-hub/Index.vue","frontend/src/views/opportunities/Form.vue","frontend/src/views/orders/Form.vue","frontend/src/views/orders/Index.vue","frontend/src/views/org-chart/Index.vue","frontend/src/views/partners/Detail.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/predictive-analytics/Form.vue","frontend/src/views/process-designer/Designer.vue","frontend/src/views/product-analytics/Index.vue","frontend/src/views/products/Index.vue","frontend/src/views/qr-codes/Index.vue","frontend/src/views/quotes/Form.vue","frontend/src/views/realtime-trigger/Form.vue","frontend/src/views/renewal-tasks/Index.vue","frontend/src/views/rfm-analysis/Detail.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/scheduled-jobs/Index.vue","frontend/src/views/segments/Index.vue","frontend/src/views/service-monitor/Index.vue","frontend/src/views/settings/Index.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-matrix/Index.vue","frontend/src/views/social-posts/Detail.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/spare-parts/components/TransactionHistory.vue","frontend/src/views/stage-knowledge/Index.vue","frontend/src/views/store-configs/Index.vue","frontend/src/views/stores/Detail.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/suppliers/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/system-monitor/Index.vue","frontend/src/views/system/AuditLogs.vue","frontend/src/views/tenant-configs/Index.vue","frontend/src/views/tickets/Form.vue","frontend/src/views/tickets/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/utm-tracking/Form.vue","frontend/src/views/video-publishing/Index.vue","frontend/src/views/web-tracking/Index.vue"]},"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":1956552,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:45:16+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
68
|
1774319006
|
1774319038
|
0
|
1774318460
|
1774319280
|
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
|
|
7651
|
feat: 四线并行治理 — Record清零+v-permission扩展+Redis缓存+as feat: 四线并行治理 — Record清零+v-permission扩展+Redis缓存+as any清理...
|
6
|
5
|
health-check.yml
|
7576
|
-2
|
130
|
refs/heads/main
|
dbf34b08bbb60650d15b0c55262dbfe8d0a3a655
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"8c39619c9cdb0d888d10942bf50533c8238021df","after":"dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/8c39619c9cdb0d888d10942bf50533c8238021df...dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","commits":[{"id":"dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","message":"feat: 四线并行治理 — Record清零+v-permission扩展+Redis缓存+as any清理\n\n## Line 1: Record\u003cstring,any\u003e 全前端清零 (637→0)\n- 262 个文件批量替换 Record\u003cstring, any\u003e → Record\u003cstring, unknown\u003e\n- 覆盖 API 模块层 137 文件 + 视图/stores/composables 100 文件\n\n## Line 2: v-permission 全面覆盖 (53→104 个视图文件)\n- 新增 51 个视图的 v-permission 指令\n- 覆盖: products/departments/contract-templates/spare-parts/pm/\n stage-knowledge/email-templates/approval-templates/ad-campaigns/\n groupbuy-*/community-*/alliance-*/livestream-*/social-*/content-*/\n geo-*/segments/lead-pools/bom/expense-claims/ap-ledger 等\n\n## Line 3: Redis 缓存扩展 (5→14 个缓存点, 10 个模块)\n- 新建 cache-utils.ts 统一缓存工具层 (withCache + invalidation)\n- 高优: tenant-configs(300s) + roles(1800s) + products(600s) +\n departments(600s) + sla(1800s) + contract-templates(600s)\n- 中优: price-books(600s) + notifications(300s)\n- 写后失效: 所有 create/update/delete 自动清除缓存\n\n## Line 4: as any 清理 (25处)\n- campaign-analytics.controller: 8→0 (精确查询类型)\n- social-interactions.service: 9→0 (Prisma UncheckedCreateInput)\n- store-staff.service: 6→0 (prismaModel 代理)\n- scheduled-jobs.consumer: 2→0 (直接使用已有类型)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T10:14:13+08:00","added":["backend/src/shared/constants/events/common.ts","backend/src/shared/constants/events/finance.ts","backend/src/shared/constants/events/hr.ts","backend/src/shared/constants/events/im.ts","backend/src/shared/constants/events/index.ts","backend/src/shared/constants/events/knowledge.ts","backend/src/shared/constants/events/lifecycle.ts","backend/src/shared/constants/events/marketing.ts","backend/src/shared/constants/events/sales.ts","backend/src/shared/constants/events/service.ts","backend/src/shared/constants/events/store.ts","backend/src/shared/constants/events/supply_chain.ts","backend/src/shared/constants/events/system.ts","backend/src/shared/services/list-cache.service.ts","backend/src/shared/utils/cache-utils.ts"],"removed":[],"modified":["backend/src/consumers/attribution.consumer.ts","backend/src/consumers/campaign-effectiveness.consumer.ts","backend/src/consumers/marketing-workflow-executor.consumer.ts","backend/src/consumers/scheduled-jobs.consumer.ts","backend/src/modules/ai-agents/services/knowledge-vector-enhanced.service.ts","backend/src/modules/alliance-settlements/alliance-settlement.service.test.ts","backend/src/modules/campaign-analytics/campaign-analytics.controller.ts","backend/src/modules/contract-templates/contract-template.service.ts","backend/src/modules/contracts/contract.controller.ts","backend/src/modules/contracts/contract.routes.ts","backend/src/modules/contracts/contract.service.ts","backend/src/modules/customers/customer.service.ts","backend/src/modules/departments/department.service.test.ts","backend/src/modules/departments/department.service.ts","backend/src/modules/leads/lead-ai-scoring.service.ts","backend/src/modules/leads/lead-sla.service.ts","backend/src/modules/leads/lead-smart-assignment.service.ts","backend/src/modules/leads/lead.service.ts","backend/src/modules/livestream-interactions/livestream-realtime.service.ts","backend/src/modules/marketing-automation/workflow-trigger.service.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.controller.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.routes.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.service.ts","backend/src/modules/notifications/notification.service.ts","backend/src/modules/opportunities/opportunity.service.ts","backend/src/modules/orders/order.service.ts","backend/src/modules/payments/payment.service.test.ts","backend/src/modules/price-books/price-book.service.ts","backend/src/modules/products/services/product.service.ts","backend/src/modules/quotes/quote.service.ts","backend/src/modules/roles/role.service.ts","backend/src/modules/segments/segment.service.ts","backend/src/modules/sla/sla.service.ts","backend/src/modules/social-interactions/social-interactions.service.ts","backend/src/modules/store-staff/store-staff.service.ts","backend/src/modules/tenant-configs/tenant-config.service.ts","backend/src/modules/tickets/ticket.service.ts","backend/src/shared/constants/events.ts","backend/src/shared/services/partition-maintenance.service.ts","backend/src/shared/state-machines/machines/contract.machine.ts","backend/src/shared/state-machines/machines/order.machine.ts","backend/src/shared/state-machines/types.ts","backend/src/shared/state-machines/utils/transitions/sales.transitions.ts","backend/src/shared/utils/biz-code.ts","frontend/src/api/adapters.ts","frontend/src/api/im-binding.ts","frontend/src/api/modules/ad-accounts.ts","frontend/src/api/modules/ad-audiences.ts","frontend/src/api/modules/ad-creatives.ts","frontend/src/api/modules/ad-placement.ts","frontend/src/api/modules/ad-reports.ts","frontend/src/api/modules/agent-group.ts","frontend/src/api/modules/ai-agent.ts","frontend/src/api/modules/alliance-analytics.ts","frontend/src/api/modules/alliance-merchants.ts","frontend/src/api/modules/alliance-products.ts","frontend/src/api/modules/alliance-promotions.ts","frontend/src/api/modules/alliance-referrals.ts","frontend/src/api/modules/analytics.ts","frontend/src/api/modules/approvals.ts","frontend/src/api/modules/assets.ts","frontend/src/api/modules/attribution.ts","frontend/src/api/modules/audit-logs.ts","frontend/src/api/modules/campaign-drafts.ts","frontend/src/api/modules/campaign-library.ts","frontend/src/api/modules/campaign-targets.ts","frontend/src/api/modules/campaign-tools.ts","frontend/src/api/modules/campaign-use-case-templates.ts","frontend/src/api/modules/campaign-wizard.ts","frontend/src/api/modules/campaigns.ts","frontend/src/api/modules/cohort-analysis.ts","frontend/src/api/modules/commissions.ts","frontend/src/api/modules/community-activities.ts","frontend/src/api/modules/community-analytics.ts","frontend/src/api/modules/community-bots.ts","frontend/src/api/modules/community-groups.ts","frontend/src/api/modules/community-levels.ts","frontend/src/api/modules/community-members.ts","frontend/src/api/modules/community-messages.ts","frontend/src/api/modules/community-points.ts","frontend/src/api/modules/consumer-behavior-analytics.ts","frontend/src/api/modules/content-categories.ts","frontend/src/api/modules/content-copyright.ts","frontend/src/api/modules/content-creation.ts","frontend/src/api/modules/content-distribution.ts","frontend/src/api/modules/content-library.ts","frontend/src/api/modules/content-templates.ts","frontend/src/api/modules/contract-templates.ts","frontend/src/api/modules/cpq.ts","frontend/src/api/modules/cross-domain-funnel.ts","frontend/src/api/modules/customer-analytics.ts","frontend/src/api/modules/customer-health.ts","frontend/src/api/modules/customer-journey.ts","frontend/src/api/modules/customer-ltv.ts","frontend/src/api/modules/customer-marketing.ts","frontend/src/api/modules/customer-segmentation.ts","frontend/src/api/modules/devices.ts","frontend/src/api/modules/dictionaries.ts","frontend/src/api/modules/dimension-transform.ts","frontend/src/api/modules/email-marketing.ts","frontend/src/api/modules/email-templates.ts","frontend/src/api/modules/event-logs.ts","frontend/src/api/modules/events.ts","frontend/src/api/modules/expense.ts","frontend/src/api/modules/financial-reports.ts","frontend/src/api/modules/fulfillment.ts","frontend/src/api/modules/geo-fences.ts","frontend/src/api/modules/geo-pois.ts","frontend/src/api/modules/groupbuy-analytics.ts","frontend/src/api/modules/groupbuy-campaigns.ts","frontend/src/api/modules/groupbuy-platforms.ts","frontend/src/api/modules/groupbuy-pricing.ts","frontend/src/api/modules/groupbuy-products.ts","frontend/src/api/modules/groupbuy-settlements.ts","frontend/src/api/modules/hr-benefits.ts","frontend/src/api/modules/hr-payroll.ts","frontend/src/api/modules/im-channels.ts","frontend/src/api/modules/im.ts","frontend/src/api/modules/integration-services.ts","frontend/src/api/modules/intent-analyzer.ts","frontend/src/api/modules/journey-orchestration.ts","frontend/src/api/modules/knowledge-candidates.ts","frontend/src/api/modules/knowledge-capture.ts","frontend/src/api/modules/landing-pages.ts","frontend/src/api/modules/lead-scoring-ai.ts","frontend/src/api/modules/livestream-groupbuy-conversion.ts","frontend/src/api/modules/livestream-groupbuy.ts","frontend/src/api/modules/livestream-interactions.ts","frontend/src/api/modules/livestream-rooms.ts","frontend/src/api/modules/livestream-schedules.ts","frontend/src/api/modules/livestream.ts","frontend/src/api/modules/location-assessments.ts","frontend/src/api/modules/login-logs.ts","frontend/src/api/modules/maintenance.ts","frontend/src/api/modules/marketing-automation.ts","frontend/src/api/modules/marketing-calendar.ts","frontend/src/api/modules/marketing-chatbot.ts","frontend/src/api/modules/marketing-content.ts","frontend/src/api/modules/marketing-forms.ts","frontend/src/api/modules/marketing-matrix.ts","frontend/src/api/modules/marketing-north-star.ts","frontend/src/api/modules/marketing-timeslots.ts","frontend/src/api/modules/marketing.ts","frontend/src/api/modules/omnichannel-dashboard.ts","frontend/src/api/modules/omnichannel-data-hub.ts","frontend/src/api/modules/omnichannel-touchpoints.ts","frontend/src/api/modules/operation-logs.ts","frontend/src/api/modules/opportunities.ts","frontend/src/api/modules/predictive-analytics.ts","frontend/src/api/modules/process-designer.ts","frontend/src/api/modules/process.ts","frontend/src/api/modules/products.ts","frontend/src/api/modules/realtime-trigger.ts","frontend/src/api/modules/reports.ts","frontend/src/api/modules/resource-requests.ts","frontend/src/api/modules/revenue.ts","frontend/src/api/modules/rfm-analysis.ts","frontend/src/api/modules/rma.ts","frontend/src/api/modules/satisfaction.ts","frontend/src/api/modules/scheduled-jobs.ts","frontend/src/api/modules/search.ts","frontend/src/api/modules/segments.ts","frontend/src/api/modules/service-monitor.ts","frontend/src/api/modules/sms-marketing.ts","frontend/src/api/modules/social-accounts.ts","frontend/src/api/modules/social-auto-replies.ts","frontend/src/api/modules/social-competitors.ts","frontend/src/api/modules/social-hot-topics.ts","frontend/src/api/modules/social-interactions.ts","frontend/src/api/modules/spare-parts.ts","frontend/src/api/modules/store-performance.ts","frontend/src/api/modules/stores.ts","frontend/src/api/modules/supplier-management.ts","frontend/src/api/modules/swot-analyses.ts","frontend/src/api/modules/system-events.ts","frontend/src/api/modules/ticket-workflows.ts","frontend/src/api/modules/tickets.ts","frontend/src/api/modules/tob-toc-gateway.ts","frontend/src/api/modules/unified-campaign.ts","frontend/src/api/modules/web-tracking.ts","frontend/src/api/modules/workflow-generator.ts","frontend/src/api/response-normalizer.ts","frontend/src/components/business/ActivityTimeline.vue","frontend/src/components/business/EventStreamPanel.vue","frontend/src/components/business/IMPanel.vue","frontend/src/components/common/DataTable.vue","frontend/src/components/common/ResponsiveDataTable.vue","frontend/src/components/mobile/MobileFilter.vue","frontend/src/components/responsive/ResponsiveFilterBar.vue","frontend/src/types/ai-agent.ts","frontend/src/utils/echarts.ts","frontend/src/views/__tests__/standard-crud-smoke.helper.ts","frontend/src/views/abm-marketing/Index.vue","frontend/src/views/acquisition/Index.vue","frontend/src/views/ad-accounts/Form.vue","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-analytics/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-placement/ABTests.vue","frontend/src/views/ad-placement/AudiencePacks.vue","frontend/src/views/ad-placement/BudgetAlerts.vue","frontend/src/views/ad-placement/Creatives.vue","frontend/src/views/ad-placement/Index.vue","frontend/src/views/ad-placement/RoiAnalysis.vue","frontend/src/views/alliance-agreements/Index.vue","frontend/src/views/alliance-campaigns/Index.vue","frontend/src/views/alliance-coupons/Index.vue","frontend/src/views/alliance-packages/Index.vue","frontend/src/views/alliance-partners/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/analytics/roi/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Form.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Form.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/attribution/Index.vue","frontend/src/views/auth/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-analytics/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-targets/Index.vue","frontend/src/views/campaign-tools/Index.vue","frontend/src/views/campaigns/Detail.vue","frontend/src/views/campaigns/Index.vue","frontend/src/views/campaigns/components/ToolConfigDialog.vue","frontend/src/views/campaigns/wizard/Step3Tools.vue","frontend/src/views/campaigns/wizard/Step4BasicInfo.vue","frontend/src/views/campaigns/wizard/Step7Review.vue","frontend/src/views/campaigns/wizard/components/ToolConfigForms.vue","frontend/src/views/channel-analytics/Index.vue","frontend/src/views/community-bots/Index.vue","frontend/src/views/community-fission/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-materials/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/community-tasks/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Detail.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/contracts/Form.vue","frontend/src/views/conversion-paths/Index.vue","frontend/src/views/cost-allocation/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Detail.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Form.vue","frontend/src/views/departments/Detail.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Alerts.vue","frontend/src/views/devices/Form.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/geo-pois/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-inventory/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-platforms/Index.vue","frontend/src/views/groupbuy-pricing/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-promotions/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/hr/attendance/components/AttendanceTab.vue","frontend/src/views/hr/attendance/components/HolidaysTab.vue","frontend/src/views/hr/attendance/components/LeavesTab.vue","frontend/src/views/hr/attendance/components/OvertimeTab.vue","frontend/src/views/hr/attendance/components/ShiftsTab.vue","frontend/src/views/hr/training/components/CertificatesTab.vue","frontend/src/views/hr/training/components/CompetencyTab.vue","frontend/src/views/hr/training/components/CoursesTab.vue","frontend/src/views/hr/training/components/ExamsTab.vue","frontend/src/views/hr/training/components/PlansTab.vue","frontend/src/views/hr/training/components/SessionsTab.vue","frontend/src/views/inventory/Counts.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/inventory/Snapshots.vue","frontend/src/views/journey-orchestration/Form.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/lead-assignment/Form.vue","frontend/src/views/lead-pools/Form.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/lead-qualification/Form.vue","frontend/src/views/lead-qualification/Index.vue","frontend/src/views/leads/Form.vue","frontend/src/views/leads/Index.vue","frontend/src/views/livestream-gifts/Index.vue","frontend/src/views/livestream-groupbuy-conversion/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/maintenance/Index.vue","frontend/src/views/maintenance/TaskDetail.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Detail.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/marketing/budget-alerts/Index.vue","frontend/src/views/mdm/Index.vue","frontend/src/views/member-benefits/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/menus/Index.vue","frontend/src/views/notification-configs/Index.vue","frontend/src/views/notifications/Index.vue","frontend/src/views/omnichannel-dashboard/Index.vue","frontend/src/views/omnichannel-data-hub/Index.vue","frontend/src/views/opportunities/Form.vue","frontend/src/views/orders/Form.vue","frontend/src/views/orders/Index.vue","frontend/src/views/org-chart/Index.vue","frontend/src/views/partners/Detail.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/predictive-analytics/Form.vue","frontend/src/views/process-designer/Designer.vue","frontend/src/views/product-analytics/Index.vue","frontend/src/views/products/Index.vue","frontend/src/views/qr-codes/Index.vue","frontend/src/views/quotes/Form.vue","frontend/src/views/realtime-trigger/Form.vue","frontend/src/views/renewal-tasks/Index.vue","frontend/src/views/rfm-analysis/Detail.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/scheduled-jobs/Index.vue","frontend/src/views/segments/Index.vue","frontend/src/views/service-monitor/Index.vue","frontend/src/views/settings/Index.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-matrix/Index.vue","frontend/src/views/social-posts/Detail.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/spare-parts/components/TransactionHistory.vue","frontend/src/views/stage-knowledge/Index.vue","frontend/src/views/store-configs/Index.vue","frontend/src/views/stores/Detail.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/suppliers/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/system-monitor/Index.vue","frontend/src/views/system/AuditLogs.vue","frontend/src/views/tenant-configs/Index.vue","frontend/src/views/tickets/Form.vue","frontend/src/views/tickets/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/utm-tracking/Form.vue","frontend/src/views/video-publishing/Index.vue","frontend/src/views/web-tracking/Index.vue"]}],"total_commits":0,"head_commit":{"id":"dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","message":"feat: 四线并行治理 — Record清零+v-permission扩展+Redis缓存+as any清理\n\n## Line 1: Record\u003cstring,any\u003e 全前端清零 (637→0)\n- 262 个文件批量替换 Record\u003cstring, any\u003e → Record\u003cstring, unknown\u003e\n- 覆盖 API 模块层 137 文件 + 视图/stores/composables 100 文件\n\n## Line 2: v-permission 全面覆盖 (53→104 个视图文件)\n- 新增 51 个视图的 v-permission 指令\n- 覆盖: products/departments/contract-templates/spare-parts/pm/\n stage-knowledge/email-templates/approval-templates/ad-campaigns/\n groupbuy-*/community-*/alliance-*/livestream-*/social-*/content-*/\n geo-*/segments/lead-pools/bom/expense-claims/ap-ledger 等\n\n## Line 3: Redis 缓存扩展 (5→14 个缓存点, 10 个模块)\n- 新建 cache-utils.ts 统一缓存工具层 (withCache + invalidation)\n- 高优: tenant-configs(300s) + roles(1800s) + products(600s) +\n departments(600s) + sla(1800s) + contract-templates(600s)\n- 中优: price-books(600s) + notifications(300s)\n- 写后失效: 所有 create/update/delete 自动清除缓存\n\n## Line 4: as any 清理 (25处)\n- campaign-analytics.controller: 8→0 (精确查询类型)\n- social-interactions.service: 9→0 (Prisma UncheckedCreateInput)\n- store-staff.service: 6→0 (prismaModel 代理)\n- scheduled-jobs.consumer: 2→0 (直接使用已有类型)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/dbf34b08bbb60650d15b0c55262dbfe8d0a3a655","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T10:14:13+08:00","added":["backend/src/shared/constants/events/common.ts","backend/src/shared/constants/events/finance.ts","backend/src/shared/constants/events/hr.ts","backend/src/shared/constants/events/im.ts","backend/src/shared/constants/events/index.ts","backend/src/shared/constants/events/knowledge.ts","backend/src/shared/constants/events/lifecycle.ts","backend/src/shared/constants/events/marketing.ts","backend/src/shared/constants/events/sales.ts","backend/src/shared/constants/events/service.ts","backend/src/shared/constants/events/store.ts","backend/src/shared/constants/events/supply_chain.ts","backend/src/shared/constants/events/system.ts","backend/src/shared/services/list-cache.service.ts","backend/src/shared/utils/cache-utils.ts"],"removed":[],"modified":["backend/src/consumers/attribution.consumer.ts","backend/src/consumers/campaign-effectiveness.consumer.ts","backend/src/consumers/marketing-workflow-executor.consumer.ts","backend/src/consumers/scheduled-jobs.consumer.ts","backend/src/modules/ai-agents/services/knowledge-vector-enhanced.service.ts","backend/src/modules/alliance-settlements/alliance-settlement.service.test.ts","backend/src/modules/campaign-analytics/campaign-analytics.controller.ts","backend/src/modules/contract-templates/contract-template.service.ts","backend/src/modules/contracts/contract.controller.ts","backend/src/modules/contracts/contract.routes.ts","backend/src/modules/contracts/contract.service.ts","backend/src/modules/customers/customer.service.ts","backend/src/modules/departments/department.service.test.ts","backend/src/modules/departments/department.service.ts","backend/src/modules/leads/lead-ai-scoring.service.ts","backend/src/modules/leads/lead-sla.service.ts","backend/src/modules/leads/lead-smart-assignment.service.ts","backend/src/modules/leads/lead.service.ts","backend/src/modules/livestream-interactions/livestream-realtime.service.ts","backend/src/modules/marketing-automation/workflow-trigger.service.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.controller.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.routes.ts","backend/src/modules/marketing-effectiveness/marketing-effectiveness.service.ts","backend/src/modules/notifications/notification.service.ts","backend/src/modules/opportunities/opportunity.service.ts","backend/src/modules/orders/order.service.ts","backend/src/modules/payments/payment.service.test.ts","backend/src/modules/price-books/price-book.service.ts","backend/src/modules/products/services/product.service.ts","backend/src/modules/quotes/quote.service.ts","backend/src/modules/roles/role.service.ts","backend/src/modules/segments/segment.service.ts","backend/src/modules/sla/sla.service.ts","backend/src/modules/social-interactions/social-interactions.service.ts","backend/src/modules/store-staff/store-staff.service.ts","backend/src/modules/tenant-configs/tenant-config.service.ts","backend/src/modules/tickets/ticket.service.ts","backend/src/shared/constants/events.ts","backend/src/shared/services/partition-maintenance.service.ts","backend/src/shared/state-machines/machines/contract.machine.ts","backend/src/shared/state-machines/machines/order.machine.ts","backend/src/shared/state-machines/types.ts","backend/src/shared/state-machines/utils/transitions/sales.transitions.ts","backend/src/shared/utils/biz-code.ts","frontend/src/api/adapters.ts","frontend/src/api/im-binding.ts","frontend/src/api/modules/ad-accounts.ts","frontend/src/api/modules/ad-audiences.ts","frontend/src/api/modules/ad-creatives.ts","frontend/src/api/modules/ad-placement.ts","frontend/src/api/modules/ad-reports.ts","frontend/src/api/modules/agent-group.ts","frontend/src/api/modules/ai-agent.ts","frontend/src/api/modules/alliance-analytics.ts","frontend/src/api/modules/alliance-merchants.ts","frontend/src/api/modules/alliance-products.ts","frontend/src/api/modules/alliance-promotions.ts","frontend/src/api/modules/alliance-referrals.ts","frontend/src/api/modules/analytics.ts","frontend/src/api/modules/approvals.ts","frontend/src/api/modules/assets.ts","frontend/src/api/modules/attribution.ts","frontend/src/api/modules/audit-logs.ts","frontend/src/api/modules/campaign-drafts.ts","frontend/src/api/modules/campaign-library.ts","frontend/src/api/modules/campaign-targets.ts","frontend/src/api/modules/campaign-tools.ts","frontend/src/api/modules/campaign-use-case-templates.ts","frontend/src/api/modules/campaign-wizard.ts","frontend/src/api/modules/campaigns.ts","frontend/src/api/modules/cohort-analysis.ts","frontend/src/api/modules/commissions.ts","frontend/src/api/modules/community-activities.ts","frontend/src/api/modules/community-analytics.ts","frontend/src/api/modules/community-bots.ts","frontend/src/api/modules/community-groups.ts","frontend/src/api/modules/community-levels.ts","frontend/src/api/modules/community-members.ts","frontend/src/api/modules/community-messages.ts","frontend/src/api/modules/community-points.ts","frontend/src/api/modules/consumer-behavior-analytics.ts","frontend/src/api/modules/content-categories.ts","frontend/src/api/modules/content-copyright.ts","frontend/src/api/modules/content-creation.ts","frontend/src/api/modules/content-distribution.ts","frontend/src/api/modules/content-library.ts","frontend/src/api/modules/content-templates.ts","frontend/src/api/modules/contract-templates.ts","frontend/src/api/modules/cpq.ts","frontend/src/api/modules/cross-domain-funnel.ts","frontend/src/api/modules/customer-analytics.ts","frontend/src/api/modules/customer-health.ts","frontend/src/api/modules/customer-journey.ts","frontend/src/api/modules/customer-ltv.ts","frontend/src/api/modules/customer-marketing.ts","frontend/src/api/modules/customer-segmentation.ts","frontend/src/api/modules/devices.ts","frontend/src/api/modules/dictionaries.ts","frontend/src/api/modules/dimension-transform.ts","frontend/src/api/modules/email-marketing.ts","frontend/src/api/modules/email-templates.ts","frontend/src/api/modules/event-logs.ts","frontend/src/api/modules/events.ts","frontend/src/api/modules/expense.ts","frontend/src/api/modules/financial-reports.ts","frontend/src/api/modules/fulfillment.ts","frontend/src/api/modules/geo-fences.ts","frontend/src/api/modules/geo-pois.ts","frontend/src/api/modules/groupbuy-analytics.ts","frontend/src/api/modules/groupbuy-campaigns.ts","frontend/src/api/modules/groupbuy-platforms.ts","frontend/src/api/modules/groupbuy-pricing.ts","frontend/src/api/modules/groupbuy-products.ts","frontend/src/api/modules/groupbuy-settlements.ts","frontend/src/api/modules/hr-benefits.ts","frontend/src/api/modules/hr-payroll.ts","frontend/src/api/modules/im-channels.ts","frontend/src/api/modules/im.ts","frontend/src/api/modules/integration-services.ts","frontend/src/api/modules/intent-analyzer.ts","frontend/src/api/modules/journey-orchestration.ts","frontend/src/api/modules/knowledge-candidates.ts","frontend/src/api/modules/knowledge-capture.ts","frontend/src/api/modules/landing-pages.ts","frontend/src/api/modules/lead-scoring-ai.ts","frontend/src/api/modules/livestream-groupbuy-conversion.ts","frontend/src/api/modules/livestream-groupbuy.ts","frontend/src/api/modules/livestream-interactions.ts","frontend/src/api/modules/livestream-rooms.ts","frontend/src/api/modules/livestream-schedules.ts","frontend/src/api/modules/livestream.ts","frontend/src/api/modules/location-assessments.ts","frontend/src/api/modules/login-logs.ts","frontend/src/api/modules/maintenance.ts","frontend/src/api/modules/marketing-automation.ts","frontend/src/api/modules/marketing-calendar.ts","frontend/src/api/modules/marketing-chatbot.ts","frontend/src/api/modules/marketing-content.ts","frontend/src/api/modules/marketing-forms.ts","frontend/src/api/modules/marketing-matrix.ts","frontend/src/api/modules/marketing-north-star.ts","frontend/src/api/modules/marketing-timeslots.ts","frontend/src/api/modules/marketing.ts","frontend/src/api/modules/omnichannel-dashboard.ts","frontend/src/api/modules/omnichannel-data-hub.ts","frontend/src/api/modules/omnichannel-touchpoints.ts","frontend/src/api/modules/operation-logs.ts","frontend/src/api/modules/opportunities.ts","frontend/src/api/modules/predictive-analytics.ts","frontend/src/api/modules/process-designer.ts","frontend/src/api/modules/process.ts","frontend/src/api/modules/products.ts","frontend/src/api/modules/realtime-trigger.ts","frontend/src/api/modules/reports.ts","frontend/src/api/modules/resource-requests.ts","frontend/src/api/modules/revenue.ts","frontend/src/api/modules/rfm-analysis.ts","frontend/src/api/modules/rma.ts","frontend/src/api/modules/satisfaction.ts","frontend/src/api/modules/scheduled-jobs.ts","frontend/src/api/modules/search.ts","frontend/src/api/modules/segments.ts","frontend/src/api/modules/service-monitor.ts","frontend/src/api/modules/sms-marketing.ts","frontend/src/api/modules/social-accounts.ts","frontend/src/api/modules/social-auto-replies.ts","frontend/src/api/modules/social-competitors.ts","frontend/src/api/modules/social-hot-topics.ts","frontend/src/api/modules/social-interactions.ts","frontend/src/api/modules/spare-parts.ts","frontend/src/api/modules/store-performance.ts","frontend/src/api/modules/stores.ts","frontend/src/api/modules/supplier-management.ts","frontend/src/api/modules/swot-analyses.ts","frontend/src/api/modules/system-events.ts","frontend/src/api/modules/ticket-workflows.ts","frontend/src/api/modules/tickets.ts","frontend/src/api/modules/tob-toc-gateway.ts","frontend/src/api/modules/unified-campaign.ts","frontend/src/api/modules/web-tracking.ts","frontend/src/api/modules/workflow-generator.ts","frontend/src/api/response-normalizer.ts","frontend/src/components/business/ActivityTimeline.vue","frontend/src/components/business/EventStreamPanel.vue","frontend/src/components/business/IMPanel.vue","frontend/src/components/common/DataTable.vue","frontend/src/components/common/ResponsiveDataTable.vue","frontend/src/components/mobile/MobileFilter.vue","frontend/src/components/responsive/ResponsiveFilterBar.vue","frontend/src/types/ai-agent.ts","frontend/src/utils/echarts.ts","frontend/src/views/__tests__/standard-crud-smoke.helper.ts","frontend/src/views/abm-marketing/Index.vue","frontend/src/views/acquisition/Index.vue","frontend/src/views/ad-accounts/Form.vue","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-analytics/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-placement/ABTests.vue","frontend/src/views/ad-placement/AudiencePacks.vue","frontend/src/views/ad-placement/BudgetAlerts.vue","frontend/src/views/ad-placement/Creatives.vue","frontend/src/views/ad-placement/Index.vue","frontend/src/views/ad-placement/RoiAnalysis.vue","frontend/src/views/alliance-agreements/Index.vue","frontend/src/views/alliance-campaigns/Index.vue","frontend/src/views/alliance-coupons/Index.vue","frontend/src/views/alliance-packages/Index.vue","frontend/src/views/alliance-partners/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/analytics/roi/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Form.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Form.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/attribution/Index.vue","frontend/src/views/auth/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-analytics/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-targets/Index.vue","frontend/src/views/campaign-tools/Index.vue","frontend/src/views/campaigns/Detail.vue","frontend/src/views/campaigns/Index.vue","frontend/src/views/campaigns/components/ToolConfigDialog.vue","frontend/src/views/campaigns/wizard/Step3Tools.vue","frontend/src/views/campaigns/wizard/Step4BasicInfo.vue","frontend/src/views/campaigns/wizard/Step7Review.vue","frontend/src/views/campaigns/wizard/components/ToolConfigForms.vue","frontend/src/views/channel-analytics/Index.vue","frontend/src/views/community-bots/Index.vue","frontend/src/views/community-fission/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-materials/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/community-tasks/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Detail.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/contracts/Form.vue","frontend/src/views/conversion-paths/Index.vue","frontend/src/views/cost-allocation/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Detail.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Form.vue","frontend/src/views/departments/Detail.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Alerts.vue","frontend/src/views/devices/Form.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/geo-pois/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-inventory/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-platforms/Index.vue","frontend/src/views/groupbuy-pricing/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-promotions/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/hr/attendance/components/AttendanceTab.vue","frontend/src/views/hr/attendance/components/HolidaysTab.vue","frontend/src/views/hr/attendance/components/LeavesTab.vue","frontend/src/views/hr/attendance/components/OvertimeTab.vue","frontend/src/views/hr/attendance/components/ShiftsTab.vue","frontend/src/views/hr/training/components/CertificatesTab.vue","frontend/src/views/hr/training/components/CompetencyTab.vue","frontend/src/views/hr/training/components/CoursesTab.vue","frontend/src/views/hr/training/components/ExamsTab.vue","frontend/src/views/hr/training/components/PlansTab.vue","frontend/src/views/hr/training/components/SessionsTab.vue","frontend/src/views/inventory/Counts.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/inventory/Snapshots.vue","frontend/src/views/journey-orchestration/Form.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/lead-assignment/Form.vue","frontend/src/views/lead-pools/Form.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/lead-qualification/Form.vue","frontend/src/views/lead-qualification/Index.vue","frontend/src/views/leads/Form.vue","frontend/src/views/leads/Index.vue","frontend/src/views/livestream-gifts/Index.vue","frontend/src/views/livestream-groupbuy-conversion/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/maintenance/Index.vue","frontend/src/views/maintenance/TaskDetail.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Detail.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/marketing/budget-alerts/Index.vue","frontend/src/views/mdm/Index.vue","frontend/src/views/member-benefits/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/menus/Index.vue","frontend/src/views/notification-configs/Index.vue","frontend/src/views/notifications/Index.vue","frontend/src/views/omnichannel-dashboard/Index.vue","frontend/src/views/omnichannel-data-hub/Index.vue","frontend/src/views/opportunities/Form.vue","frontend/src/views/orders/Form.vue","frontend/src/views/orders/Index.vue","frontend/src/views/org-chart/Index.vue","frontend/src/views/partners/Detail.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/predictive-analytics/Form.vue","frontend/src/views/process-designer/Designer.vue","frontend/src/views/product-analytics/Index.vue","frontend/src/views/products/Index.vue","frontend/src/views/qr-codes/Index.vue","frontend/src/views/quotes/Form.vue","frontend/src/views/realtime-trigger/Form.vue","frontend/src/views/renewal-tasks/Index.vue","frontend/src/views/rfm-analysis/Detail.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/scheduled-jobs/Index.vue","frontend/src/views/segments/Index.vue","frontend/src/views/service-monitor/Index.vue","frontend/src/views/settings/Index.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-matrix/Index.vue","frontend/src/views/social-posts/Detail.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/spare-parts/components/TransactionHistory.vue","frontend/src/views/stage-knowledge/Index.vue","frontend/src/views/store-configs/Index.vue","frontend/src/views/stores/Detail.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/suppliers/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/system-monitor/Index.vue","frontend/src/views/system/AuditLogs.vue","frontend/src/views/tenant-configs/Index.vue","frontend/src/views/tickets/Form.vue","frontend/src/views/tickets/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/utm-tracking/Form.vue","frontend/src/views/video-publishing/Index.vue","frontend/src/views/web-tracking/Index.vue"]},"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":1956552,"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":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:45:16+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1774319038
|
1774319038
|
0
|
1774318540
|
1774319038
|
|
|
0
|
Edit
Delete
|