feat: 因果链三层验证机制(P2) — 数据验证+人工确认+状态机

- kpi_causality 加列: source_type/verify_status/verified_at/verified_by/entity_id(回填)
- 核心服务: app/services/causality_verification.py (Pearson+滞后对齐+状态机)
- 数据验证脚本: scripts/correlation-check.py (月度cron, 输出JSON报告)
- API: create/update支持source_type, GET /verify-status, PUT /{id}/verify(人工确认)
- 全部端点按entity_id账套隔离, kpi/{id}/network/simulate补跨企业校验
- 前端: KPIDetail因果链页显示验证状态徽标(数据证实/存疑/待检)
- 测试: test_causality_verification.py 37用例 + 原因果链测试全过(59个)
- 50条因果链首轮验证: 1数据证实(#37渠补率到净利润lag1 r=-0.89), 4存疑, 45待检(数据不足)
This commit is contained in:
Hermes CI Fix
2026-08-27 15:51:19 +08:00
parent 6b479bfe7d
commit fdc42d443d
10 changed files with 1063 additions and 22 deletions
+2
View File
@@ -293,6 +293,8 @@ export const kpiCausalityApi = {
getNetwork: (kpiId: number) => api.get(`/kpi-causality/kpi/${kpiId}/network`),
getFullNetwork: () => api.get('/kpi-causality/full-network'),
simulate: (data: any) => api.post('/kpi-causality/simulate', data),
getVerifyStatus: (params?: any) => api.get('/kpi-causality/verify-status', { params }),
verify: (id: number, data: any) => api.put(`/kpi-causality/${id}/verify`, data),
}
export const dataQualityApi = {