Files
Neo-ZQYY/docs/audit/changes/2026-03-02__etl-unified-analysis-hook-merge.md
Neo 14a12342b5 chore(audit): 补追 96 份未入仓审计孤本 — 覆盖 2026-02-26 ~ 2026-04-08
这些审计记录原本堆积在 docs/audit/changes/changes/ 嵌套误产物目录下(由开发机迁移
79d3c2e 前后的不明批量操作产生)。由于同期 .gitignore 屏蔽了 docs/audit/ 全目录,
它们从未入过 git 任何分支 history。删除即永久丢失。

按 docs/specs/audit-gap-recovery/tasks.md 阶段 1 执行,将全部 96 份 D 类孤本
(主目录无同名、git history 亦无记录)复制到 docs/audit/changes/ 主目录入仓。

涵盖主题: P1-P18 全栈集成 / 多模块累积变更 / ETL bug 修复 / 业务日切 /
   召回与任务引擎改造 / 租户管理与审批 / 董事会财务 / 客户与助教详情 /
   DDL 基线合并 / Kiro 到 Claude Code 迁移

阶段 2(B 类内容漂移 1 份)和阶段 4(嵌套目录删除)独立推进。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-20 06:35:42 +08:00

4.7 KiB
Raw Blame History

变更审计:合并 ETL Hook 为统一分析入口

  • 日期2026-03-02 00:39:12
  • Prompt-IDP20260301-235954
  • 风险标签dir:etl, root-file
  • 审计人Kiro AI

变更概述

将两个功能重叠的 Kiro Hook"Data Flow Structure Analysis" 和 "ETL Data Consistency Check")合并为一个统一入口 "ETL Unified Analysis"。新入口支持 --mode structure|consistency|full(默认 full同时为一致性检查增加每表数据截止日期展示。

变更文件清单

文件 变更类型 说明
scripts/ops/etl_unified_analysis.py 新增 统一编排脚本
scripts/ops/etl_consistency_check.py 修改 新增截止日期功能
.kiro/hooks/etl-unified-analysis.kiro.hook 新增 统一 hook 入口
.kiro/hooks/dataflow-analyze.kiro.hook 修改 设置 enabled=false
.kiro/hooks/etl-data-consistency.kiro.hook 修改 设置 enabled=false
scripts/ops/monitor_etl_run.py 修改 引用文本更新
scripts/ops/export_etl_result.py 修改 引用文本更新

改动注解

scripts/ops/etl_unified_analysis.py

  • 变更类型:新增
  • 原始原因:用户发现 "Data Flow Structure Analysis" 和 "ETL Data Consistency Check" 两个 hook 功能重叠,希望合并为一个统一入口,减少操作步骤
  • 思路分析:采用编排模式,etl_unified_analysis.py 本身不实现分析逻辑,而是通过 subprocess.run 依次调用已有的 analyze_dataflow.pygen_dataflow_report.pyetl_consistency_check.py。通过 --mode 参数控制执行哪些阶段,--source 参数控制数据来源(主动调 API 或读 ETL 落盘 JSON。full 模式下两阶段完成后合并报告输出到 ETL_REPORT_ROOT
  • 修改结果:用户只需运行一个脚本或触发一个 hook 即可完成全部 ETL 分析。报告路径通过 _env_paths.get_output_path() 获取,符合产出物路径规范。支持 --date-from--date-to--limit--tables 等参数透传

scripts/ops/etl_consistency_check.py

  • 变更类型:修改
  • 原始原因:一致性检查报告中缺少每张表的数据截止日期信息,用户无法直观判断数据新鲜度
  • 思路分析:新增 _CUTOFF_DATE_COLUMN 字典映射每张 ODS 表的时间截止字段(大部分用 create_timegoods_stock_summarystock_goods_category_treefetched_at,部分表用 createtime)。新增 get_data_cutoff_date() 函数查询 MAX(col)::date::text。在 check_api_vs_odscheck_ods_vs_dwd 的返回结果中增加 data_cutoff 字段,报告汇总表增加"数据截止"列
  • 修改结果:一致性检查报告的 API↔ODS 和 ODS↔DWD 汇总表中新增"数据截止"列,展示每表数据的最后截止日期。查询失败时静默回退显示"—",不阻断主流程

.kiro/hooks/etl-unified-analysis.kiro.hook

  • 变更类型:新增
  • 原始原因:为统一编排脚本提供 Kiro hook 触发入口
  • 思路分析:userTriggered 类型 hookprompt 中描述了默认行为full 模式三阶段)和可选参数。继承原两个 hook 的白名单规则ETL 元数据列、SCD2 管理列、siteProfile 嵌套字段、时间格式等价)
  • 修改结果:用户可通过 Kiro 手动触发统一分析,替代原来需要分别触发两个 hook 的操作

.kiro/hooks/dataflow-analyze.kiro.hook

  • 变更类型:修改
  • 原始原因:功能已合并到统一入口,需禁用避免重复
  • 思路分析:仅将 enabled 字段从 true 改为 false,保留完整配置以备回退
  • 修改结果hook 不再出现在可触发列表中,但配置文件保留

.kiro/hooks/etl-data-consistency.kiro.hook

  • 变更类型:修改
  • 原始原因:功能已合并到统一入口,需禁用避免重复
  • 思路分析:同上,仅设置 enabled: false
  • 修改结果hook 不再出现在可触发列表中,但配置文件保留

scripts/ops/monitor_etl_run.py

  • 变更类型:修改(简要)
  • 报告模板中"下一步"引用文本从 "ETL Data Consistency Check" 更新为 "ETL Unified Analysis统一分析"

scripts/ops/export_etl_result.py

  • 变更类型:修改(简要)
  • 报告模板中"下一步"引用文本从 "ETL Data Consistency Check" 更新为 "ETL Unified Analysis统一分析"

本次对话文件变更

新增文件

  • docs/audit/prompt_logs/prompt_log_20260301_235954.md

修改文件

  • NeoZQYY.code-workspace
  • docs/h5_ui/pages/customer-detail.html

合规检查

  • ⚠️ 迁移 SQL
  • ⚠️ DDL 基线:不涉及
  • ⚠️ OpenAPI spec不涉及本次变更不涉及接口代码
  • ⚠️ 文档同步:无缺失项(compliance.code_without_docs 为空)