Files
Neo-ZQYY/docs/audit/changes/2026-02-15__monorepo-migration-phase1-8.md
Neo 2a7a5d68aa feat: 2026-04-15~04-20 累积变更基线 — 多主线合流
主线 1: rns1-customer-coach-api + 04-miniapp-core-business 后端实施
  - 新增 GET /xcx/coaches/{id}/banner 轻量接口
  - performance/records 加 coach_id 参数 + view_board_coach 权限分流
  - coach/customer/performance/board/task 服务层重构
  - fdw_queries 结算单粒度聚合 + consumption_summary 视图统一
  - task_generator 回访宽限 72h + UPSERT 替代策略 + Step 5 保底清理
  - recall_detector settle_type=3 双重限制 + 门店级 resolved

主线 2: 小程序权限分流 + 新增 coach-service-records 管理者视角业绩明细页
  - perf-progress 共享模块去重 task-list/coach-detail 动画逻辑
  - isScattered 散客标记端到端
  - foodDetail/phoneFull/creator* 字段透传

主线 3: P19 指数回测框架 Phase 1+2
  - 3 个指数表 stat_date 日快照模式
  - 新增 DWS_INDEX_BACKFILL / DWS_TASK_SIMULATION 工具任务
  - task_engine 升级 HTTP 实时 + 推演回测双模式

主线 4: Core 维度层启用
  - 新增 CORE_DIM_SYNC 任务(DWD → core 4 维度表)
  - 修复 app 视图空查询问题

主线 5: member_project_tag 改为 LAST_30_VISITS 消费次数窗口

主线 6: 2 个迁移 SQL 已执行(stat_date + member_project_tag 新窗口)
  - schema 基线与 DDL 快照同步

主线 7: 开发机路径迁移 C:\NeoZQYY → C:\Project\NeoZQYY(约 95% 改动量)

附带: 新建运维脚本(churned_customer_report / simulate_historical_tasks /
      backfill_index_snapshots)+ tools/task-analysis/ 任务分析工具

合计 157 文件。未包含中间产物(tmp/ .playwright-mcp/ inspect-* excel/sheet 分析 txt)。
审计记录见下一个 commit。

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

82 lines
4.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Monorepo 迁移 Phase 1-8 审计记录
- 日期: 2026-02-15
- Prompt: Monorepo 迁移 spec 任务 1-8骨架搭建、ETL 平移、小程序平移、DB Schema 重组、Steering 更新)
- 类型: 新仓库初始化(全量新建,非增量修改)
- 风险等级: 高(涉及 DB Schema、ETL 全量代码、配置体系)
## 变更概述
将单一 ETL 仓库C:\ZQYY\FQ-ETL迁移为 Monorepo 单体仓库C:\Project\NeoZQYY整合 ETL、后端、小程序、GUI 等子项目。一次性搬迁策略,不保留 Git 历史。
## 变更清单
### 任务 1骨架搭建
- 创建 9 个一级目录apps/、gui/、packages/、db/、docs/、infra/、scripts/、samples/、tests/)及 README.md
- 初始化 Git 仓库、.gitignore、.kiroignore
- 生成根 pyproject.tomluv workspace和 4 个子项目 pyproject.toml
- 生成 .env.template
### 任务 3ETL 平移
- 从 C:\ZQYY\FQ-ETL 原样复制 ETL 业务代码到 apps/etl/pipelines/feiqiu/
- 涉及目录api/、cli/、config/、loaders/、models/、orchestration/、scd/、tasks/、utils/、quality/、tests/、scripts/、docs/、database/
- 复制 gui/ 到 gui/
- 更新 ETL pyproject.toml 依赖
### 任务 5小程序平移
- 从 C:\ZQYY\XCX 复制到 apps/miniprogram/
- Prototype 复制到 docs/h5_ui/
### 任务 6数据库 Schema 重组(高风险)
- 创建 db/etl_feiqiu/schemas/ 下 6 个 DDLmeta.sql、ods.sql、dwd.sql、core.sql、dws.sql、app.sql
- 创建 db/zqyy_app/schemas/init.sql用户、角色、权限、任务、审批表
- 创建 db/fdw/setup_fdw.sqlFDW 映射配置)
- 创建测试数据库脚本create_test_db.sql、migrate_test_data.sql
- 同步文档docs/database/etl_feiqiu_schema_migration.md
### 任务 8Steering 更新
- 复制 .kiro/steering/ 和 .kiro/specs/ 到 Monorepo
- 更新 product.md、tech.md、structure-lite.md、structure.md、governance.md、db-docs.md、steering-readme-maintainer.md 为 Monorepo 视角
- 清除所有旧路径引用FQ-ETL、C:\ZQYY\FQ-ETL
### 属性测试PBT
- 在 tests/ 下创建 7 个属性测试文件Property 1-8, 10
## 高风险路径命中
| 路径 | 风险类别 | 说明 |
|------|----------|------|
| apps/etl/pipelines/feiqiu/api/ | API 契约 | 原样复制,无逻辑修改 |
| apps/etl/pipelines/feiqiu/cli/ | CLI 入口 | 原样复制,无逻辑修改 |
| apps/etl/pipelines/feiqiu/config/ | 配置体系 | 原样复制,无逻辑修改 |
| apps/etl/pipelines/feiqiu/database/ | 数据库操作 | 原样复制,无逻辑修改 |
| apps/etl/pipelines/feiqiu/loaders/ | 落库逻辑 | 原样复制,无逻辑修改 |
| apps/etl/pipelines/feiqiu/models/ | 数据模型 | 原样复制,无逻辑修改 |
| apps/etl/pipelines/feiqiu/orchestration/ | 调度/游标 | 原样复制,无逻辑修改 |
| apps/etl/pipelines/feiqiu/scd/ | SCD2 处理 | 原样复制,无逻辑修改 |
| apps/etl/pipelines/feiqiu/tasks/ | 业务任务 | 原样复制,无逻辑修改 |
| apps/etl/pipelines/feiqiu/utils/ | 通用工具 | 原样复制,无逻辑修改 |
| db/etl_feiqiu/schemas/*.sql | DB Schema | 新建 DDL未执行 |
| db/zqyy_app/schemas/init.sql | DB Schema | 新建 DDL未执行 |
| db/fdw/setup_fdw.sql | FDW 配置 | 新建,未执行 |
| pyproject.toml | 根配置 | 新建 uv workspace 配置 |
| .env.template | 环境配置 | 新建模板 |
## 验证结果
- ETL 单元测试516 passed / 5 failed源仓库已有 bug/ 2 skipped
- 核心业务逻辑无回归
- DB Schema新建 DDL 文件,未在生产数据库执行,无数据风险
- Steering 路径更新grep 验证无旧路径残留
## 内联注释决策
- AI_CHANGELOG不添加。所有文件均为新建/原样复制,无"修改"语义
- CHANGE 注释不添加。ETL 代码原样复制,未修改现有逻辑
## 后续建议
1. 在 C:\Project\NeoZQYY\apps\etl\pipelines\feiqiu\ 下运行 `pytest tests/unit` 确认测试通过
2. 修复源仓库已有的 5 个失败测试
3. DB Schema DDL 在测试环境验证后再应用到生产
4. 首次 `git add . && git commit` 建立基线