|
7266
|
fix: P2 交互问题修复 — API 冗余字段 + 后端缺失路由防御
|
6
|
5
|
health-check.yml
|
7192
|
-2
|
104
|
refs/heads/main
|
df7b6f46170cb46db4771dd1e07991b0b13d90a0
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"80c2bdb2f93a19aa53d16ded06387b70c6084bf8","after":"df7b6f46170cb46db4771dd1e07991b0b13d90a0","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/80c2bdb2f93a19aa53d16ded06387b70c6084bf8...df7b6f46170cb46db4771dd1e07991b0b13d90a0","commits":[{"id":"df7b6f46170cb46db4771dd1e07991b0b13d90a0","message":"fix: P2 交互问题修复 — API 冗余字段 + 后端缺失路由防御\n\n1. approval-configs 提交数据修复:\n - 删除冗余 objectType(后端期望 entityType)\n - 删除冗余 nodes(后端期望 steps)\n\n2. geo-keywords 后端缺失路由防御(7 个):\n - 批量删除/排名检查/导出等按钮禁用 + warning 提示\n - 保留 API 方法定义供后端实现后使用\n\n3. groupbuy-participants 后端缺失路由防御(8 个):\n - GET/:id 不存在 → 查看/编辑改为 warning 提示\n - stats 接口 catch 兜底返回空数据\n\n4. 确认无需修改的模块:\n - invoice-requests 复用 invoicesApi:设计如此(同一后端模块)\n - video-publishing 复用 socialPostApi:设计如此(视频子集视图)\n - outbound 复用 shipments 路由:后端已覆盖所有端点\n - qr-codes 使用 campaignsApi:后端缺失 qr-codes 路由,前端无法单独修复\n\n验证:Vite 构建通过\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/df7b6f46170cb46db4771dd1e07991b0b13d90a0","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-23T07:51:53+08:00","added":[],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue"]}],"total_commits":0,"head_commit":{"id":"df7b6f46170cb46db4771dd1e07991b0b13d90a0","message":"fix: P2 交互问题修复 — API 冗余字段 + 后端缺失路由防御\n\n1. approval-configs 提交数据修复:\n - 删除冗余 objectType(后端期望 entityType)\n - 删除冗余 nodes(后端期望 steps)\n\n2. geo-keywords 后端缺失路由防御(7 个):\n - 批量删除/排名检查/导出等按钮禁用 + warning 提示\n - 保留 API 方法定义供后端实现后使用\n\n3. groupbuy-participants 后端缺失路由防御(8 个):\n - GET/:id 不存在 → 查看/编辑改为 warning 提示\n - stats 接口 catch 兜底返回空数据\n\n4. 确认无需修改的模块:\n - invoice-requests 复用 invoicesApi:设计如此(同一后端模块)\n - video-publishing 复用 socialPostApi:设计如此(视频子集视图)\n - outbound 复用 shipments 路由:后端已覆盖所有端点\n - qr-codes 使用 campaignsApi:后端缺失 qr-codes 路由,前端无法单独修复\n\n验证:Vite 构建通过\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/df7b6f46170cb46db4771dd1e07991b0b13d90a0","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-23T07:51:53+08:00","added":[],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/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":1919904,"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-23T07:43:43+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
|
1774223899
|
1774223899
|
0
|
1774223740
|
1774223899
|
|
|
0
|
Edit
Delete
|
|
7258
|
fix: 前端 API 路径对齐 + 路由缺失 + 表单提交反馈修复
|
6
|
5
|
health-check.yml
|
7184
|
-2
|
100
|
refs/heads/main
|
80c2bdb2f93a19aa53d16ded06387b70c6084bf8
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"0900b15d607e5c78f97fec16a73357ad4f814390","after":"80c2bdb2f93a19aa53d16ded06387b70c6084bf8","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/0900b15d607e5c78f97fec16a73357ad4f814390...80c2bdb2f93a19aa53d16ded06387b70c6084bf8","commits":[{"id":"80c2bdb2f93a19aa53d16ded06387b70c6084bf8","message":"fix: 前端 API 路径对齐 + 路由缺失 + 表单提交反馈修复\n\n1. API 路径对齐后端(7 处 404 修复):\n - faults: start-diagnosis→start-diagnose, diagnosis→diagnose, solution→resolve\n - marketing-matrix: batch-group→batch/group(PATCH), batch-operator→batch/operator(PATCH),\n platform-comparison→analytics/platform-comparison, auth-status→authorize\n\n2. 路由缺失修复(2 处):\n - groupbuy-orders/create 新建路由注册\n - marketing-tools 编辑模式从 query.id 改为 params.id + 拆分 create/edit 路由\n\n3. 表单提交失败用户反馈(15 文件 33 处):\n - catch 块只有 console.error → 补充 ElMessage.error 用户可见提示\n - 涉及:contracts, quotes, opportunities, customers, departments 等核心模块\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/80c2bdb2f93a19aa53d16ded06387b70c6084bf8","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-23T07:43:31+08:00","added":["frontend/src/router/modules/stores.ts","frontend/src/router/modules/supplemental.ts"],"removed":[],"modified":["frontend/src/api/modules/faults.ts","frontend/src/api/modules/marketing-matrix.ts","frontend/src/views/ar-ledger/Form.vue","frontend/src/views/assets/Form.vue","frontend/src/views/campaigns/Form.vue","frontend/src/views/channels/Form.vue","frontend/src/views/contract-templates/Form.vue","frontend/src/views/contracts/Form.vue","frontend/src/views/customers/Form.vue","frontend/src/views/departments/Form.vue","frontend/src/views/marketing-tools/Detail.vue","frontend/src/views/marketing-tools/Form.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/opportunities/Form.vue","frontend/src/views/partner-customers/Form.vue","frontend/src/views/price-books/Form.vue","frontend/src/views/products/Form.vue","frontend/src/views/quotes/Form.vue","frontend/src/views/sample-requests/Form.vue","frontend/src/views/tickets/Form.vue"]}],"total_commits":0,"head_commit":{"id":"80c2bdb2f93a19aa53d16ded06387b70c6084bf8","message":"fix: 前端 API 路径对齐 + 路由缺失 + 表单提交反馈修复\n\n1. API 路径对齐后端(7 处 404 修复):\n - faults: start-diagnosis→start-diagnose, diagnosis→diagnose, solution→resolve\n - marketing-matrix: batch-group→batch/group(PATCH), batch-operator→batch/operator(PATCH),\n platform-comparison→analytics/platform-comparison, auth-status→authorize\n\n2. 路由缺失修复(2 处):\n - groupbuy-orders/create 新建路由注册\n - marketing-tools 编辑模式从 query.id 改为 params.id + 拆分 create/edit 路由\n\n3. 表单提交失败用户反馈(15 文件 33 处):\n - catch 块只有 console.error → 补充 ElMessage.error 用户可见提示\n - 涉及:contracts, quotes, opportunities, customers, departments 等核心模块\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/80c2bdb2f93a19aa53d16ded06387b70c6084bf8","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-23T07:43:31+08:00","added":["frontend/src/router/modules/stores.ts","frontend/src/router/modules/supplemental.ts"],"removed":[],"modified":["frontend/src/api/modules/faults.ts","frontend/src/api/modules/marketing-matrix.ts","frontend/src/views/ar-ledger/Form.vue","frontend/src/views/assets/Form.vue","frontend/src/views/campaigns/Form.vue","frontend/src/views/channels/Form.vue","frontend/src/views/contract-templates/Form.vue","frontend/src/views/contracts/Form.vue","frontend/src/views/customers/Form.vue","frontend/src/views/departments/Form.vue","frontend/src/views/marketing-tools/Detail.vue","frontend/src/views/marketing-tools/Form.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/opportunities/Form.vue","frontend/src/views/partner-customers/Form.vue","frontend/src/views/price-books/Form.vue","frontend/src/views/products/Form.vue","frontend/src/views/quotes/Form.vue","frontend/src/views/sample-requests/Form.vue","frontend/src/views/tickets/Form.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":1919760,"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-23T07:09:48+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
|
1774223475
|
1774223475
|
0
|
1774223440
|
1774223475
|
|
|
0
|
Edit
Delete
|
|
7254
|
fix: 前端 API 路径对齐 + 路由缺失 + 表单提交反馈修复
|
6
|
5
|
health-check.yml
|
7180
|
-2
|
100
|
refs/heads/main
|
80c2bdb2f93a19aa53d16ded06387b70c6084bf8
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"0900b15d607e5c78f97fec16a73357ad4f814390","after":"80c2bdb2f93a19aa53d16ded06387b70c6084bf8","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/0900b15d607e5c78f97fec16a73357ad4f814390...80c2bdb2f93a19aa53d16ded06387b70c6084bf8","commits":[{"id":"80c2bdb2f93a19aa53d16ded06387b70c6084bf8","message":"fix: 前端 API 路径对齐 + 路由缺失 + 表单提交反馈修复\n\n1. API 路径对齐后端(7 处 404 修复):\n - faults: start-diagnosis→start-diagnose, diagnosis→diagnose, solution→resolve\n - marketing-matrix: batch-group→batch/group(PATCH), batch-operator→batch/operator(PATCH),\n platform-comparison→analytics/platform-comparison, auth-status→authorize\n\n2. 路由缺失修复(2 处):\n - groupbuy-orders/create 新建路由注册\n - marketing-tools 编辑模式从 query.id 改为 params.id + 拆分 create/edit 路由\n\n3. 表单提交失败用户反馈(15 文件 33 处):\n - catch 块只有 console.error → 补充 ElMessage.error 用户可见提示\n - 涉及:contracts, quotes, opportunities, customers, departments 等核心模块\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/80c2bdb2f93a19aa53d16ded06387b70c6084bf8","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-23T07:43:31+08:00","added":["frontend/src/router/modules/stores.ts","frontend/src/router/modules/supplemental.ts"],"removed":[],"modified":["frontend/src/api/modules/faults.ts","frontend/src/api/modules/marketing-matrix.ts","frontend/src/views/ar-ledger/Form.vue","frontend/src/views/assets/Form.vue","frontend/src/views/campaigns/Form.vue","frontend/src/views/channels/Form.vue","frontend/src/views/contract-templates/Form.vue","frontend/src/views/contracts/Form.vue","frontend/src/views/customers/Form.vue","frontend/src/views/departments/Form.vue","frontend/src/views/marketing-tools/Detail.vue","frontend/src/views/marketing-tools/Form.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/opportunities/Form.vue","frontend/src/views/partner-customers/Form.vue","frontend/src/views/price-books/Form.vue","frontend/src/views/products/Form.vue","frontend/src/views/quotes/Form.vue","frontend/src/views/sample-requests/Form.vue","frontend/src/views/tickets/Form.vue"]}],"total_commits":0,"head_commit":{"id":"80c2bdb2f93a19aa53d16ded06387b70c6084bf8","message":"fix: 前端 API 路径对齐 + 路由缺失 + 表单提交反馈修复\n\n1. API 路径对齐后端(7 处 404 修复):\n - faults: start-diagnosis→start-diagnose, diagnosis→diagnose, solution→resolve\n - marketing-matrix: batch-group→batch/group(PATCH), batch-operator→batch/operator(PATCH),\n platform-comparison→analytics/platform-comparison, auth-status→authorize\n\n2. 路由缺失修复(2 处):\n - groupbuy-orders/create 新建路由注册\n - marketing-tools 编辑模式从 query.id 改为 params.id + 拆分 create/edit 路由\n\n3. 表单提交失败用户反馈(15 文件 33 处):\n - catch 块只有 console.error → 补充 ElMessage.error 用户可见提示\n - 涉及:contracts, quotes, opportunities, customers, departments 等核心模块\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/80c2bdb2f93a19aa53d16ded06387b70c6084bf8","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-23T07:43:31+08:00","added":["frontend/src/router/modules/stores.ts","frontend/src/router/modules/supplemental.ts"],"removed":[],"modified":["frontend/src/api/modules/faults.ts","frontend/src/api/modules/marketing-matrix.ts","frontend/src/views/ar-ledger/Form.vue","frontend/src/views/assets/Form.vue","frontend/src/views/campaigns/Form.vue","frontend/src/views/channels/Form.vue","frontend/src/views/contract-templates/Form.vue","frontend/src/views/contracts/Form.vue","frontend/src/views/customers/Form.vue","frontend/src/views/departments/Form.vue","frontend/src/views/marketing-tools/Detail.vue","frontend/src/views/marketing-tools/Form.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/opportunities/Form.vue","frontend/src/views/partner-customers/Form.vue","frontend/src/views/price-books/Form.vue","frontend/src/views/products/Form.vue","frontend/src/views/quotes/Form.vue","frontend/src/views/sample-requests/Form.vue","frontend/src/views/tickets/Form.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":1919760,"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-23T07:09:48+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
|
1774223403
|
1774223403
|
0
|
1774223140
|
1774223403
|
|
|
0
|
Edit
Delete
|
|
7247
|
fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强
|
6
|
5
|
health-check.yml
|
7173
|
-2
|
96
|
refs/heads/main
|
0900b15d607e5c78f97fec16a73357ad4f814390
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"86beff17d922cf15f9ac6e298961a63c92ec85f8","after":"0900b15d607e5c78f97fec16a73357ad4f814390","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/86beff17d922cf15f9ac6e298961a63c92ec85f8...0900b15d607e5c78f97fec16a73357ad4f814390","commits":[{"id":"0900b15d607e5c78f97fec16a73357ad4f814390","message":"fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强\n\n三类修复(多 Agent 并行协作,零回归验证通过):\n\n1. 列表页 undefined 防护(10 文件 14 处):\n - res.data → res?.data ?? [] 防止 .map()/.length 崩溃\n - res.meta.total → res?.meta?.total ?? 0 防止分页异常\n\n2. 表单验证 try-catch(10 文件):\n - validate() 裸调用 → .catch(() =\u003e false) + if (!valid) return\n - 防止验证失败时页面卡死\n\n3. 删除操作错误处理(5 文件 8 处):\n - 空 catch 吞掉所有错误 → isCancelError 区分用户取消/真实错误\n - 真实 API 错误显示友好提示\n\n4. useApiQuery.ts 增强:\n - normalizeListResult 归一化防 undefined\n - useApiMutation 添加 onError 默认提示 + successMessage 控制\n - 全部 hook 添加 retry: 1\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误 / 后端 4267 测试通过(+51)/ E2E 12/14 通过(0 回归)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/0900b15d607e5c78f97fec16a73357ad4f814390","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-23T07:09:28+08:00","added":["frontend/src/composables/useApiQuery.ts"],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/biz-sequences/Form.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/cost-allocation/Form.vue","frontend/src/views/customer-balance/Form.vue","frontend/src/views/customer-balance/Index.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/maintenance/PlanForm.vue","frontend/src/views/maintenance/TaskForm.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/partner-customers/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/products/Categories.vue","frontend/src/views/roles/Index.vue","frontend/src/views/roles/components/RoleUsers.vue","frontend/src/views/segments/Form.vue","frontend/src/views/social-matrix/Form.vue","frontend/src/views/stores/Form.vue","frontend/src/views/swot-analyses/Index.vue"]},{"id":"d896457d1be5c717ded0691d144621b3c521cd35","message":"chore: Phase 0-5 附带修复 — Agent 产生的额外优化\n\n- database.ts: 类型优化\n- main.ts: 路由注册和 schema 转换修复\n- auth.middleware.ts: 类型收紧\n- schema-converter.ts: 冗余移除\n- IMPanel.vue/MessageSearch.vue: 前端组件优化\n- list-cache.service.ts: 新增列表缓存服务\n- 更新审计报告快照\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d896457d1be5c717ded0691d144621b3c521cd35","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-22T23:08:14+08:00","added":["backend/src/shared/services/list-cache.service.ts"],"removed":[],"modified":["backend/.env.example","backend/src/config/database.ts","backend/src/main.ts","backend/src/modules/im/im-channel.controller.ts","backend/src/shared/middleware/auth.middleware.ts","backend/src/shared/openapi/schema-converter.ts","frontend/package.json","frontend/src/components/business/IMPanel.vue","frontend/src/composables/index.ts","frontend/src/main.ts","frontend/src/stores/auth.test.ts","frontend/src/views/im/components/MessageSearch.vue","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md"]},{"id":"8d6bbbf7db74cd492873138a576a303da86c39cf","message":"test: Phase 3 — IM 15 测试 + Revenue 13 测试 + ZodEffects 兼容修复\n\n- 新增 tests/api/im.test.ts: 15 用例覆盖会话/消息/参与者/在线状态/未读统计\n- 新增 tests/api/revenue-payment-terms.test.ts: 13 用例覆盖统计/CRUD/批量/事件集成\n- 修复 validation.ts: ZodEffects.prototype 添加 partial/omit/extend 代理\n- 修复 rfm-analysis.schema.ts: .passthrough() 顺序修正\n- 发现: IM 模块需加入 requestCaseConverter 排除列表\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8d6bbbf7db74cd492873138a576a303da86c39cf","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-22T23:05:53+08:00","added":["backend/tests/api/im.test.ts","backend/tests/api/revenue-payment-terms.test.ts"],"removed":[],"modified":["backend/src/modules/rfm-analysis/rfm-analysis.schema.ts","backend/src/shared/utils/validation.ts"]},{"id":"5154c3ae921f8ff76d803e3e30208edd8c791d77","message":"test: Phase 3 — Marketing API 集成测试 19 用例 + schema bug 修复\n\n- 新增 tests/api/marketing.test.ts: 19 个测试用例覆盖 CRUD + 状态机 + 多租户隔离\n- 修复 lead-scoring.schema.ts: .transform() 后 .partial() 运行时错误\n- 修复 lead-assignment.schema.ts: 同上\n- 修复 campaign-analytics.schema.ts: .passthrough() 顺序修正\n- 修复 diagnosis.schema.ts: 同上\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/5154c3ae921f8ff76d803e3e30208edd8c791d77","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-22T23:01:58+08:00","added":["backend/tests/api/marketing.test.ts"],"removed":[],"modified":["backend/src/modules/campaign-analytics/campaign-analytics.schema.ts","backend/src/modules/diagnosis/diagnosis.schema.ts","backend/src/modules/leads/lead-assignment.schema.ts","backend/src/modules/leads/lead-scoring.schema.ts"]},{"id":"e75f31c633c3520ac69d3d9e47b2bdb86a517e6d","message":"refactor: Phase 4 — 循环依赖 8→1(仅剩 prisma 自引用误报)\n\n修复策略:\n- finance 循环(#5-8): 提取 finance.types.ts 共享类型,打断子模块↔主模块循环\n- kafka/circuit-breaker(#1): producerProvider 回调注入替代动态 import\n- ai-agents(#3-4): 函数注册表模式(ai-autopilot-registry.ts)解耦互相调用\n- prisma-fallback-types(#2): madge 递归类型误报,无需修复\n\ntsc --noEmit 零错误 / madge circular 仅剩 1 个误报\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/e75f31c633c3520ac69d3d9e47b2bdb86a517e6d","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-22T23:00:25+08:00","added":["backend/src/modules/ai-agents/ai-autopilot-registry.ts","backend/src/modules/finance/finance.types.ts"],"removed":[],"modified":["backend/src/config/kafka.ts","backend/src/modules/ai-agents/ai-autopilot-ai-test.service.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-scheduler.service.ts","backend/src/modules/finance/finance-credits.service.ts","backend/src/modules/finance/finance-extras.service.ts","backend/src/modules/finance/finance-periods.service.ts","backend/src/modules/finance/finance-refunds.service.ts","backend/src/modules/finance/finance.service.ts","backend/src/shared/services/circuit-breaker.service.ts"]}],"total_commits":0,"head_commit":{"id":"0900b15d607e5c78f97fec16a73357ad4f814390","message":"fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强\n\n三类修复(多 Agent 并行协作,零回归验证通过):\n\n1. 列表页 undefined 防护(10 文件 14 处):\n - res.data → res?.data ?? [] 防止 .map()/.length 崩溃\n - res.meta.total → res?.meta?.total ?? 0 防止分页异常\n\n2. 表单验证 try-catch(10 文件):\n - validate() 裸调用 → .catch(() =\u003e false) + if (!valid) return\n - 防止验证失败时页面卡死\n\n3. 删除操作错误处理(5 文件 8 处):\n - 空 catch 吞掉所有错误 → isCancelError 区分用户取消/真实错误\n - 真实 API 错误显示友好提示\n\n4. useApiQuery.ts 增强:\n - normalizeListResult 归一化防 undefined\n - useApiMutation 添加 onError 默认提示 + successMessage 控制\n - 全部 hook 添加 retry: 1\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误 / 后端 4267 测试通过(+51)/ E2E 12/14 通过(0 回归)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/0900b15d607e5c78f97fec16a73357ad4f814390","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-23T07:09:28+08:00","added":["frontend/src/composables/useApiQuery.ts"],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/biz-sequences/Form.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/cost-allocation/Form.vue","frontend/src/views/customer-balance/Form.vue","frontend/src/views/customer-balance/Index.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/maintenance/PlanForm.vue","frontend/src/views/maintenance/TaskForm.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/partner-customers/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/products/Categories.vue","frontend/src/views/roles/Index.vue","frontend/src/views/roles/components/RoleUsers.vue","frontend/src/views/segments/Form.vue","frontend/src/views/social-matrix/Form.vue","frontend/src/views/stores/Form.vue","frontend/src/views/swot-analyses/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":1907548,"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-20T01:03:04+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1774222840
|
1774222840
|
0
|
1774222840
|
1774222840
|
|
|
0
|
Edit
Delete
|
|
7246
|
fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强
|
6
|
5
|
health-check.yml
|
7172
|
-2
|
96
|
refs/heads/main
|
0900b15d607e5c78f97fec16a73357ad4f814390
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"86beff17d922cf15f9ac6e298961a63c92ec85f8","after":"0900b15d607e5c78f97fec16a73357ad4f814390","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/86beff17d922cf15f9ac6e298961a63c92ec85f8...0900b15d607e5c78f97fec16a73357ad4f814390","commits":[{"id":"0900b15d607e5c78f97fec16a73357ad4f814390","message":"fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强\n\n三类修复(多 Agent 并行协作,零回归验证通过):\n\n1. 列表页 undefined 防护(10 文件 14 处):\n - res.data → res?.data ?? [] 防止 .map()/.length 崩溃\n - res.meta.total → res?.meta?.total ?? 0 防止分页异常\n\n2. 表单验证 try-catch(10 文件):\n - validate() 裸调用 → .catch(() =\u003e false) + if (!valid) return\n - 防止验证失败时页面卡死\n\n3. 删除操作错误处理(5 文件 8 处):\n - 空 catch 吞掉所有错误 → isCancelError 区分用户取消/真实错误\n - 真实 API 错误显示友好提示\n\n4. useApiQuery.ts 增强:\n - normalizeListResult 归一化防 undefined\n - useApiMutation 添加 onError 默认提示 + successMessage 控制\n - 全部 hook 添加 retry: 1\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误 / 后端 4267 测试通过(+51)/ E2E 12/14 通过(0 回归)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/0900b15d607e5c78f97fec16a73357ad4f814390","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-23T07:09:28+08:00","added":["frontend/src/composables/useApiQuery.ts"],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/biz-sequences/Form.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/cost-allocation/Form.vue","frontend/src/views/customer-balance/Form.vue","frontend/src/views/customer-balance/Index.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/maintenance/PlanForm.vue","frontend/src/views/maintenance/TaskForm.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/partner-customers/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/products/Categories.vue","frontend/src/views/roles/Index.vue","frontend/src/views/roles/components/RoleUsers.vue","frontend/src/views/segments/Form.vue","frontend/src/views/social-matrix/Form.vue","frontend/src/views/stores/Form.vue","frontend/src/views/swot-analyses/Index.vue"]},{"id":"d896457d1be5c717ded0691d144621b3c521cd35","message":"chore: Phase 0-5 附带修复 — Agent 产生的额外优化\n\n- database.ts: 类型优化\n- main.ts: 路由注册和 schema 转换修复\n- auth.middleware.ts: 类型收紧\n- schema-converter.ts: 冗余移除\n- IMPanel.vue/MessageSearch.vue: 前端组件优化\n- list-cache.service.ts: 新增列表缓存服务\n- 更新审计报告快照\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d896457d1be5c717ded0691d144621b3c521cd35","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-22T23:08:14+08:00","added":["backend/src/shared/services/list-cache.service.ts"],"removed":[],"modified":["backend/.env.example","backend/src/config/database.ts","backend/src/main.ts","backend/src/modules/im/im-channel.controller.ts","backend/src/shared/middleware/auth.middleware.ts","backend/src/shared/openapi/schema-converter.ts","frontend/package.json","frontend/src/components/business/IMPanel.vue","frontend/src/composables/index.ts","frontend/src/main.ts","frontend/src/stores/auth.test.ts","frontend/src/views/im/components/MessageSearch.vue","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md"]},{"id":"8d6bbbf7db74cd492873138a576a303da86c39cf","message":"test: Phase 3 — IM 15 测试 + Revenue 13 测试 + ZodEffects 兼容修复\n\n- 新增 tests/api/im.test.ts: 15 用例覆盖会话/消息/参与者/在线状态/未读统计\n- 新增 tests/api/revenue-payment-terms.test.ts: 13 用例覆盖统计/CRUD/批量/事件集成\n- 修复 validation.ts: ZodEffects.prototype 添加 partial/omit/extend 代理\n- 修复 rfm-analysis.schema.ts: .passthrough() 顺序修正\n- 发现: IM 模块需加入 requestCaseConverter 排除列表\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8d6bbbf7db74cd492873138a576a303da86c39cf","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-22T23:05:53+08:00","added":["backend/tests/api/im.test.ts","backend/tests/api/revenue-payment-terms.test.ts"],"removed":[],"modified":["backend/src/modules/rfm-analysis/rfm-analysis.schema.ts","backend/src/shared/utils/validation.ts"]},{"id":"5154c3ae921f8ff76d803e3e30208edd8c791d77","message":"test: Phase 3 — Marketing API 集成测试 19 用例 + schema bug 修复\n\n- 新增 tests/api/marketing.test.ts: 19 个测试用例覆盖 CRUD + 状态机 + 多租户隔离\n- 修复 lead-scoring.schema.ts: .transform() 后 .partial() 运行时错误\n- 修复 lead-assignment.schema.ts: 同上\n- 修复 campaign-analytics.schema.ts: .passthrough() 顺序修正\n- 修复 diagnosis.schema.ts: 同上\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/5154c3ae921f8ff76d803e3e30208edd8c791d77","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-22T23:01:58+08:00","added":["backend/tests/api/marketing.test.ts"],"removed":[],"modified":["backend/src/modules/campaign-analytics/campaign-analytics.schema.ts","backend/src/modules/diagnosis/diagnosis.schema.ts","backend/src/modules/leads/lead-assignment.schema.ts","backend/src/modules/leads/lead-scoring.schema.ts"]},{"id":"e75f31c633c3520ac69d3d9e47b2bdb86a517e6d","message":"refactor: Phase 4 — 循环依赖 8→1(仅剩 prisma 自引用误报)\n\n修复策略:\n- finance 循环(#5-8): 提取 finance.types.ts 共享类型,打断子模块↔主模块循环\n- kafka/circuit-breaker(#1): producerProvider 回调注入替代动态 import\n- ai-agents(#3-4): 函数注册表模式(ai-autopilot-registry.ts)解耦互相调用\n- prisma-fallback-types(#2): madge 递归类型误报,无需修复\n\ntsc --noEmit 零错误 / madge circular 仅剩 1 个误报\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/e75f31c633c3520ac69d3d9e47b2bdb86a517e6d","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-22T23:00:25+08:00","added":["backend/src/modules/ai-agents/ai-autopilot-registry.ts","backend/src/modules/finance/finance.types.ts"],"removed":[],"modified":["backend/src/config/kafka.ts","backend/src/modules/ai-agents/ai-autopilot-ai-test.service.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-scheduler.service.ts","backend/src/modules/finance/finance-credits.service.ts","backend/src/modules/finance/finance-extras.service.ts","backend/src/modules/finance/finance-periods.service.ts","backend/src/modules/finance/finance-refunds.service.ts","backend/src/modules/finance/finance.service.ts","backend/src/shared/services/circuit-breaker.service.ts"]}],"total_commits":0,"head_commit":{"id":"0900b15d607e5c78f97fec16a73357ad4f814390","message":"fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强\n\n三类修复(多 Agent 并行协作,零回归验证通过):\n\n1. 列表页 undefined 防护(10 文件 14 处):\n - res.data → res?.data ?? [] 防止 .map()/.length 崩溃\n - res.meta.total → res?.meta?.total ?? 0 防止分页异常\n\n2. 表单验证 try-catch(10 文件):\n - validate() 裸调用 → .catch(() =\u003e false) + if (!valid) return\n - 防止验证失败时页面卡死\n\n3. 删除操作错误处理(5 文件 8 处):\n - 空 catch 吞掉所有错误 → isCancelError 区分用户取消/真实错误\n - 真实 API 错误显示友好提示\n\n4. useApiQuery.ts 增强:\n - normalizeListResult 归一化防 undefined\n - useApiMutation 添加 onError 默认提示 + successMessage 控制\n - 全部 hook 添加 retry: 1\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误 / 后端 4267 测试通过(+51)/ E2E 12/14 通过(0 回归)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/0900b15d607e5c78f97fec16a73357ad4f814390","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-23T07:09:28+08:00","added":["frontend/src/composables/useApiQuery.ts"],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/biz-sequences/Form.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/cost-allocation/Form.vue","frontend/src/views/customer-balance/Form.vue","frontend/src/views/customer-balance/Index.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/maintenance/PlanForm.vue","frontend/src/views/maintenance/TaskForm.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/partner-customers/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/products/Categories.vue","frontend/src/views/roles/Index.vue","frontend/src/views/roles/components/RoleUsers.vue","frontend/src/views/segments/Form.vue","frontend/src/views/social-matrix/Form.vue","frontend/src/views/stores/Form.vue","frontend/src/views/swot-analyses/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":1907548,"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-20T01:03:04+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1774222540
|
1774222540
|
0
|
1774222540
|
1774222540
|
|
|
0
|
Edit
Delete
|
|
7245
|
fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强
|
6
|
5
|
health-check.yml
|
7171
|
-2
|
96
|
refs/heads/main
|
0900b15d607e5c78f97fec16a73357ad4f814390
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"86beff17d922cf15f9ac6e298961a63c92ec85f8","after":"0900b15d607e5c78f97fec16a73357ad4f814390","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/86beff17d922cf15f9ac6e298961a63c92ec85f8...0900b15d607e5c78f97fec16a73357ad4f814390","commits":[{"id":"0900b15d607e5c78f97fec16a73357ad4f814390","message":"fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强\n\n三类修复(多 Agent 并行协作,零回归验证通过):\n\n1. 列表页 undefined 防护(10 文件 14 处):\n - res.data → res?.data ?? [] 防止 .map()/.length 崩溃\n - res.meta.total → res?.meta?.total ?? 0 防止分页异常\n\n2. 表单验证 try-catch(10 文件):\n - validate() 裸调用 → .catch(() =\u003e false) + if (!valid) return\n - 防止验证失败时页面卡死\n\n3. 删除操作错误处理(5 文件 8 处):\n - 空 catch 吞掉所有错误 → isCancelError 区分用户取消/真实错误\n - 真实 API 错误显示友好提示\n\n4. useApiQuery.ts 增强:\n - normalizeListResult 归一化防 undefined\n - useApiMutation 添加 onError 默认提示 + successMessage 控制\n - 全部 hook 添加 retry: 1\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误 / 后端 4267 测试通过(+51)/ E2E 12/14 通过(0 回归)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/0900b15d607e5c78f97fec16a73357ad4f814390","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-23T07:09:28+08:00","added":["frontend/src/composables/useApiQuery.ts"],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/biz-sequences/Form.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/cost-allocation/Form.vue","frontend/src/views/customer-balance/Form.vue","frontend/src/views/customer-balance/Index.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/maintenance/PlanForm.vue","frontend/src/views/maintenance/TaskForm.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/partner-customers/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/products/Categories.vue","frontend/src/views/roles/Index.vue","frontend/src/views/roles/components/RoleUsers.vue","frontend/src/views/segments/Form.vue","frontend/src/views/social-matrix/Form.vue","frontend/src/views/stores/Form.vue","frontend/src/views/swot-analyses/Index.vue"]},{"id":"d896457d1be5c717ded0691d144621b3c521cd35","message":"chore: Phase 0-5 附带修复 — Agent 产生的额外优化\n\n- database.ts: 类型优化\n- main.ts: 路由注册和 schema 转换修复\n- auth.middleware.ts: 类型收紧\n- schema-converter.ts: 冗余移除\n- IMPanel.vue/MessageSearch.vue: 前端组件优化\n- list-cache.service.ts: 新增列表缓存服务\n- 更新审计报告快照\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d896457d1be5c717ded0691d144621b3c521cd35","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-22T23:08:14+08:00","added":["backend/src/shared/services/list-cache.service.ts"],"removed":[],"modified":["backend/.env.example","backend/src/config/database.ts","backend/src/main.ts","backend/src/modules/im/im-channel.controller.ts","backend/src/shared/middleware/auth.middleware.ts","backend/src/shared/openapi/schema-converter.ts","frontend/package.json","frontend/src/components/business/IMPanel.vue","frontend/src/composables/index.ts","frontend/src/main.ts","frontend/src/stores/auth.test.ts","frontend/src/views/im/components/MessageSearch.vue","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md"]},{"id":"8d6bbbf7db74cd492873138a576a303da86c39cf","message":"test: Phase 3 — IM 15 测试 + Revenue 13 测试 + ZodEffects 兼容修复\n\n- 新增 tests/api/im.test.ts: 15 用例覆盖会话/消息/参与者/在线状态/未读统计\n- 新增 tests/api/revenue-payment-terms.test.ts: 13 用例覆盖统计/CRUD/批量/事件集成\n- 修复 validation.ts: ZodEffects.prototype 添加 partial/omit/extend 代理\n- 修复 rfm-analysis.schema.ts: .passthrough() 顺序修正\n- 发现: IM 模块需加入 requestCaseConverter 排除列表\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8d6bbbf7db74cd492873138a576a303da86c39cf","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-22T23:05:53+08:00","added":["backend/tests/api/im.test.ts","backend/tests/api/revenue-payment-terms.test.ts"],"removed":[],"modified":["backend/src/modules/rfm-analysis/rfm-analysis.schema.ts","backend/src/shared/utils/validation.ts"]},{"id":"5154c3ae921f8ff76d803e3e30208edd8c791d77","message":"test: Phase 3 — Marketing API 集成测试 19 用例 + schema bug 修复\n\n- 新增 tests/api/marketing.test.ts: 19 个测试用例覆盖 CRUD + 状态机 + 多租户隔离\n- 修复 lead-scoring.schema.ts: .transform() 后 .partial() 运行时错误\n- 修复 lead-assignment.schema.ts: 同上\n- 修复 campaign-analytics.schema.ts: .passthrough() 顺序修正\n- 修复 diagnosis.schema.ts: 同上\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/5154c3ae921f8ff76d803e3e30208edd8c791d77","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-22T23:01:58+08:00","added":["backend/tests/api/marketing.test.ts"],"removed":[],"modified":["backend/src/modules/campaign-analytics/campaign-analytics.schema.ts","backend/src/modules/diagnosis/diagnosis.schema.ts","backend/src/modules/leads/lead-assignment.schema.ts","backend/src/modules/leads/lead-scoring.schema.ts"]},{"id":"e75f31c633c3520ac69d3d9e47b2bdb86a517e6d","message":"refactor: Phase 4 — 循环依赖 8→1(仅剩 prisma 自引用误报)\n\n修复策略:\n- finance 循环(#5-8): 提取 finance.types.ts 共享类型,打断子模块↔主模块循环\n- kafka/circuit-breaker(#1): producerProvider 回调注入替代动态 import\n- ai-agents(#3-4): 函数注册表模式(ai-autopilot-registry.ts)解耦互相调用\n- prisma-fallback-types(#2): madge 递归类型误报,无需修复\n\ntsc --noEmit 零错误 / madge circular 仅剩 1 个误报\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/e75f31c633c3520ac69d3d9e47b2bdb86a517e6d","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-22T23:00:25+08:00","added":["backend/src/modules/ai-agents/ai-autopilot-registry.ts","backend/src/modules/finance/finance.types.ts"],"removed":[],"modified":["backend/src/config/kafka.ts","backend/src/modules/ai-agents/ai-autopilot-ai-test.service.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-scheduler.service.ts","backend/src/modules/finance/finance-credits.service.ts","backend/src/modules/finance/finance-extras.service.ts","backend/src/modules/finance/finance-periods.service.ts","backend/src/modules/finance/finance-refunds.service.ts","backend/src/modules/finance/finance.service.ts","backend/src/shared/services/circuit-breaker.service.ts"]}],"total_commits":0,"head_commit":{"id":"0900b15d607e5c78f97fec16a73357ad4f814390","message":"fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强\n\n三类修复(多 Agent 并行协作,零回归验证通过):\n\n1. 列表页 undefined 防护(10 文件 14 处):\n - res.data → res?.data ?? [] 防止 .map()/.length 崩溃\n - res.meta.total → res?.meta?.total ?? 0 防止分页异常\n\n2. 表单验证 try-catch(10 文件):\n - validate() 裸调用 → .catch(() =\u003e false) + if (!valid) return\n - 防止验证失败时页面卡死\n\n3. 删除操作错误处理(5 文件 8 处):\n - 空 catch 吞掉所有错误 → isCancelError 区分用户取消/真实错误\n - 真实 API 错误显示友好提示\n\n4. useApiQuery.ts 增强:\n - normalizeListResult 归一化防 undefined\n - useApiMutation 添加 onError 默认提示 + successMessage 控制\n - 全部 hook 添加 retry: 1\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误 / 后端 4267 测试通过(+51)/ E2E 12/14 通过(0 回归)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/0900b15d607e5c78f97fec16a73357ad4f814390","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-23T07:09:28+08:00","added":["frontend/src/composables/useApiQuery.ts"],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/biz-sequences/Form.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/cost-allocation/Form.vue","frontend/src/views/customer-balance/Form.vue","frontend/src/views/customer-balance/Index.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/maintenance/PlanForm.vue","frontend/src/views/maintenance/TaskForm.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/partner-customers/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/products/Categories.vue","frontend/src/views/roles/Index.vue","frontend/src/views/roles/components/RoleUsers.vue","frontend/src/views/segments/Form.vue","frontend/src/views/social-matrix/Form.vue","frontend/src/views/stores/Form.vue","frontend/src/views/swot-analyses/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":1907548,"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-20T01:03:04+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1774222240
|
1774222240
|
0
|
1774222240
|
1774222240
|
|
|
0
|
Edit
Delete
|
|
7243
|
fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强
|
6
|
5
|
health-check.yml
|
7169
|
-2
|
96
|
refs/heads/main
|
0900b15d607e5c78f97fec16a73357ad4f814390
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"86beff17d922cf15f9ac6e298961a63c92ec85f8","after":"0900b15d607e5c78f97fec16a73357ad4f814390","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/86beff17d922cf15f9ac6e298961a63c92ec85f8...0900b15d607e5c78f97fec16a73357ad4f814390","commits":[{"id":"0900b15d607e5c78f97fec16a73357ad4f814390","message":"fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强\n\n三类修复(多 Agent 并行协作,零回归验证通过):\n\n1. 列表页 undefined 防护(10 文件 14 处):\n - res.data → res?.data ?? [] 防止 .map()/.length 崩溃\n - res.meta.total → res?.meta?.total ?? 0 防止分页异常\n\n2. 表单验证 try-catch(10 文件):\n - validate() 裸调用 → .catch(() =\u003e false) + if (!valid) return\n - 防止验证失败时页面卡死\n\n3. 删除操作错误处理(5 文件 8 处):\n - 空 catch 吞掉所有错误 → isCancelError 区分用户取消/真实错误\n - 真实 API 错误显示友好提示\n\n4. useApiQuery.ts 增强:\n - normalizeListResult 归一化防 undefined\n - useApiMutation 添加 onError 默认提示 + successMessage 控制\n - 全部 hook 添加 retry: 1\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误 / 后端 4267 测试通过(+51)/ E2E 12/14 通过(0 回归)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/0900b15d607e5c78f97fec16a73357ad4f814390","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-23T07:09:28+08:00","added":["frontend/src/composables/useApiQuery.ts"],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/biz-sequences/Form.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/cost-allocation/Form.vue","frontend/src/views/customer-balance/Form.vue","frontend/src/views/customer-balance/Index.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/maintenance/PlanForm.vue","frontend/src/views/maintenance/TaskForm.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/partner-customers/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/products/Categories.vue","frontend/src/views/roles/Index.vue","frontend/src/views/roles/components/RoleUsers.vue","frontend/src/views/segments/Form.vue","frontend/src/views/social-matrix/Form.vue","frontend/src/views/stores/Form.vue","frontend/src/views/swot-analyses/Index.vue"]},{"id":"d896457d1be5c717ded0691d144621b3c521cd35","message":"chore: Phase 0-5 附带修复 — Agent 产生的额外优化\n\n- database.ts: 类型优化\n- main.ts: 路由注册和 schema 转换修复\n- auth.middleware.ts: 类型收紧\n- schema-converter.ts: 冗余移除\n- IMPanel.vue/MessageSearch.vue: 前端组件优化\n- list-cache.service.ts: 新增列表缓存服务\n- 更新审计报告快照\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d896457d1be5c717ded0691d144621b3c521cd35","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-22T23:08:14+08:00","added":["backend/src/shared/services/list-cache.service.ts"],"removed":[],"modified":["backend/.env.example","backend/src/config/database.ts","backend/src/main.ts","backend/src/modules/im/im-channel.controller.ts","backend/src/shared/middleware/auth.middleware.ts","backend/src/shared/openapi/schema-converter.ts","frontend/package.json","frontend/src/components/business/IMPanel.vue","frontend/src/composables/index.ts","frontend/src/main.ts","frontend/src/stores/auth.test.ts","frontend/src/views/im/components/MessageSearch.vue","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md"]},{"id":"8d6bbbf7db74cd492873138a576a303da86c39cf","message":"test: Phase 3 — IM 15 测试 + Revenue 13 测试 + ZodEffects 兼容修复\n\n- 新增 tests/api/im.test.ts: 15 用例覆盖会话/消息/参与者/在线状态/未读统计\n- 新增 tests/api/revenue-payment-terms.test.ts: 13 用例覆盖统计/CRUD/批量/事件集成\n- 修复 validation.ts: ZodEffects.prototype 添加 partial/omit/extend 代理\n- 修复 rfm-analysis.schema.ts: .passthrough() 顺序修正\n- 发现: IM 模块需加入 requestCaseConverter 排除列表\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8d6bbbf7db74cd492873138a576a303da86c39cf","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-22T23:05:53+08:00","added":["backend/tests/api/im.test.ts","backend/tests/api/revenue-payment-terms.test.ts"],"removed":[],"modified":["backend/src/modules/rfm-analysis/rfm-analysis.schema.ts","backend/src/shared/utils/validation.ts"]},{"id":"5154c3ae921f8ff76d803e3e30208edd8c791d77","message":"test: Phase 3 — Marketing API 集成测试 19 用例 + schema bug 修复\n\n- 新增 tests/api/marketing.test.ts: 19 个测试用例覆盖 CRUD + 状态机 + 多租户隔离\n- 修复 lead-scoring.schema.ts: .transform() 后 .partial() 运行时错误\n- 修复 lead-assignment.schema.ts: 同上\n- 修复 campaign-analytics.schema.ts: .passthrough() 顺序修正\n- 修复 diagnosis.schema.ts: 同上\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/5154c3ae921f8ff76d803e3e30208edd8c791d77","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-22T23:01:58+08:00","added":["backend/tests/api/marketing.test.ts"],"removed":[],"modified":["backend/src/modules/campaign-analytics/campaign-analytics.schema.ts","backend/src/modules/diagnosis/diagnosis.schema.ts","backend/src/modules/leads/lead-assignment.schema.ts","backend/src/modules/leads/lead-scoring.schema.ts"]},{"id":"e75f31c633c3520ac69d3d9e47b2bdb86a517e6d","message":"refactor: Phase 4 — 循环依赖 8→1(仅剩 prisma 自引用误报)\n\n修复策略:\n- finance 循环(#5-8): 提取 finance.types.ts 共享类型,打断子模块↔主模块循环\n- kafka/circuit-breaker(#1): producerProvider 回调注入替代动态 import\n- ai-agents(#3-4): 函数注册表模式(ai-autopilot-registry.ts)解耦互相调用\n- prisma-fallback-types(#2): madge 递归类型误报,无需修复\n\ntsc --noEmit 零错误 / madge circular 仅剩 1 个误报\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/e75f31c633c3520ac69d3d9e47b2bdb86a517e6d","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-22T23:00:25+08:00","added":["backend/src/modules/ai-agents/ai-autopilot-registry.ts","backend/src/modules/finance/finance.types.ts"],"removed":[],"modified":["backend/src/config/kafka.ts","backend/src/modules/ai-agents/ai-autopilot-ai-test.service.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-scheduler.service.ts","backend/src/modules/finance/finance-credits.service.ts","backend/src/modules/finance/finance-extras.service.ts","backend/src/modules/finance/finance-periods.service.ts","backend/src/modules/finance/finance-refunds.service.ts","backend/src/modules/finance/finance.service.ts","backend/src/shared/services/circuit-breaker.service.ts"]}],"total_commits":0,"head_commit":{"id":"0900b15d607e5c78f97fec16a73357ad4f814390","message":"fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强\n\n三类修复(多 Agent 并行协作,零回归验证通过):\n\n1. 列表页 undefined 防护(10 文件 14 处):\n - res.data → res?.data ?? [] 防止 .map()/.length 崩溃\n - res.meta.total → res?.meta?.total ?? 0 防止分页异常\n\n2. 表单验证 try-catch(10 文件):\n - validate() 裸调用 → .catch(() =\u003e false) + if (!valid) return\n - 防止验证失败时页面卡死\n\n3. 删除操作错误处理(5 文件 8 处):\n - 空 catch 吞掉所有错误 → isCancelError 区分用户取消/真实错误\n - 真实 API 错误显示友好提示\n\n4. useApiQuery.ts 增强:\n - normalizeListResult 归一化防 undefined\n - useApiMutation 添加 onError 默认提示 + successMessage 控制\n - 全部 hook 添加 retry: 1\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误 / 后端 4267 测试通过(+51)/ E2E 12/14 通过(0 回归)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/0900b15d607e5c78f97fec16a73357ad4f814390","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-23T07:09:28+08:00","added":["frontend/src/composables/useApiQuery.ts"],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/biz-sequences/Form.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/cost-allocation/Form.vue","frontend/src/views/customer-balance/Form.vue","frontend/src/views/customer-balance/Index.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/maintenance/PlanForm.vue","frontend/src/views/maintenance/TaskForm.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/partner-customers/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/products/Categories.vue","frontend/src/views/roles/Index.vue","frontend/src/views/roles/components/RoleUsers.vue","frontend/src/views/segments/Form.vue","frontend/src/views/social-matrix/Form.vue","frontend/src/views/stores/Form.vue","frontend/src/views/swot-analyses/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":1907548,"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-20T01:03:04+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1774222046
|
1774222046
|
0
|
1774221940
|
1774222046
|
|
|
0
|
Edit
Delete
|
|
7241
|
fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强
|
6
|
5
|
health-check.yml
|
7167
|
-2
|
96
|
refs/heads/main
|
0900b15d607e5c78f97fec16a73357ad4f814390
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"86beff17d922cf15f9ac6e298961a63c92ec85f8","after":"0900b15d607e5c78f97fec16a73357ad4f814390","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/86beff17d922cf15f9ac6e298961a63c92ec85f8...0900b15d607e5c78f97fec16a73357ad4f814390","commits":[{"id":"0900b15d607e5c78f97fec16a73357ad4f814390","message":"fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强\n\n三类修复(多 Agent 并行协作,零回归验证通过):\n\n1. 列表页 undefined 防护(10 文件 14 处):\n - res.data → res?.data ?? [] 防止 .map()/.length 崩溃\n - res.meta.total → res?.meta?.total ?? 0 防止分页异常\n\n2. 表单验证 try-catch(10 文件):\n - validate() 裸调用 → .catch(() =\u003e false) + if (!valid) return\n - 防止验证失败时页面卡死\n\n3. 删除操作错误处理(5 文件 8 处):\n - 空 catch 吞掉所有错误 → isCancelError 区分用户取消/真实错误\n - 真实 API 错误显示友好提示\n\n4. useApiQuery.ts 增强:\n - normalizeListResult 归一化防 undefined\n - useApiMutation 添加 onError 默认提示 + successMessage 控制\n - 全部 hook 添加 retry: 1\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误 / 后端 4267 测试通过(+51)/ E2E 12/14 通过(0 回归)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/0900b15d607e5c78f97fec16a73357ad4f814390","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-23T07:09:28+08:00","added":["frontend/src/composables/useApiQuery.ts"],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/biz-sequences/Form.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/cost-allocation/Form.vue","frontend/src/views/customer-balance/Form.vue","frontend/src/views/customer-balance/Index.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/maintenance/PlanForm.vue","frontend/src/views/maintenance/TaskForm.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/partner-customers/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/products/Categories.vue","frontend/src/views/roles/Index.vue","frontend/src/views/roles/components/RoleUsers.vue","frontend/src/views/segments/Form.vue","frontend/src/views/social-matrix/Form.vue","frontend/src/views/stores/Form.vue","frontend/src/views/swot-analyses/Index.vue"]},{"id":"d896457d1be5c717ded0691d144621b3c521cd35","message":"chore: Phase 0-5 附带修复 — Agent 产生的额外优化\n\n- database.ts: 类型优化\n- main.ts: 路由注册和 schema 转换修复\n- auth.middleware.ts: 类型收紧\n- schema-converter.ts: 冗余移除\n- IMPanel.vue/MessageSearch.vue: 前端组件优化\n- list-cache.service.ts: 新增列表缓存服务\n- 更新审计报告快照\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d896457d1be5c717ded0691d144621b3c521cd35","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-22T23:08:14+08:00","added":["backend/src/shared/services/list-cache.service.ts"],"removed":[],"modified":["backend/.env.example","backend/src/config/database.ts","backend/src/main.ts","backend/src/modules/im/im-channel.controller.ts","backend/src/shared/middleware/auth.middleware.ts","backend/src/shared/openapi/schema-converter.ts","frontend/package.json","frontend/src/components/business/IMPanel.vue","frontend/src/composables/index.ts","frontend/src/main.ts","frontend/src/stores/auth.test.ts","frontend/src/views/im/components/MessageSearch.vue","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md"]},{"id":"8d6bbbf7db74cd492873138a576a303da86c39cf","message":"test: Phase 3 — IM 15 测试 + Revenue 13 测试 + ZodEffects 兼容修复\n\n- 新增 tests/api/im.test.ts: 15 用例覆盖会话/消息/参与者/在线状态/未读统计\n- 新增 tests/api/revenue-payment-terms.test.ts: 13 用例覆盖统计/CRUD/批量/事件集成\n- 修复 validation.ts: ZodEffects.prototype 添加 partial/omit/extend 代理\n- 修复 rfm-analysis.schema.ts: .passthrough() 顺序修正\n- 发现: IM 模块需加入 requestCaseConverter 排除列表\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8d6bbbf7db74cd492873138a576a303da86c39cf","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-22T23:05:53+08:00","added":["backend/tests/api/im.test.ts","backend/tests/api/revenue-payment-terms.test.ts"],"removed":[],"modified":["backend/src/modules/rfm-analysis/rfm-analysis.schema.ts","backend/src/shared/utils/validation.ts"]},{"id":"5154c3ae921f8ff76d803e3e30208edd8c791d77","message":"test: Phase 3 — Marketing API 集成测试 19 用例 + schema bug 修复\n\n- 新增 tests/api/marketing.test.ts: 19 个测试用例覆盖 CRUD + 状态机 + 多租户隔离\n- 修复 lead-scoring.schema.ts: .transform() 后 .partial() 运行时错误\n- 修复 lead-assignment.schema.ts: 同上\n- 修复 campaign-analytics.schema.ts: .passthrough() 顺序修正\n- 修复 diagnosis.schema.ts: 同上\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/5154c3ae921f8ff76d803e3e30208edd8c791d77","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-22T23:01:58+08:00","added":["backend/tests/api/marketing.test.ts"],"removed":[],"modified":["backend/src/modules/campaign-analytics/campaign-analytics.schema.ts","backend/src/modules/diagnosis/diagnosis.schema.ts","backend/src/modules/leads/lead-assignment.schema.ts","backend/src/modules/leads/lead-scoring.schema.ts"]},{"id":"e75f31c633c3520ac69d3d9e47b2bdb86a517e6d","message":"refactor: Phase 4 — 循环依赖 8→1(仅剩 prisma 自引用误报)\n\n修复策略:\n- finance 循环(#5-8): 提取 finance.types.ts 共享类型,打断子模块↔主模块循环\n- kafka/circuit-breaker(#1): producerProvider 回调注入替代动态 import\n- ai-agents(#3-4): 函数注册表模式(ai-autopilot-registry.ts)解耦互相调用\n- prisma-fallback-types(#2): madge 递归类型误报,无需修复\n\ntsc --noEmit 零错误 / madge circular 仅剩 1 个误报\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/e75f31c633c3520ac69d3d9e47b2bdb86a517e6d","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-22T23:00:25+08:00","added":["backend/src/modules/ai-agents/ai-autopilot-registry.ts","backend/src/modules/finance/finance.types.ts"],"removed":[],"modified":["backend/src/config/kafka.ts","backend/src/modules/ai-agents/ai-autopilot-ai-test.service.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-scheduler.service.ts","backend/src/modules/finance/finance-credits.service.ts","backend/src/modules/finance/finance-extras.service.ts","backend/src/modules/finance/finance-periods.service.ts","backend/src/modules/finance/finance-refunds.service.ts","backend/src/modules/finance/finance.service.ts","backend/src/shared/services/circuit-breaker.service.ts"]}],"total_commits":0,"head_commit":{"id":"0900b15d607e5c78f97fec16a73357ad4f814390","message":"fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强\n\n三类修复(多 Agent 并行协作,零回归验证通过):\n\n1. 列表页 undefined 防护(10 文件 14 处):\n - res.data → res?.data ?? [] 防止 .map()/.length 崩溃\n - res.meta.total → res?.meta?.total ?? 0 防止分页异常\n\n2. 表单验证 try-catch(10 文件):\n - validate() 裸调用 → .catch(() =\u003e false) + if (!valid) return\n - 防止验证失败时页面卡死\n\n3. 删除操作错误处理(5 文件 8 处):\n - 空 catch 吞掉所有错误 → isCancelError 区分用户取消/真实错误\n - 真实 API 错误显示友好提示\n\n4. useApiQuery.ts 增强:\n - normalizeListResult 归一化防 undefined\n - useApiMutation 添加 onError 默认提示 + successMessage 控制\n - 全部 hook 添加 retry: 1\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误 / 后端 4267 测试通过(+51)/ E2E 12/14 通过(0 回归)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/0900b15d607e5c78f97fec16a73357ad4f814390","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-23T07:09:28+08:00","added":["frontend/src/composables/useApiQuery.ts"],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/biz-sequences/Form.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/cost-allocation/Form.vue","frontend/src/views/customer-balance/Form.vue","frontend/src/views/customer-balance/Index.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/maintenance/PlanForm.vue","frontend/src/views/maintenance/TaskForm.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/partner-customers/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/products/Categories.vue","frontend/src/views/roles/Index.vue","frontend/src/views/roles/components/RoleUsers.vue","frontend/src/views/segments/Form.vue","frontend/src/views/social-matrix/Form.vue","frontend/src/views/stores/Form.vue","frontend/src/views/swot-analyses/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":1907548,"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-20T01:03:04+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1774221838
|
1774221839
|
0
|
1774221640
|
1774221839
|
|
|
0
|
Edit
Delete
|
|
7239
|
fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强
|
6
|
5
|
health-check.yml
|
7165
|
-2
|
96
|
refs/heads/main
|
0900b15d607e5c78f97fec16a73357ad4f814390
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"86beff17d922cf15f9ac6e298961a63c92ec85f8","after":"0900b15d607e5c78f97fec16a73357ad4f814390","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/86beff17d922cf15f9ac6e298961a63c92ec85f8...0900b15d607e5c78f97fec16a73357ad4f814390","commits":[{"id":"0900b15d607e5c78f97fec16a73357ad4f814390","message":"fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强\n\n三类修复(多 Agent 并行协作,零回归验证通过):\n\n1. 列表页 undefined 防护(10 文件 14 处):\n - res.data → res?.data ?? [] 防止 .map()/.length 崩溃\n - res.meta.total → res?.meta?.total ?? 0 防止分页异常\n\n2. 表单验证 try-catch(10 文件):\n - validate() 裸调用 → .catch(() =\u003e false) + if (!valid) return\n - 防止验证失败时页面卡死\n\n3. 删除操作错误处理(5 文件 8 处):\n - 空 catch 吞掉所有错误 → isCancelError 区分用户取消/真实错误\n - 真实 API 错误显示友好提示\n\n4. useApiQuery.ts 增强:\n - normalizeListResult 归一化防 undefined\n - useApiMutation 添加 onError 默认提示 + successMessage 控制\n - 全部 hook 添加 retry: 1\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误 / 后端 4267 测试通过(+51)/ E2E 12/14 通过(0 回归)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/0900b15d607e5c78f97fec16a73357ad4f814390","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-23T07:09:28+08:00","added":["frontend/src/composables/useApiQuery.ts"],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/biz-sequences/Form.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/cost-allocation/Form.vue","frontend/src/views/customer-balance/Form.vue","frontend/src/views/customer-balance/Index.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/maintenance/PlanForm.vue","frontend/src/views/maintenance/TaskForm.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/partner-customers/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/products/Categories.vue","frontend/src/views/roles/Index.vue","frontend/src/views/roles/components/RoleUsers.vue","frontend/src/views/segments/Form.vue","frontend/src/views/social-matrix/Form.vue","frontend/src/views/stores/Form.vue","frontend/src/views/swot-analyses/Index.vue"]},{"id":"d896457d1be5c717ded0691d144621b3c521cd35","message":"chore: Phase 0-5 附带修复 — Agent 产生的额外优化\n\n- database.ts: 类型优化\n- main.ts: 路由注册和 schema 转换修复\n- auth.middleware.ts: 类型收紧\n- schema-converter.ts: 冗余移除\n- IMPanel.vue/MessageSearch.vue: 前端组件优化\n- list-cache.service.ts: 新增列表缓存服务\n- 更新审计报告快照\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d896457d1be5c717ded0691d144621b3c521cd35","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-22T23:08:14+08:00","added":["backend/src/shared/services/list-cache.service.ts"],"removed":[],"modified":["backend/.env.example","backend/src/config/database.ts","backend/src/main.ts","backend/src/modules/im/im-channel.controller.ts","backend/src/shared/middleware/auth.middleware.ts","backend/src/shared/openapi/schema-converter.ts","frontend/package.json","frontend/src/components/business/IMPanel.vue","frontend/src/composables/index.ts","frontend/src/main.ts","frontend/src/stores/auth.test.ts","frontend/src/views/im/components/MessageSearch.vue","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md"]},{"id":"8d6bbbf7db74cd492873138a576a303da86c39cf","message":"test: Phase 3 — IM 15 测试 + Revenue 13 测试 + ZodEffects 兼容修复\n\n- 新增 tests/api/im.test.ts: 15 用例覆盖会话/消息/参与者/在线状态/未读统计\n- 新增 tests/api/revenue-payment-terms.test.ts: 13 用例覆盖统计/CRUD/批量/事件集成\n- 修复 validation.ts: ZodEffects.prototype 添加 partial/omit/extend 代理\n- 修复 rfm-analysis.schema.ts: .passthrough() 顺序修正\n- 发现: IM 模块需加入 requestCaseConverter 排除列表\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8d6bbbf7db74cd492873138a576a303da86c39cf","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-22T23:05:53+08:00","added":["backend/tests/api/im.test.ts","backend/tests/api/revenue-payment-terms.test.ts"],"removed":[],"modified":["backend/src/modules/rfm-analysis/rfm-analysis.schema.ts","backend/src/shared/utils/validation.ts"]},{"id":"5154c3ae921f8ff76d803e3e30208edd8c791d77","message":"test: Phase 3 — Marketing API 集成测试 19 用例 + schema bug 修复\n\n- 新增 tests/api/marketing.test.ts: 19 个测试用例覆盖 CRUD + 状态机 + 多租户隔离\n- 修复 lead-scoring.schema.ts: .transform() 后 .partial() 运行时错误\n- 修复 lead-assignment.schema.ts: 同上\n- 修复 campaign-analytics.schema.ts: .passthrough() 顺序修正\n- 修复 diagnosis.schema.ts: 同上\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/5154c3ae921f8ff76d803e3e30208edd8c791d77","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-22T23:01:58+08:00","added":["backend/tests/api/marketing.test.ts"],"removed":[],"modified":["backend/src/modules/campaign-analytics/campaign-analytics.schema.ts","backend/src/modules/diagnosis/diagnosis.schema.ts","backend/src/modules/leads/lead-assignment.schema.ts","backend/src/modules/leads/lead-scoring.schema.ts"]},{"id":"e75f31c633c3520ac69d3d9e47b2bdb86a517e6d","message":"refactor: Phase 4 — 循环依赖 8→1(仅剩 prisma 自引用误报)\n\n修复策略:\n- finance 循环(#5-8): 提取 finance.types.ts 共享类型,打断子模块↔主模块循环\n- kafka/circuit-breaker(#1): producerProvider 回调注入替代动态 import\n- ai-agents(#3-4): 函数注册表模式(ai-autopilot-registry.ts)解耦互相调用\n- prisma-fallback-types(#2): madge 递归类型误报,无需修复\n\ntsc --noEmit 零错误 / madge circular 仅剩 1 个误报\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/e75f31c633c3520ac69d3d9e47b2bdb86a517e6d","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-22T23:00:25+08:00","added":["backend/src/modules/ai-agents/ai-autopilot-registry.ts","backend/src/modules/finance/finance.types.ts"],"removed":[],"modified":["backend/src/config/kafka.ts","backend/src/modules/ai-agents/ai-autopilot-ai-test.service.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-scheduler.service.ts","backend/src/modules/finance/finance-credits.service.ts","backend/src/modules/finance/finance-extras.service.ts","backend/src/modules/finance/finance-periods.service.ts","backend/src/modules/finance/finance-refunds.service.ts","backend/src/modules/finance/finance.service.ts","backend/src/shared/services/circuit-breaker.service.ts"]}],"total_commits":0,"head_commit":{"id":"0900b15d607e5c78f97fec16a73357ad4f814390","message":"fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强\n\n三类修复(多 Agent 并行协作,零回归验证通过):\n\n1. 列表页 undefined 防护(10 文件 14 处):\n - res.data → res?.data ?? [] 防止 .map()/.length 崩溃\n - res.meta.total → res?.meta?.total ?? 0 防止分页异常\n\n2. 表单验证 try-catch(10 文件):\n - validate() 裸调用 → .catch(() =\u003e false) + if (!valid) return\n - 防止验证失败时页面卡死\n\n3. 删除操作错误处理(5 文件 8 处):\n - 空 catch 吞掉所有错误 → isCancelError 区分用户取消/真实错误\n - 真实 API 错误显示友好提示\n\n4. useApiQuery.ts 增强:\n - normalizeListResult 归一化防 undefined\n - useApiMutation 添加 onError 默认提示 + successMessage 控制\n - 全部 hook 添加 retry: 1\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误 / 后端 4267 测试通过(+51)/ E2E 12/14 通过(0 回归)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/0900b15d607e5c78f97fec16a73357ad4f814390","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-23T07:09:28+08:00","added":["frontend/src/composables/useApiQuery.ts"],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/biz-sequences/Form.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/cost-allocation/Form.vue","frontend/src/views/customer-balance/Form.vue","frontend/src/views/customer-balance/Index.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/maintenance/PlanForm.vue","frontend/src/views/maintenance/TaskForm.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/partner-customers/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/products/Categories.vue","frontend/src/views/roles/Index.vue","frontend/src/views/roles/components/RoleUsers.vue","frontend/src/views/segments/Form.vue","frontend/src/views/social-matrix/Form.vue","frontend/src/views/stores/Form.vue","frontend/src/views/swot-analyses/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":1907548,"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-20T01:03:04+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1774221722
|
1774221723
|
0
|
1774221340
|
1774221723
|
|
|
0
|
Edit
Delete
|
|
7237
|
fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强
|
6
|
5
|
health-check.yml
|
7163
|
-2
|
96
|
refs/heads/main
|
0900b15d607e5c78f97fec16a73357ad4f814390
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"86beff17d922cf15f9ac6e298961a63c92ec85f8","after":"0900b15d607e5c78f97fec16a73357ad4f814390","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/86beff17d922cf15f9ac6e298961a63c92ec85f8...0900b15d607e5c78f97fec16a73357ad4f814390","commits":[{"id":"0900b15d607e5c78f97fec16a73357ad4f814390","message":"fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强\n\n三类修复(多 Agent 并行协作,零回归验证通过):\n\n1. 列表页 undefined 防护(10 文件 14 处):\n - res.data → res?.data ?? [] 防止 .map()/.length 崩溃\n - res.meta.total → res?.meta?.total ?? 0 防止分页异常\n\n2. 表单验证 try-catch(10 文件):\n - validate() 裸调用 → .catch(() =\u003e false) + if (!valid) return\n - 防止验证失败时页面卡死\n\n3. 删除操作错误处理(5 文件 8 处):\n - 空 catch 吞掉所有错误 → isCancelError 区分用户取消/真实错误\n - 真实 API 错误显示友好提示\n\n4. useApiQuery.ts 增强:\n - normalizeListResult 归一化防 undefined\n - useApiMutation 添加 onError 默认提示 + successMessage 控制\n - 全部 hook 添加 retry: 1\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误 / 后端 4267 测试通过(+51)/ E2E 12/14 通过(0 回归)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/0900b15d607e5c78f97fec16a73357ad4f814390","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-23T07:09:28+08:00","added":["frontend/src/composables/useApiQuery.ts"],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/biz-sequences/Form.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/cost-allocation/Form.vue","frontend/src/views/customer-balance/Form.vue","frontend/src/views/customer-balance/Index.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/maintenance/PlanForm.vue","frontend/src/views/maintenance/TaskForm.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/partner-customers/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/products/Categories.vue","frontend/src/views/roles/Index.vue","frontend/src/views/roles/components/RoleUsers.vue","frontend/src/views/segments/Form.vue","frontend/src/views/social-matrix/Form.vue","frontend/src/views/stores/Form.vue","frontend/src/views/swot-analyses/Index.vue"]},{"id":"d896457d1be5c717ded0691d144621b3c521cd35","message":"chore: Phase 0-5 附带修复 — Agent 产生的额外优化\n\n- database.ts: 类型优化\n- main.ts: 路由注册和 schema 转换修复\n- auth.middleware.ts: 类型收紧\n- schema-converter.ts: 冗余移除\n- IMPanel.vue/MessageSearch.vue: 前端组件优化\n- list-cache.service.ts: 新增列表缓存服务\n- 更新审计报告快照\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d896457d1be5c717ded0691d144621b3c521cd35","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-22T23:08:14+08:00","added":["backend/src/shared/services/list-cache.service.ts"],"removed":[],"modified":["backend/.env.example","backend/src/config/database.ts","backend/src/main.ts","backend/src/modules/im/im-channel.controller.ts","backend/src/shared/middleware/auth.middleware.ts","backend/src/shared/openapi/schema-converter.ts","frontend/package.json","frontend/src/components/business/IMPanel.vue","frontend/src/composables/index.ts","frontend/src/main.ts","frontend/src/stores/auth.test.ts","frontend/src/views/im/components/MessageSearch.vue","reports/docs-single-source-audit.latest.json","reports/docs-single-source-audit.latest.md"]},{"id":"8d6bbbf7db74cd492873138a576a303da86c39cf","message":"test: Phase 3 — IM 15 测试 + Revenue 13 测试 + ZodEffects 兼容修复\n\n- 新增 tests/api/im.test.ts: 15 用例覆盖会话/消息/参与者/在线状态/未读统计\n- 新增 tests/api/revenue-payment-terms.test.ts: 13 用例覆盖统计/CRUD/批量/事件集成\n- 修复 validation.ts: ZodEffects.prototype 添加 partial/omit/extend 代理\n- 修复 rfm-analysis.schema.ts: .passthrough() 顺序修正\n- 发现: IM 模块需加入 requestCaseConverter 排除列表\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/8d6bbbf7db74cd492873138a576a303da86c39cf","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-22T23:05:53+08:00","added":["backend/tests/api/im.test.ts","backend/tests/api/revenue-payment-terms.test.ts"],"removed":[],"modified":["backend/src/modules/rfm-analysis/rfm-analysis.schema.ts","backend/src/shared/utils/validation.ts"]},{"id":"5154c3ae921f8ff76d803e3e30208edd8c791d77","message":"test: Phase 3 — Marketing API 集成测试 19 用例 + schema bug 修复\n\n- 新增 tests/api/marketing.test.ts: 19 个测试用例覆盖 CRUD + 状态机 + 多租户隔离\n- 修复 lead-scoring.schema.ts: .transform() 后 .partial() 运行时错误\n- 修复 lead-assignment.schema.ts: 同上\n- 修复 campaign-analytics.schema.ts: .passthrough() 顺序修正\n- 修复 diagnosis.schema.ts: 同上\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/5154c3ae921f8ff76d803e3e30208edd8c791d77","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-22T23:01:58+08:00","added":["backend/tests/api/marketing.test.ts"],"removed":[],"modified":["backend/src/modules/campaign-analytics/campaign-analytics.schema.ts","backend/src/modules/diagnosis/diagnosis.schema.ts","backend/src/modules/leads/lead-assignment.schema.ts","backend/src/modules/leads/lead-scoring.schema.ts"]},{"id":"e75f31c633c3520ac69d3d9e47b2bdb86a517e6d","message":"refactor: Phase 4 — 循环依赖 8→1(仅剩 prisma 自引用误报)\n\n修复策略:\n- finance 循环(#5-8): 提取 finance.types.ts 共享类型,打断子模块↔主模块循环\n- kafka/circuit-breaker(#1): producerProvider 回调注入替代动态 import\n- ai-agents(#3-4): 函数注册表模式(ai-autopilot-registry.ts)解耦互相调用\n- prisma-fallback-types(#2): madge 递归类型误报,无需修复\n\ntsc --noEmit 零错误 / madge circular 仅剩 1 个误报\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/e75f31c633c3520ac69d3d9e47b2bdb86a517e6d","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-22T23:00:25+08:00","added":["backend/src/modules/ai-agents/ai-autopilot-registry.ts","backend/src/modules/finance/finance.types.ts"],"removed":[],"modified":["backend/src/config/kafka.ts","backend/src/modules/ai-agents/ai-autopilot-ai-test.service.ts","backend/src/modules/ai-agents/ai-autopilot.service.ts","backend/src/modules/ai-agents/services/autopilot-scheduler.service.ts","backend/src/modules/finance/finance-credits.service.ts","backend/src/modules/finance/finance-extras.service.ts","backend/src/modules/finance/finance-periods.service.ts","backend/src/modules/finance/finance-refunds.service.ts","backend/src/modules/finance/finance.service.ts","backend/src/shared/services/circuit-breaker.service.ts"]}],"total_commits":0,"head_commit":{"id":"0900b15d607e5c78f97fec16a73357ad4f814390","message":"fix: 前端 UI 交互防崩溃加固 — 25 个视图文件 + useApiQuery 增强\n\n三类修复(多 Agent 并行协作,零回归验证通过):\n\n1. 列表页 undefined 防护(10 文件 14 处):\n - res.data → res?.data ?? [] 防止 .map()/.length 崩溃\n - res.meta.total → res?.meta?.total ?? 0 防止分页异常\n\n2. 表单验证 try-catch(10 文件):\n - validate() 裸调用 → .catch(() =\u003e false) + if (!valid) return\n - 防止验证失败时页面卡死\n\n3. 删除操作错误处理(5 文件 8 处):\n - 空 catch 吞掉所有错误 → isCancelError 区分用户取消/真实错误\n - 真实 API 错误显示友好提示\n\n4. useApiQuery.ts 增强:\n - normalizeListResult 归一化防 undefined\n - useApiMutation 添加 onError 默认提示 + successMessage 控制\n - 全部 hook 添加 retry: 1\n\n验证:Vite 构建通过 / vue-tsc 0 新增错误 / 后端 4267 测试通过(+51)/ E2E 12/14 通过(0 回归)\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/0900b15d607e5c78f97fec16a73357ad4f814390","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-23T07:09:28+08:00","added":["frontend/src/composables/useApiQuery.ts"],"removed":[],"modified":["frontend/src/views/approval-configs/Form.vue","frontend/src/views/biz-sequences/Form.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-library/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/cost-allocation/Form.vue","frontend/src/views/customer-balance/Form.vue","frontend/src/views/customer-balance/Index.vue","frontend/src/views/diagnosis/Index.vue","frontend/src/views/email-templates/Form.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/maintenance/PlanForm.vue","frontend/src/views/maintenance/TaskForm.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/partner-customers/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/products/Categories.vue","frontend/src/views/roles/Index.vue","frontend/src/views/roles/components/RoleUsers.vue","frontend/src/views/segments/Form.vue","frontend/src/views/social-matrix/Form.vue","frontend/src/views/stores/Form.vue","frontend/src/views/swot-analyses/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":1907548,"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-20T01:03:04+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1774221624
|
1774221625
|
0
|
1774221040
|
1774221625
|
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|