|
14142
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14064
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776161451
|
1776161452
|
0
|
1776161450
|
1776161452
|
|
|
0
|
Edit
Delete
|
|
14143
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14065
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776161751
|
1776161752
|
0
|
1776161750
|
1776161752
|
|
|
0
|
Edit
Delete
|
|
14144
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14066
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776162051
|
1776162052
|
0
|
1776162050
|
1776162052
|
|
|
0
|
Edit
Delete
|
|
14145
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14067
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776162351
|
1776162352
|
0
|
1776162350
|
1776162352
|
|
|
0
|
Edit
Delete
|
|
14146
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14068
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776162651
|
1776162652
|
0
|
1776162650
|
1776162652
|
|
|
0
|
Edit
Delete
|
|
14147
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14069
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776162951
|
1776162952
|
0
|
1776162950
|
1776162952
|
|
|
0
|
Edit
Delete
|
|
14148
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14070
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776163253
|
1776163254
|
0
|
1776163250
|
1776163254
|
|
|
0
|
Edit
Delete
|
|
14149
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14071
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776163550
|
1776163550
|
0
|
1776163550
|
1776163550
|
|
|
0
|
Edit
Delete
|
|
14150
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14072
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776163850
|
1776163850
|
0
|
1776163850
|
1776163850
|
|
|
0
|
Edit
Delete
|
|
14151
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14073
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776164150
|
1776164150
|
0
|
1776164150
|
1776164150
|
|
|
0
|
Edit
Delete
|
|
14152
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14074
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776164450
|
1776164450
|
0
|
1776164450
|
1776164450
|
|
|
0
|
Edit
Delete
|
|
14153
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14075
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776164750
|
1776164750
|
0
|
1776164750
|
1776164750
|
|
|
0
|
Edit
Delete
|
|
14154
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14076
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776165050
|
1776165050
|
0
|
1776165050
|
1776165050
|
|
|
0
|
Edit
Delete
|
|
14155
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14077
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776165350
|
1776165350
|
0
|
1776165350
|
1776165350
|
|
|
0
|
Edit
Delete
|
|
14156
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14078
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776165650
|
1776165650
|
0
|
1776165650
|
1776165650
|
|
|
0
|
Edit
Delete
|
|
14157
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14079
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776165950
|
1776165950
|
0
|
1776165950
|
1776165950
|
|
|
0
|
Edit
Delete
|
|
14158
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14080
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776166255
|
1776166255
|
0
|
1776166250
|
1776166255
|
|
|
0
|
Edit
Delete
|
|
14159
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14081
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776166553
|
1776166554
|
0
|
1776166550
|
1776166554
|
|
|
0
|
Edit
Delete
|
|
14160
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14082
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776166850
|
1776166851
|
0
|
1776166850
|
1776166851
|
|
|
0
|
Edit
Delete
|
|
14161
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14083
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776167150
|
1776167151
|
0
|
1776167150
|
1776167151
|
|
|
0
|
Edit
Delete
|
|
14162
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14084
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776167450
|
1776167451
|
0
|
1776167450
|
1776167451
|
|
|
0
|
Edit
Delete
|
|
14163
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14085
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776167750
|
1776167751
|
0
|
1776167750
|
1776167751
|
|
|
0
|
Edit
Delete
|
|
14164
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14086
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776168050
|
1776168051
|
0
|
1776168050
|
1776168051
|
|
|
0
|
Edit
Delete
|
|
14165
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14087
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776168350
|
1776168351
|
0
|
1776168350
|
1776168351
|
|
|
0
|
Edit
Delete
|
|
14166
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14088
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776168650
|
1776168651
|
0
|
1776168650
|
1776168651
|
|
|
0
|
Edit
Delete
|
|
14167
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14089
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776168950
|
1776168951
|
0
|
1776168950
|
1776168951
|
|
|
0
|
Edit
Delete
|
|
14168
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14090
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776169250
|
1776169251
|
0
|
1776169250
|
1776169251
|
|
|
0
|
Edit
Delete
|
|
14169
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14091
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776169550
|
1776169551
|
0
|
1776169550
|
1776169551
|
|
|
0
|
Edit
Delete
|
|
14170
|
feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新
|
6
|
5
|
health-check.yml
|
14092
|
-2
|
268
|
refs/heads/main
|
d2c68b13960de626f7a8d496bf1977d263eb7931
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"98cc8da660b8d4dba9887432490471d976c03f5f","after":"d2c68b13960de626f7a8d496bf1977d263eb7931","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/98cc8da660b8d4dba9887432490471d976c03f5f...d2c68b13960de626f7a8d496bf1977d263eb7931","commits":[{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]}],"total_commits":0,"head_commit":{"id":"d2c68b13960de626f7a8d496bf1977d263eb7931","message":"feat: 同步最新代码更改,包括后端API、前端组件、测试和报告更新\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d2c68b13960de626f7a8d496bf1977d263eb7931","author":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"committer":{"name":"Mluo","email":"mluo@MluodeMacBook-Air.local","username":""},"verification":null,"timestamp":"2026-04-13T15:39:52+08:00","added":["backend/prisma/migrations/20260413_add_journey_orchestration_and_store_configs/migration.sql","backend/src/modules/journey-orchestration/journey-orchestration.contract.routes.ts","backend/src/modules/process/process.controller.ts","backend/src/modules/process/process.types.ts","backend/src/modules/revenue/revenue-crud.service.ts","backend/src/modules/stores/store-config.service.ts","backend/src/modules/treasury/treasury-crud.service.ts","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-0f529-d-to-Cash-F03-商机表单---编辑回填验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-184fa--to-Cash-F01-客户表单---创建成功全流程-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-4c4ce--to-Cash-F07-客户表单---手机号重复检测-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-64a51-to-Cash-F05-合同表单---复杂字段联动验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-80c59-d-to-Cash-F08-报价表单---实时计算验证-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-90544-d-to-Cash-F02-线索表单---验证错误提示-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-a51f4-d-to-Cash-F04-报价表单---草稿自动恢复-chromium/test-failed-1.png","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/error-context.md","e2e/test-results/form-interactions-core-bus-cf0d9--to-Cash-F06-订单表单---动态明细行验证-chromium/test-failed-1.png","e2e/tests/form-interactions/hr-forms.spec.ts","e2e/tests/form-interactions/large-data-performance.spec.ts","e2e/tests/form-interactions/service-center-forms.spec.ts","e2e/tests/form-interactions/supply-chain-forms.spec.ts","frontend/src/views/cpq/components/PoliciesTab.vue","frontend/src/views/marketing-calendar/components/CalendarAgendaView.vue","frontend/src/views/marketing-calendar/components/CalendarMonthView.vue","frontend/src/views/marketing-calendar/components/CalendarWeekView.vue","frontend/src/views/marketing-calendar/components/EventDetailDrawer.vue","frontend/src/views/marketing-calendar/components/EventFormDialog.vue","frontend/src/views/marketing-calendar/composables/useMarketingCalendar.ts","frontend/src/views/marketing-north-star/components/NorthStarAlerts.vue","frontend/src/views/marketing-north-star/components/NorthStarDashboard.vue","frontend/src/views/marketing-north-star/components/NorthStarMetricForm.vue","frontend/src/views/settings/components/integration/IntegrationAdPlatformsPanel.vue","frontend/src/views/settings/components/integration/IntegrationAiConfig.vue","frontend/src/views/settings/components/integration/IntegrationDingtalkConfig.vue","frontend/src/views/settings/components/integration/IntegrationEmailConfig.vue","frontend/src/views/settings/components/integration/IntegrationFeishuConfig.vue","frontend/src/views/settings/components/integration/IntegrationGroupbuyPanel.vue","frontend/src/views/settings/components/integration/IntegrationSmsConfig.vue","frontend/src/views/settings/components/integration/IntegrationWebhookConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatPublicConfig.vue","frontend/src/views/settings/components/integration/IntegrationWechatWorkConfig.vue","scripts/migrate-to-uselistpage.ts"],"removed":["e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/error-context.md","e2e/test-results/auth.setup.ts-authenticate-as-admin-setup/test-failed-1.png"],"modified":[".github/workflows/e2e-tests.yml","backend/.env.test","backend/prisma/schema/marketing.prisma","backend/prisma/schema/stores.prisma","backend/src/modules/ad-placement/placement.contract.routes.ts","backend/src/modules/ad-placement/placement.controller.ts","backend/src/modules/ad-placement/placement.service.ts","backend/src/modules/channels/channel.contract.routes.ts","backend/src/modules/dimension-transform/dimension-transform.controller.ts","backend/src/modules/dimension-transform/dimension-transform.routes.ts","backend/src/modules/dimension-transform/dimension-transform.service.ts","backend/src/modules/expense/expense.contract.routes.ts","backend/src/modules/expense/expense.controller.ts","backend/src/modules/expense/expense.routes.ts","backend/src/modules/faults/fault.contract.routes.ts","backend/src/modules/faults/fault.service.ts","backend/src/modules/geo-keywords/geo-keyword.contract.routes.ts","backend/src/modules/geo-keywords/geo-keyword.controller.ts","backend/src/modules/geo-keywords/geo-keyword.routes.ts","backend/src/modules/geo-keywords/geo-keyword.schema.ts","backend/src/modules/geo-keywords/geo-keyword.service.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.contract.routes.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.controller.ts","backend/src/modules/groupbuy-participants/groupbuy-participant.routes.ts","backend/src/modules/journey-orchestration/journey-orchestration.service.ts","backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.contract.routes.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.controller.ts","backend/src/modules/livestream-groupbuy/livestream-groupbuy-conversion.routes.ts","backend/src/modules/marketing-matrix/matrix.contract.routes.ts","backend/src/modules/marketing-matrix/matrix.controller.ts","backend/src/modules/mdm/mdm.service.ts","backend/src/modules/orders/order.controller.ts","backend/src/modules/process/process.routes.ts","backend/src/modules/process/process.schema.ts","backend/src/modules/process/process.service.test.ts","backend/src/modules/process/process.service.ts","backend/src/modules/realtime/realtime.contract.routes.ts","backend/src/modules/realtime/realtime.controller.ts","backend/src/modules/realtime/realtime.routes.ts","backend/src/modules/revenue/revenue.contract.routes.ts","backend/src/modules/revenue/revenue.controller.ts","backend/src/modules/revenue/revenue.routes.ts","backend/src/modules/search/search.controller.ts","backend/src/modules/search/search.routes.ts","backend/src/modules/search/search.schema.ts","backend/src/modules/search/search.service.ts","backend/src/modules/social-analytics/social-analytics.service.ts","backend/src/modules/stores/store.contract.routes.ts","backend/src/modules/stores/store.controller.ts","backend/src/modules/stores/store.routes.ts","backend/src/modules/stores/store.schema.ts","backend/src/modules/treasury/treasury.contract.routes.ts","backend/src/modules/treasury/treasury.controller.ts","backend/src/modules/treasury/treasury.routes.ts","e2e/.auth/admin.json","e2e/helpers/form-test-helpers.ts","e2e/package.json","e2e/test-results/.last-run.json","e2e/tests/form-interactions/approval-workflow-forms.spec.ts","e2e/tests/form-interactions/core-business-forms.spec.ts","e2e/tests/form-interactions/finance-forms.spec.ts","e2e/tests/form-interactions/marketing-campaign-forms.spec.ts","frontend/src/api/modules/im-channels.ts","frontend/src/composables/useDashboardRealtime.ts","frontend/src/views/ad-accounts/Index.vue","frontend/src/views/ad-audiences/Index.vue","frontend/src/views/ad-biddings/Index.vue","frontend/src/views/ad-campaigns/Index.vue","frontend/src/views/ad-creatives/Index.vue","frontend/src/views/ad-reports/Index.vue","frontend/src/views/alliance-analytics/Index.vue","frontend/src/views/alliance-merchants/Index.vue","frontend/src/views/alliance-products/Index.vue","frontend/src/views/alliance-promotions/Index.vue","frontend/src/views/alliance-referrals/Index.vue","frontend/src/views/alliance-settlements/Index.vue","frontend/src/views/ap-ledger/Index.vue","frontend/src/views/approval-configs/Index.vue","frontend/src/views/approval-templates/Index.vue","frontend/src/views/bom/Index.vue","frontend/src/views/campaign-drafts/Index.vue","frontend/src/views/campaign-use-case-templates/Index.vue","frontend/src/views/channel-integrations/Index.vue","frontend/src/views/cohort-analysis/Index.vue","frontend/src/views/community-activities/Index.vue","frontend/src/views/community-analytics/Index.vue","frontend/src/views/community-groups/Index.vue","frontend/src/views/community-levels/Index.vue","frontend/src/views/community-members/Index.vue","frontend/src/views/community-messages/Index.vue","frontend/src/views/community-points/Index.vue","frontend/src/views/consumer-behavior-analytics/Index.vue","frontend/src/views/content-categories/Index.vue","frontend/src/views/content-copyright/Index.vue","frontend/src/views/content-creation/Index.vue","frontend/src/views/content-distribution/Index.vue","frontend/src/views/content-library/Index.vue","frontend/src/views/content-review/Index.vue","frontend/src/views/content-templates/Index.vue","frontend/src/views/contract-templates/Index.vue","frontend/src/views/cpq/Index.vue","frontend/src/views/cpq/composables/useCpqCommon.ts","frontend/src/views/crm-activities/Index.vue","frontend/src/views/cross-domain-funnel/Index.vue","frontend/src/views/customer-health/Index.vue","frontend/src/views/customer-journey/Index.vue","frontend/src/views/customer-ltv/Index.vue","frontend/src/views/customer-marketing/Index.vue","frontend/src/views/customer-segmentation/Index.vue","frontend/src/views/departments/Index.vue","frontend/src/views/devices/Index.vue","frontend/src/views/dimension-transform/Index.vue","frontend/src/views/email-marketing/Index.vue","frontend/src/views/email-templates/Index.vue","frontend/src/views/event-logs/Index.vue","frontend/src/views/expense-claims/Index.vue","frontend/src/views/faults/Index.vue","frontend/src/views/finance-os/ai/AutoCreditAdjustment.vue","frontend/src/views/finance-os/ai/CashForecastModel.vue","frontend/src/views/finance-os/ai/DefaultProbabilityModel.vue","frontend/src/views/finance-os/ai/ROIEvaluation.vue","frontend/src/views/geo-fences/Index.vue","frontend/src/views/geo-keywords/Detail.vue","frontend/src/views/geo-keywords/Index.vue","frontend/src/views/groupbuy-analytics/Index.vue","frontend/src/views/groupbuy-campaigns/Index.vue","frontend/src/views/groupbuy-orders/Index.vue","frontend/src/views/groupbuy-participants/Detail.vue","frontend/src/views/groupbuy-participants/Form.vue","frontend/src/views/groupbuy-participants/Index.vue","frontend/src/views/groupbuy-products/Index.vue","frontend/src/views/groupbuy-settlements/Index.vue","frontend/src/views/im-channels/Index.vue","frontend/src/views/invoice-requests/Index.vue","frontend/src/views/invoice-verification/Index.vue","frontend/src/views/journey-orchestration/Index.vue","frontend/src/views/knowledge-candidates/Index.vue","frontend/src/views/knowledge-capture/Index.vue","frontend/src/views/knowledge-feedback/Index.vue","frontend/src/views/landing-pages/Index.vue","frontend/src/views/lead-assignment/Index.vue","frontend/src/views/lead-pool/Index.vue","frontend/src/views/lead-pools/Index.vue","frontend/src/views/livestream-analytics/Index.vue","frontend/src/views/livestream-interactions/Index.vue","frontend/src/views/livestream-products/Index.vue","frontend/src/views/livestream-rooms/Index.vue","frontend/src/views/livestream-schedules/Index.vue","frontend/src/views/livestream-scripts/Index.vue","frontend/src/views/livestream/Index.vue","frontend/src/views/local-events/Index.vue","frontend/src/views/local-promotion/Index.vue","frontend/src/views/location-assessments/Index.vue","frontend/src/views/marketing-automation/Index.vue","frontend/src/views/marketing-calendar/Index.vue","frontend/src/views/marketing-content/Index.vue","frontend/src/views/marketing-effectiveness/Index.vue","frontend/src/views/marketing-forms/Index.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing-north-star/Index.vue","frontend/src/views/marketing-tools/Index.vue","frontend/src/views/member-levels/Index.vue","frontend/src/views/member-points/Index.vue","frontend/src/views/members/Index.vue","frontend/src/views/payment-plans/Index.vue","frontend/src/views/pm/Index.vue","frontend/src/views/positions/Index.vue","frontend/src/views/predictive-analytics/Index.vue","frontend/src/views/product-categories/Index.vue","frontend/src/views/projects/Index.vue","frontend/src/views/purchase-orders/Index.vue","frontend/src/views/realtime-trigger/Index.vue","frontend/src/views/redemptions/Index.vue","frontend/src/views/rfm-analysis/Index.vue","frontend/src/views/roles/Index.vue","frontend/src/views/satisfaction/Index.vue","frontend/src/views/settings/IntegrationServices.vue","frontend/src/views/social-accounts/Index.vue","frontend/src/views/social-auto-replies/Index.vue","frontend/src/views/social-competitors/Index.vue","frontend/src/views/social-followers/Index.vue","frontend/src/views/social-hot-topics/Index.vue","frontend/src/views/social-interactions/Index.vue","frontend/src/views/social-posts/Index.vue","frontend/src/views/spare-parts/Index.vue","frontend/src/views/store-inventory/Index.vue","frontend/src/views/store-settlements/Index.vue","frontend/src/views/store-staff/Index.vue","frontend/src/views/stores/Index.vue","frontend/src/views/supplier-center/Index.vue","frontend/src/views/supplier-payments/Index.vue","frontend/src/views/system-events/Index.vue","frontend/src/views/ticket-workflows/Index.vue","frontend/src/views/users/Index.vue","frontend/src/views/video-calls/Index.vue","frontend/src/views/video-content/Index.vue","reports/api-route-contract-audit.latest.json","reports/api-route-contract-audit.latest.md","reports/approval-governance.latest.json","reports/approval-governance.latest.md","reports/event-publishing-audit.latest.json","reports/event-publishing-audit.latest.md","reports/outbox-atomicity-audit.latest.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":5212729,"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":4,"open_issues_count":0,"open_pr_counter":1,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-04-13T00:24: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
|
1776169850
|
1776169851
|
0
|
1776169850
|
1776169851
|
|
|
0
|
Edit
Delete
|
|
40
|
feat(db): 添加福利管理模块数据库迁移
|
6
|
5
|
ci.yml
|
1
|
5
|
0
|
refs/heads/main
|
d169207d2a046f90cf861f8e805b45d3855fddc3
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"0000000000000000000000000000000000000000","after":"d169207d2a046f90cf861f8e805b45d3855fddc3","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/359a39b51f412a500e8e8e68555eacc56680d0e0...d169207d2a046f90cf861f8e805b45d3855fddc3","commits":[{"id":"d169207d2a046f90cf861f8e805b45d3855fddc3","message":"feat(db): 添加福利管理模块数据库迁移\n\n- 创建 hr_benefit_plans 福利计划表\n- 创建 hr_benefit_enrollments 福利登记表\n- 创建 hr_benefit_claims 福利申领表\n- 配置 RLS 多租户隔离策略\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d169207d2a046f90cf861f8e805b45d3855fddc3","author":{"name":"hi.laoluo","email":"hi.laoluo@hilaoluodeMacBook-Pro.local","username":""},"committer":{"name":"hi.laoluo","email":"hi.laoluo@hilaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-01-03T18:47:22+08:00","added":["backend/prisma/migrations/20260103200000_add_hr_benefits/migration.sql"],"removed":[],"modified":[]},{"id":"e2dd1f5474b144ee91733881c5a05e97396c8e54","message":"Merge remote-tracking branch 'origin/claude/add-benefits-management-BgwFU'\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/e2dd1f5474b144ee91733881c5a05e97396c8e54","author":{"name":"hi.laoluo","email":"hi.laoluo@hilaoluodeMacBook-Pro.local","username":""},"committer":{"name":"hi.laoluo","email":"hi.laoluo@hilaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-01-03T18:40:54+08:00","added":["backend/src/modules/hr/benefits/claims/claim.routes.ts","backend/src/modules/hr/benefits/claims/claim.schema.ts","backend/src/modules/hr/benefits/enrollments/enrollment.routes.ts","backend/src/modules/hr/benefits/enrollments/enrollment.schema.ts","backend/src/modules/hr/benefits/index.ts","backend/src/modules/hr/benefits/plans/plan.routes.ts","backend/src/modules/hr/benefits/plans/plan.schema.ts","frontend/src/api/modules/hr-benefits.ts","frontend/src/views/hr/benefits/Index.vue","frontend/src/views/hr/benefits/components/ClaimsTab.vue","frontend/src/views/hr/benefits/components/EnrollmentsTab.vue","frontend/src/views/hr/benefits/components/PlansTab.vue"],"removed":[],"modified":["backend/prisma/schema.prisma","backend/src/modules/hr/index.ts","backend/src/shared/constants/events.ts","backend/src/shared/constants/permissions.ts","frontend/src/router/index.ts"]},{"id":"a052eedc796d1fc44b3cc64de9429ddd84b59e87","message":"fix(frontend): 完善前端视图和权限检查\n\n- 修复续费状态映射与后端一致 (open→pending, quoted→negotiating)\n- 修复知识热力图组件 chartReady 引用问题\n- 添加 SWOT 业务编码前缀支持\n- 修复 SWOT 服务中的类型问题\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/a052eedc796d1fc44b3cc64de9429ddd84b59e87","author":{"name":"hi.laoluo","email":"hi.laoluo@hilaoluodeMacBook-Pro.local","username":""},"committer":{"name":"hi.laoluo","email":"hi.laoluo@hilaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-01-03T18:34:43+08:00","added":[],"removed":[],"modified":["backend/src/modules/knowledge/knowledge.routes.ts","backend/src/modules/swot-analyses/swot.service.ts","backend/src/shared/utils/biz-code.ts","frontend/src/api/modules/renewals.ts","frontend/src/views/im/Index.vue","frontend/src/views/knowledge/components/KnowledgeHeatmap.vue","frontend/src/views/renewals/Detail.vue","frontend/src/views/renewals/Form.vue","frontend/src/views/renewals/Index.vue"]},{"id":"d8de20002b217cbfcabe0883191b758a3aa8af00","message":"fix(frontend): 完善前端视图和权限检查\n\n修复内容:\n- 修复 formatNumber/formatMoney 函数未处理 undefined/null 导致的渲染崩溃\n- 添加广告创意/A/B测试/预算预警的统计接口\n- 修复序列号详情接口 Prisma select+include 语法错误\n- 修复交付验收列表 orders 为 null 时的空引用错误\n- 统一用户缓存失效使用 userCache.invalidateUser()\n- 完善 seed.ts 权限数据\n\n影响文件:\n- frontend: RoiAnalysis, Index, BudgetAlerts, Sessions, marketing 等视图\n- backend: ad-creative.routes, placement.routes, sn.routes, fulfillment.routes\n- backend: auth.service, auth.controller, user.routes\n- backend: prisma/seed.ts\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d8de20002b217cbfcabe0883191b758a3aa8af00","author":{"name":"hi.laoluo","email":"hi.laoluo@hilaoluodeMacBook-Pro.local","username":""},"committer":{"name":"hi.laoluo","email":"hi.laoluo@hilaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-01-03T18:21:51+08:00","added":[],"removed":[],"modified":["backend/prisma/seed.ts","backend/src/modules/ad-placement/ad-creative.routes.ts","backend/src/modules/ad-placement/placement.routes.ts","backend/src/modules/auth/auth.controller.ts","backend/src/modules/auth/auth.service.ts","backend/src/modules/fulfillment/fulfillment.routes.ts","backend/src/modules/serial-numbers/sn.routes.ts","backend/src/modules/users/user.routes.ts","frontend/src/views/ad-placement/BudgetAlerts.vue","frontend/src/views/ad-placement/Index.vue","frontend/src/views/ad-placement/RoiAnalysis.vue","frontend/src/views/finance/Index.vue","frontend/src/views/livestream/Sessions.vue","frontend/src/views/marketing-matrix/Index.vue","frontend/src/views/marketing/Index.vue","frontend/src/views/renewal-tasks/Detail.vue"]},{"id":"47e29a8c67322cf0bcd9a022cecd04eb289f9bed","message":"feat(hr): 添加福利管理模块\n\n新增功能:\n- 福利计划管理:社保、公积金、商业保险、补贴等福利方案配置\n- 员工福利登记:员工参保登记、批量登记、终止登记\n- 福利申领:报销、理赔、提取申请及审批流程\n\n后端变更:\n- 添加 hr_benefit_plans、hr_benefit_enrollments、hr_benefit_claims 数据库模型\n- 添加福利管理权限定义(benefit-plan、benefit-enrollment、benefit-claim)\n- 添加福利管理事件类型(HR_BENEFIT_EVENTS)\n- 创建 benefits 模块(plans、enrollments、claims 三个子模块)\n\n前端变更:\n- 添加 hr-benefits API 模块\n- 添加福利管理视图(Index.vue 及三个选项卡组件)\n- 添加福利管理路由配置\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/47e29a8c67322cf0bcd9a022cecd04eb289f9bed","author":{"name":"Claude","email":"noreply@anthropic.com","username":""},"committer":{"name":"Claude","email":"noreply@anthropic.com","username":""},"verification":null,"timestamp":"2026-01-03T09:39:22Z","added":["backend/src/modules/hr/benefits/claims/claim.routes.ts","backend/src/modules/hr/benefits/claims/claim.schema.ts","backend/src/modules/hr/benefits/enrollments/enrollment.routes.ts","backend/src/modules/hr/benefits/enrollments/enrollment.schema.ts","backend/src/modules/hr/benefits/index.ts","backend/src/modules/hr/benefits/plans/plan.routes.ts","backend/src/modules/hr/benefits/plans/plan.schema.ts","frontend/src/api/modules/hr-benefits.ts","frontend/src/views/hr/benefits/Index.vue","frontend/src/views/hr/benefits/components/ClaimsTab.vue","frontend/src/views/hr/benefits/components/EnrollmentsTab.vue","frontend/src/views/hr/benefits/components/PlansTab.vue"],"removed":[],"modified":["backend/prisma/schema.prisma","backend/src/modules/hr/index.ts","backend/src/shared/constants/events.ts","backend/src/shared/constants/permissions.ts","frontend/src/router/index.ts"]}],"total_commits":0,"head_commit":{"id":"d169207d2a046f90cf861f8e805b45d3855fddc3","message":"feat(db): 添加福利管理模块数据库迁移\n\n- 创建 hr_benefit_plans 福利计划表\n- 创建 hr_benefit_enrollments 福利登记表\n- 创建 hr_benefit_claims 福利申领表\n- 配置 RLS 多租户隔离策略\n\n🤖 Generated with [Claude Code](https://claude.com/claude-code)\n\nCo-Authored-By: Claude Opus 4.5 \u003cnoreply@anthropic.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/d169207d2a046f90cf861f8e805b45d3855fddc3","author":{"name":"hi.laoluo","email":"hi.laoluo@hilaoluodeMacBook-Pro.local","username":""},"committer":{"name":"hi.laoluo","email":"hi.laoluo@hilaoluodeMacBook-Pro.local","username":""},"verification":null,"timestamp":"2026-01-03T18:47:22+08:00","added":["backend/prisma/migrations/20260103200000_add_hr_benefits/migration.sql"],"removed":[],"modified":[]},"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/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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":true,"fork":false,"template":false,"parent":null,"mirror":false,"size":27,"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,"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-02-23T23:59:12+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","repo_transfer":null},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
2
|
17
|
1771862353
|
1771862367
|
0
|
1771862352
|
1771862367
|
NULL
|
|
0
|
Edit
Delete
|
|
7624
|
refactor: 5模块78处as any精确替换 + v-permission第三批 + API refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理...
|
6
|
5
|
e2e-tests.yml
|
7549
|
5
|
0
|
refs/heads/main
|
cfe1efeda7265f05374d3bd0036cf684a15f3cb9
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"07680473f95a02e139e159147a93ef74e61f3db2","after":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/07680473f95a02e139e159147a93ef74e61f3db2...cfe1efeda7265f05374d3bd0036cf684a15f3cb9","commits":[{"id":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","message":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理\n\n## as any 精确替换 (78处 → 0)\n- community-material.service.ts: 17→0 (Prisma UncheckedCreateInput + InputJsonValue)\n- swot.service.ts: 16→0 (Record\u003cstring,unknown\u003e + 具体接口)\n- groupbuy-analytics.service.ts: 16→0 (Prisma WhereInput + 移除冗余断言)\n- groupbuy-commission.service.ts: 15→0 (Prisma WhereInput + InputJsonValue)\n- workflow.service.ts: 14→0 (InputJsonValue + 具体类型)\n\n## v-permission 第三批 (9个指令)\n- knowledge: create (1)\n- sla: create (1)\n- inventory: update×2 (2)\n- assets: import/export/create (3)\n\n## 前端 API 层 any 清理\n- factory.ts: Record\u003cstring,any\u003e → Record\u003cstring,unknown\u003e (4处)\n- response-normalizer.ts: any → unknown (4处)\n\n累计 as any 清零:203处 (125+78)\n累计 v-permission:99个指令覆盖16模块\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cfe1efeda7265f05374d3bd0036cf684a15f3cb9","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T09:17:32+08:00","added":[],"removed":[],"modified":["backend/src/modules/community-materials/community-material.service.ts","backend/src/modules/groupbuy-analytics/groupbuy-analytics.service.ts","backend/src/modules/groupbuy-commissions/groupbuy-commission.service.ts","backend/src/modules/marketing-automation/workflow.service.ts","backend/src/modules/swot-analyses/swot.service.ts","frontend/src/api/factory.ts","frontend/src/api/response-normalizer.ts","frontend/src/views/assets/Index.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/knowledge/Index.vue","frontend/src/views/sla/Index.vue"]}],"total_commits":0,"head_commit":{"id":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","message":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理\n\n## as any 精确替换 (78处 → 0)\n- community-material.service.ts: 17→0 (Prisma UncheckedCreateInput + InputJsonValue)\n- swot.service.ts: 16→0 (Record\u003cstring,unknown\u003e + 具体接口)\n- groupbuy-analytics.service.ts: 16→0 (Prisma WhereInput + 移除冗余断言)\n- groupbuy-commission.service.ts: 15→0 (Prisma WhereInput + InputJsonValue)\n- workflow.service.ts: 14→0 (InputJsonValue + 具体类型)\n\n## v-permission 第三批 (9个指令)\n- knowledge: create (1)\n- sla: create (1)\n- inventory: update×2 (2)\n- assets: import/export/create (3)\n\n## 前端 API 层 any 清理\n- factory.ts: Record\u003cstring,any\u003e → Record\u003cstring,unknown\u003e (4处)\n- response-normalizer.ts: any → unknown (4处)\n\n累计 as any 清零:203处 (125+78)\n累计 v-permission:99个指令覆盖16模块\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cfe1efeda7265f05374d3bd0036cf684a15f3cb9","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T09:17:32+08:00","added":[],"removed":[],"modified":["backend/src/modules/community-materials/community-material.service.ts","backend/src/modules/groupbuy-analytics/groupbuy-analytics.service.ts","backend/src/modules/groupbuy-commissions/groupbuy-commission.service.ts","backend/src/modules/marketing-automation/workflow.service.ts","backend/src/modules/swot-analyses/swot.service.ts","frontend/src/api/factory.ts","frontend/src/api/response-normalizer.ts","frontend/src/views/assets/Index.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/knowledge/Index.vue","frontend/src/views/sla/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":1956407,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:01:59+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
2
|
20
|
1774315057
|
1774315722
|
0
|
1774315056
|
1774315771
|
|
|
0
|
Edit
Delete
|
|
7625
|
refactor: 5模块78处as any精确替换 + v-permission第三批 + API refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理...
|
6
|
5
|
test-pipeline.yml
|
7550
|
5
|
0
|
refs/heads/main
|
cfe1efeda7265f05374d3bd0036cf684a15f3cb9
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"07680473f95a02e139e159147a93ef74e61f3db2","after":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/07680473f95a02e139e159147a93ef74e61f3db2...cfe1efeda7265f05374d3bd0036cf684a15f3cb9","commits":[{"id":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","message":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理\n\n## as any 精确替换 (78处 → 0)\n- community-material.service.ts: 17→0 (Prisma UncheckedCreateInput + InputJsonValue)\n- swot.service.ts: 16→0 (Record\u003cstring,unknown\u003e + 具体接口)\n- groupbuy-analytics.service.ts: 16→0 (Prisma WhereInput + 移除冗余断言)\n- groupbuy-commission.service.ts: 15→0 (Prisma WhereInput + InputJsonValue)\n- workflow.service.ts: 14→0 (InputJsonValue + 具体类型)\n\n## v-permission 第三批 (9个指令)\n- knowledge: create (1)\n- sla: create (1)\n- inventory: update×2 (2)\n- assets: import/export/create (3)\n\n## 前端 API 层 any 清理\n- factory.ts: Record\u003cstring,any\u003e → Record\u003cstring,unknown\u003e (4处)\n- response-normalizer.ts: any → unknown (4处)\n\n累计 as any 清零:203处 (125+78)\n累计 v-permission:99个指令覆盖16模块\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cfe1efeda7265f05374d3bd0036cf684a15f3cb9","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T09:17:32+08:00","added":[],"removed":[],"modified":["backend/src/modules/community-materials/community-material.service.ts","backend/src/modules/groupbuy-analytics/groupbuy-analytics.service.ts","backend/src/modules/groupbuy-commissions/groupbuy-commission.service.ts","backend/src/modules/marketing-automation/workflow.service.ts","backend/src/modules/swot-analyses/swot.service.ts","frontend/src/api/factory.ts","frontend/src/api/response-normalizer.ts","frontend/src/views/assets/Index.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/knowledge/Index.vue","frontend/src/views/sla/Index.vue"]}],"total_commits":0,"head_commit":{"id":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","message":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理\n\n## as any 精确替换 (78处 → 0)\n- community-material.service.ts: 17→0 (Prisma UncheckedCreateInput + InputJsonValue)\n- swot.service.ts: 16→0 (Record\u003cstring,unknown\u003e + 具体接口)\n- groupbuy-analytics.service.ts: 16→0 (Prisma WhereInput + 移除冗余断言)\n- groupbuy-commission.service.ts: 15→0 (Prisma WhereInput + InputJsonValue)\n- workflow.service.ts: 14→0 (InputJsonValue + 具体类型)\n\n## v-permission 第三批 (9个指令)\n- knowledge: create (1)\n- sla: create (1)\n- inventory: update×2 (2)\n- assets: import/export/create (3)\n\n## 前端 API 层 any 清理\n- factory.ts: Record\u003cstring,any\u003e → Record\u003cstring,unknown\u003e (4处)\n- response-normalizer.ts: any → unknown (4处)\n\n累计 as any 清零:203处 (125+78)\n累计 v-permission:99个指令覆盖16模块\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cfe1efeda7265f05374d3bd0036cf684a15f3cb9","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T09:17:32+08:00","added":[],"removed":[],"modified":["backend/src/modules/community-materials/community-material.service.ts","backend/src/modules/groupbuy-analytics/groupbuy-analytics.service.ts","backend/src/modules/groupbuy-commissions/groupbuy-commission.service.ts","backend/src/modules/marketing-automation/workflow.service.ts","backend/src/modules/swot-analyses/swot.service.ts","frontend/src/api/factory.ts","frontend/src/api/response-normalizer.ts","frontend/src/views/assets/Index.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/knowledge/Index.vue","frontend/src/views/sla/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":1956407,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:01:59+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
2
|
68
|
1774315723
|
1774315758
|
0
|
1774315057
|
1774315826
|
group: test-pipeline-${{ github.ref }}
cancel-in-p group: test-pipeline-${{ github.ref }}
cancel-in-progress: "true"
...
|
test-pipeline-refs/heads/main
|
1
|
Edit
Delete
|
|
7626
|
refactor: 5模块78处as any精确替换 + v-permission第三批 + API refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理...
|
6
|
5
|
health-check.yml
|
7551
|
-2
|
124
|
refs/heads/main
|
cfe1efeda7265f05374d3bd0036cf684a15f3cb9
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"07680473f95a02e139e159147a93ef74e61f3db2","after":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/07680473f95a02e139e159147a93ef74e61f3db2...cfe1efeda7265f05374d3bd0036cf684a15f3cb9","commits":[{"id":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","message":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理\n\n## as any 精确替换 (78处 → 0)\n- community-material.service.ts: 17→0 (Prisma UncheckedCreateInput + InputJsonValue)\n- swot.service.ts: 16→0 (Record\u003cstring,unknown\u003e + 具体接口)\n- groupbuy-analytics.service.ts: 16→0 (Prisma WhereInput + 移除冗余断言)\n- groupbuy-commission.service.ts: 15→0 (Prisma WhereInput + InputJsonValue)\n- workflow.service.ts: 14→0 (InputJsonValue + 具体类型)\n\n## v-permission 第三批 (9个指令)\n- knowledge: create (1)\n- sla: create (1)\n- inventory: update×2 (2)\n- assets: import/export/create (3)\n\n## 前端 API 层 any 清理\n- factory.ts: Record\u003cstring,any\u003e → Record\u003cstring,unknown\u003e (4处)\n- response-normalizer.ts: any → unknown (4处)\n\n累计 as any 清零:203处 (125+78)\n累计 v-permission:99个指令覆盖16模块\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cfe1efeda7265f05374d3bd0036cf684a15f3cb9","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T09:17:32+08:00","added":[],"removed":[],"modified":["backend/src/modules/community-materials/community-material.service.ts","backend/src/modules/groupbuy-analytics/groupbuy-analytics.service.ts","backend/src/modules/groupbuy-commissions/groupbuy-commission.service.ts","backend/src/modules/marketing-automation/workflow.service.ts","backend/src/modules/swot-analyses/swot.service.ts","frontend/src/api/factory.ts","frontend/src/api/response-normalizer.ts","frontend/src/views/assets/Index.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/knowledge/Index.vue","frontend/src/views/sla/Index.vue"]}],"total_commits":0,"head_commit":{"id":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","message":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理\n\n## as any 精确替换 (78处 → 0)\n- community-material.service.ts: 17→0 (Prisma UncheckedCreateInput + InputJsonValue)\n- swot.service.ts: 16→0 (Record\u003cstring,unknown\u003e + 具体接口)\n- groupbuy-analytics.service.ts: 16→0 (Prisma WhereInput + 移除冗余断言)\n- groupbuy-commission.service.ts: 15→0 (Prisma WhereInput + InputJsonValue)\n- workflow.service.ts: 14→0 (InputJsonValue + 具体类型)\n\n## v-permission 第三批 (9个指令)\n- knowledge: create (1)\n- sla: create (1)\n- inventory: update×2 (2)\n- assets: import/export/create (3)\n\n## 前端 API 层 any 清理\n- factory.ts: Record\u003cstring,any\u003e → Record\u003cstring,unknown\u003e (4处)\n- response-normalizer.ts: any → unknown (4处)\n\n累计 as any 清零:203处 (125+78)\n累计 v-permission:99个指令覆盖16模块\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cfe1efeda7265f05374d3bd0036cf684a15f3cb9","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T09:17:32+08:00","added":[],"removed":[],"modified":["backend/src/modules/community-materials/community-material.service.ts","backend/src/modules/groupbuy-analytics/groupbuy-analytics.service.ts","backend/src/modules/groupbuy-commissions/groupbuy-commission.service.ts","backend/src/modules/marketing-automation/workflow.service.ts","backend/src/modules/swot-analyses/swot.service.ts","frontend/src/api/factory.ts","frontend/src/api/response-normalizer.ts","frontend/src/views/assets/Index.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/knowledge/Index.vue","frontend/src/views/sla/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":1956407,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:01:59+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1774315760
|
1774315761
|
0
|
1774315240
|
1774315761
|
|
|
0
|
Edit
Delete
|
|
7627
|
refactor: 5模块78处as any精确替换 + v-permission第三批 + API refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理...
|
6
|
5
|
health-check.yml
|
7552
|
-2
|
124
|
refs/heads/main
|
cfe1efeda7265f05374d3bd0036cf684a15f3cb9
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"07680473f95a02e139e159147a93ef74e61f3db2","after":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/07680473f95a02e139e159147a93ef74e61f3db2...cfe1efeda7265f05374d3bd0036cf684a15f3cb9","commits":[{"id":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","message":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理\n\n## as any 精确替换 (78处 → 0)\n- community-material.service.ts: 17→0 (Prisma UncheckedCreateInput + InputJsonValue)\n- swot.service.ts: 16→0 (Record\u003cstring,unknown\u003e + 具体接口)\n- groupbuy-analytics.service.ts: 16→0 (Prisma WhereInput + 移除冗余断言)\n- groupbuy-commission.service.ts: 15→0 (Prisma WhereInput + InputJsonValue)\n- workflow.service.ts: 14→0 (InputJsonValue + 具体类型)\n\n## v-permission 第三批 (9个指令)\n- knowledge: create (1)\n- sla: create (1)\n- inventory: update×2 (2)\n- assets: import/export/create (3)\n\n## 前端 API 层 any 清理\n- factory.ts: Record\u003cstring,any\u003e → Record\u003cstring,unknown\u003e (4处)\n- response-normalizer.ts: any → unknown (4处)\n\n累计 as any 清零:203处 (125+78)\n累计 v-permission:99个指令覆盖16模块\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cfe1efeda7265f05374d3bd0036cf684a15f3cb9","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T09:17:32+08:00","added":[],"removed":[],"modified":["backend/src/modules/community-materials/community-material.service.ts","backend/src/modules/groupbuy-analytics/groupbuy-analytics.service.ts","backend/src/modules/groupbuy-commissions/groupbuy-commission.service.ts","backend/src/modules/marketing-automation/workflow.service.ts","backend/src/modules/swot-analyses/swot.service.ts","frontend/src/api/factory.ts","frontend/src/api/response-normalizer.ts","frontend/src/views/assets/Index.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/knowledge/Index.vue","frontend/src/views/sla/Index.vue"]}],"total_commits":0,"head_commit":{"id":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","message":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理\n\n## as any 精确替换 (78处 → 0)\n- community-material.service.ts: 17→0 (Prisma UncheckedCreateInput + InputJsonValue)\n- swot.service.ts: 16→0 (Record\u003cstring,unknown\u003e + 具体接口)\n- groupbuy-analytics.service.ts: 16→0 (Prisma WhereInput + 移除冗余断言)\n- groupbuy-commission.service.ts: 15→0 (Prisma WhereInput + InputJsonValue)\n- workflow.service.ts: 14→0 (InputJsonValue + 具体类型)\n\n## v-permission 第三批 (9个指令)\n- knowledge: create (1)\n- sla: create (1)\n- inventory: update×2 (2)\n- assets: import/export/create (3)\n\n## 前端 API 层 any 清理\n- factory.ts: Record\u003cstring,any\u003e → Record\u003cstring,unknown\u003e (4处)\n- response-normalizer.ts: any → unknown (4处)\n\n累计 as any 清零:203处 (125+78)\n累计 v-permission:99个指令覆盖16模块\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cfe1efeda7265f05374d3bd0036cf684a15f3cb9","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T09:17:32+08:00","added":[],"removed":[],"modified":["backend/src/modules/community-materials/community-material.service.ts","backend/src/modules/groupbuy-analytics/groupbuy-analytics.service.ts","backend/src/modules/groupbuy-commissions/groupbuy-commission.service.ts","backend/src/modules/marketing-automation/workflow.service.ts","backend/src/modules/swot-analyses/swot.service.ts","frontend/src/api/factory.ts","frontend/src/api/response-normalizer.ts","frontend/src/views/assets/Index.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/knowledge/Index.vue","frontend/src/views/sla/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":1956407,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:01:59+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1774315762
|
1774315763
|
0
|
1774315540
|
1774315763
|
|
|
0
|
Edit
Delete
|
|
7628
|
refactor: 5模块78处as any精确替换 + v-permission第三批 + API refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理...
|
6
|
5
|
test-report.yml
|
7553
|
5
|
0
|
refs/heads/main
|
cfe1efeda7265f05374d3bd0036cf684a15f3cb9
|
0
|
0
|
0
|
workflow_run
|
{"action":"completed","workflo {"action":"completed","workflow":{"id":"e2e-tests.yml","name":"E2E Tests","path":".github/workflows/e2e-tests.yml","state":"active","created_at":"2026-03-24T09:17:32+08:00","updated_at":"2026-03-24T09:17:32+08:00","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/workflows/e2e-tests.yml","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/src/branch/main/.github/workflows/e2e-tests.yml","badge_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/workflows/e2e-tests.yml/badge.svg?branch=main","deleted_at":"0001-01-01T00:00:00Z"},"workflow_run":{"id":7624,"url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/runs/7624","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/runs/7624","display_title":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理","path":"e2e-tests.yml@refs/heads/main","event":"push","run_attempt":0,"run_number":7549,"head_sha":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","head_branch":"main","status":"completed","actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"trigger_actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":1956499,"language":"HTML","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:17:39+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":false,"push":false,"pull":false},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"conclusion":"failure","started_at":"2026-03-24T09:17:37+08:00","completed_at":"2026-03-24T09:28:42+08:00"},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":1956499,"language":"HTML","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:17:39+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
workflow_run
|
2
|
14
|
1774315764
|
1774315768
|
0
|
1774315722
|
1774315784
|
|
|
0
|
Edit
Delete
|
|
7629
|
refactor: 5模块78处as any精确替换 + v-permission第三批 + API refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理...
|
6
|
5
|
deploy.yml
|
7554
|
5
|
0
|
refs/heads/main
|
cfe1efeda7265f05374d3bd0036cf684a15f3cb9
|
0
|
0
|
0
|
workflow_run
|
{"action":"completed","workflo {"action":"completed","workflow":{"id":"test-pipeline.yml","name":"Test Pipeline","path":".github/workflows/test-pipeline.yml","state":"active","created_at":"2026-03-24T09:17:32+08:00","updated_at":"2026-03-24T09:17:32+08:00","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/workflows/test-pipeline.yml","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/src/branch/main/.github/workflows/test-pipeline.yml","badge_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/workflows/test-pipeline.yml/badge.svg?branch=main","deleted_at":"0001-01-01T00:00:00Z"},"workflow_run":{"id":7625,"url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/runs/7625","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/runs/7625","display_title":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理","path":"test-pipeline.yml@refs/heads/main","event":"push","run_attempt":0,"run_number":7550,"head_sha":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","head_branch":"main","status":"completed","actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"trigger_actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":1956499,"language":"HTML","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:17:39+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":false,"push":false,"pull":false},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"conclusion":"failure","started_at":"2026-03-24T09:28:43+08:00","completed_at":"2026-03-24T09:29:18+08:00"},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":1956499,"language":"HTML","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:17:39+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
workflow_run
|
3
|
12
|
0
|
1774315759
|
0
|
1774315758
|
1774315759
|
group: deploy-${{ github.ref }}
cancel-in-progress group: deploy-${{ github.ref }}
cancel-in-progress: "false"
...
|
deploy-refs/heads/main
|
0
|
Edit
Delete
|
|
7630
|
refactor: 5模块78处as any精确替换 + v-permission第三批 + API refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理...
|
6
|
5
|
deploy.yml
|
7555
|
5
|
0
|
refs/heads/main
|
cfe1efeda7265f05374d3bd0036cf684a15f3cb9
|
0
|
0
|
0
|
workflow_run
|
{"action":"completed","workflo {"action":"completed","workflow":{"id":"test-pipeline.yml","name":"Test Pipeline","path":".github/workflows/test-pipeline.yml","state":"active","created_at":"2026-03-24T09:17:32+08:00","updated_at":"2026-03-24T09:17:32+08:00","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/workflows/test-pipeline.yml","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/src/branch/main/.github/workflows/test-pipeline.yml","badge_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/workflows/test-pipeline.yml/badge.svg?branch=main","deleted_at":"0001-01-01T00:00:00Z"},"workflow_run":{"id":7625,"url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/runs/7625","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/runs/7625","display_title":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理","path":"test-pipeline.yml@refs/heads/main","event":"push","run_attempt":0,"run_number":7550,"head_sha":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","head_branch":"main","status":"completed","actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"trigger_actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":1956499,"language":"HTML","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:17:39+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":false,"push":false,"pull":false},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"conclusion":"failure","started_at":"2026-03-24T09:28:43+08:00","completed_at":"2026-03-24T09:29:18+08:00"},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":1956499,"language":"HTML","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:17:39+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
workflow_run
|
3
|
21
|
1774315780
|
1774315823
|
0
|
1774315760
|
1774315823
|
group: deploy-${{ github.ref }}
cancel-in-progress group: deploy-${{ github.ref }}
cancel-in-progress: "false"
...
|
deploy-refs/heads/main
|
0
|
Edit
Delete
|
|
7631
|
refactor: 5模块78处as any精确替换 + v-permission第三批 + API refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理...
|
6
|
5
|
test-report.yml
|
7556
|
5
|
0
|
refs/heads/main
|
cfe1efeda7265f05374d3bd0036cf684a15f3cb9
|
0
|
0
|
0
|
workflow_run
|
{"action":"completed","workflo {"action":"completed","workflow":{"id":"e2e-tests.yml","name":"E2E Tests","path":".github/workflows/e2e-tests.yml","state":"active","created_at":"2026-03-24T09:17:32+08:00","updated_at":"2026-03-24T09:17:32+08:00","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/workflows/e2e-tests.yml","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/src/branch/main/.github/workflows/e2e-tests.yml","badge_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/workflows/e2e-tests.yml/badge.svg?branch=main","deleted_at":"0001-01-01T00:00:00Z"},"workflow_run":{"id":7624,"url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/runs/7624","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/runs/7624","display_title":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理","path":"e2e-tests.yml@refs/heads/main","event":"push","run_attempt":0,"run_number":7549,"head_sha":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","head_branch":"main","status":"completed","actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"trigger_actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":1956499,"language":"HTML","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:17:39+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":false,"push":false,"pull":false},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"conclusion":"failure","started_at":"2026-03-24T09:17:37+08:00","completed_at":"2026-03-24T09:28:42+08:00"},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":1956499,"language":"HTML","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:17:39+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
workflow_run
|
2
|
14
|
1774315786
|
1774315788
|
0
|
1774315771
|
1774315821
|
|
|
0
|
Edit
Delete
|
|
7632
|
refactor: 5模块78处as any精确替换 + v-permission第三批 + API refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理...
|
6
|
5
|
deploy.yml
|
7557
|
5
|
0
|
refs/heads/main
|
cfe1efeda7265f05374d3bd0036cf684a15f3cb9
|
0
|
0
|
0
|
workflow_run
|
{"action":"completed","workflo {"action":"completed","workflow":{"id":"test-pipeline.yml","name":"Test Pipeline","path":".github/workflows/test-pipeline.yml","state":"active","created_at":"2026-03-24T09:17:32+08:00","updated_at":"2026-03-24T09:17:32+08:00","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/workflows/test-pipeline.yml","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/src/branch/main/.github/workflows/test-pipeline.yml","badge_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/workflows/test-pipeline.yml/badge.svg?branch=main","deleted_at":"0001-01-01T00:00:00Z"},"workflow_run":{"id":7625,"url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/runs/7625","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/runs/7625","display_title":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理","path":"test-pipeline.yml@refs/heads/main","event":"push","run_attempt":0,"run_number":7550,"head_sha":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","head_branch":"main","status":"completed","actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"trigger_actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":1956499,"language":"HTML","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:17:39+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":false,"push":false,"pull":false},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"conclusion":"failure","started_at":"2026-03-24T09:28:43+08:00","completed_at":"2026-03-24T09:29:18+08:00"},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":1956499,"language":"HTML","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:17:39+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
workflow_run
|
3
|
12
|
0
|
1774315826
|
0
|
1774315824
|
1774315827
|
group: deploy-${{ github.ref }}
cancel-in-progress group: deploy-${{ github.ref }}
cancel-in-progress: "false"
...
|
deploy-refs/heads/main
|
0
|
Edit
Delete
|
|
7633
|
refactor: 5模块78处as any精确替换 + v-permission第三批 + API refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理...
|
6
|
5
|
deploy.yml
|
7558
|
5
|
0
|
refs/heads/main
|
cfe1efeda7265f05374d3bd0036cf684a15f3cb9
|
0
|
0
|
0
|
workflow_run
|
{"action":"completed","workflo {"action":"completed","workflow":{"id":"test-pipeline.yml","name":"Test Pipeline","path":".github/workflows/test-pipeline.yml","state":"active","created_at":"2026-03-24T09:17:32+08:00","updated_at":"2026-03-24T09:17:32+08:00","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/workflows/test-pipeline.yml","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/src/branch/main/.github/workflows/test-pipeline.yml","badge_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/workflows/test-pipeline.yml/badge.svg?branch=main","deleted_at":"0001-01-01T00:00:00Z"},"workflow_run":{"id":7625,"url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/actions/runs/7625","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/actions/runs/7625","display_title":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理","path":"test-pipeline.yml@refs/heads/main","event":"push","run_attempt":0,"run_number":7550,"head_sha":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","head_branch":"main","status":"completed","actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"trigger_actor":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":1956499,"language":"HTML","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:17:39+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":false,"push":false,"pull":false},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"conclusion":"failure","started_at":"2026-03-24T09:28:43+08:00","completed_at":"2026-03-24T09:29:18+08:00"},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"},"name":"juhi-omni-knowledge-hub","full_name":"luoanwu/juhi-omni-knowledge-hub","description":"巨嗨全域智库 - B2B RevOps 全生命周期平台","empty":false,"private":false,"fork":false,"template":false,"mirror":false,"size":1956499,"language":"HTML","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:17:39+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","topics":[],"licenses":[]},"sender":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"5+luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatar/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
workflow_run
|
1
|
40
|
1774315827
|
1774315848
|
0
|
1774315827
|
1774315848
|
group: deploy-${{ github.ref }}
cancel-in-progress group: deploy-${{ github.ref }}
cancel-in-progress: "false"
...
|
deploy-refs/heads/main
|
0
|
Edit
Delete
|
|
7634
|
refactor: 5模块78处as any精确替换 + v-permission第三批 + API refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理...
|
6
|
5
|
health-check.yml
|
7559
|
-2
|
124
|
refs/heads/main
|
cfe1efeda7265f05374d3bd0036cf684a15f3cb9
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"07680473f95a02e139e159147a93ef74e61f3db2","after":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/07680473f95a02e139e159147a93ef74e61f3db2...cfe1efeda7265f05374d3bd0036cf684a15f3cb9","commits":[{"id":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","message":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理\n\n## as any 精确替换 (78处 → 0)\n- community-material.service.ts: 17→0 (Prisma UncheckedCreateInput + InputJsonValue)\n- swot.service.ts: 16→0 (Record\u003cstring,unknown\u003e + 具体接口)\n- groupbuy-analytics.service.ts: 16→0 (Prisma WhereInput + 移除冗余断言)\n- groupbuy-commission.service.ts: 15→0 (Prisma WhereInput + InputJsonValue)\n- workflow.service.ts: 14→0 (InputJsonValue + 具体类型)\n\n## v-permission 第三批 (9个指令)\n- knowledge: create (1)\n- sla: create (1)\n- inventory: update×2 (2)\n- assets: import/export/create (3)\n\n## 前端 API 层 any 清理\n- factory.ts: Record\u003cstring,any\u003e → Record\u003cstring,unknown\u003e (4处)\n- response-normalizer.ts: any → unknown (4处)\n\n累计 as any 清零:203处 (125+78)\n累计 v-permission:99个指令覆盖16模块\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cfe1efeda7265f05374d3bd0036cf684a15f3cb9","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T09:17:32+08:00","added":[],"removed":[],"modified":["backend/src/modules/community-materials/community-material.service.ts","backend/src/modules/groupbuy-analytics/groupbuy-analytics.service.ts","backend/src/modules/groupbuy-commissions/groupbuy-commission.service.ts","backend/src/modules/marketing-automation/workflow.service.ts","backend/src/modules/swot-analyses/swot.service.ts","frontend/src/api/factory.ts","frontend/src/api/response-normalizer.ts","frontend/src/views/assets/Index.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/knowledge/Index.vue","frontend/src/views/sla/Index.vue"]}],"total_commits":0,"head_commit":{"id":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","message":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理\n\n## as any 精确替换 (78处 → 0)\n- community-material.service.ts: 17→0 (Prisma UncheckedCreateInput + InputJsonValue)\n- swot.service.ts: 16→0 (Record\u003cstring,unknown\u003e + 具体接口)\n- groupbuy-analytics.service.ts: 16→0 (Prisma WhereInput + 移除冗余断言)\n- groupbuy-commission.service.ts: 15→0 (Prisma WhereInput + InputJsonValue)\n- workflow.service.ts: 14→0 (InputJsonValue + 具体类型)\n\n## v-permission 第三批 (9个指令)\n- knowledge: create (1)\n- sla: create (1)\n- inventory: update×2 (2)\n- assets: import/export/create (3)\n\n## 前端 API 层 any 清理\n- factory.ts: Record\u003cstring,any\u003e → Record\u003cstring,unknown\u003e (4处)\n- response-normalizer.ts: any → unknown (4处)\n\n累计 as any 清零:203处 (125+78)\n累计 v-permission:99个指令覆盖16模块\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cfe1efeda7265f05374d3bd0036cf684a15f3cb9","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T09:17:32+08:00","added":[],"removed":[],"modified":["backend/src/modules/community-materials/community-material.service.ts","backend/src/modules/groupbuy-analytics/groupbuy-analytics.service.ts","backend/src/modules/groupbuy-commissions/groupbuy-commission.service.ts","backend/src/modules/marketing-automation/workflow.service.ts","backend/src/modules/swot-analyses/swot.service.ts","frontend/src/api/factory.ts","frontend/src/api/response-normalizer.ts","frontend/src/views/assets/Index.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/knowledge/Index.vue","frontend/src/views/sla/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":1956407,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:01:59+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1774315843
|
1774315844
|
0
|
1774315840
|
1774315844
|
|
|
0
|
Edit
Delete
|
|
7635
|
refactor: 5模块78处as any精确替换 + v-permission第三批 + API refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理...
|
6
|
5
|
health-check.yml
|
7560
|
-2
|
124
|
refs/heads/main
|
cfe1efeda7265f05374d3bd0036cf684a15f3cb9
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"07680473f95a02e139e159147a93ef74e61f3db2","after":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/07680473f95a02e139e159147a93ef74e61f3db2...cfe1efeda7265f05374d3bd0036cf684a15f3cb9","commits":[{"id":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","message":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理\n\n## as any 精确替换 (78处 → 0)\n- community-material.service.ts: 17→0 (Prisma UncheckedCreateInput + InputJsonValue)\n- swot.service.ts: 16→0 (Record\u003cstring,unknown\u003e + 具体接口)\n- groupbuy-analytics.service.ts: 16→0 (Prisma WhereInput + 移除冗余断言)\n- groupbuy-commission.service.ts: 15→0 (Prisma WhereInput + InputJsonValue)\n- workflow.service.ts: 14→0 (InputJsonValue + 具体类型)\n\n## v-permission 第三批 (9个指令)\n- knowledge: create (1)\n- sla: create (1)\n- inventory: update×2 (2)\n- assets: import/export/create (3)\n\n## 前端 API 层 any 清理\n- factory.ts: Record\u003cstring,any\u003e → Record\u003cstring,unknown\u003e (4处)\n- response-normalizer.ts: any → unknown (4处)\n\n累计 as any 清零:203处 (125+78)\n累计 v-permission:99个指令覆盖16模块\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cfe1efeda7265f05374d3bd0036cf684a15f3cb9","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T09:17:32+08:00","added":[],"removed":[],"modified":["backend/src/modules/community-materials/community-material.service.ts","backend/src/modules/groupbuy-analytics/groupbuy-analytics.service.ts","backend/src/modules/groupbuy-commissions/groupbuy-commission.service.ts","backend/src/modules/marketing-automation/workflow.service.ts","backend/src/modules/swot-analyses/swot.service.ts","frontend/src/api/factory.ts","frontend/src/api/response-normalizer.ts","frontend/src/views/assets/Index.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/knowledge/Index.vue","frontend/src/views/sla/Index.vue"]}],"total_commits":0,"head_commit":{"id":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","message":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理\n\n## as any 精确替换 (78处 → 0)\n- community-material.service.ts: 17→0 (Prisma UncheckedCreateInput + InputJsonValue)\n- swot.service.ts: 16→0 (Record\u003cstring,unknown\u003e + 具体接口)\n- groupbuy-analytics.service.ts: 16→0 (Prisma WhereInput + 移除冗余断言)\n- groupbuy-commission.service.ts: 15→0 (Prisma WhereInput + InputJsonValue)\n- workflow.service.ts: 14→0 (InputJsonValue + 具体类型)\n\n## v-permission 第三批 (9个指令)\n- knowledge: create (1)\n- sla: create (1)\n- inventory: update×2 (2)\n- assets: import/export/create (3)\n\n## 前端 API 层 any 清理\n- factory.ts: Record\u003cstring,any\u003e → Record\u003cstring,unknown\u003e (4处)\n- response-normalizer.ts: any → unknown (4处)\n\n累计 as any 清零:203处 (125+78)\n累计 v-permission:99个指令覆盖16模块\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cfe1efeda7265f05374d3bd0036cf684a15f3cb9","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T09:17:32+08:00","added":[],"removed":[],"modified":["backend/src/modules/community-materials/community-material.service.ts","backend/src/modules/groupbuy-analytics/groupbuy-analytics.service.ts","backend/src/modules/groupbuy-commissions/groupbuy-commission.service.ts","backend/src/modules/marketing-automation/workflow.service.ts","backend/src/modules/swot-analyses/swot.service.ts","frontend/src/api/factory.ts","frontend/src/api/response-normalizer.ts","frontend/src/views/assets/Index.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/knowledge/Index.vue","frontend/src/views/sla/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":1956407,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:01:59+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1774316141
|
1774316142
|
0
|
1774316140
|
1774316142
|
|
|
0
|
Edit
Delete
|
|
7636
|
refactor: 5模块78处as any精确替换 + v-permission第三批 + API refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理...
|
6
|
5
|
health-check.yml
|
7561
|
-2
|
124
|
refs/heads/main
|
cfe1efeda7265f05374d3bd0036cf684a15f3cb9
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"07680473f95a02e139e159147a93ef74e61f3db2","after":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/07680473f95a02e139e159147a93ef74e61f3db2...cfe1efeda7265f05374d3bd0036cf684a15f3cb9","commits":[{"id":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","message":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理\n\n## as any 精确替换 (78处 → 0)\n- community-material.service.ts: 17→0 (Prisma UncheckedCreateInput + InputJsonValue)\n- swot.service.ts: 16→0 (Record\u003cstring,unknown\u003e + 具体接口)\n- groupbuy-analytics.service.ts: 16→0 (Prisma WhereInput + 移除冗余断言)\n- groupbuy-commission.service.ts: 15→0 (Prisma WhereInput + InputJsonValue)\n- workflow.service.ts: 14→0 (InputJsonValue + 具体类型)\n\n## v-permission 第三批 (9个指令)\n- knowledge: create (1)\n- sla: create (1)\n- inventory: update×2 (2)\n- assets: import/export/create (3)\n\n## 前端 API 层 any 清理\n- factory.ts: Record\u003cstring,any\u003e → Record\u003cstring,unknown\u003e (4处)\n- response-normalizer.ts: any → unknown (4处)\n\n累计 as any 清零:203处 (125+78)\n累计 v-permission:99个指令覆盖16模块\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cfe1efeda7265f05374d3bd0036cf684a15f3cb9","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T09:17:32+08:00","added":[],"removed":[],"modified":["backend/src/modules/community-materials/community-material.service.ts","backend/src/modules/groupbuy-analytics/groupbuy-analytics.service.ts","backend/src/modules/groupbuy-commissions/groupbuy-commission.service.ts","backend/src/modules/marketing-automation/workflow.service.ts","backend/src/modules/swot-analyses/swot.service.ts","frontend/src/api/factory.ts","frontend/src/api/response-normalizer.ts","frontend/src/views/assets/Index.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/knowledge/Index.vue","frontend/src/views/sla/Index.vue"]}],"total_commits":0,"head_commit":{"id":"cfe1efeda7265f05374d3bd0036cf684a15f3cb9","message":"refactor: 5模块78处as any精确替换 + v-permission第三批 + API层any清理\n\n## as any 精确替换 (78处 → 0)\n- community-material.service.ts: 17→0 (Prisma UncheckedCreateInput + InputJsonValue)\n- swot.service.ts: 16→0 (Record\u003cstring,unknown\u003e + 具体接口)\n- groupbuy-analytics.service.ts: 16→0 (Prisma WhereInput + 移除冗余断言)\n- groupbuy-commission.service.ts: 15→0 (Prisma WhereInput + InputJsonValue)\n- workflow.service.ts: 14→0 (InputJsonValue + 具体类型)\n\n## v-permission 第三批 (9个指令)\n- knowledge: create (1)\n- sla: create (1)\n- inventory: update×2 (2)\n- assets: import/export/create (3)\n\n## 前端 API 层 any 清理\n- factory.ts: Record\u003cstring,any\u003e → Record\u003cstring,unknown\u003e (4处)\n- response-normalizer.ts: any → unknown (4处)\n\n累计 as any 清零:203处 (125+78)\n累计 v-permission:99个指令覆盖16模块\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cfe1efeda7265f05374d3bd0036cf684a15f3cb9","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-24T09:17:32+08:00","added":[],"removed":[],"modified":["backend/src/modules/community-materials/community-material.service.ts","backend/src/modules/groupbuy-analytics/groupbuy-analytics.service.ts","backend/src/modules/groupbuy-commissions/groupbuy-commission.service.ts","backend/src/modules/marketing-automation/workflow.service.ts","backend/src/modules/swot-analyses/swot.service.ts","frontend/src/api/factory.ts","frontend/src/api/response-normalizer.ts","frontend/src/views/assets/Index.vue","frontend/src/views/inventory/Index.vue","frontend/src/views/knowledge/Index.vue","frontend/src/views/sla/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":1956407,"language":"","languages_url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub/languages","html_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub","url":"https://gitea.g-hi.com/api/v1/repos/luoanwu/juhi-omni-knowledge-hub","link":"","ssh_url":"git@gitea.g-hi.com:luoanwu/juhi-omni-knowledge-hub.git","clone_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub.git","original_url":"https://github.com/laoluojuhai/juhi-omni-knowledge-hub.git","website":"","stars_count":0,"forks_count":0,"watchers_count":1,"branch_count":1,"open_issues_count":0,"open_pr_counter":0,"release_counter":0,"default_branch":"main","archived":false,"created_at":"2026-02-23T23:57:52+08:00","updated_at":"2026-03-24T09:01:59+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_code":true,"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"allow_manual_merge":false,"autodetect_manual_merge":false,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":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
|
1774316441
|
1774316442
|
0
|
1774316440
|
1774316442
|
|
|
0
|
Edit
Delete
|
|
6404
|
sync: 同步治理文档与服务中心/系统基础设施治理回放产物
|
6
|
5
|
ci.yml
|
6337
|
5
|
0
|
refs/heads/main
|
cf72cf544ca2a256fc4024e735a4c2e127aa6e39
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"1bbe0e31bce6079667ac188e55066ae94e1938fb","after":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/1bbe0e31bce6079667ac188e55066ae94e1938fb...cf72cf544ca2a256fc4024e735a4c2e127aa6e39","commits":[{"id":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","message":"sync: 同步治理文档与服务中心/系统基础设施治理回放产物\n\n- 同步四份统一文档(AGENTS/CLAUDE/GEMINI/README)\n- 更新治理经验报告与多 Agent 协作运行手册\n- 新增服务中心治理进度报告 (service-center-governance-3.0-progress)\n- 新增 E2E 服务治理回放产物 v18~v21\n- 更新可见菜单写动作覆盖报告:\n - hr: 新增佣金 probes 与覆盖报告\n - system-infra: 更新系统配置 probes\n- 新增服务中心工单甘特图 smoke 测试 (tickets-gantt-smoke.spec.ts)\n- 更新可见菜单写动作 runner (01-visible-menu-write-runner.spec.ts)\n- 更新 batch-summary 与 module-catalog.overrides.ts\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cf72cf544ca2a256fc4024e735a4c2e127aa6e39","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-17T19:00:51+08:00","added":["e2e/output/playwright/service-governance-recheck-v18/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v19/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v19/failure-1.html","e2e/output/playwright/service-governance-recheck-v19/failure-1.png","e2e/output/playwright/service-governance-recheck-v19/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v20/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v21/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v21/visible-menu-snapshot.json","e2e/test-results/.last-run.json","e2e/test-results/results.json","e2e/tests/service/tickets-gantt-smoke.spec.ts","output/playwright/full-menu-write-batches/hr/action-coverage-report.md","output/playwright/full-menu-write-batches/hr/blocked-unmapped-pages.json","output/playwright/full-menu-write-batches/hr/probes/-commissions-1773744051517.json","output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773744102517.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773744087923.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773744064195.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773744062147.json"],"removed":["output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773743541824.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773743528143.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773743504746.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773743502631.json"],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","docs/contract-governance-3.0.md","docs/operations/contract-governance-3.0-multi-agent-runbook.md","docs/plans/service-center-governance-3.0-progress-2026-03-13.md","docs/reports/governance-experience-2026-03-07.md","e2e/playwright-report/index.html","e2e/tests/crud/01-visible-menu-write-runner.spec.ts","e2e/tests/crud/module-catalog.overrides.ts","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/hr/action-coverage-report.json","output/playwright/full-menu-write-batches/system-infra/action-coverage-report.json"]}],"total_commits":0,"head_commit":{"id":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","message":"sync: 同步治理文档与服务中心/系统基础设施治理回放产物\n\n- 同步四份统一文档(AGENTS/CLAUDE/GEMINI/README)\n- 更新治理经验报告与多 Agent 协作运行手册\n- 新增服务中心治理进度报告 (service-center-governance-3.0-progress)\n- 新增 E2E 服务治理回放产物 v18~v21\n- 更新可见菜单写动作覆盖报告:\n - hr: 新增佣金 probes 与覆盖报告\n - system-infra: 更新系统配置 probes\n- 新增服务中心工单甘特图 smoke 测试 (tickets-gantt-smoke.spec.ts)\n- 更新可见菜单写动作 runner (01-visible-menu-write-runner.spec.ts)\n- 更新 batch-summary 与 module-catalog.overrides.ts\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cf72cf544ca2a256fc4024e735a4c2e127aa6e39","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-17T19:00:51+08:00","added":["e2e/output/playwright/service-governance-recheck-v18/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v19/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v19/failure-1.html","e2e/output/playwright/service-governance-recheck-v19/failure-1.png","e2e/output/playwright/service-governance-recheck-v19/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v20/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v21/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v21/visible-menu-snapshot.json","e2e/test-results/.last-run.json","e2e/test-results/results.json","e2e/tests/service/tickets-gantt-smoke.spec.ts","output/playwright/full-menu-write-batches/hr/action-coverage-report.md","output/playwright/full-menu-write-batches/hr/blocked-unmapped-pages.json","output/playwright/full-menu-write-batches/hr/probes/-commissions-1773744051517.json","output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773744102517.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773744087923.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773744064195.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773744062147.json"],"removed":["output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773743541824.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773743528143.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773743504746.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773743502631.json"],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","docs/contract-governance-3.0.md","docs/operations/contract-governance-3.0-multi-agent-runbook.md","docs/plans/service-center-governance-3.0-progress-2026-03-13.md","docs/reports/governance-experience-2026-03-07.md","e2e/playwright-report/index.html","e2e/tests/crud/01-visible-menu-write-runner.spec.ts","e2e/tests/crud/module-catalog.overrides.ts","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/hr/action-coverage-report.json","output/playwright/full-menu-write-batches/system-infra/action-coverage-report.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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,"parent":null,"mirror":false,"size":1837310,"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,"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-17T19:00:33+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","repo_transfer":null},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","restricted":false,"active":false,"prohibit_login":false,"location":"","website":"","description":"","visibility":"public","followers_count":0,"following_count":0,"starred_repos_count":0,"username":"luoanwu"}}...
|
push
|
2
|
24
|
1773745262
|
1773745760
|
0
|
1773745261
|
1773745760
|
NULL
|
|
0
|
Edit
Delete
|
|
6405
|
sync: 同步治理文档与服务中心/系统基础设施治理回放产物
|
6
|
5
|
health-check.yml
|
6338
|
-2
|
62
|
refs/heads/main
|
cf72cf544ca2a256fc4024e735a4c2e127aa6e39
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"1bbe0e31bce6079667ac188e55066ae94e1938fb","after":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/1bbe0e31bce6079667ac188e55066ae94e1938fb...cf72cf544ca2a256fc4024e735a4c2e127aa6e39","commits":[{"id":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","message":"sync: 同步治理文档与服务中心/系统基础设施治理回放产物\n\n- 同步四份统一文档(AGENTS/CLAUDE/GEMINI/README)\n- 更新治理经验报告与多 Agent 协作运行手册\n- 新增服务中心治理进度报告 (service-center-governance-3.0-progress)\n- 新增 E2E 服务治理回放产物 v18~v21\n- 更新可见菜单写动作覆盖报告:\n - hr: 新增佣金 probes 与覆盖报告\n - system-infra: 更新系统配置 probes\n- 新增服务中心工单甘特图 smoke 测试 (tickets-gantt-smoke.spec.ts)\n- 更新可见菜单写动作 runner (01-visible-menu-write-runner.spec.ts)\n- 更新 batch-summary 与 module-catalog.overrides.ts\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cf72cf544ca2a256fc4024e735a4c2e127aa6e39","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-17T19:00:51+08:00","added":["e2e/output/playwright/service-governance-recheck-v18/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v19/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v19/failure-1.html","e2e/output/playwright/service-governance-recheck-v19/failure-1.png","e2e/output/playwright/service-governance-recheck-v19/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v20/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v21/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v21/visible-menu-snapshot.json","e2e/test-results/.last-run.json","e2e/test-results/results.json","e2e/tests/service/tickets-gantt-smoke.spec.ts","output/playwright/full-menu-write-batches/hr/action-coverage-report.md","output/playwright/full-menu-write-batches/hr/blocked-unmapped-pages.json","output/playwright/full-menu-write-batches/hr/probes/-commissions-1773744051517.json","output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773744102517.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773744087923.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773744064195.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773744062147.json"],"removed":["output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773743541824.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773743528143.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773743504746.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773743502631.json"],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","docs/contract-governance-3.0.md","docs/operations/contract-governance-3.0-multi-agent-runbook.md","docs/plans/service-center-governance-3.0-progress-2026-03-13.md","docs/reports/governance-experience-2026-03-07.md","e2e/playwright-report/index.html","e2e/tests/crud/01-visible-menu-write-runner.spec.ts","e2e/tests/crud/module-catalog.overrides.ts","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/hr/action-coverage-report.json","output/playwright/full-menu-write-batches/system-infra/action-coverage-report.json"]}],"total_commits":0,"head_commit":{"id":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","message":"sync: 同步治理文档与服务中心/系统基础设施治理回放产物\n\n- 同步四份统一文档(AGENTS/CLAUDE/GEMINI/README)\n- 更新治理经验报告与多 Agent 协作运行手册\n- 新增服务中心治理进度报告 (service-center-governance-3.0-progress)\n- 新增 E2E 服务治理回放产物 v18~v21\n- 更新可见菜单写动作覆盖报告:\n - hr: 新增佣金 probes 与覆盖报告\n - system-infra: 更新系统配置 probes\n- 新增服务中心工单甘特图 smoke 测试 (tickets-gantt-smoke.spec.ts)\n- 更新可见菜单写动作 runner (01-visible-menu-write-runner.spec.ts)\n- 更新 batch-summary 与 module-catalog.overrides.ts\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cf72cf544ca2a256fc4024e735a4c2e127aa6e39","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-17T19:00:51+08:00","added":["e2e/output/playwright/service-governance-recheck-v18/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v19/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v19/failure-1.html","e2e/output/playwright/service-governance-recheck-v19/failure-1.png","e2e/output/playwright/service-governance-recheck-v19/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v20/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v21/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v21/visible-menu-snapshot.json","e2e/test-results/.last-run.json","e2e/test-results/results.json","e2e/tests/service/tickets-gantt-smoke.spec.ts","output/playwright/full-menu-write-batches/hr/action-coverage-report.md","output/playwright/full-menu-write-batches/hr/blocked-unmapped-pages.json","output/playwright/full-menu-write-batches/hr/probes/-commissions-1773744051517.json","output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773744102517.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773744087923.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773744064195.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773744062147.json"],"removed":["output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773743541824.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773743528143.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773743504746.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773743502631.json"],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","docs/contract-governance-3.0.md","docs/operations/contract-governance-3.0-multi-agent-runbook.md","docs/plans/service-center-governance-3.0-progress-2026-03-13.md","docs/reports/governance-experience-2026-03-07.md","e2e/playwright-report/index.html","e2e/tests/crud/01-visible-menu-write-runner.spec.ts","e2e/tests/crud/module-catalog.overrides.ts","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/hr/action-coverage-report.json","output/playwright/full-menu-write-batches/system-infra/action-coverage-report.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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,"parent":null,"mirror":false,"size":1837310,"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,"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-17T19:00:33+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","repo_transfer":null},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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
|
1
|
3
|
1773745756
|
1773745756
|
0
|
1773745532
|
1773745756
|
NULL
|
|
0
|
Edit
Delete
|
|
6406
|
sync: 同步治理文档与服务中心/系统基础设施治理回放产物
|
6
|
5
|
health-check.yml
|
6339
|
-2
|
62
|
refs/heads/main
|
cf72cf544ca2a256fc4024e735a4c2e127aa6e39
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"1bbe0e31bce6079667ac188e55066ae94e1938fb","after":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/1bbe0e31bce6079667ac188e55066ae94e1938fb...cf72cf544ca2a256fc4024e735a4c2e127aa6e39","commits":[{"id":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","message":"sync: 同步治理文档与服务中心/系统基础设施治理回放产物\n\n- 同步四份统一文档(AGENTS/CLAUDE/GEMINI/README)\n- 更新治理经验报告与多 Agent 协作运行手册\n- 新增服务中心治理进度报告 (service-center-governance-3.0-progress)\n- 新增 E2E 服务治理回放产物 v18~v21\n- 更新可见菜单写动作覆盖报告:\n - hr: 新增佣金 probes 与覆盖报告\n - system-infra: 更新系统配置 probes\n- 新增服务中心工单甘特图 smoke 测试 (tickets-gantt-smoke.spec.ts)\n- 更新可见菜单写动作 runner (01-visible-menu-write-runner.spec.ts)\n- 更新 batch-summary 与 module-catalog.overrides.ts\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cf72cf544ca2a256fc4024e735a4c2e127aa6e39","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-17T19:00:51+08:00","added":["e2e/output/playwright/service-governance-recheck-v18/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v19/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v19/failure-1.html","e2e/output/playwright/service-governance-recheck-v19/failure-1.png","e2e/output/playwright/service-governance-recheck-v19/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v20/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v21/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v21/visible-menu-snapshot.json","e2e/test-results/.last-run.json","e2e/test-results/results.json","e2e/tests/service/tickets-gantt-smoke.spec.ts","output/playwright/full-menu-write-batches/hr/action-coverage-report.md","output/playwright/full-menu-write-batches/hr/blocked-unmapped-pages.json","output/playwright/full-menu-write-batches/hr/probes/-commissions-1773744051517.json","output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773744102517.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773744087923.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773744064195.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773744062147.json"],"removed":["output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773743541824.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773743528143.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773743504746.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773743502631.json"],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","docs/contract-governance-3.0.md","docs/operations/contract-governance-3.0-multi-agent-runbook.md","docs/plans/service-center-governance-3.0-progress-2026-03-13.md","docs/reports/governance-experience-2026-03-07.md","e2e/playwright-report/index.html","e2e/tests/crud/01-visible-menu-write-runner.spec.ts","e2e/tests/crud/module-catalog.overrides.ts","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/hr/action-coverage-report.json","output/playwright/full-menu-write-batches/system-infra/action-coverage-report.json"]}],"total_commits":0,"head_commit":{"id":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","message":"sync: 同步治理文档与服务中心/系统基础设施治理回放产物\n\n- 同步四份统一文档(AGENTS/CLAUDE/GEMINI/README)\n- 更新治理经验报告与多 Agent 协作运行手册\n- 新增服务中心治理进度报告 (service-center-governance-3.0-progress)\n- 新增 E2E 服务治理回放产物 v18~v21\n- 更新可见菜单写动作覆盖报告:\n - hr: 新增佣金 probes 与覆盖报告\n - system-infra: 更新系统配置 probes\n- 新增服务中心工单甘特图 smoke 测试 (tickets-gantt-smoke.spec.ts)\n- 更新可见菜单写动作 runner (01-visible-menu-write-runner.spec.ts)\n- 更新 batch-summary 与 module-catalog.overrides.ts\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cf72cf544ca2a256fc4024e735a4c2e127aa6e39","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-17T19:00:51+08:00","added":["e2e/output/playwright/service-governance-recheck-v18/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v19/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v19/failure-1.html","e2e/output/playwright/service-governance-recheck-v19/failure-1.png","e2e/output/playwright/service-governance-recheck-v19/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v20/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v21/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v21/visible-menu-snapshot.json","e2e/test-results/.last-run.json","e2e/test-results/results.json","e2e/tests/service/tickets-gantt-smoke.spec.ts","output/playwright/full-menu-write-batches/hr/action-coverage-report.md","output/playwright/full-menu-write-batches/hr/blocked-unmapped-pages.json","output/playwright/full-menu-write-batches/hr/probes/-commissions-1773744051517.json","output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773744102517.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773744087923.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773744064195.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773744062147.json"],"removed":["output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773743541824.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773743528143.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773743504746.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773743502631.json"],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","docs/contract-governance-3.0.md","docs/operations/contract-governance-3.0-multi-agent-runbook.md","docs/plans/service-center-governance-3.0-progress-2026-03-13.md","docs/reports/governance-experience-2026-03-07.md","e2e/playwright-report/index.html","e2e/tests/crud/01-visible-menu-write-runner.spec.ts","e2e/tests/crud/module-catalog.overrides.ts","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/hr/action-coverage-report.json","output/playwright/full-menu-write-batches/system-infra/action-coverage-report.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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,"parent":null,"mirror":false,"size":1837310,"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,"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-17T19:00:33+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","repo_transfer":null},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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
|
1
|
3
|
1773745832
|
1773745832
|
0
|
1773745832
|
1773745832
|
NULL
|
|
0
|
Edit
Delete
|
|
6407
|
sync: 同步治理文档与服务中心/系统基础设施治理回放产物
|
6
|
5
|
health-check.yml
|
6340
|
-2
|
62
|
refs/heads/main
|
cf72cf544ca2a256fc4024e735a4c2e127aa6e39
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"1bbe0e31bce6079667ac188e55066ae94e1938fb","after":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/1bbe0e31bce6079667ac188e55066ae94e1938fb...cf72cf544ca2a256fc4024e735a4c2e127aa6e39","commits":[{"id":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","message":"sync: 同步治理文档与服务中心/系统基础设施治理回放产物\n\n- 同步四份统一文档(AGENTS/CLAUDE/GEMINI/README)\n- 更新治理经验报告与多 Agent 协作运行手册\n- 新增服务中心治理进度报告 (service-center-governance-3.0-progress)\n- 新增 E2E 服务治理回放产物 v18~v21\n- 更新可见菜单写动作覆盖报告:\n - hr: 新增佣金 probes 与覆盖报告\n - system-infra: 更新系统配置 probes\n- 新增服务中心工单甘特图 smoke 测试 (tickets-gantt-smoke.spec.ts)\n- 更新可见菜单写动作 runner (01-visible-menu-write-runner.spec.ts)\n- 更新 batch-summary 与 module-catalog.overrides.ts\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cf72cf544ca2a256fc4024e735a4c2e127aa6e39","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-17T19:00:51+08:00","added":["e2e/output/playwright/service-governance-recheck-v18/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v19/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v19/failure-1.html","e2e/output/playwright/service-governance-recheck-v19/failure-1.png","e2e/output/playwright/service-governance-recheck-v19/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v20/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v21/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v21/visible-menu-snapshot.json","e2e/test-results/.last-run.json","e2e/test-results/results.json","e2e/tests/service/tickets-gantt-smoke.spec.ts","output/playwright/full-menu-write-batches/hr/action-coverage-report.md","output/playwright/full-menu-write-batches/hr/blocked-unmapped-pages.json","output/playwright/full-menu-write-batches/hr/probes/-commissions-1773744051517.json","output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773744102517.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773744087923.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773744064195.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773744062147.json"],"removed":["output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773743541824.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773743528143.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773743504746.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773743502631.json"],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","docs/contract-governance-3.0.md","docs/operations/contract-governance-3.0-multi-agent-runbook.md","docs/plans/service-center-governance-3.0-progress-2026-03-13.md","docs/reports/governance-experience-2026-03-07.md","e2e/playwright-report/index.html","e2e/tests/crud/01-visible-menu-write-runner.spec.ts","e2e/tests/crud/module-catalog.overrides.ts","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/hr/action-coverage-report.json","output/playwright/full-menu-write-batches/system-infra/action-coverage-report.json"]}],"total_commits":0,"head_commit":{"id":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","message":"sync: 同步治理文档与服务中心/系统基础设施治理回放产物\n\n- 同步四份统一文档(AGENTS/CLAUDE/GEMINI/README)\n- 更新治理经验报告与多 Agent 协作运行手册\n- 新增服务中心治理进度报告 (service-center-governance-3.0-progress)\n- 新增 E2E 服务治理回放产物 v18~v21\n- 更新可见菜单写动作覆盖报告:\n - hr: 新增佣金 probes 与覆盖报告\n - system-infra: 更新系统配置 probes\n- 新增服务中心工单甘特图 smoke 测试 (tickets-gantt-smoke.spec.ts)\n- 更新可见菜单写动作 runner (01-visible-menu-write-runner.spec.ts)\n- 更新 batch-summary 与 module-catalog.overrides.ts\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cf72cf544ca2a256fc4024e735a4c2e127aa6e39","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-17T19:00:51+08:00","added":["e2e/output/playwright/service-governance-recheck-v18/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v19/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v19/failure-1.html","e2e/output/playwright/service-governance-recheck-v19/failure-1.png","e2e/output/playwright/service-governance-recheck-v19/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v20/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v21/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v21/visible-menu-snapshot.json","e2e/test-results/.last-run.json","e2e/test-results/results.json","e2e/tests/service/tickets-gantt-smoke.spec.ts","output/playwright/full-menu-write-batches/hr/action-coverage-report.md","output/playwright/full-menu-write-batches/hr/blocked-unmapped-pages.json","output/playwright/full-menu-write-batches/hr/probes/-commissions-1773744051517.json","output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773744102517.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773744087923.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773744064195.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773744062147.json"],"removed":["output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773743541824.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773743528143.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773743504746.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773743502631.json"],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","docs/contract-governance-3.0.md","docs/operations/contract-governance-3.0-multi-agent-runbook.md","docs/plans/service-center-governance-3.0-progress-2026-03-13.md","docs/reports/governance-experience-2026-03-07.md","e2e/playwright-report/index.html","e2e/tests/crud/01-visible-menu-write-runner.spec.ts","e2e/tests/crud/module-catalog.overrides.ts","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/hr/action-coverage-report.json","output/playwright/full-menu-write-batches/system-infra/action-coverage-report.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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,"parent":null,"mirror":false,"size":1837310,"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,"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-17T19:00:33+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","repo_transfer":null},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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
|
1
|
3
|
1773746132
|
1773746132
|
0
|
1773746132
|
1773746132
|
NULL
|
|
0
|
Edit
Delete
|
|
6408
|
sync: 同步治理文档与服务中心/系统基础设施治理回放产物
|
6
|
5
|
health-check.yml
|
6341
|
-2
|
62
|
refs/heads/main
|
cf72cf544ca2a256fc4024e735a4c2e127aa6e39
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"1bbe0e31bce6079667ac188e55066ae94e1938fb","after":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/1bbe0e31bce6079667ac188e55066ae94e1938fb...cf72cf544ca2a256fc4024e735a4c2e127aa6e39","commits":[{"id":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","message":"sync: 同步治理文档与服务中心/系统基础设施治理回放产物\n\n- 同步四份统一文档(AGENTS/CLAUDE/GEMINI/README)\n- 更新治理经验报告与多 Agent 协作运行手册\n- 新增服务中心治理进度报告 (service-center-governance-3.0-progress)\n- 新增 E2E 服务治理回放产物 v18~v21\n- 更新可见菜单写动作覆盖报告:\n - hr: 新增佣金 probes 与覆盖报告\n - system-infra: 更新系统配置 probes\n- 新增服务中心工单甘特图 smoke 测试 (tickets-gantt-smoke.spec.ts)\n- 更新可见菜单写动作 runner (01-visible-menu-write-runner.spec.ts)\n- 更新 batch-summary 与 module-catalog.overrides.ts\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cf72cf544ca2a256fc4024e735a4c2e127aa6e39","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-17T19:00:51+08:00","added":["e2e/output/playwright/service-governance-recheck-v18/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v19/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v19/failure-1.html","e2e/output/playwright/service-governance-recheck-v19/failure-1.png","e2e/output/playwright/service-governance-recheck-v19/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v20/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v21/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v21/visible-menu-snapshot.json","e2e/test-results/.last-run.json","e2e/test-results/results.json","e2e/tests/service/tickets-gantt-smoke.spec.ts","output/playwright/full-menu-write-batches/hr/action-coverage-report.md","output/playwright/full-menu-write-batches/hr/blocked-unmapped-pages.json","output/playwright/full-menu-write-batches/hr/probes/-commissions-1773744051517.json","output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773744102517.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773744087923.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773744064195.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773744062147.json"],"removed":["output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773743541824.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773743528143.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773743504746.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773743502631.json"],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","docs/contract-governance-3.0.md","docs/operations/contract-governance-3.0-multi-agent-runbook.md","docs/plans/service-center-governance-3.0-progress-2026-03-13.md","docs/reports/governance-experience-2026-03-07.md","e2e/playwright-report/index.html","e2e/tests/crud/01-visible-menu-write-runner.spec.ts","e2e/tests/crud/module-catalog.overrides.ts","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/hr/action-coverage-report.json","output/playwright/full-menu-write-batches/system-infra/action-coverage-report.json"]}],"total_commits":0,"head_commit":{"id":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","message":"sync: 同步治理文档与服务中心/系统基础设施治理回放产物\n\n- 同步四份统一文档(AGENTS/CLAUDE/GEMINI/README)\n- 更新治理经验报告与多 Agent 协作运行手册\n- 新增服务中心治理进度报告 (service-center-governance-3.0-progress)\n- 新增 E2E 服务治理回放产物 v18~v21\n- 更新可见菜单写动作覆盖报告:\n - hr: 新增佣金 probes 与覆盖报告\n - system-infra: 更新系统配置 probes\n- 新增服务中心工单甘特图 smoke 测试 (tickets-gantt-smoke.spec.ts)\n- 更新可见菜单写动作 runner (01-visible-menu-write-runner.spec.ts)\n- 更新 batch-summary 与 module-catalog.overrides.ts\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cf72cf544ca2a256fc4024e735a4c2e127aa6e39","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-17T19:00:51+08:00","added":["e2e/output/playwright/service-governance-recheck-v18/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v19/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v19/failure-1.html","e2e/output/playwright/service-governance-recheck-v19/failure-1.png","e2e/output/playwright/service-governance-recheck-v19/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v20/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v21/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v21/visible-menu-snapshot.json","e2e/test-results/.last-run.json","e2e/test-results/results.json","e2e/tests/service/tickets-gantt-smoke.spec.ts","output/playwright/full-menu-write-batches/hr/action-coverage-report.md","output/playwright/full-menu-write-batches/hr/blocked-unmapped-pages.json","output/playwright/full-menu-write-batches/hr/probes/-commissions-1773744051517.json","output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773744102517.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773744087923.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773744064195.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773744062147.json"],"removed":["output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773743541824.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773743528143.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773743504746.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773743502631.json"],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","docs/contract-governance-3.0.md","docs/operations/contract-governance-3.0-multi-agent-runbook.md","docs/plans/service-center-governance-3.0-progress-2026-03-13.md","docs/reports/governance-experience-2026-03-07.md","e2e/playwright-report/index.html","e2e/tests/crud/01-visible-menu-write-runner.spec.ts","e2e/tests/crud/module-catalog.overrides.ts","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/hr/action-coverage-report.json","output/playwright/full-menu-write-batches/system-infra/action-coverage-report.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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,"parent":null,"mirror":false,"size":1837310,"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,"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-17T19:00:33+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","repo_transfer":null},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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
|
1
|
3
|
1773746432
|
1773746432
|
0
|
1773746432
|
1773746432
|
NULL
|
|
0
|
Edit
Delete
|
|
6409
|
sync: 同步治理文档与服务中心/系统基础设施治理回放产物
|
6
|
5
|
health-check.yml
|
6342
|
-2
|
62
|
refs/heads/main
|
cf72cf544ca2a256fc4024e735a4c2e127aa6e39
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"1bbe0e31bce6079667ac188e55066ae94e1938fb","after":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/1bbe0e31bce6079667ac188e55066ae94e1938fb...cf72cf544ca2a256fc4024e735a4c2e127aa6e39","commits":[{"id":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","message":"sync: 同步治理文档与服务中心/系统基础设施治理回放产物\n\n- 同步四份统一文档(AGENTS/CLAUDE/GEMINI/README)\n- 更新治理经验报告与多 Agent 协作运行手册\n- 新增服务中心治理进度报告 (service-center-governance-3.0-progress)\n- 新增 E2E 服务治理回放产物 v18~v21\n- 更新可见菜单写动作覆盖报告:\n - hr: 新增佣金 probes 与覆盖报告\n - system-infra: 更新系统配置 probes\n- 新增服务中心工单甘特图 smoke 测试 (tickets-gantt-smoke.spec.ts)\n- 更新可见菜单写动作 runner (01-visible-menu-write-runner.spec.ts)\n- 更新 batch-summary 与 module-catalog.overrides.ts\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cf72cf544ca2a256fc4024e735a4c2e127aa6e39","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-17T19:00:51+08:00","added":["e2e/output/playwright/service-governance-recheck-v18/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v19/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v19/failure-1.html","e2e/output/playwright/service-governance-recheck-v19/failure-1.png","e2e/output/playwright/service-governance-recheck-v19/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v20/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v21/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v21/visible-menu-snapshot.json","e2e/test-results/.last-run.json","e2e/test-results/results.json","e2e/tests/service/tickets-gantt-smoke.spec.ts","output/playwright/full-menu-write-batches/hr/action-coverage-report.md","output/playwright/full-menu-write-batches/hr/blocked-unmapped-pages.json","output/playwright/full-menu-write-batches/hr/probes/-commissions-1773744051517.json","output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773744102517.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773744087923.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773744064195.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773744062147.json"],"removed":["output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773743541824.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773743528143.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773743504746.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773743502631.json"],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","docs/contract-governance-3.0.md","docs/operations/contract-governance-3.0-multi-agent-runbook.md","docs/plans/service-center-governance-3.0-progress-2026-03-13.md","docs/reports/governance-experience-2026-03-07.md","e2e/playwright-report/index.html","e2e/tests/crud/01-visible-menu-write-runner.spec.ts","e2e/tests/crud/module-catalog.overrides.ts","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/hr/action-coverage-report.json","output/playwright/full-menu-write-batches/system-infra/action-coverage-report.json"]}],"total_commits":0,"head_commit":{"id":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","message":"sync: 同步治理文档与服务中心/系统基础设施治理回放产物\n\n- 同步四份统一文档(AGENTS/CLAUDE/GEMINI/README)\n- 更新治理经验报告与多 Agent 协作运行手册\n- 新增服务中心治理进度报告 (service-center-governance-3.0-progress)\n- 新增 E2E 服务治理回放产物 v18~v21\n- 更新可见菜单写动作覆盖报告:\n - hr: 新增佣金 probes 与覆盖报告\n - system-infra: 更新系统配置 probes\n- 新增服务中心工单甘特图 smoke 测试 (tickets-gantt-smoke.spec.ts)\n- 更新可见菜单写动作 runner (01-visible-menu-write-runner.spec.ts)\n- 更新 batch-summary 与 module-catalog.overrides.ts\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cf72cf544ca2a256fc4024e735a4c2e127aa6e39","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-17T19:00:51+08:00","added":["e2e/output/playwright/service-governance-recheck-v18/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v19/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v19/failure-1.html","e2e/output/playwright/service-governance-recheck-v19/failure-1.png","e2e/output/playwright/service-governance-recheck-v19/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v20/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v21/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v21/visible-menu-snapshot.json","e2e/test-results/.last-run.json","e2e/test-results/results.json","e2e/tests/service/tickets-gantt-smoke.spec.ts","output/playwright/full-menu-write-batches/hr/action-coverage-report.md","output/playwright/full-menu-write-batches/hr/blocked-unmapped-pages.json","output/playwright/full-menu-write-batches/hr/probes/-commissions-1773744051517.json","output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773744102517.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773744087923.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773744064195.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773744062147.json"],"removed":["output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773743541824.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773743528143.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773743504746.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773743502631.json"],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","docs/contract-governance-3.0.md","docs/operations/contract-governance-3.0-multi-agent-runbook.md","docs/plans/service-center-governance-3.0-progress-2026-03-13.md","docs/reports/governance-experience-2026-03-07.md","e2e/playwright-report/index.html","e2e/tests/crud/01-visible-menu-write-runner.spec.ts","e2e/tests/crud/module-catalog.overrides.ts","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/hr/action-coverage-report.json","output/playwright/full-menu-write-batches/system-infra/action-coverage-report.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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,"parent":null,"mirror":false,"size":1837310,"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,"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-17T19:00:33+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","repo_transfer":null},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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
|
1
|
3
|
1773746732
|
1773746732
|
0
|
1773746732
|
1773746732
|
NULL
|
|
0
|
Edit
Delete
|
|
6410
|
sync: 同步治理文档与服务中心/系统基础设施治理回放产物
|
6
|
5
|
health-check.yml
|
6343
|
-2
|
62
|
refs/heads/main
|
cf72cf544ca2a256fc4024e735a4c2e127aa6e39
|
0
|
0
|
0
|
push
|
{"ref":"refs/heads/main","befo {"ref":"refs/heads/main","before":"1bbe0e31bce6079667ac188e55066ae94e1938fb","after":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","compare_url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/compare/1bbe0e31bce6079667ac188e55066ae94e1938fb...cf72cf544ca2a256fc4024e735a4c2e127aa6e39","commits":[{"id":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","message":"sync: 同步治理文档与服务中心/系统基础设施治理回放产物\n\n- 同步四份统一文档(AGENTS/CLAUDE/GEMINI/README)\n- 更新治理经验报告与多 Agent 协作运行手册\n- 新增服务中心治理进度报告 (service-center-governance-3.0-progress)\n- 新增 E2E 服务治理回放产物 v18~v21\n- 更新可见菜单写动作覆盖报告:\n - hr: 新增佣金 probes 与覆盖报告\n - system-infra: 更新系统配置 probes\n- 新增服务中心工单甘特图 smoke 测试 (tickets-gantt-smoke.spec.ts)\n- 更新可见菜单写动作 runner (01-visible-menu-write-runner.spec.ts)\n- 更新 batch-summary 与 module-catalog.overrides.ts\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cf72cf544ca2a256fc4024e735a4c2e127aa6e39","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-17T19:00:51+08:00","added":["e2e/output/playwright/service-governance-recheck-v18/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v19/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v19/failure-1.html","e2e/output/playwright/service-governance-recheck-v19/failure-1.png","e2e/output/playwright/service-governance-recheck-v19/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v20/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v21/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v21/visible-menu-snapshot.json","e2e/test-results/.last-run.json","e2e/test-results/results.json","e2e/tests/service/tickets-gantt-smoke.spec.ts","output/playwright/full-menu-write-batches/hr/action-coverage-report.md","output/playwright/full-menu-write-batches/hr/blocked-unmapped-pages.json","output/playwright/full-menu-write-batches/hr/probes/-commissions-1773744051517.json","output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773744102517.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773744087923.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773744064195.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773744062147.json"],"removed":["output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773743541824.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773743528143.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773743504746.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773743502631.json"],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","docs/contract-governance-3.0.md","docs/operations/contract-governance-3.0-multi-agent-runbook.md","docs/plans/service-center-governance-3.0-progress-2026-03-13.md","docs/reports/governance-experience-2026-03-07.md","e2e/playwright-report/index.html","e2e/tests/crud/01-visible-menu-write-runner.spec.ts","e2e/tests/crud/module-catalog.overrides.ts","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/hr/action-coverage-report.json","output/playwright/full-menu-write-batches/system-infra/action-coverage-report.json"]}],"total_commits":0,"head_commit":{"id":"cf72cf544ca2a256fc4024e735a4c2e127aa6e39","message":"sync: 同步治理文档与服务中心/系统基础设施治理回放产物\n\n- 同步四份统一文档(AGENTS/CLAUDE/GEMINI/README)\n- 更新治理经验报告与多 Agent 协作运行手册\n- 新增服务中心治理进度报告 (service-center-governance-3.0-progress)\n- 新增 E2E 服务治理回放产物 v18~v21\n- 更新可见菜单写动作覆盖报告:\n - hr: 新增佣金 probes 与覆盖报告\n - system-infra: 更新系统配置 probes\n- 新增服务中心工单甘特图 smoke 测试 (tickets-gantt-smoke.spec.ts)\n- 更新可见菜单写动作 runner (01-visible-menu-write-runner.spec.ts)\n- 更新 batch-summary 与 module-catalog.overrides.ts\n\nCo-authored-by: Qwen-Coder \u003cqwen-coder@alibabacloud.com\u003e\n","url":"https://gitea.g-hi.com/luoanwu/juhi-omni-knowledge-hub/commit/cf72cf544ca2a256fc4024e735a4c2e127aa6e39","author":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"committer":{"name":"laoluojuhai","email":"laoluojuhai@users.noreply.github.com","username":""},"verification":null,"timestamp":"2026-03-17T19:00:51+08:00","added":["e2e/output/playwright/service-governance-recheck-v18/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v19/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v19/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v19/failure-1.html","e2e/output/playwright/service-governance-recheck-v19/failure-1.png","e2e/output/playwright/service-governance-recheck-v19/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v20/visible-menu-snapshot.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.json","e2e/output/playwright/service-governance-recheck-v21/action-coverage-report.md","e2e/output/playwright/service-governance-recheck-v21/blocked-unmapped-pages.json","e2e/output/playwright/service-governance-recheck-v21/visible-menu-snapshot.json","e2e/test-results/.last-run.json","e2e/test-results/results.json","e2e/tests/service/tickets-gantt-smoke.spec.ts","output/playwright/full-menu-write-batches/hr/action-coverage-report.md","output/playwright/full-menu-write-batches/hr/blocked-unmapped-pages.json","output/playwright/full-menu-write-batches/hr/probes/-commissions-1773744051517.json","output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773744102517.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773744087923.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773744064195.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773744062147.json"],"removed":["output/playwright/full-menu-write-batches/system-infra/probes/-event-subscriptions-1773743541824.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-biz-sequences-1773743528143.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-params-1773743504746.json","output/playwright/full-menu-write-batches/system-infra/probes/-system-tenant-configs-1773743502631.json"],"modified":["AGENTS.md","CLAUDE.md","GEMINI.md","README.md","docs/contract-governance-3.0.md","docs/operations/contract-governance-3.0-multi-agent-runbook.md","docs/plans/service-center-governance-3.0-progress-2026-03-13.md","docs/reports/governance-experience-2026-03-07.md","e2e/playwright-report/index.html","e2e/tests/crud/01-visible-menu-write-runner.spec.ts","e2e/tests/crud/module-catalog.overrides.ts","output/playwright/full-menu-write-batches/batch-summary.json","output/playwright/full-menu-write-batches/batch-summary.md","output/playwright/full-menu-write-batches/hr/action-coverage-report.json","output/playwright/full-menu-write-batches/system-infra/action-coverage-report.json"]},"repository":{"id":6,"owner":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"law@g-hi.com","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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,"parent":null,"mirror":false,"size":1837310,"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,"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-17T19:00:33+08:00","archived_at":"1970-01-01T08:00:00+08:00","permissions":{"admin":true,"push":true,"pull":true},"has_issues":true,"internal_tracker":{"enable_time_tracker":true,"allow_only_contributors_to_track_time":true,"enable_issue_dependencies":true},"has_wiki":true,"has_pull_requests":true,"has_projects":true,"projects_mode":"all","has_releases":true,"has_packages":true,"has_actions":true,"ignore_whitespace_conflicts":false,"allow_merge_commits":true,"allow_rebase":true,"allow_rebase_explicit":true,"allow_squash_merge":true,"allow_fast_forward_only_merge":true,"allow_rebase_update":true,"default_delete_branch_after_merge":false,"default_merge_style":"merge","default_allow_maintainer_edit":false,"avatar_url":"","internal":false,"mirror_interval":"","object_format_name":"sha1","mirror_updated":"0001-01-01T00:00:00Z","repo_transfer":null},"pusher":{"id":5,"login":"luoanwu","login_name":"","source_id":0,"full_name":"","email":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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":"luoanwu@noreply.localhost","avatar_url":"https://gitea.g-hi.com/avatars/627574a890388a2aadc80ab38d22f3a0","html_url":"https://gitea.g-hi.com/luoanwu","language":"","is_admin":false,"last_login":"0001-01-01T00:00:00Z","created":"2026-01-30T16:28:30+08:00","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
|
1
|
3
|
1773747032
|
1773747032
|
0
|
1773747032
|
1773747032
|
NULL
|
|
0
|
Edit
Delete
|