diff --git a/.gitignore b/.gitignore index fa48ce5..329522f 100644 --- a/.gitignore +++ b/.gitignore @@ -13,7 +13,13 @@ logs/ *.jsonl # ===== 审计文件 ===== -docs/audit/ +docs/audit/* +# 白名单:允许追踪审计变更记录与仪表盘 +!docs/audit/changes/ +!docs/audit/changes/*.md +!docs/audit/audit_dashboard.md +# 嵌套误产物目录暂存本地,后续按 docs/specs/audit-gap-recovery/tasks.md 处理 +docs/audit/changes/changes/ # ===== 运行时产出 ===== export/ diff --git a/apps/backend/docs/API-REFERENCE.md b/apps/backend/docs/API-REFERENCE.md index 03737d2..c0aa1c8 100644 --- a/apps/backend/docs/API-REFERENCE.md +++ b/apps/backend/docs/API-REFERENCE.md @@ -463,9 +463,21 @@ MVP 全链路验证端点,从 `test."xcx-test"` 表读取数据。 绩效明细(PERF-2)。返回指定月份的服务记录明细,按日期分组,支持分页。 查询参数: -- `month`:月份(格式 `YYYY-MM`,默认当月) +- `year`:年份(必填) +- `month`:月份(`1-12`,必填) - `page`:页码(默认 1) -- `page_size`:每页条数(默认 20) +- `page_size`:每页条数(默认 20,最大 100) +- `coach_id`:目标助教 ID(可选,管理者视角) + +权限分流(运行时通过 `get_user_permissions()` 实时检查,非 `require_permission` 中间件): +- 不带 `coach_id`(查自己):需 `view_tasks` 权限,`assistant_id` 由当前登录用户绑定决定 +- 带 `coach_id`(查他人):需 `view_board_coach` 权限(`manager`/`head_coach`/`staff`),`assistant_id` 使用传入值;同 site 约束由 `user.site_id` 隐式保证 +- 缺少对应权限统一返回 `HTTP 403 权限不足` + +对应服务层变更:`performance_service.get_records()` 新增 `assistant_id_override` 参数。 + +响应字段新增: +- `dateGroups[].records[].isScattered`:散客标记(`member_id ≤ 0` 时为 `true`),前端据此将客户姓名置灰 --- @@ -573,6 +585,63 @@ MVP 全链路验证端点,从 `test."xcx-test"` 表读取数据。 --- +## 17A. 小程序助教详情 `/api/xcx/coaches` + +所有端点需 JWT(approved 状态)+ `view_board_coach` 权限。 + +### GET `/api/xcx/coaches/{coach_id}/banner` +助教 banner 轻量信息。仅返回 `id` / `name` / `level` / `storeName`,用于 `coach-service-records` 等只需 banner 数据的页面首屏快速加载。 + +比 `/{coach_id}` 详情快一个数量级。 + +权限:`view_board_coach` + +响应:`CoachBannerResponse` +```json +{ "id": 123, "name": "张三", "level": "金牌", "storeName": "朗朗桌球(总店)" } +``` + +### GET `/api/xcx/coaches/{coach_id}` +助教详情(COACH-1)。返回助教基础信息、绩效、收入、档位、任务分组、TOP 客户、近期服务、历史月份、备注。 + +权限:`view_board_coach`(2026-03-27 权限改造 W4:助教详情跟助教看板走) + +响应:`CoachDetailResponse` + +字段说明: + +- `storeName`:助教所在门店名(跟随被查看助教所在门店,供小程序 banner 展示) +- `performance`:`PerformanceMetrics`,与任务页 `PerformanceSummary` 同源(来自 `monthly_summary` 实时值)。字段从 6 扩展到 25: + - 核心字段:`totalHours`、`totalIncome`、`totalCustomers`、`monthLabel`、`tierNodes`、`basicHours`、`bonusHours`、`currentTier`(数组下标 0-based)、`nextTierHours`、`tierCompleted`、`bonusMoney`、`incomeTrend`、`incomeTrendDir`、`prevMonth`、`currentTierLabel` + - 详情专属扩展:`customerBalance`、`tasksCompleted` + - 兼容旧字段(前端渐进适配):`monthlyHours`、`monthlySalary` +- `taskStats`:`CoachTaskStats`,当月任务完成统计(按 `task_type` 分类计数,数据源 `coach_tasks` 表) + - `callback`:`follow_up_visit` 完成数 + - `recall`:`high_priority_recall` + `priority_recall` 完成数 +- `topCustomers[].isScattered`:散客标识(`member_id ≤ 0`),前端据此将客户姓名置灰 +- `serviceRecords[].isScattered`:同上,作用于近期服务记录 + +--- + +## 17B. 小程序客户详情 `/api/xcx/customers` + +所有端点需 JWT(approved 状态)+ `view_board_customer` 权限。 + +### GET `/api/xcx/customers/{customer_id}` +客户详情(CUST-1)。返回客户基础信息、Banner 概览、AI 洞察、助教任务、心动助教、维客线索、消费记录、备注。 + +权限:`view_board_customer`(2026-03-27 权限改造 W4:客户详情跟客户看板走) + +响应:`CustomerDetailResponse` + +字段说明(本次新增): + +- `consumptionRecords[].foodDetail`:自定义食品类目名称(`string | null`)。为空时前端降级展示「食品酒水」 +- `notes[].creatorName`:备注创建者姓名 +- `notes[].creatorRole`:备注创建者角色 + +--- + ## 18. 小程序 CHAT `/api/xcx/chat` 所有端点需 JWT(approved 状态)。替代原 `xcx_ai_chat`(`/api/ai/*`),统一迁移到 `/api/xcx/chat/*` 路径。 diff --git a/apps/etl/connectors/feiqiu/docs/architecture/data_flow.md b/apps/etl/connectors/feiqiu/docs/architecture/data_flow.md index 7a579bf..645e73d 100644 --- a/apps/etl/connectors/feiqiu/docs/architecture/data_flow.md +++ b/apps/etl/connectors/feiqiu/docs/architecture/data_flow.md @@ -19,9 +19,17 @@ │ 明细数据 — 清洗、标准化、关联 │ │ 维度表走 SCD2(缓慢变化维度) │ │ 事实表按时间增量写入 │ -└───────────────┬───────────────────────┘ - │ DWS 汇总任务 - ▼ +└───────┬───────────────┬───────────────┘ + │ │ CORE_DIM_SYNC + │ DWS 汇总任务 ▼ + │ ┌───────────────────────┐ + │ │ Core 层(core) │ + │ │ 跨平台统一维度层 │ + │ │ dim_assistant / dim_ │ + │ │ member / dim_site / │ + │ │ dim_table │ + │ └───────────────────────┘ + ▼ ┌───────────────────────────────────────┐ │ DWS 层(dws) │ │ 数据服务 — 汇总、指标 │ @@ -34,6 +42,7 @@ │ INDEX 层(dws) │ │ 自定义指数算法 │ │ WBI / NCI / RS / OS / MS / ML │ +│ 日快照存储(stat_date) │ └───────────────────────────────────────┘ ``` @@ -86,6 +95,7 @@ | 会员分析 | `DWS_MEMBER_CONSUMPTION`、`DWS_MEMBER_VISIT` | 每日 | | 工资计算 | `DWS_ASSISTANT_SALARY` | 每月(月初) | | 指数算法 | `DWS_WINBACK_INDEX`、`DWS_NEWCONV_INDEX`、`DWS_RELATION_INDEX` | 每 2-4 小时 | +| Core 维度同步 | `CORE_DIM_SYNC` | 每日(DWD_LOAD_FROM_ODS 之后) | ### 自定义指数算法 @@ -102,6 +112,44 @@ 公共参数:`percentile_lower/upper`(分位截断锚点)、`ewma_alpha`(指数加权移动平均平滑系数)。 +### 指数日快照(2026-04 重构) + +三张指数表(`relation_index` / `winback_index` / `newconv_index`)新增 `stat_date DATE NOT NULL DEFAULT CURRENT_DATE` 字段,唯一约束扩展为 `(site_id, member_id[, assistant_id], stat_date)`。每次任务运行追加当日快照而非覆盖历史,为指数回测、历史演化分析提供原始数据基础。Winback 任务配套 365 天保留策略,清理超过 365 天的历史快照以控制表体积。 + +## Core 维度层(跨平台统一维度) + +- Schema:`core` +- 定位:跨平台统一维度层,屏蔽 ODS/DWD 多数据源(飞球 / 美团 / 后续新平台)的字段差异,供 `app` 视图层和业务库 FDW 统一引用 +- 核心任务:`CORE_DIM_SYNC`(归属 DWS 层任务目录 `tasks/dws/core_dim_sync_task.py`) +- 上游依赖:`DWD_LOAD_FROM_ODS`(必须先完成 DWD 维度表 SCD2 写入) +- 同步范围:4 张维度表 — `dim_assistant` / `dim_member` / `dim_site` / `dim_table` +- 数据来源:DWD 层 `scd2_is_current = 1` 的当前版本快照 +- 同步策略:TRUNCATE + 全量 INSERT(维度表行数较小,执行时间极短,避免增量合并复杂度) +- 起因:修复 `app` 视图在 core 维度为空时返回空结果的问题(关联审计 `docs/audit/changes/2026-04-15__meituan-settle-core-sync.md`) + +## Utility 工具任务 + +工具任务位于 `tasks/utility/`,不在日常编排链路中,由手动 CLI 触发,服务于 schema 初始化、历史数据回填和回测推演等一次性或周期性离线需求。 + +### DWS_INDEX_BACKFILL(指数历史快照回填) + +- 源码:`tasks/utility/index_backfill_task.py` +- 职责:逐天调用三个指数任务(`DWS_RELATION_INDEX` / `DWS_WINBACK_INDEX` / `DWS_NEWCONV_INDEX`)生成历史日快照,回填缺失的 `stat_date` 行 +- 性能优化:三个指数任务实例在整轮回填中创建 1 次、循环 N 天复用,避免 N×3 次初始化开销(以 255 天为例避免 765 次初始化) +- 前置条件:三张指数表已完成日快照改造(`stat_date` 字段 + 复合唯一约束) +- 用途:指数算法参数调优验证、历史对照、补齐生产数据缺口 +- 关联专题:P19 指数回测框架 Phase 1e + +### DWS_TASK_SIMULATION(任务引擎历史推演) + +- 源码:`tasks/utility/task_simulation_task.py` +- 职责:基于指数日快照,逐天重放 `task_generator` + `recall_detector` 逻辑,还原任务的完整生命周期(生成 / 升级 / 转移 / 完成 / follow_up) +- 前置条件:需先运行 `DWS_INDEX_BACKFILL` 产出完整的历史指数快照作为推演输入 +- 数据库连接:额外使用业务库独立连接(`APP_DB_DSN` 环境变量),推演结果写入业务库任务相关表 +- 任务引擎双模式配合:`task_engine.py` 同期升级为双模式 — HTTP 实时模式(日常生产)+ 推演模式(回测,由 `as_of_date` 参数驱动),两种模式共用核心规则逻辑 +- 用途:回测验证分级分配、升级、转移规则的参数配置与边界行为 +- 关联专题:P19 指数回测框架 Phase 2 + ## ETL 管理层 - Schema:`meta` diff --git a/apps/etl/connectors/feiqiu/docs/architecture/system_overview.md b/apps/etl/connectors/feiqiu/docs/architecture/system_overview.md index 5a85078..b3c4e00 100644 --- a/apps/etl/connectors/feiqiu/docs/architecture/system_overview.md +++ b/apps/etl/connectors/feiqiu/docs/architecture/system_overview.md @@ -44,8 +44,10 @@ │ ├── ods/ ODS 抓取任务(23 个业务实体) │ │ ├── dwd/ DWD 装载任务(维度/事实/质检) │ │ ├── dws/ DWS 汇总与指数任务 │ -│ │ └── index/ 指数计算(WBI/NCI/RS/OS/MS/ML)│ -│ ├── utility/ 工具任务(Schema 初始化等) │ +│ │ ├── index/ 指数计算(WBI/NCI/RS/OS/MS/ML)│ +│ │ └── core_dim_sync Core 维度层全量同步(4 维度) │ +│ ├── utility/ 工具任务(Schema 初始化 / │ +│ │ 指数回填 / 任务引擎推演) │ │ └── verification/ ETL 后置校验 │ └──────────┬──────────────────────────────────────────────┘ │ diff --git a/apps/miniprogram/README.md b/apps/miniprogram/README.md index aabbe66..bd207fe 100644 --- a/apps/miniprogram/README.md +++ b/apps/miniprogram/README.md @@ -89,6 +89,7 @@ apps/miniprogram/ | `pages/customer-detail/customer-detail` | 客户详情页(完整档案 + AI 洞察 + 维客线索) | | | `pages/customer-service-records/customer-service-records` | 客户服务记录页(按日期分组的消费记录) | | | `pages/coach-detail/coach-detail` | 助教详情页(业绩数据 + 客户列表) | | +| `pages/coach-service-records/coach-service-records` | 助教业绩明细页(管理者视角,查看指定助教的业绩明细) | | | `pages/chat/chat` | AI 对话页(SSE 流式输出,按上下文进入对话) | | | `pages/chat-history/chat-history` | 对话历史列表页 | | | `pages/dev-tools/dev-tools` | 开发调试面板(仅 develop 环境,通过 dev-fab 浮动按钮进入) | | @@ -118,6 +119,50 @@ apps/miniprogram/ | service-record-card | `components/service-record-card/` | 服务记录单项卡片 | | star-rating | `components/star-rating/` | 星级评分组件 | +## 业绩明细双视角 + +业绩明细存在两个严格隔离的页面,职责互不交叉: + +- `performance-records`(助教自查) + - 视角:当前登录用户(无需 coachId) + - 权限:无需额外守卫 + - 点击单条记录:跳 `task-detail?taskId=xxx`(关注任务) +- `coach-service-records`(管理者查看) + - 视角:指定助教,coachId 必传(来自 URL query) + - 权限:`view_board_coach` + - 点击单条记录:跳 `customer-detail?memberId=xxx`(关注客户) + +coach-service-records 页面约定: + +- 入口:`coach-detail` 页面的"查看更多"按钮 +- `onShow` 必须通过 `checkPageAccess('view_board_coach')` 守卫 +- 数据源: + - Banner:`fetchCoachBanner(coachId)` 轻量接口 + - 记录:`fetchPerformanceRecords({ year, month, coachId, page, pageSize })` +- 源码:`miniprogram/pages/coach-service-records/*` + +## 共享工具 + +业绩进度条动画参数与计算逻辑的单一源头:`miniprogram/utils/perf-progress.ts`。被 `task-list.ts` 与 `coach-detail.ts` 共同使用,避免双份漂移。 + +导出清单: + +- 常量:`SHINE_SPEED`、`SPARK_DELAY_MS`、`SPARK_DUR_MS`、`NEXT_LOOP_DELAY_MS`、`SHINE_WIDTH_RPX` +- 类型:`TickItem` 接口 +- 函数:`calcShineDur`、`buildTicks`、`buildProgressBarData` + +新建同类动画参数或档位刻度逻辑时,统一落在此文件,禁止在页面脚本内就地写常量。 + +## 数据规范 + +### 散客标记(isScattered) + +后端判定规则:`member_id <= 0` 时在响应字段上标记 `isScattered = true`,标识该条记录为散客(无会员档案)。 + +涉及页面:`coach-detail`、`performance-records`、`coach-service-records`、`customer-detail`。 + +前端渲染约定:为承载散客信息的节点追加 CSS 类 `--scattered`,以置灰方式区分于实名会员;散客条目不提供跳转到 `customer-detail` 的入口。 + ## 后端 API 集成 ### API 地址配置 @@ -210,6 +255,11 @@ POST /api/xcx-auth/login → 重新登录获取完整令牌(含 site_id + ro | `/api/xcx/chat/messages` | GET | 通过上下文查消息 | | `/api/xcx/chat/stream` | POST | SSE 流式对话 | +### services/api.ts 近期新增 + +- `fetchCoachBanner(coachId: number)` — 轻量助教 banner 数据,供 `coach-service-records` 顶部卡片复用 +- `fetchPerformanceRecords({ year, month, page, pageSize, coachId? })` — 新增可选 `coachId` 参数;不传为助教自查视角(后端以当前登录用户过滤),传入则为管理者查看视角(后端按权限码 `view_board_coach` 分流校验) + > 完整接口契约见 [`docs/miniprogram-dev/API-contract.md`](../../docs/miniprogram-dev/API-contract.md) > 后端 API 参考见 [`apps/backend/docs/API-REFERENCE.md`](../backend/docs/API-REFERENCE.md) diff --git a/docs/audit/audit_dashboard.md b/docs/audit/audit_dashboard.md index 92fdfbe..1af8948 100644 --- a/docs/audit/audit_dashboard.md +++ b/docs/audit/audit_dashboard.md @@ -1,107 +1,14 @@ # 审计一览表 -> 自动生成于 2026-04-08 15:09:30,请勿手动编辑。 +> 自动生成于 2026-04-20 06:07:33,请勿手动编辑。 ## 时间线视图 | 日期 | 项目 | 需求摘要 | 变更类型 | 影响模块 | 风险 | 详情 | |------|------|----------|----------|----------|------|------| -| 2026-04-08 | 项目级 | 变更审计记录:Fix-13 回滚手动完成 + 广义召回完成机制 | bugfix | 其他 | 低 | [链接](changes/2026-04-08__fix13-recall-events-refactor.md) | +| 2026-04-20 | 项目级 | 变更审计记录:2026-04-20 历史累积批次预审 | bugfix | 其他 | 高 | [链接](changes/2026-04-20__historical-batch-pre-audit.md) | +| 2026-04-15 | 项目级 | 变更审计记录:美团结算导入 + core 层定位 + CORE_DIM_SYNC 任务 | bugfix | 其他 | 低 | [链接](changes/2026-04-15__meituan-settle-core-sync.md) | | 2026-04-06 | 项目级 | 变更审计记录:v1 历史清理与 DDL 合并归档 | 清理 | 其他 | 极低 | [链接](changes/2026-04-06__v1-cleanup-ddl-consolidation.md) | -| 2026-04-05 | 项目级 | 变更审计记录:Kiro → Claude Code 全量迁移 | 文档 | 其他 | 低 | [链接](changes/2026-04-05__kiro-to-claude-code-migration.md) | -| 2026-03-31 | 项目级 | 变更审计记录:任务引擎改造 — 参数调优 + 客户级升级/转移 + 任务统计写入 | 功能 | 其他 | 未知 | [链接](changes/2026-03-31__task-engine-overhaul.md) | -| 2026-03-29 | 项目级 | 变更审计记录:助教看板和客户看板懒加载(分页加载) | 重构 | 其他 | 未知 | [链接](changes/2026-03-29__board-lazy-loading-pagination.md) | -| 2026-03-29 | 项目级 | 变更审计记录:助教详情页 API 500 修复(Schema 字段名对齐) | bugfix | 其他 | 未知 | [链接](changes/2026-03-29__coach-detail-500-field-name-fix.md) | -| 2026-03-29 | 项目级 | 变更审计记录:助教详情页设计稿对齐 + 数据格式化修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-29__coach-detail-design-alignment.md) | -| 2026-03-29 | ETL-feiqiu, 后端, 小程序 | 变更审计记录:助教详情页样式修复 + 数据聚合修复 + 关系指数回测支持 | bugfix | 其他 | 未知 | [链接](changes/2026-03-29__coach-detail-style-aggregation-fix.md) | -| 2026-03-29 | 项目级 | 变更审计记录:DWS_TASK_ENGINE ETL 编排替代 fire_event 事件链 | 功能 | 其他 | 未知 | [链接](changes/2026-03-29__dws-task-engine-etl-orchestration.md) | -| 2026-03-29 | 项目级 | 变更审计记录:修复 recall_completion_check 事件链断裂 | bugfix | 其他 | 未知 | [链接](changes/2026-03-29__fix-recall-completion-event-chain.md) | -| 2026-03-28 | ETL-feiqiu, 后端, 项目级 | 变更审计记录:财务看板 5 项修复(ODS 行膨胀 / 优惠分摊 / 环比字段 / 区域过滤 / 规范沉淀) | bugfix | 其他, 文档 | 未知 | [链接](changes/2026-03-28__board-finance-5fixes.md) | -| 2026-03-28 | 项目级 | 变更审计记录:财务看板 DWS 区域维度重构审计 | 重构 | 其他 | 未知 | [链接](changes/2026-03-28__board-finance-dws-area-refactor-audit.md) | -| 2026-03-28 | 项目级 | 变更审计记录:修复小程序登录落地页跳转失效 | bugfix | 其他 | 未知 | [链接](changes/2026-03-28__fix-miniprogram-login-landing-page.md) | -| 2026-03-27 | 小程序 | 变更审计记录:board-finance 双重格式化修复 | bugfix | 其他 | 低 | [链接](changes/2026-03-27__board-finance-double-format-fix.md) | -| 2026-03-27 | 后端 | 审计记录:board-finance-integration 阶段 2(后端 API 修复) | bugfix | 其他 | 未知 | [链接](changes/2026-03-27__board-finance-integration-T2.md) | -| 2026-03-27 | 项目级 | 变更审计记录:财务看板 Phase 2 对齐 Demo(T1-T6) | bugfix | 其他 | 未知 | [链接](changes/2026-03-27__board-finance-phase2-t1-t6.md) | -| 2026-03-27 | 项目级 | 变更审计记录:board-finance WXML 格式化迁移 + 动态 Tab + 加载态清理 | bugfix | 其他 | 未知 | [链接](changes/2026-03-27__board-finance-wxml-format-tabs-cleanup.md) | -| 2026-03-27 | 项目级 | 变更审计记录:小程序权限体系统一改造(W1-W5) | 功能 | 其他 | 未知 | [链接](changes/2026-03-27__miniprogram-permission-unification.md) | -| 2026-03-27 | 项目级 | 变更审计记录:任务列表近60天数据展示 + WXML 格式化改造 | 重构 | 其他 | 高 | [链接](changes/2026-03-27__task-list-recent60d-and-wxml-formatting.md) | -| 2026-03-26 | 项目级 | 审计记录:ETL 缺失字段补充 — 第一阶段(DDL + FACT_MAPPINGS) | 功能 | 其他 | 低 | [链接](changes/2026-03-26__etl-missing-fields-phase1-ddl-mappings.md) | -| 2026-03-26 | 项目级 | 变更审计记录:到手金额口径修复(全小程序统一) | bugfix | 其他 | 未知 | [链接](changes/2026-03-26__net-income-calibration-all-pages.md) | -| 2026-03-25 | 项目级 | 变更审计记录:保底 relationship_building 任务生成 | bugfix | 其他 | 未知 | [链接](changes/2026-03-25__baseline-relationship-building-tasks.md) | -| 2026-03-25 | 项目级 | 变更审计记录:保底任务生成独立连接修复 | bugfix | 其他 | 高 | [链接](changes/2026-03-25__baseline-task-independent-connection-fix.md) | -| 2026-03-25 | 项目级 | 变更审计记录:绩效页→任务详情页按 member_id 查询任务 | 文档 | 其他 | 未知 | [链接](changes/2026-03-25__perf-to-task-detail-member-query.md) | -| 2026-03-25 | 项目级 | 绩效页 WXML 缺少 data-member-id 导致任务详情页空白 | bugfix | 其他 | 未知 | [链接](changes/2026-03-25__perf-wxml-missing-member-id.md) | -| 2026-03-25 | 项目级 | 变更审计记录(Change Audit Record) | bugfix | 其他 | 未知 | [链接](changes/2026-03-25__task-detail-service-records-6-improvements.md) | -| 2026-03-25 | 项目级 | 变更审计记录:租户用户审核 — 软删除恢复 upsert 修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-25__tenant-users-soft-delete-upsert-fix.md) | -| 2026-03-24 | 项目级 | 变更审计记录:补录 cfg_skill_type 缺失的 3 条课程类型配置 | bugfix | 其他 | 未知 | [链接](changes/2026-03-24__add_missing_cfg_skill_type.md) | -| 2026-03-24 | ETL-feiqiu, 项目级 | 审计记录:迁移脚本合并到主 DDL 并归档 | 文档 | 其他, 文档 | 低 | [链接](changes/2026-03-24__ddl-migration-merge-and-archive.md) | -| 2026-03-24 | 后端 | 审计记录:修复小程序前端档位进度条无刻度 + bonus_money 计算 | bugfix | 其他 | 低 | [链接](changes/2026-03-24__fix-tier-nodes-empty-progress-bar.md) | -| 2026-03-24 | 项目级 | 变更审计记录:lookback_days 从 60 天扩大到 90 天 | 文档 | 其他 | 未知 | [链接](changes/2026-03-24__lookback_days_60_to_90.md) | -| 2026-03-24 | ETL-feiqiu, 小程序, 项目级 | 变更审计记录:小程序登录页头像昵称获取功能(前端实施) | 文档 | 其他, 文档 | 低 | [链接](changes/2026-03-24__miniprogram-avatar-nickname-feature.md) | -| 2026-03-24 | ETL-feiqiu, 后端 | 变更审计记录:P17 助教客户归属与任务生成引擎 | bugfix | 其他, 测试 | 未知 | [链接](changes/2026-03-24__p17-assistant-ownership-task-engine.md) | -| 2026-03-24 | ETL-feiqiu, 后端, 管理后台 | 变更审计记录:P18 任务引擎运营看板实施 | bugfix | 其他, 文档, 脚本工具 | 未知 | [链接](changes/2026-03-24__p18-task-engine-dashboard.md) | -| 2026-03-24 | 项目级 | 变更审计记录:绩效页数据正确性修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-24__perf-page-data-fix.md) | -| 2026-03-24 | 后端, 项目级 | 审计记录:审核弹窗头像展示 + 排版优化 | 功能 | 其他 | 低 | [链接](changes/2026-03-24__review-modal-avatar-layout.md) | -| 2026-03-24 | 项目级 | 变更审计记录:user_site_roles / user_assistant_binding 软删除实施 | 文档 | 其他 | 未知 | [链接](changes/2026-03-24__soft-delete-user-site-roles-binding.md) | -| 2026-03-24 | 项目级 | 变更审计记录:TriggerJobs 清空任务交互反馈优化 | 清理 | 其他 | 高 | [链接](changes/2026-03-24__trigger-jobs-clear-task-interaction.md) | -| 2026-03-23 | 项目级 | 变更审计记录:DDL 合并 — rejection_count + cancelled 状态 | 文档 | 其他 | 未知 | [链接](changes/2026-03-23__ddl-merge-rejection-count-cancelled.md) | -| 2026-03-23 | 项目级 | 变更审计记录:禁用用户改为移除用户 + 小程序鉴权两层模型修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-23__disable-to-remove-user-auth-model-fix.md) | -| 2026-03-23 | 项目级 | 变更审计记录:店铺筛选 + 时间格式 + 姓名格式 + 李小燕确认 | bugfix | 其他 | 未知 | [链接](changes/2026-03-23__mysites-tenant-filter-time-format-nickname-display.md) | -| 2026-03-23 | 项目级 | 变更审计记录:审核弹窗手机号不显示修复 + 自动匹配优化 + 身份标签中文化 | bugfix | 其他 | 未知 | [链接](changes/2026-03-23__review-modal-phone-display-auto-match-identity-label.md) | -| 2026-03-23 | 项目级 | 变更审计记录(Change Audit Record) | 功能 | 其他 | 未知 | [链接](changes/2026-03-23__role-routing-page-guard.md) | -| 2026-03-23 | 项目级 | 变更审计记录:租户管理员用户名大小写不敏感 | 功能 | 其他 | 未知 | [链接](changes/2026-03-23__tenant-admin-case-insensitive-username.md) | -| 2026-03-23 | 项目级 | 变更审计记录:租户管理后台审核弹窗改造(角色动态化 + 人员列表联动 + 手机号自动匹配) | bugfix | 其他 | 未知 | [链接](changes/2026-03-23__tenant-admin-review-modal-dynamic-roles.md) | -| 2026-03-23 | 项目级 | 变更审计记录:根治 tenant_admin 的 managed_site_ids 限制(跨模块权限验证改造) | bugfix | 其他 | 未知 | [链接](changes/2026-03-23__tenant-admin-site-access-root-fix.md) | -| 2026-03-23 | 项目级 | 变更审计记录:租户后台申请列表店铺筛选 + admin-web 简写ID修复 | bugfix | 其他 | 高 | [链接](changes/2026-03-23__tenant-user-approval-site-filter.md) | -| 2026-03-23 | 项目级 | 变更审计记录:Task 6 Change B/C — 定时任务管理页面 + 小程序清理 | bugfix | 其他 | 未知 | [链接](changes/2026-03-23__trigger-jobs-admin-web-miniprogram-cleanup.md) | -| 2026-03-22 | 项目级 | 变更审计记录:数据库字段走查批量修复 | bugfix | 其他 | 低 | [链接](changes/2026-03-22__db-field-walkthrough-batch-fix.md) | -| 2026-03-22 | 后端 | 变更审计记录:DDL vs 数据库结构对比修复 + BD 手册全面审核走查 | bugfix | 其他 | 未知 | [链接](changes/2026-03-22__ddl-db-structure-diff-bd-manual-audit.md) | -| 2026-03-22 | ETL-feiqiu | 变更审计记录(Change Audit Record) | bugfix | 其他, 文档 | 未知 | [链接](changes/2026-03-22__ddl_bd_manual_consistency_fix.md) | -| 2026-03-22 | 项目级 | 变更审计记录:dev-trace-log 全栈开发调试全链路日志系统 | 清理 | 其他 | 低 | [链接](changes/2026-03-22__dev-trace-log-fullstack-feature.md) | -| 2026-03-22 | 项目级 | 变更审计记录:NS4 DDL 合并 — deleted_at 字段并入主迁移脚本 | 文档 | 其他 | 未知 | [链接](changes/2026-03-22__ns4-ddl-merge-deleted-at.md) | -| 2026-03-22 | ETL-feiqiu, 项目级 | 审计记录:P14 Task 15 — 最终检查点完成 | bugfix | 其他, 脚本工具 | 极低 | [链接](changes/2026-03-22__p14-task15-final-checkpoint.md) | -| 2026-03-22 | ETL-feiqiu | 变更审计记录:P16 调度任务最小运行间隔 — Spec 收尾文档同步 | 文档 | 文档 | 未知 | [链接](changes/2026-03-22__p16-spec-closing-doc-sync.md) | -| 2026-03-22 | 项目级 | 变更审计记录:trace 日志路径修复 + 小程序登录竞态修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-22__trace-path-fix-miniprogram-login-race.md) | -| 2026-03-22 | 项目级 | 变更审计记录:僵尸任务修复 + 优雅关闭 + 重新执行按钮 | bugfix | 其他 | 未知 | [链接](changes/2026-03-22__zombie-task-graceful-shutdown-rerun.md) | -| 2026-03-20 | 项目级 | 变更审计记录:ai-prompt-refinement spec 完成 + board-coach Mock 精简 | bugfix | 其他 | 未知 | [链接](changes/2026-03-20__ai-prompt-refinement-board-coach-mock.md) | -| 2026-03-20 | 项目级 | H2 修复:FDW → 直连 ETL 架构统一 | bugfix | 其他 | 未知 | [链接](changes/2026-03-20__h2-fdw-to-direct-etl-unification.md) | -| 2026-03-20 | 项目级 | 审计记录:小程序文档同步更新 | bugfix | 其他 | 极低 | [链接](changes/2026-03-20__miniprogram-docs-sync.md) | -| 2026-03-20 | ETL-feiqiu, 后端 | 变更审计记录:R3 项目类型筛选接口重建(fetchSkillTypes / cfg_area_category) | bugfix | 其他, 文档 | 高 | [链接](changes/2026-03-20__r3-skill-type-filter-rebuild.md) | -| 2026-03-20 | 项目级 | RNS1 系列 AI 自主决策风险审计报告(完整版) | bugfix | 其他 | 高 | [链接](changes/2026-03-20__rns1-ai-autonomous-decision-risk-audit.md) | -| 2026-03-20 | ETL-feiqiu, 后端, 项目级 | 变更审计记录:RNS1.3 三看板 FDW 查询层数据口径修复 | bugfix | 其他, 文档 | 未知 | [链接](changes/2026-03-20__rns13-board-apis-e2e-fix.md) | -| 2026-03-20 | 项目级 | 变更审计记录:RNS1.4 CHAT 模块重建 + FDW→直连统一 + R3 筛选修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-20__rns14-chat-fdw-filter-audit.md) | -| 2026-03-20 | 项目级 | 变更审计记录:RNS1.4 CHAT 模块迁移 + R3 项目类型筛选重建 | bugfix | 其他 | 高 | [链接](changes/2026-03-20__rns14-chat-module-r3-filter-rebuild.md) | -| 2026-03-19 | ETL-feiqiu, 后端 | 变更审计记录:card_type_id 年卡/月卡映射文档同步 | bugfix | 其他, 文档 | 未知 | [链接](changes/2026-03-19__card-type-id-doc-sync.md) | -| 2026-03-19 | 项目级 | 变更审计记录:coach_service 绩效档位硬编码修复 | bugfix | 其他 | 低 | [链接](changes/2026-03-19__coach-tier-hardcode-fix.md) | -| 2026-03-19 | ETL-feiqiu, 后端 | 变更审计记录:助教等级映射硬编码修复(P2-9) | bugfix | 其他, 文档 | 低 | [链接](changes/2026-03-19__level-map-hardcode-fix.md) | -| 2026-03-19 | 项目级 | 数据库变更审计:RNS1.2 客户与助教接口 | 文档 | 其他 | 低 | [链接](changes/2026-03-19__rns12-db-audit.md) | -| 2026-03-18 | 项目级 | RNS1.1 E2E 测试 — FDW 直连改造 + performance_service bug 修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-18__rns1-e2e-fdw-direct-connect-bugfix.md) | -| 2026-03-15 | 项目级 | 变更审计记录:DDL 基线统一整理 + BD 手册重组 + 小程序副本清理 | bugfix | 其他 | 低 | [链接](changes/2026-03-15__ddl-baseline-consolidation-bd-manual-reorg.md) | -| 2026-03-13 | ETL-feiqiu, 小程序 | 审计记录:board-finance line-height 全量补齐 | bugfix | 其他, 文档 | 低 | [链接](changes/2026-03-13__board-finance-line-height-audit.md) | -| 2026-03-13 | 项目级 | 审计记录:board-finance.wxss rpx 换算公式修正 | 功能 | 其他 | 未知 | [链接](changes/2026-03-13__board-finance-rpx-formula-correction.md) | -| 2026-03-13 | 项目级 | 变更审计记录:task-list 页面 H5 原型 1:1 重写 | bugfix | 其他 | 未知 | [链接](changes/2026-03-13__task-list-h5-rewrite.md) | -| 2026-03-12 | 项目级 | 变更审计记录:board-finance WXSS 视觉校对(四轮) | bugfix | 其他 | 未知 | [链接](changes/2026-03-12__board-finance-overview-wxss-calibration.md) | -| 2026-03-12 | 项目级 | 变更审计记录:小程序前端开发文档体系收尾(步骤 1-4) | 文档 | 其他 | 低 | [链接](changes/2026-03-12__miniprogram-dev-docs-finalize.md) | -| 2026-03-12 | 项目级 | 变更审计记录:多模块累积变更 — AI 对话系统 + 任务防御 + 小程序 UI 重构 + ETL DWS | bugfix | 其他 | 未知 | [链接](changes/2026-03-12__multi-module-ai-taskdefense-miniprogram-etl.md) | -| 2026-03-12 | 项目级 | 变更审计记录:pixel-audit 结构化审计方法论替换像素对比 | 文档 | 其他 | 未知 | [链接](changes/2026-03-12__pixel-audit-structured-methodology.md) | -| 2026-03-10 | 项目级 | 变更审计记录:多模块累积变更 — AI 应用骨架 + 任务队列防卡死 + 小程序页面迁移 | bugfix | 其他 | 未知 | [链接](changes/2026-03-10__multi-module-ai-apps-task-defense-miniprogram.md) | -| 2026-03-08 | ETL-feiqiu, 后端 | 变更审计记录:P5 AI 集成需求审视 — 7 项歧义修补 + category 枚举对齐 | 文档 | 其他, 文档, 脚本工具 | 未知 | [链接](changes/2026-03-08__p5-ai-spec-review-category-enum-align.md) | -| 2026-03-07 | 项目级 | 变更审计记录:TASK 3 项目标签计算逻辑 — 文档与配置同步 | 文档 | 其他 | 低 | [链接](changes/2026-03-07__task3-project-tag-docs-sync.md) | -| 2026-03-06 | 项目级 | 变更审计记录:修复 RecordingAPIClient 缺少 post 方法 | bugfix | 其他 | 极低 | [链接](changes/2026-03-06__fix-api-client-post-method.md) | -| 2026-03-06 | 项目级 | 变更审计记录:修复 DatabaseOperations 缺少 _dsn 属性导致 DWD 并行装载全部失败 | bugfix | 其他 | 极低 | [链接](changes/2026-03-06__fix-db-operations-dsn-proxy.md) | -| 2026-03-04 | 项目级 | 变更审计记录:全栈累积变更(营业日配置、WebSocket 日志、微信认证、仓库清理) | 重构 | 其他 | 高 | [链接](changes/2026-03-04__fullstack-accumulated-changes.md) | -| 2026-03-03 | 项目级 | 变更审计记录:微信小程序开发调试面板 | 文档 | 其他 | 低 | [链接](changes/2026-03-03__miniprogram-dev-debug-panel.md) | -| 2026-03-02 | ETL-feiqiu, 项目级 | 变更审计:合并 ETL Hook 为统一分析入口 | 文档 | 其他, 脚本工具 | 未知 | [链接](changes/2026-03-02__etl-unified-analysis-hook-merge.md) | -| 2026-03-02 | 项目级 | SPI 基数校准改用非零样本中位数 | 功能 | 其他 | 未知 | [链接](changes/2026-03-02__spi-calibration-nonzero-median.md) | -| 2026-03-01 | 项目级 | 审计记录:DWD 清理 + ODS 商品销售修复 + dim_staff_ex 修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-01__dwd-cleanup-ods-fix-dim-staff-repair.md) | -| 2026-03-01 | 项目级 | 变更审计:DWS numeric 精度扩展 + ODS 库存 siteid 注入 | 文档 | 其他 | 低 | [链接](changes/2026-03-01__dws-numeric-precision-ods-siteid-fix.md) | -| 2026-02-28 | ETL-feiqiu, 后端, 管理后台 | 变更审计记录:多模块累积变更(营业日/核心业务/认证/ETL DWS 重构/参考文档合并) | 重构 | 其他 | 未知 | [链接](changes/2026-02-28__multi-module-accumulated-changes.md) | -| 2026-02-27 | ETL-feiqiu, 共享包, 跨库(FDW), 项目级 | 变更审计:营业日分割规则 PRD 同步检查 + 全栈集成收口 | bugfix | API 层, DWD 层, DWS 层, 其他, 调度, 质量校验, 配置 | 低 | [链接](changes/2026-02-27__biz-day-cutoff-prd-sync-check.md) | -| 2026-02-27 | 项目级 | 审计记录:P4 小程序核心业务路由 + 触发器注册 | 重构 | 其他 | 未知 | [链接](changes/2026-02-27__p4-core-business-routes-triggers.md) | -| 2026-02-26 | 项目级 | 审计记录:ETL Bug 修复 — dim_staff_ex 列映射 + assistant_daily table_area_name | bugfix | 其他 | 未知 | [链接](changes/2026-02-26__etl-bugfix-dim-staff-rankname-assistant-daily-table-area.md) | -| 2026-02-26 | 项目级 | 变更审计:P1/P2/P3 全栈集成(DB 基础 + ETL DWS 扩展 + 小程序鉴权) | bugfix | 其他 | 低 | [链接](changes/2026-02-26__p1-p2-p3-fullstack-integration.md) | -| 2026-02-26 | 项目级 | 审计记录:维客线索重构(member_birthday_manual → member_retention_clue) | 重构 | 其他 | 未知 | [链接](changes/2026-02-26__retention-clue-refactor.md) | -| 2026-02-26 | 项目级 | 审计记录:root-file — .gitignore 更新与 H5 UI / 临时文件清理 | 重构 | 其他 | 高 | [链接](changes/2026-02-26__root-file-gitignore-h5ui-cleanup.md) | | 2026-02-15 | 项目级 | 审计记录:管理后台全量实现 + DB Schema 迁移 + 审计产物重组 | 清理 | 其他 | 高 | [链接](changes/2026-02-15__admin-web-console-db-migration-audit-reorg.md) | | 2026-02-15 | ETL-feiqiu, 项目级 | 变更审计记录(Change Audit Record) | 文档 | 其他, 文档, 质量校验 | 极低 | [链接](changes/2026-02-15__audit-consolidation-doc-reorg.md) | | 2026-02-15 | 后端 | 审计记录:后端依赖补全使 FastAPI 可启动 | bugfix | 其他 | 未知 | [链接](changes/2026-02-15__backend-deps-bootstrap.md) | @@ -139,24 +46,6 @@ | 日期 | 需求摘要 | 变更类型 | 影响模块 | 风险 | 详情 | |------|----------|----------|----------|------|------| -| 2026-03-29 | 变更审计记录:助教详情页样式修复 + 数据聚合修复 + 关系指数回测支持 | bugfix | 其他 | 未知 | [链接](changes/2026-03-29__coach-detail-style-aggregation-fix.md) | -| 2026-03-28 | 变更审计记录:财务看板 5 项修复(ODS 行膨胀 / 优惠分摊 / 环比字段 / 区域过滤 / 规范沉淀) | bugfix | 其他, 文档 | 未知 | [链接](changes/2026-03-28__board-finance-5fixes.md) | -| 2026-03-24 | 审计记录:迁移脚本合并到主 DDL 并归档 | 文档 | 其他, 文档 | 低 | [链接](changes/2026-03-24__ddl-migration-merge-and-archive.md) | -| 2026-03-24 | 变更审计记录:小程序登录页头像昵称获取功能(前端实施) | 文档 | 其他, 文档 | 低 | [链接](changes/2026-03-24__miniprogram-avatar-nickname-feature.md) | -| 2026-03-24 | 变更审计记录:P17 助教客户归属与任务生成引擎 | bugfix | 其他, 测试 | 未知 | [链接](changes/2026-03-24__p17-assistant-ownership-task-engine.md) | -| 2026-03-24 | 变更审计记录:P18 任务引擎运营看板实施 | bugfix | 其他, 文档, 脚本工具 | 未知 | [链接](changes/2026-03-24__p18-task-engine-dashboard.md) | -| 2026-03-22 | 变更审计记录(Change Audit Record) | bugfix | 其他, 文档 | 未知 | [链接](changes/2026-03-22__ddl_bd_manual_consistency_fix.md) | -| 2026-03-22 | 审计记录:P14 Task 15 — 最终检查点完成 | bugfix | 其他, 脚本工具 | 极低 | [链接](changes/2026-03-22__p14-task15-final-checkpoint.md) | -| 2026-03-22 | 变更审计记录:P16 调度任务最小运行间隔 — Spec 收尾文档同步 | 文档 | 文档 | 未知 | [链接](changes/2026-03-22__p16-spec-closing-doc-sync.md) | -| 2026-03-20 | 变更审计记录:R3 项目类型筛选接口重建(fetchSkillTypes / cfg_area_category) | bugfix | 其他, 文档 | 高 | [链接](changes/2026-03-20__r3-skill-type-filter-rebuild.md) | -| 2026-03-20 | 变更审计记录:RNS1.3 三看板 FDW 查询层数据口径修复 | bugfix | 其他, 文档 | 未知 | [链接](changes/2026-03-20__rns13-board-apis-e2e-fix.md) | -| 2026-03-19 | 变更审计记录:card_type_id 年卡/月卡映射文档同步 | bugfix | 其他, 文档 | 未知 | [链接](changes/2026-03-19__card-type-id-doc-sync.md) | -| 2026-03-19 | 变更审计记录:助教等级映射硬编码修复(P2-9) | bugfix | 其他, 文档 | 低 | [链接](changes/2026-03-19__level-map-hardcode-fix.md) | -| 2026-03-13 | 审计记录:board-finance line-height 全量补齐 | bugfix | 其他, 文档 | 低 | [链接](changes/2026-03-13__board-finance-line-height-audit.md) | -| 2026-03-08 | 变更审计记录:P5 AI 集成需求审视 — 7 项歧义修补 + category 枚举对齐 | 文档 | 其他, 文档, 脚本工具 | 未知 | [链接](changes/2026-03-08__p5-ai-spec-review-category-enum-align.md) | -| 2026-03-02 | 变更审计:合并 ETL Hook 为统一分析入口 | 文档 | 其他, 脚本工具 | 未知 | [链接](changes/2026-03-02__etl-unified-analysis-hook-merge.md) | -| 2026-02-28 | 变更审计记录:多模块累积变更(营业日/核心业务/认证/ETL DWS 重构/参考文档合并) | 重构 | 其他 | 未知 | [链接](changes/2026-02-28__multi-module-accumulated-changes.md) | -| 2026-02-27 | 变更审计:营业日分割规则 PRD 同步检查 + 全栈集成收口 | bugfix | API 层, DWD 层, DWS 层, 其他, 调度, 质量校验, 配置 | 低 | [链接](changes/2026-02-27__biz-day-cutoff-prd-sync-check.md) | | 2026-02-15 | 变更审计记录(Change Audit Record) | 文档 | 其他, 文档, 质量校验 | 极低 | [链接](changes/2026-02-15__audit-consolidation-doc-reorg.md) | | 2026-02-15 | 审计记录:docs/bd_manual + docs/dictionary → docs/database 合并 | 清理 | 其他, 文档, 脚本工具 | 极低 | [链接](changes/2026-02-15__docs-database-merge.md) | | 2026-02-15 | 审计记录:docs/index + docs/开发笔记 清理与路径整合 | 清理 | 其他, 文档, 脚本工具 | 低 | [链接](changes/2026-02-15__docs-devnotes-index-cleanup.md) | @@ -187,141 +76,21 @@ | 日期 | 需求摘要 | 变更类型 | 影响模块 | 风险 | 详情 | |------|----------|----------|----------|------|------| -| 2026-03-29 | 变更审计记录:助教详情页样式修复 + 数据聚合修复 + 关系指数回测支持 | bugfix | 其他 | 未知 | [链接](changes/2026-03-29__coach-detail-style-aggregation-fix.md) | -| 2026-03-28 | 变更审计记录:财务看板 5 项修复(ODS 行膨胀 / 优惠分摊 / 环比字段 / 区域过滤 / 规范沉淀) | bugfix | 其他, 文档 | 未知 | [链接](changes/2026-03-28__board-finance-5fixes.md) | -| 2026-03-27 | 审计记录:board-finance-integration 阶段 2(后端 API 修复) | bugfix | 其他 | 未知 | [链接](changes/2026-03-27__board-finance-integration-T2.md) | -| 2026-03-24 | 审计记录:修复小程序前端档位进度条无刻度 + bonus_money 计算 | bugfix | 其他 | 低 | [链接](changes/2026-03-24__fix-tier-nodes-empty-progress-bar.md) | -| 2026-03-24 | 变更审计记录:P17 助教客户归属与任务生成引擎 | bugfix | 其他, 测试 | 未知 | [链接](changes/2026-03-24__p17-assistant-ownership-task-engine.md) | -| 2026-03-24 | 变更审计记录:P18 任务引擎运营看板实施 | bugfix | 其他, 文档, 脚本工具 | 未知 | [链接](changes/2026-03-24__p18-task-engine-dashboard.md) | -| 2026-03-24 | 审计记录:审核弹窗头像展示 + 排版优化 | 功能 | 其他 | 低 | [链接](changes/2026-03-24__review-modal-avatar-layout.md) | -| 2026-03-22 | 变更审计记录:DDL vs 数据库结构对比修复 + BD 手册全面审核走查 | bugfix | 其他 | 未知 | [链接](changes/2026-03-22__ddl-db-structure-diff-bd-manual-audit.md) | -| 2026-03-20 | 变更审计记录:R3 项目类型筛选接口重建(fetchSkillTypes / cfg_area_category) | bugfix | 其他, 文档 | 高 | [链接](changes/2026-03-20__r3-skill-type-filter-rebuild.md) | -| 2026-03-20 | 变更审计记录:RNS1.3 三看板 FDW 查询层数据口径修复 | bugfix | 其他, 文档 | 未知 | [链接](changes/2026-03-20__rns13-board-apis-e2e-fix.md) | -| 2026-03-19 | 变更审计记录:card_type_id 年卡/月卡映射文档同步 | bugfix | 其他, 文档 | 未知 | [链接](changes/2026-03-19__card-type-id-doc-sync.md) | -| 2026-03-19 | 变更审计记录:助教等级映射硬编码修复(P2-9) | bugfix | 其他, 文档 | 低 | [链接](changes/2026-03-19__level-map-hardcode-fix.md) | -| 2026-03-08 | 变更审计记录:P5 AI 集成需求审视 — 7 项歧义修补 + category 枚举对齐 | 文档 | 其他, 文档, 脚本工具 | 未知 | [链接](changes/2026-03-08__p5-ai-spec-review-category-enum-align.md) | -| 2026-02-28 | 变更审计记录:多模块累积变更(营业日/核心业务/认证/ETL DWS 重构/参考文档合并) | 重构 | 其他 | 未知 | [链接](changes/2026-02-28__multi-module-accumulated-changes.md) | | 2026-02-15 | 审计记录:后端依赖补全使 FastAPI 可启动 | bugfix | 其他 | 未知 | [链接](changes/2026-02-15__backend-deps-bootstrap.md) | -### 管理后台 - -| 日期 | 需求摘要 | 变更类型 | 影响模块 | 风险 | 详情 | -|------|----------|----------|----------|------|------| -| 2026-03-24 | 变更审计记录:P18 任务引擎运营看板实施 | bugfix | 其他, 文档, 脚本工具 | 未知 | [链接](changes/2026-03-24__p18-task-engine-dashboard.md) | -| 2026-02-28 | 变更审计记录:多模块累积变更(营业日/核心业务/认证/ETL DWS 重构/参考文档合并) | 重构 | 其他 | 未知 | [链接](changes/2026-02-28__multi-module-accumulated-changes.md) | - -### 小程序 - -| 日期 | 需求摘要 | 变更类型 | 影响模块 | 风险 | 详情 | -|------|----------|----------|----------|------|------| -| 2026-03-29 | 变更审计记录:助教详情页样式修复 + 数据聚合修复 + 关系指数回测支持 | bugfix | 其他 | 未知 | [链接](changes/2026-03-29__coach-detail-style-aggregation-fix.md) | -| 2026-03-27 | 变更审计记录:board-finance 双重格式化修复 | bugfix | 其他 | 低 | [链接](changes/2026-03-27__board-finance-double-format-fix.md) | -| 2026-03-24 | 变更审计记录:小程序登录页头像昵称获取功能(前端实施) | 文档 | 其他, 文档 | 低 | [链接](changes/2026-03-24__miniprogram-avatar-nickname-feature.md) | -| 2026-03-13 | 审计记录:board-finance line-height 全量补齐 | bugfix | 其他, 文档 | 低 | [链接](changes/2026-03-13__board-finance-line-height-audit.md) | - ### 桌面GUI | 日期 | 需求摘要 | 变更类型 | 影响模块 | 风险 | 详情 | |------|----------|----------|----------|------|------| | 2026-02-13 | 审计记录:移除旧版指数(RECALL/INTIMACY)+ ML last-touch 清理 | bugfix | DWS 层, GUI, 其他, 数据库, 文档, 测试, 调度 | 低 | [链接](changes/2026-02-13__remove-legacy-index-cleanup.md) | -### 共享包 - -| 日期 | 需求摘要 | 变更类型 | 影响模块 | 风险 | 详情 | -|------|----------|----------|----------|------|------| -| 2026-02-27 | 变更审计:营业日分割规则 PRD 同步检查 + 全栈集成收口 | bugfix | API 层, DWD 层, DWS 层, 其他, 调度, 质量校验, 配置 | 低 | [链接](changes/2026-02-27__biz-day-cutoff-prd-sync-check.md) | - -### 跨库(FDW) - -| 日期 | 需求摘要 | 变更类型 | 影响模块 | 风险 | 详情 | -|------|----------|----------|----------|------|------| -| 2026-02-27 | 变更审计:营业日分割规则 PRD 同步检查 + 全栈集成收口 | bugfix | API 层, DWD 层, DWS 层, 其他, 调度, 质量校验, 配置 | 低 | [链接](changes/2026-02-27__biz-day-cutoff-prd-sync-check.md) | - ### 项目级 | 日期 | 需求摘要 | 变更类型 | 影响模块 | 风险 | 详情 | |------|----------|----------|----------|------|------| -| 2026-04-08 | 变更审计记录:Fix-13 回滚手动完成 + 广义召回完成机制 | bugfix | 其他 | 低 | [链接](changes/2026-04-08__fix13-recall-events-refactor.md) | +| 2026-04-20 | 变更审计记录:2026-04-20 历史累积批次预审 | bugfix | 其他 | 高 | [链接](changes/2026-04-20__historical-batch-pre-audit.md) | +| 2026-04-15 | 变更审计记录:美团结算导入 + core 层定位 + CORE_DIM_SYNC 任务 | bugfix | 其他 | 低 | [链接](changes/2026-04-15__meituan-settle-core-sync.md) | | 2026-04-06 | 变更审计记录:v1 历史清理与 DDL 合并归档 | 清理 | 其他 | 极低 | [链接](changes/2026-04-06__v1-cleanup-ddl-consolidation.md) | -| 2026-04-05 | 变更审计记录:Kiro → Claude Code 全量迁移 | 文档 | 其他 | 低 | [链接](changes/2026-04-05__kiro-to-claude-code-migration.md) | -| 2026-03-31 | 变更审计记录:任务引擎改造 — 参数调优 + 客户级升级/转移 + 任务统计写入 | 功能 | 其他 | 未知 | [链接](changes/2026-03-31__task-engine-overhaul.md) | -| 2026-03-29 | 变更审计记录:助教看板和客户看板懒加载(分页加载) | 重构 | 其他 | 未知 | [链接](changes/2026-03-29__board-lazy-loading-pagination.md) | -| 2026-03-29 | 变更审计记录:助教详情页 API 500 修复(Schema 字段名对齐) | bugfix | 其他 | 未知 | [链接](changes/2026-03-29__coach-detail-500-field-name-fix.md) | -| 2026-03-29 | 变更审计记录:助教详情页设计稿对齐 + 数据格式化修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-29__coach-detail-design-alignment.md) | -| 2026-03-29 | 变更审计记录:DWS_TASK_ENGINE ETL 编排替代 fire_event 事件链 | 功能 | 其他 | 未知 | [链接](changes/2026-03-29__dws-task-engine-etl-orchestration.md) | -| 2026-03-29 | 变更审计记录:修复 recall_completion_check 事件链断裂 | bugfix | 其他 | 未知 | [链接](changes/2026-03-29__fix-recall-completion-event-chain.md) | -| 2026-03-28 | 变更审计记录:财务看板 5 项修复(ODS 行膨胀 / 优惠分摊 / 环比字段 / 区域过滤 / 规范沉淀) | bugfix | 其他, 文档 | 未知 | [链接](changes/2026-03-28__board-finance-5fixes.md) | -| 2026-03-28 | 变更审计记录:财务看板 DWS 区域维度重构审计 | 重构 | 其他 | 未知 | [链接](changes/2026-03-28__board-finance-dws-area-refactor-audit.md) | -| 2026-03-28 | 变更审计记录:修复小程序登录落地页跳转失效 | bugfix | 其他 | 未知 | [链接](changes/2026-03-28__fix-miniprogram-login-landing-page.md) | -| 2026-03-27 | 变更审计记录:财务看板 Phase 2 对齐 Demo(T1-T6) | bugfix | 其他 | 未知 | [链接](changes/2026-03-27__board-finance-phase2-t1-t6.md) | -| 2026-03-27 | 变更审计记录:board-finance WXML 格式化迁移 + 动态 Tab + 加载态清理 | bugfix | 其他 | 未知 | [链接](changes/2026-03-27__board-finance-wxml-format-tabs-cleanup.md) | -| 2026-03-27 | 变更审计记录:小程序权限体系统一改造(W1-W5) | 功能 | 其他 | 未知 | [链接](changes/2026-03-27__miniprogram-permission-unification.md) | -| 2026-03-27 | 变更审计记录:任务列表近60天数据展示 + WXML 格式化改造 | 重构 | 其他 | 高 | [链接](changes/2026-03-27__task-list-recent60d-and-wxml-formatting.md) | -| 2026-03-26 | 审计记录:ETL 缺失字段补充 — 第一阶段(DDL + FACT_MAPPINGS) | 功能 | 其他 | 低 | [链接](changes/2026-03-26__etl-missing-fields-phase1-ddl-mappings.md) | -| 2026-03-26 | 变更审计记录:到手金额口径修复(全小程序统一) | bugfix | 其他 | 未知 | [链接](changes/2026-03-26__net-income-calibration-all-pages.md) | -| 2026-03-25 | 变更审计记录:保底 relationship_building 任务生成 | bugfix | 其他 | 未知 | [链接](changes/2026-03-25__baseline-relationship-building-tasks.md) | -| 2026-03-25 | 变更审计记录:保底任务生成独立连接修复 | bugfix | 其他 | 高 | [链接](changes/2026-03-25__baseline-task-independent-connection-fix.md) | -| 2026-03-25 | 变更审计记录:绩效页→任务详情页按 member_id 查询任务 | 文档 | 其他 | 未知 | [链接](changes/2026-03-25__perf-to-task-detail-member-query.md) | -| 2026-03-25 | 绩效页 WXML 缺少 data-member-id 导致任务详情页空白 | bugfix | 其他 | 未知 | [链接](changes/2026-03-25__perf-wxml-missing-member-id.md) | -| 2026-03-25 | 变更审计记录(Change Audit Record) | bugfix | 其他 | 未知 | [链接](changes/2026-03-25__task-detail-service-records-6-improvements.md) | -| 2026-03-25 | 变更审计记录:租户用户审核 — 软删除恢复 upsert 修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-25__tenant-users-soft-delete-upsert-fix.md) | -| 2026-03-24 | 变更审计记录:补录 cfg_skill_type 缺失的 3 条课程类型配置 | bugfix | 其他 | 未知 | [链接](changes/2026-03-24__add_missing_cfg_skill_type.md) | -| 2026-03-24 | 审计记录:迁移脚本合并到主 DDL 并归档 | 文档 | 其他, 文档 | 低 | [链接](changes/2026-03-24__ddl-migration-merge-and-archive.md) | -| 2026-03-24 | 变更审计记录:lookback_days 从 60 天扩大到 90 天 | 文档 | 其他 | 未知 | [链接](changes/2026-03-24__lookback_days_60_to_90.md) | -| 2026-03-24 | 变更审计记录:小程序登录页头像昵称获取功能(前端实施) | 文档 | 其他, 文档 | 低 | [链接](changes/2026-03-24__miniprogram-avatar-nickname-feature.md) | -| 2026-03-24 | 变更审计记录:绩效页数据正确性修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-24__perf-page-data-fix.md) | -| 2026-03-24 | 审计记录:审核弹窗头像展示 + 排版优化 | 功能 | 其他 | 低 | [链接](changes/2026-03-24__review-modal-avatar-layout.md) | -| 2026-03-24 | 变更审计记录:user_site_roles / user_assistant_binding 软删除实施 | 文档 | 其他 | 未知 | [链接](changes/2026-03-24__soft-delete-user-site-roles-binding.md) | -| 2026-03-24 | 变更审计记录:TriggerJobs 清空任务交互反馈优化 | 清理 | 其他 | 高 | [链接](changes/2026-03-24__trigger-jobs-clear-task-interaction.md) | -| 2026-03-23 | 变更审计记录:DDL 合并 — rejection_count + cancelled 状态 | 文档 | 其他 | 未知 | [链接](changes/2026-03-23__ddl-merge-rejection-count-cancelled.md) | -| 2026-03-23 | 变更审计记录:禁用用户改为移除用户 + 小程序鉴权两层模型修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-23__disable-to-remove-user-auth-model-fix.md) | -| 2026-03-23 | 变更审计记录:店铺筛选 + 时间格式 + 姓名格式 + 李小燕确认 | bugfix | 其他 | 未知 | [链接](changes/2026-03-23__mysites-tenant-filter-time-format-nickname-display.md) | -| 2026-03-23 | 变更审计记录:审核弹窗手机号不显示修复 + 自动匹配优化 + 身份标签中文化 | bugfix | 其他 | 未知 | [链接](changes/2026-03-23__review-modal-phone-display-auto-match-identity-label.md) | -| 2026-03-23 | 变更审计记录(Change Audit Record) | 功能 | 其他 | 未知 | [链接](changes/2026-03-23__role-routing-page-guard.md) | -| 2026-03-23 | 变更审计记录:租户管理员用户名大小写不敏感 | 功能 | 其他 | 未知 | [链接](changes/2026-03-23__tenant-admin-case-insensitive-username.md) | -| 2026-03-23 | 变更审计记录:租户管理后台审核弹窗改造(角色动态化 + 人员列表联动 + 手机号自动匹配) | bugfix | 其他 | 未知 | [链接](changes/2026-03-23__tenant-admin-review-modal-dynamic-roles.md) | -| 2026-03-23 | 变更审计记录:根治 tenant_admin 的 managed_site_ids 限制(跨模块权限验证改造) | bugfix | 其他 | 未知 | [链接](changes/2026-03-23__tenant-admin-site-access-root-fix.md) | -| 2026-03-23 | 变更审计记录:租户后台申请列表店铺筛选 + admin-web 简写ID修复 | bugfix | 其他 | 高 | [链接](changes/2026-03-23__tenant-user-approval-site-filter.md) | -| 2026-03-23 | 变更审计记录:Task 6 Change B/C — 定时任务管理页面 + 小程序清理 | bugfix | 其他 | 未知 | [链接](changes/2026-03-23__trigger-jobs-admin-web-miniprogram-cleanup.md) | -| 2026-03-22 | 变更审计记录:数据库字段走查批量修复 | bugfix | 其他 | 低 | [链接](changes/2026-03-22__db-field-walkthrough-batch-fix.md) | -| 2026-03-22 | 变更审计记录:dev-trace-log 全栈开发调试全链路日志系统 | 清理 | 其他 | 低 | [链接](changes/2026-03-22__dev-trace-log-fullstack-feature.md) | -| 2026-03-22 | 变更审计记录:NS4 DDL 合并 — deleted_at 字段并入主迁移脚本 | 文档 | 其他 | 未知 | [链接](changes/2026-03-22__ns4-ddl-merge-deleted-at.md) | -| 2026-03-22 | 审计记录:P14 Task 15 — 最终检查点完成 | bugfix | 其他, 脚本工具 | 极低 | [链接](changes/2026-03-22__p14-task15-final-checkpoint.md) | -| 2026-03-22 | 变更审计记录:trace 日志路径修复 + 小程序登录竞态修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-22__trace-path-fix-miniprogram-login-race.md) | -| 2026-03-22 | 变更审计记录:僵尸任务修复 + 优雅关闭 + 重新执行按钮 | bugfix | 其他 | 未知 | [链接](changes/2026-03-22__zombie-task-graceful-shutdown-rerun.md) | -| 2026-03-20 | 变更审计记录:ai-prompt-refinement spec 完成 + board-coach Mock 精简 | bugfix | 其他 | 未知 | [链接](changes/2026-03-20__ai-prompt-refinement-board-coach-mock.md) | -| 2026-03-20 | H2 修复:FDW → 直连 ETL 架构统一 | bugfix | 其他 | 未知 | [链接](changes/2026-03-20__h2-fdw-to-direct-etl-unification.md) | -| 2026-03-20 | 审计记录:小程序文档同步更新 | bugfix | 其他 | 极低 | [链接](changes/2026-03-20__miniprogram-docs-sync.md) | -| 2026-03-20 | RNS1 系列 AI 自主决策风险审计报告(完整版) | bugfix | 其他 | 高 | [链接](changes/2026-03-20__rns1-ai-autonomous-decision-risk-audit.md) | -| 2026-03-20 | 变更审计记录:RNS1.3 三看板 FDW 查询层数据口径修复 | bugfix | 其他, 文档 | 未知 | [链接](changes/2026-03-20__rns13-board-apis-e2e-fix.md) | -| 2026-03-20 | 变更审计记录:RNS1.4 CHAT 模块重建 + FDW→直连统一 + R3 筛选修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-20__rns14-chat-fdw-filter-audit.md) | -| 2026-03-20 | 变更审计记录:RNS1.4 CHAT 模块迁移 + R3 项目类型筛选重建 | bugfix | 其他 | 高 | [链接](changes/2026-03-20__rns14-chat-module-r3-filter-rebuild.md) | -| 2026-03-19 | 变更审计记录:coach_service 绩效档位硬编码修复 | bugfix | 其他 | 低 | [链接](changes/2026-03-19__coach-tier-hardcode-fix.md) | -| 2026-03-19 | 数据库变更审计:RNS1.2 客户与助教接口 | 文档 | 其他 | 低 | [链接](changes/2026-03-19__rns12-db-audit.md) | -| 2026-03-18 | RNS1.1 E2E 测试 — FDW 直连改造 + performance_service bug 修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-18__rns1-e2e-fdw-direct-connect-bugfix.md) | -| 2026-03-15 | 变更审计记录:DDL 基线统一整理 + BD 手册重组 + 小程序副本清理 | bugfix | 其他 | 低 | [链接](changes/2026-03-15__ddl-baseline-consolidation-bd-manual-reorg.md) | -| 2026-03-13 | 审计记录:board-finance.wxss rpx 换算公式修正 | 功能 | 其他 | 未知 | [链接](changes/2026-03-13__board-finance-rpx-formula-correction.md) | -| 2026-03-13 | 变更审计记录:task-list 页面 H5 原型 1:1 重写 | bugfix | 其他 | 未知 | [链接](changes/2026-03-13__task-list-h5-rewrite.md) | -| 2026-03-12 | 变更审计记录:board-finance WXSS 视觉校对(四轮) | bugfix | 其他 | 未知 | [链接](changes/2026-03-12__board-finance-overview-wxss-calibration.md) | -| 2026-03-12 | 变更审计记录:小程序前端开发文档体系收尾(步骤 1-4) | 文档 | 其他 | 低 | [链接](changes/2026-03-12__miniprogram-dev-docs-finalize.md) | -| 2026-03-12 | 变更审计记录:多模块累积变更 — AI 对话系统 + 任务防御 + 小程序 UI 重构 + ETL DWS | bugfix | 其他 | 未知 | [链接](changes/2026-03-12__multi-module-ai-taskdefense-miniprogram-etl.md) | -| 2026-03-12 | 变更审计记录:pixel-audit 结构化审计方法论替换像素对比 | 文档 | 其他 | 未知 | [链接](changes/2026-03-12__pixel-audit-structured-methodology.md) | -| 2026-03-10 | 变更审计记录:多模块累积变更 — AI 应用骨架 + 任务队列防卡死 + 小程序页面迁移 | bugfix | 其他 | 未知 | [链接](changes/2026-03-10__multi-module-ai-apps-task-defense-miniprogram.md) | -| 2026-03-07 | 变更审计记录:TASK 3 项目标签计算逻辑 — 文档与配置同步 | 文档 | 其他 | 低 | [链接](changes/2026-03-07__task3-project-tag-docs-sync.md) | -| 2026-03-06 | 变更审计记录:修复 RecordingAPIClient 缺少 post 方法 | bugfix | 其他 | 极低 | [链接](changes/2026-03-06__fix-api-client-post-method.md) | -| 2026-03-06 | 变更审计记录:修复 DatabaseOperations 缺少 _dsn 属性导致 DWD 并行装载全部失败 | bugfix | 其他 | 极低 | [链接](changes/2026-03-06__fix-db-operations-dsn-proxy.md) | -| 2026-03-04 | 变更审计记录:全栈累积变更(营业日配置、WebSocket 日志、微信认证、仓库清理) | 重构 | 其他 | 高 | [链接](changes/2026-03-04__fullstack-accumulated-changes.md) | -| 2026-03-03 | 变更审计记录:微信小程序开发调试面板 | 文档 | 其他 | 低 | [链接](changes/2026-03-03__miniprogram-dev-debug-panel.md) | -| 2026-03-02 | 变更审计:合并 ETL Hook 为统一分析入口 | 文档 | 其他, 脚本工具 | 未知 | [链接](changes/2026-03-02__etl-unified-analysis-hook-merge.md) | -| 2026-03-02 | SPI 基数校准改用非零样本中位数 | 功能 | 其他 | 未知 | [链接](changes/2026-03-02__spi-calibration-nonzero-median.md) | -| 2026-03-01 | 审计记录:DWD 清理 + ODS 商品销售修复 + dim_staff_ex 修复 | bugfix | 其他 | 未知 | [链接](changes/2026-03-01__dwd-cleanup-ods-fix-dim-staff-repair.md) | -| 2026-03-01 | 变更审计:DWS numeric 精度扩展 + ODS 库存 siteid 注入 | 文档 | 其他 | 低 | [链接](changes/2026-03-01__dws-numeric-precision-ods-siteid-fix.md) | -| 2026-02-27 | 变更审计:营业日分割规则 PRD 同步检查 + 全栈集成收口 | bugfix | API 层, DWD 层, DWS 层, 其他, 调度, 质量校验, 配置 | 低 | [链接](changes/2026-02-27__biz-day-cutoff-prd-sync-check.md) | -| 2026-02-27 | 审计记录:P4 小程序核心业务路由 + 触发器注册 | 重构 | 其他 | 未知 | [链接](changes/2026-02-27__p4-core-business-routes-triggers.md) | -| 2026-02-26 | 审计记录:ETL Bug 修复 — dim_staff_ex 列映射 + assistant_daily table_area_name | bugfix | 其他 | 未知 | [链接](changes/2026-02-26__etl-bugfix-dim-staff-rankname-assistant-daily-table-area.md) | -| 2026-02-26 | 变更审计:P1/P2/P3 全栈集成(DB 基础 + ETL DWS 扩展 + 小程序鉴权) | bugfix | 其他 | 低 | [链接](changes/2026-02-26__p1-p2-p3-fullstack-integration.md) | -| 2026-02-26 | 审计记录:维客线索重构(member_birthday_manual → member_retention_clue) | 重构 | 其他 | 未知 | [链接](changes/2026-02-26__retention-clue-refactor.md) | -| 2026-02-26 | 审计记录:root-file — .gitignore 更新与 H5 UI / 临时文件清理 | 重构 | 其他 | 高 | [链接](changes/2026-02-26__root-file-gitignore-h5ui-cleanup.md) | | 2026-02-15 | 审计记录:管理后台全量实现 + DB Schema 迁移 + 审计产物重组 | 清理 | 其他 | 高 | [链接](changes/2026-02-15__admin-web-console-db-migration-audit-reorg.md) | | 2026-02-15 | 变更审计记录(Change Audit Record) | 文档 | 其他, 文档, 质量校验 | 极低 | [链接](changes/2026-02-15__audit-consolidation-doc-reorg.md) | | 2026-02-15 | 审计记录:docs/bd_manual + docs/dictionary → docs/database 合并 | 清理 | 其他, 文档, 脚本工具 | 极低 | [链接](changes/2026-02-15__docs-database-merge.md) | @@ -343,14 +112,12 @@ | 日期 | 需求摘要 | 变更类型 | 风险 | 详情 | |------|----------|----------|------|------| -| 2026-02-27 | 变更审计:营业日分割规则 PRD 同步检查 + 全栈集成收口 | bugfix | 低 | [链接](changes/2026-02-27__biz-day-cutoff-prd-sync-check.md) | | 2026-02-14 | 审计记录:api/recording_client.py 默认时区修正 | 功能 | 极低 | [链接](changes/2026-02-14__recording-client-timezone-fix.md) | ### DWD 层 | 日期 | 需求摘要 | 变更类型 | 风险 | 详情 | |------|----------|----------|------|------| -| 2026-02-27 | 变更审计:营业日分割规则 PRD 同步检查 + 全栈集成收口 | bugfix | 低 | [链接](changes/2026-02-27__biz-day-cutoff-prd-sync-check.md) | | 2026-02-14 | 审计记录:删除 DWD 层 dwd_settlement_head_ex.settle_list 冗余列 | 清理 | 未知 | [链接](changes/2026-02-14__drop-dwd-settle-list.md) | | 2026-02-14 | 审计记录:删除 ODS 层 settlelist 冗余列 | bugfix | 未知 | [链接](changes/2026-02-14__drop-ods-settlelist.md) | @@ -358,7 +125,6 @@ | 日期 | 需求摘要 | 变更类型 | 风险 | 详情 | |------|----------|----------|------|------| -| 2026-02-27 | 变更审计:营业日分割规则 PRD 同步检查 + 全栈集成收口 | bugfix | 低 | [链接](changes/2026-02-27__biz-day-cutoff-prd-sync-check.md) | | 2026-02-14 | 审计记录:DWS 基类 bugfix — 绩效档位兜底 + safe_decimal 异常捕获 | bugfix | 未知 | [链接](changes/2026-02-14__dws-bugfix-tier-safedecimal.md) | | 2026-02-13 | 审计记录:移除旧版指数(RECALL/INTIMACY)+ ML last-touch 清理 | bugfix | 低 | [链接](changes/2026-02-13__remove-legacy-index-cleanup.md) | @@ -372,101 +138,9 @@ | 日期 | 需求摘要 | 变更类型 | 风险 | 详情 | |------|----------|----------|------|------| -| 2026-04-08 | 变更审计记录:Fix-13 回滚手动完成 + 广义召回完成机制 | bugfix | 低 | [链接](changes/2026-04-08__fix13-recall-events-refactor.md) | +| 2026-04-20 | 变更审计记录:2026-04-20 历史累积批次预审 | bugfix | 高 | [链接](changes/2026-04-20__historical-batch-pre-audit.md) | +| 2026-04-15 | 变更审计记录:美团结算导入 + core 层定位 + CORE_DIM_SYNC 任务 | bugfix | 低 | [链接](changes/2026-04-15__meituan-settle-core-sync.md) | | 2026-04-06 | 变更审计记录:v1 历史清理与 DDL 合并归档 | 清理 | 极低 | [链接](changes/2026-04-06__v1-cleanup-ddl-consolidation.md) | -| 2026-04-05 | 变更审计记录:Kiro → Claude Code 全量迁移 | 文档 | 低 | [链接](changes/2026-04-05__kiro-to-claude-code-migration.md) | -| 2026-03-31 | 变更审计记录:任务引擎改造 — 参数调优 + 客户级升级/转移 + 任务统计写入 | 功能 | 未知 | [链接](changes/2026-03-31__task-engine-overhaul.md) | -| 2026-03-29 | 变更审计记录:助教看板和客户看板懒加载(分页加载) | 重构 | 未知 | [链接](changes/2026-03-29__board-lazy-loading-pagination.md) | -| 2026-03-29 | 变更审计记录:助教详情页 API 500 修复(Schema 字段名对齐) | bugfix | 未知 | [链接](changes/2026-03-29__coach-detail-500-field-name-fix.md) | -| 2026-03-29 | 变更审计记录:助教详情页设计稿对齐 + 数据格式化修复 | bugfix | 未知 | [链接](changes/2026-03-29__coach-detail-design-alignment.md) | -| 2026-03-29 | 变更审计记录:助教详情页样式修复 + 数据聚合修复 + 关系指数回测支持 | bugfix | 未知 | [链接](changes/2026-03-29__coach-detail-style-aggregation-fix.md) | -| 2026-03-29 | 变更审计记录:DWS_TASK_ENGINE ETL 编排替代 fire_event 事件链 | 功能 | 未知 | [链接](changes/2026-03-29__dws-task-engine-etl-orchestration.md) | -| 2026-03-29 | 变更审计记录:修复 recall_completion_check 事件链断裂 | bugfix | 未知 | [链接](changes/2026-03-29__fix-recall-completion-event-chain.md) | -| 2026-03-28 | 变更审计记录:财务看板 5 项修复(ODS 行膨胀 / 优惠分摊 / 环比字段 / 区域过滤 / 规范沉淀) | bugfix | 未知 | [链接](changes/2026-03-28__board-finance-5fixes.md) | -| 2026-03-28 | 变更审计记录:财务看板 DWS 区域维度重构审计 | 重构 | 未知 | [链接](changes/2026-03-28__board-finance-dws-area-refactor-audit.md) | -| 2026-03-28 | 变更审计记录:修复小程序登录落地页跳转失效 | bugfix | 未知 | [链接](changes/2026-03-28__fix-miniprogram-login-landing-page.md) | -| 2026-03-27 | 变更审计记录:board-finance 双重格式化修复 | bugfix | 低 | [链接](changes/2026-03-27__board-finance-double-format-fix.md) | -| 2026-03-27 | 审计记录:board-finance-integration 阶段 2(后端 API 修复) | bugfix | 未知 | [链接](changes/2026-03-27__board-finance-integration-T2.md) | -| 2026-03-27 | 变更审计记录:财务看板 Phase 2 对齐 Demo(T1-T6) | bugfix | 未知 | [链接](changes/2026-03-27__board-finance-phase2-t1-t6.md) | -| 2026-03-27 | 变更审计记录:board-finance WXML 格式化迁移 + 动态 Tab + 加载态清理 | bugfix | 未知 | [链接](changes/2026-03-27__board-finance-wxml-format-tabs-cleanup.md) | -| 2026-03-27 | 变更审计记录:小程序权限体系统一改造(W1-W5) | 功能 | 未知 | [链接](changes/2026-03-27__miniprogram-permission-unification.md) | -| 2026-03-27 | 变更审计记录:任务列表近60天数据展示 + WXML 格式化改造 | 重构 | 高 | [链接](changes/2026-03-27__task-list-recent60d-and-wxml-formatting.md) | -| 2026-03-26 | 审计记录:ETL 缺失字段补充 — 第一阶段(DDL + FACT_MAPPINGS) | 功能 | 低 | [链接](changes/2026-03-26__etl-missing-fields-phase1-ddl-mappings.md) | -| 2026-03-26 | 变更审计记录:到手金额口径修复(全小程序统一) | bugfix | 未知 | [链接](changes/2026-03-26__net-income-calibration-all-pages.md) | -| 2026-03-25 | 变更审计记录:保底 relationship_building 任务生成 | bugfix | 未知 | [链接](changes/2026-03-25__baseline-relationship-building-tasks.md) | -| 2026-03-25 | 变更审计记录:保底任务生成独立连接修复 | bugfix | 高 | [链接](changes/2026-03-25__baseline-task-independent-connection-fix.md) | -| 2026-03-25 | 变更审计记录:绩效页→任务详情页按 member_id 查询任务 | 文档 | 未知 | [链接](changes/2026-03-25__perf-to-task-detail-member-query.md) | -| 2026-03-25 | 绩效页 WXML 缺少 data-member-id 导致任务详情页空白 | bugfix | 未知 | [链接](changes/2026-03-25__perf-wxml-missing-member-id.md) | -| 2026-03-25 | 变更审计记录(Change Audit Record) | bugfix | 未知 | [链接](changes/2026-03-25__task-detail-service-records-6-improvements.md) | -| 2026-03-25 | 变更审计记录:租户用户审核 — 软删除恢复 upsert 修复 | bugfix | 未知 | [链接](changes/2026-03-25__tenant-users-soft-delete-upsert-fix.md) | -| 2026-03-24 | 变更审计记录:补录 cfg_skill_type 缺失的 3 条课程类型配置 | bugfix | 未知 | [链接](changes/2026-03-24__add_missing_cfg_skill_type.md) | -| 2026-03-24 | 审计记录:迁移脚本合并到主 DDL 并归档 | 文档 | 低 | [链接](changes/2026-03-24__ddl-migration-merge-and-archive.md) | -| 2026-03-24 | 审计记录:修复小程序前端档位进度条无刻度 + bonus_money 计算 | bugfix | 低 | [链接](changes/2026-03-24__fix-tier-nodes-empty-progress-bar.md) | -| 2026-03-24 | 变更审计记录:lookback_days 从 60 天扩大到 90 天 | 文档 | 未知 | [链接](changes/2026-03-24__lookback_days_60_to_90.md) | -| 2026-03-24 | 变更审计记录:小程序登录页头像昵称获取功能(前端实施) | 文档 | 低 | [链接](changes/2026-03-24__miniprogram-avatar-nickname-feature.md) | -| 2026-03-24 | 变更审计记录:P17 助教客户归属与任务生成引擎 | bugfix | 未知 | [链接](changes/2026-03-24__p17-assistant-ownership-task-engine.md) | -| 2026-03-24 | 变更审计记录:P18 任务引擎运营看板实施 | bugfix | 未知 | [链接](changes/2026-03-24__p18-task-engine-dashboard.md) | -| 2026-03-24 | 变更审计记录:绩效页数据正确性修复 | bugfix | 未知 | [链接](changes/2026-03-24__perf-page-data-fix.md) | -| 2026-03-24 | 审计记录:审核弹窗头像展示 + 排版优化 | 功能 | 低 | [链接](changes/2026-03-24__review-modal-avatar-layout.md) | -| 2026-03-24 | 变更审计记录:user_site_roles / user_assistant_binding 软删除实施 | 文档 | 未知 | [链接](changes/2026-03-24__soft-delete-user-site-roles-binding.md) | -| 2026-03-24 | 变更审计记录:TriggerJobs 清空任务交互反馈优化 | 清理 | 高 | [链接](changes/2026-03-24__trigger-jobs-clear-task-interaction.md) | -| 2026-03-23 | 变更审计记录:DDL 合并 — rejection_count + cancelled 状态 | 文档 | 未知 | [链接](changes/2026-03-23__ddl-merge-rejection-count-cancelled.md) | -| 2026-03-23 | 变更审计记录:禁用用户改为移除用户 + 小程序鉴权两层模型修复 | bugfix | 未知 | [链接](changes/2026-03-23__disable-to-remove-user-auth-model-fix.md) | -| 2026-03-23 | 变更审计记录:店铺筛选 + 时间格式 + 姓名格式 + 李小燕确认 | bugfix | 未知 | [链接](changes/2026-03-23__mysites-tenant-filter-time-format-nickname-display.md) | -| 2026-03-23 | 变更审计记录:审核弹窗手机号不显示修复 + 自动匹配优化 + 身份标签中文化 | bugfix | 未知 | [链接](changes/2026-03-23__review-modal-phone-display-auto-match-identity-label.md) | -| 2026-03-23 | 变更审计记录(Change Audit Record) | 功能 | 未知 | [链接](changes/2026-03-23__role-routing-page-guard.md) | -| 2026-03-23 | 变更审计记录:租户管理员用户名大小写不敏感 | 功能 | 未知 | [链接](changes/2026-03-23__tenant-admin-case-insensitive-username.md) | -| 2026-03-23 | 变更审计记录:租户管理后台审核弹窗改造(角色动态化 + 人员列表联动 + 手机号自动匹配) | bugfix | 未知 | [链接](changes/2026-03-23__tenant-admin-review-modal-dynamic-roles.md) | -| 2026-03-23 | 变更审计记录:根治 tenant_admin 的 managed_site_ids 限制(跨模块权限验证改造) | bugfix | 未知 | [链接](changes/2026-03-23__tenant-admin-site-access-root-fix.md) | -| 2026-03-23 | 变更审计记录:租户后台申请列表店铺筛选 + admin-web 简写ID修复 | bugfix | 高 | [链接](changes/2026-03-23__tenant-user-approval-site-filter.md) | -| 2026-03-23 | 变更审计记录:Task 6 Change B/C — 定时任务管理页面 + 小程序清理 | bugfix | 未知 | [链接](changes/2026-03-23__trigger-jobs-admin-web-miniprogram-cleanup.md) | -| 2026-03-22 | 变更审计记录:数据库字段走查批量修复 | bugfix | 低 | [链接](changes/2026-03-22__db-field-walkthrough-batch-fix.md) | -| 2026-03-22 | 变更审计记录:DDL vs 数据库结构对比修复 + BD 手册全面审核走查 | bugfix | 未知 | [链接](changes/2026-03-22__ddl-db-structure-diff-bd-manual-audit.md) | -| 2026-03-22 | 变更审计记录(Change Audit Record) | bugfix | 未知 | [链接](changes/2026-03-22__ddl_bd_manual_consistency_fix.md) | -| 2026-03-22 | 变更审计记录:dev-trace-log 全栈开发调试全链路日志系统 | 清理 | 低 | [链接](changes/2026-03-22__dev-trace-log-fullstack-feature.md) | -| 2026-03-22 | 变更审计记录:NS4 DDL 合并 — deleted_at 字段并入主迁移脚本 | 文档 | 未知 | [链接](changes/2026-03-22__ns4-ddl-merge-deleted-at.md) | -| 2026-03-22 | 审计记录:P14 Task 15 — 最终检查点完成 | bugfix | 极低 | [链接](changes/2026-03-22__p14-task15-final-checkpoint.md) | -| 2026-03-22 | 变更审计记录:trace 日志路径修复 + 小程序登录竞态修复 | bugfix | 未知 | [链接](changes/2026-03-22__trace-path-fix-miniprogram-login-race.md) | -| 2026-03-22 | 变更审计记录:僵尸任务修复 + 优雅关闭 + 重新执行按钮 | bugfix | 未知 | [链接](changes/2026-03-22__zombie-task-graceful-shutdown-rerun.md) | -| 2026-03-20 | 变更审计记录:ai-prompt-refinement spec 完成 + board-coach Mock 精简 | bugfix | 未知 | [链接](changes/2026-03-20__ai-prompt-refinement-board-coach-mock.md) | -| 2026-03-20 | H2 修复:FDW → 直连 ETL 架构统一 | bugfix | 未知 | [链接](changes/2026-03-20__h2-fdw-to-direct-etl-unification.md) | -| 2026-03-20 | 审计记录:小程序文档同步更新 | bugfix | 极低 | [链接](changes/2026-03-20__miniprogram-docs-sync.md) | -| 2026-03-20 | 变更审计记录:R3 项目类型筛选接口重建(fetchSkillTypes / cfg_area_category) | bugfix | 高 | [链接](changes/2026-03-20__r3-skill-type-filter-rebuild.md) | -| 2026-03-20 | RNS1 系列 AI 自主决策风险审计报告(完整版) | bugfix | 高 | [链接](changes/2026-03-20__rns1-ai-autonomous-decision-risk-audit.md) | -| 2026-03-20 | 变更审计记录:RNS1.3 三看板 FDW 查询层数据口径修复 | bugfix | 未知 | [链接](changes/2026-03-20__rns13-board-apis-e2e-fix.md) | -| 2026-03-20 | 变更审计记录:RNS1.4 CHAT 模块重建 + FDW→直连统一 + R3 筛选修复 | bugfix | 未知 | [链接](changes/2026-03-20__rns14-chat-fdw-filter-audit.md) | -| 2026-03-20 | 变更审计记录:RNS1.4 CHAT 模块迁移 + R3 项目类型筛选重建 | bugfix | 高 | [链接](changes/2026-03-20__rns14-chat-module-r3-filter-rebuild.md) | -| 2026-03-19 | 变更审计记录:card_type_id 年卡/月卡映射文档同步 | bugfix | 未知 | [链接](changes/2026-03-19__card-type-id-doc-sync.md) | -| 2026-03-19 | 变更审计记录:coach_service 绩效档位硬编码修复 | bugfix | 低 | [链接](changes/2026-03-19__coach-tier-hardcode-fix.md) | -| 2026-03-19 | 变更审计记录:助教等级映射硬编码修复(P2-9) | bugfix | 低 | [链接](changes/2026-03-19__level-map-hardcode-fix.md) | -| 2026-03-19 | 数据库变更审计:RNS1.2 客户与助教接口 | 文档 | 低 | [链接](changes/2026-03-19__rns12-db-audit.md) | -| 2026-03-18 | RNS1.1 E2E 测试 — FDW 直连改造 + performance_service bug 修复 | bugfix | 未知 | [链接](changes/2026-03-18__rns1-e2e-fdw-direct-connect-bugfix.md) | -| 2026-03-15 | 变更审计记录:DDL 基线统一整理 + BD 手册重组 + 小程序副本清理 | bugfix | 低 | [链接](changes/2026-03-15__ddl-baseline-consolidation-bd-manual-reorg.md) | -| 2026-03-13 | 审计记录:board-finance line-height 全量补齐 | bugfix | 低 | [链接](changes/2026-03-13__board-finance-line-height-audit.md) | -| 2026-03-13 | 审计记录:board-finance.wxss rpx 换算公式修正 | 功能 | 未知 | [链接](changes/2026-03-13__board-finance-rpx-formula-correction.md) | -| 2026-03-13 | 变更审计记录:task-list 页面 H5 原型 1:1 重写 | bugfix | 未知 | [链接](changes/2026-03-13__task-list-h5-rewrite.md) | -| 2026-03-12 | 变更审计记录:board-finance WXSS 视觉校对(四轮) | bugfix | 未知 | [链接](changes/2026-03-12__board-finance-overview-wxss-calibration.md) | -| 2026-03-12 | 变更审计记录:小程序前端开发文档体系收尾(步骤 1-4) | 文档 | 低 | [链接](changes/2026-03-12__miniprogram-dev-docs-finalize.md) | -| 2026-03-12 | 变更审计记录:多模块累积变更 — AI 对话系统 + 任务防御 + 小程序 UI 重构 + ETL DWS | bugfix | 未知 | [链接](changes/2026-03-12__multi-module-ai-taskdefense-miniprogram-etl.md) | -| 2026-03-12 | 变更审计记录:pixel-audit 结构化审计方法论替换像素对比 | 文档 | 未知 | [链接](changes/2026-03-12__pixel-audit-structured-methodology.md) | -| 2026-03-10 | 变更审计记录:多模块累积变更 — AI 应用骨架 + 任务队列防卡死 + 小程序页面迁移 | bugfix | 未知 | [链接](changes/2026-03-10__multi-module-ai-apps-task-defense-miniprogram.md) | -| 2026-03-08 | 变更审计记录:P5 AI 集成需求审视 — 7 项歧义修补 + category 枚举对齐 | 文档 | 未知 | [链接](changes/2026-03-08__p5-ai-spec-review-category-enum-align.md) | -| 2026-03-07 | 变更审计记录:TASK 3 项目标签计算逻辑 — 文档与配置同步 | 文档 | 低 | [链接](changes/2026-03-07__task3-project-tag-docs-sync.md) | -| 2026-03-06 | 变更审计记录:修复 RecordingAPIClient 缺少 post 方法 | bugfix | 极低 | [链接](changes/2026-03-06__fix-api-client-post-method.md) | -| 2026-03-06 | 变更审计记录:修复 DatabaseOperations 缺少 _dsn 属性导致 DWD 并行装载全部失败 | bugfix | 极低 | [链接](changes/2026-03-06__fix-db-operations-dsn-proxy.md) | -| 2026-03-04 | 变更审计记录:全栈累积变更(营业日配置、WebSocket 日志、微信认证、仓库清理) | 重构 | 高 | [链接](changes/2026-03-04__fullstack-accumulated-changes.md) | -| 2026-03-03 | 变更审计记录:微信小程序开发调试面板 | 文档 | 低 | [链接](changes/2026-03-03__miniprogram-dev-debug-panel.md) | -| 2026-03-02 | 变更审计:合并 ETL Hook 为统一分析入口 | 文档 | 未知 | [链接](changes/2026-03-02__etl-unified-analysis-hook-merge.md) | -| 2026-03-02 | SPI 基数校准改用非零样本中位数 | 功能 | 未知 | [链接](changes/2026-03-02__spi-calibration-nonzero-median.md) | -| 2026-03-01 | 审计记录:DWD 清理 + ODS 商品销售修复 + dim_staff_ex 修复 | bugfix | 未知 | [链接](changes/2026-03-01__dwd-cleanup-ods-fix-dim-staff-repair.md) | -| 2026-03-01 | 变更审计:DWS numeric 精度扩展 + ODS 库存 siteid 注入 | 文档 | 低 | [链接](changes/2026-03-01__dws-numeric-precision-ods-siteid-fix.md) | -| 2026-02-28 | 变更审计记录:多模块累积变更(营业日/核心业务/认证/ETL DWS 重构/参考文档合并) | 重构 | 未知 | [链接](changes/2026-02-28__multi-module-accumulated-changes.md) | -| 2026-02-27 | 变更审计:营业日分割规则 PRD 同步检查 + 全栈集成收口 | bugfix | 低 | [链接](changes/2026-02-27__biz-day-cutoff-prd-sync-check.md) | -| 2026-02-27 | 审计记录:P4 小程序核心业务路由 + 触发器注册 | 重构 | 未知 | [链接](changes/2026-02-27__p4-core-business-routes-triggers.md) | -| 2026-02-26 | 审计记录:ETL Bug 修复 — dim_staff_ex 列映射 + assistant_daily table_area_name | bugfix | 未知 | [链接](changes/2026-02-26__etl-bugfix-dim-staff-rankname-assistant-daily-table-area.md) | -| 2026-02-26 | 变更审计:P1/P2/P3 全栈集成(DB 基础 + ETL DWS 扩展 + 小程序鉴权) | bugfix | 低 | [链接](changes/2026-02-26__p1-p2-p3-fullstack-integration.md) | -| 2026-02-26 | 审计记录:维客线索重构(member_birthday_manual → member_retention_clue) | 重构 | 未知 | [链接](changes/2026-02-26__retention-clue-refactor.md) | -| 2026-02-26 | 审计记录:root-file — .gitignore 更新与 H5 UI / 临时文件清理 | 重构 | 高 | [链接](changes/2026-02-26__root-file-gitignore-h5ui-cleanup.md) | | 2026-02-15 | 审计记录:管理后台全量实现 + DB Schema 迁移 + 审计产物重组 | 清理 | 高 | [链接](changes/2026-02-15__admin-web-console-db-migration-audit-reorg.md) | | 2026-02-15 | 变更审计记录(Change Audit Record) | 文档 | 极低 | [链接](changes/2026-02-15__audit-consolidation-doc-reorg.md) | | 2026-02-15 | 审计记录:后端依赖补全使 FastAPI 可启动 | bugfix | 未知 | [链接](changes/2026-02-15__backend-deps-bootstrap.md) | @@ -498,18 +172,6 @@ | 日期 | 需求摘要 | 变更类型 | 风险 | 详情 | |------|----------|----------|------|------| -| 2026-03-28 | 变更审计记录:财务看板 5 项修复(ODS 行膨胀 / 优惠分摊 / 环比字段 / 区域过滤 / 规范沉淀) | bugfix | 未知 | [链接](changes/2026-03-28__board-finance-5fixes.md) | -| 2026-03-24 | 审计记录:迁移脚本合并到主 DDL 并归档 | 文档 | 低 | [链接](changes/2026-03-24__ddl-migration-merge-and-archive.md) | -| 2026-03-24 | 变更审计记录:小程序登录页头像昵称获取功能(前端实施) | 文档 | 低 | [链接](changes/2026-03-24__miniprogram-avatar-nickname-feature.md) | -| 2026-03-24 | 变更审计记录:P18 任务引擎运营看板实施 | bugfix | 未知 | [链接](changes/2026-03-24__p18-task-engine-dashboard.md) | -| 2026-03-22 | 变更审计记录(Change Audit Record) | bugfix | 未知 | [链接](changes/2026-03-22__ddl_bd_manual_consistency_fix.md) | -| 2026-03-22 | 变更审计记录:P16 调度任务最小运行间隔 — Spec 收尾文档同步 | 文档 | 未知 | [链接](changes/2026-03-22__p16-spec-closing-doc-sync.md) | -| 2026-03-20 | 变更审计记录:R3 项目类型筛选接口重建(fetchSkillTypes / cfg_area_category) | bugfix | 高 | [链接](changes/2026-03-20__r3-skill-type-filter-rebuild.md) | -| 2026-03-20 | 变更审计记录:RNS1.3 三看板 FDW 查询层数据口径修复 | bugfix | 未知 | [链接](changes/2026-03-20__rns13-board-apis-e2e-fix.md) | -| 2026-03-19 | 变更审计记录:card_type_id 年卡/月卡映射文档同步 | bugfix | 未知 | [链接](changes/2026-03-19__card-type-id-doc-sync.md) | -| 2026-03-19 | 变更审计记录:助教等级映射硬编码修复(P2-9) | bugfix | 低 | [链接](changes/2026-03-19__level-map-hardcode-fix.md) | -| 2026-03-13 | 审计记录:board-finance line-height 全量补齐 | bugfix | 低 | [链接](changes/2026-03-13__board-finance-line-height-audit.md) | -| 2026-03-08 | 变更审计记录:P5 AI 集成需求审视 — 7 项歧义修补 + category 枚举对齐 | 文档 | 未知 | [链接](changes/2026-03-08__p5-ai-spec-review-category-enum-align.md) | | 2026-02-15 | 变更审计记录(Change Audit Record) | 文档 | 极低 | [链接](changes/2026-02-15__audit-consolidation-doc-reorg.md) | | 2026-02-15 | 审计记录:docs/bd_manual + docs/dictionary → docs/database 合并 | 清理 | 极低 | [链接](changes/2026-02-15__docs-database-merge.md) | | 2026-02-15 | 审计记录:docs/index + docs/开发笔记 清理与路径整合 | 清理 | 低 | [链接](changes/2026-02-15__docs-devnotes-index-cleanup.md) | @@ -538,7 +200,6 @@ | 日期 | 需求摘要 | 变更类型 | 风险 | 详情 | |------|----------|----------|------|------| -| 2026-03-24 | 变更审计记录:P17 助教客户归属与任务生成引擎 | bugfix | 未知 | [链接](changes/2026-03-24__p17-assistant-ownership-task-engine.md) | | 2026-02-14 | 审计记录:DWS 基类 bugfix — 绩效档位兜底 + safe_decimal 异常捕获 | bugfix | 未知 | [链接](changes/2026-02-14__dws-bugfix-tier-safedecimal.md) | | 2026-02-14 | 审计记录:废弃独立 ODS/DWD 任务代码清理 + 文档同步 | bugfix | 未知 | [链接](changes/2026-02-14__legacy-ods-dwd-cleanup.md) | | 2026-02-13 | 审计记录:BD_Manual 文档整理与 DDL 同步 | bugfix | 低 | [链接](changes/2026-02-13__bd-manual-docs-consolidation-ddl-sync.md) | @@ -548,10 +209,6 @@ | 日期 | 需求摘要 | 变更类型 | 风险 | 详情 | |------|----------|----------|------|------| -| 2026-03-24 | 变更审计记录:P18 任务引擎运营看板实施 | bugfix | 未知 | [链接](changes/2026-03-24__p18-task-engine-dashboard.md) | -| 2026-03-22 | 审计记录:P14 Task 15 — 最终检查点完成 | bugfix | 极低 | [链接](changes/2026-03-22__p14-task15-final-checkpoint.md) | -| 2026-03-08 | 变更审计记录:P5 AI 集成需求审视 — 7 项歧义修补 + category 枚举对齐 | 文档 | 未知 | [链接](changes/2026-03-08__p5-ai-spec-review-category-enum-align.md) | -| 2026-03-02 | 变更审计:合并 ETL Hook 为统一分析入口 | 文档 | 未知 | [链接](changes/2026-03-02__etl-unified-analysis-hook-merge.md) | | 2026-02-15 | 审计记录:docs/bd_manual + docs/dictionary → docs/database 合并 | 清理 | 极低 | [链接](changes/2026-02-15__docs-database-merge.md) | | 2026-02-15 | 审计记录:docs/index + docs/开发笔记 清理与路径整合 | 清理 | 低 | [链接](changes/2026-02-15__docs-devnotes-index-cleanup.md) | | 2026-02-14 | 审计记录:API vs ODS 比对 v3-fixed | 文档 | 极低 | [链接](changes/2026-02-14__api-ods-comparison-v3-fixed.md) | @@ -572,7 +229,6 @@ | 日期 | 需求摘要 | 变更类型 | 风险 | 详情 | |------|----------|----------|------|------| -| 2026-02-27 | 变更审计:营业日分割规则 PRD 同步检查 + 全栈集成收口 | bugfix | 低 | [链接](changes/2026-02-27__biz-day-cutoff-prd-sync-check.md) | | 2026-02-14 | 审计记录:废弃独立 ODS/DWD 任务代码清理 + 文档同步 | bugfix | 未知 | [链接](changes/2026-02-14__legacy-ods-dwd-cleanup.md) | | 2026-02-13 | 审计记录:移除旧版指数(RECALL/INTIMACY)+ ML last-touch 清理 | bugfix | 低 | [链接](changes/2026-02-13__remove-legacy-index-cleanup.md) | @@ -580,11 +236,4 @@ | 日期 | 需求摘要 | 变更类型 | 风险 | 详情 | |------|----------|----------|------|------| -| 2026-02-27 | 变更审计:营业日分割规则 PRD 同步检查 + 全栈集成收口 | bugfix | 低 | [链接](changes/2026-02-27__biz-day-cutoff-prd-sync-check.md) | | 2026-02-15 | 变更审计记录(Change Audit Record) | 文档 | 极低 | [链接](changes/2026-02-15__audit-consolidation-doc-reorg.md) | - -### 配置 - -| 日期 | 需求摘要 | 变更类型 | 风险 | 详情 | -|------|----------|----------|------|------| -| 2026-02-27 | 变更审计:营业日分割规则 PRD 同步检查 + 全栈集成收口 | bugfix | 低 | [链接](changes/2026-02-27__biz-day-cutoff-prd-sync-check.md) | diff --git a/docs/audit/changes/2026-04-15__meituan-settle-core-sync.md b/docs/audit/changes/2026-04-15__meituan-settle-core-sync.md new file mode 100644 index 0000000..0374926 --- /dev/null +++ b/docs/audit/changes/2026-04-15__meituan-settle-core-sync.md @@ -0,0 +1,124 @@ +# 变更审计记录:美团结算导入 + core 层定位 + CORE_DIM_SYNC 任务 + +| 字段 | 值 | +|------|-----| +| 日期 | 2026-04-15 01:41:01 | + +## 操作摘要 + +本次变更包含 5 项关联改动,围绕"美团结算数据入库"和"core 维度层重新启用"两条主线展开: + +1. **美团结算数据导入**:在 dwd.dwd_groupbuy_redemption 新增 6 个 mt_* 字段(mt_settlement_price / mt_gross_income / mt_service_fee / mt_marketing_fee / mt_other_adjust / mt_import_time),通过临时表批量 UPDATE 导入 15,878 条结算价记录(95.4% 覆盖率,未匹配 759 条为非美团券码)。 +2. **core 层重新定位与数据填充**:明确 core 层为"跨平台统一维度层"(屏蔽 ODS/DWD 多数据源差异),对 core.dim_assistant / dim_member / dim_site / dim_project 执行 TRUNCATE+INSERT 全量填充,修复 app 视图空查询问题。 +3. **CORE_DIM_SYNC 新 ETL 任务**:新建 core_dim_sync_task.py 实现 DWD->core 全量刷新(TRUNCATE+INSERT 4 个维度表),注册到 ETL task_registry(depends_on=DWD_LOAD_FROM_ODS)和后端 task_registry(admin-web 展示),meta.etl_task 新增 task_id=69。 +4. **DWS_ASSISTANT_ORDER_CONTRIBUTION 补全**:该任务此前仅在 ETL 侧注册,本次补齐后端 task_registry 注册和 meta.etl_task 配置(task_id=68),并全量回刷 2025-09-01~2026-04-15 数据(2,207 条)。 +5. **文档同步**:db/README.md 补充 core 层说明,ETL 任务文档新增 Core 层段落,BD 手册补 6 个 mt_* 字段说明。 + +## 变更文件 + +### 新增 + +| 文件 | 说明 | +|------|------| +| `apps/etl/connectors/feiqiu/tasks/dws/core_dim_sync_task.py` | CORE_DIM_SYNC 任务实现(TRUNCATE+INSERT 4 个维度表) | + +### 修改 + +| 文件 | 说明 | +|------|------| +| `db/etl_feiqiu/schemas/dwd.sql` | DDL 基线同步:dwd_groupbuy_redemption 新增 6 个 mt_* 字段 | +| `db/etl_feiqiu/schemas/app.sql` | 视图定义同步(保持指向 core) | +| `db/etl_feiqiu/schemas/core.sql` | 注释更新:core 层定位说明 | +| `db/README.md` | core 层补充说明 | +| `apps/etl/connectors/feiqiu/tasks/dws/__init__.py` | 导出 CoreDimSyncTask | +| `apps/etl/connectors/feiqiu/orchestration/task_registry.py` | 注册 CORE_DIM_SYNC(task_id=69, depends_on=DWD_LOAD_FROM_ODS) | +| `apps/backend/app/services/task_registry.py` | 注册 CORE_DIM_SYNC + DWS_ASSISTANT_ORDER_CONTRIBUTION 到 admin-web 展示 | +| `apps/etl/connectors/feiqiu/docs/etl_tasks/README.md` | 新增 Core 层段落 | +| `apps/etl/connectors/feiqiu/docs/database/DWD/main/BD_manual_dwd_groupbuy_redemption.md` | 补充 6 个 mt_* 字段说明 | + +## 改动注解 + +### 高风险 + +- **db/etl_feiqiu/schemas/dwd.sql**:ALTER TABLE 新增 6 列均为 NULLABLE,无破坏性。DDL 基线已同步数据库现状。数据通过临时表 UPDATE 导入,非 ETL 自动流程。 +- **db/etl_feiqiu/schemas/app.sql**:app.v_assistant / v_member / v_site 视图保持原始定义(指向 core.dim_*),core 表已填充数据,视图查询恢复正常。 +- **db/etl_feiqiu/schemas/core.sql**:注释变更,无结构变更。core 层定位从"待废弃"改为"跨平台统一维度层"。 +- **apps/etl/connectors/feiqiu/orchestration/task_registry.py**:新增 CORE_DIM_SYNC 注册项,depends_on=DWD_LOAD_FROM_ODS 确保在 DWD 加载后执行。 +- **apps/backend/app/services/task_registry.py**:新增 2 项展示注册(CORE_DIM_SYNC + DWS_ASSISTANT_ORDER_CONTRIBUTION),不影响已有任务。 + +### 普通 + +- **apps/etl/connectors/feiqiu/tasks/dws/core_dim_sync_task.py**:新建文件,TRUNCATE+INSERT 全量刷新模式,4 个维度表映射关系明确。 +- **apps/etl/connectors/feiqiu/tasks/dws/__init__.py**:仅添加导出行。 +- **db/README.md**:文档补充。 +- **apps/etl/connectors/feiqiu/docs/**:ETL 文档同步,无逻辑影响。 + +## 数据库变更 + +### etl_feiqiu 库 + +| 操作 | 对象 | 详情 | 执行状态 | +|------|------|------|----------| +| ALTER TABLE | `dwd.dwd_groupbuy_redemption` | 新增 6 列:mt_settlement_price (numeric(10,2)), mt_gross_income (numeric(10,2)), mt_service_fee (numeric(10,2)), mt_marketing_fee (numeric(10,2)), mt_other_adjust (numeric(10,2)), mt_import_time (timestamptz) | 已执行 | +| TRUNCATE+INSERT | `core.dim_assistant` | 从 DWD 全量填充 | 已执行 | +| TRUNCATE+INSERT | `core.dim_member` | 从 DWD 全量填充 | 已执行 | +| TRUNCATE+INSERT | `core.dim_site` | 从 DWD 全量填充 | 已执行 | +| TRUNCATE+INSERT | `core.dim_project` | 从 DWD 全量填充 | 已执行 | +| INSERT | `meta.etl_task` | task_id=68 (DWS_ASSISTANT_ORDER_CONTRIBUTION) | 已执行 | +| INSERT | `meta.etl_task` | task_id=69 (CORE_DIM_SYNC) | 已执行 | +| CREATE OR REPLACE VIEW | `app.v_assistant / v_member / v_site` | 确认保持指向 core.dim_*(无变更) | 已验证 | + +## 风险与回滚 + +### 风险点 + +| 级别 | 风险 | 缓解 | +|------|------|------| +| 中 | mt_* 字段通过临时表手工导入,非 ETL 自动化流程,后续美团结算单需手动重跑 | 后续可考虑封装为 scripts/ops/ 脚本 | +| 中 | CORE_DIM_SYNC 使用 TRUNCATE+INSERT 全量刷新,执行期间 core 表短暂为空 | 任务执行时间极短(4 个维度表数据量小),可接受 | +| 低 | DWS_ASSISTANT_ORDER_CONTRIBUTION 回刷数据量大(2,207 条跨 7 个月) | 已验证数据正确性 | + +### 回滚要点 + +1. mt_* 字段回滚:`ALTER TABLE dwd.dwd_groupbuy_redemption DROP COLUMN mt_settlement_price, DROP COLUMN mt_gross_income, DROP COLUMN mt_service_fee, DROP COLUMN mt_marketing_fee, DROP COLUMN mt_other_adjust, DROP COLUMN mt_import_time;` +2. CORE_DIM_SYNC 回滚:删除 core_dim_sync_task.py,从两个 task_registry 移除注册项,`DELETE FROM meta.etl_task WHERE task_id = 69;` +3. DWS_ASSISTANT_ORDER_CONTRIBUTION 回滚:从后端 task_registry 移除,`DELETE FROM meta.etl_task WHERE task_id = 68;` + +## 验证 + +```sql +-- 1. 验证 mt_* 字段导入覆盖率 +SELECT + COUNT(*) AS total, + COUNT(mt_settlement_price) AS has_settle, + ROUND(COUNT(mt_settlement_price)::numeric / COUNT(*) * 100, 1) AS pct +FROM dwd.dwd_groupbuy_redemption; + +-- 2. 验证 core 维度表非空 +SELECT 'dim_assistant' AS tbl, COUNT(*) FROM core.dim_assistant +UNION ALL SELECT 'dim_member', COUNT(*) FROM core.dim_member +UNION ALL SELECT 'dim_site', COUNT(*) FROM core.dim_site +UNION ALL SELECT 'dim_project', COUNT(*) FROM core.dim_project; + +-- 3. 验证 app 视图正常返回数据 +SELECT COUNT(*) FROM app.v_assistant; +SELECT COUNT(*) FROM app.v_member; + +-- 4. 验证 meta.etl_task 新增记录 +SELECT task_id, task_name, is_active FROM meta.etl_task WHERE task_id IN (68, 69); + +-- 5. 验证 DWS_ASSISTANT_ORDER_CONTRIBUTION 回刷数据 +SELECT COUNT(*), MIN(stat_date), MAX(stat_date) +FROM dws.dws_assistant_order_contribution; +``` + +## 合规检查 + +| 项目 | 状态 | +|------|------| +| DDL 基线同步(db/etl_feiqiu/schemas/) | 已完成:dwd.sql, app.sql, core.sql 已更新 | +| db/README.md 文档同步 | 已完成:core 层说明已补充 | +| ETL 任务文档同步 | 已完成:docs/etl_tasks/README.md 新增 Core 层段落 | +| BD 手册同步 | 已完成:BD_manual_dwd_groupbuy_redemption.md 补 mt_* 字段 | +| 后端 task_registry 同步 | 已完成:CORE_DIM_SYNC + DWS_ASSISTANT_ORDER_CONTRIBUTION 已注册 | +| RLS 视图双 Schema 规则 | 不涉及:本次无新建视图,现有视图保持不变 | diff --git a/docs/audit/changes/2026-04-20__historical-batch-pre-audit.md b/docs/audit/changes/2026-04-20__historical-batch-pre-audit.md new file mode 100644 index 0000000..eeb1faf --- /dev/null +++ b/docs/audit/changes/2026-04-20__historical-batch-pre-audit.md @@ -0,0 +1,374 @@ +# 变更审计记录:2026-04-20 历史累积批次预审 + +| 字段 | 值 | +|------|-----| +| 日期 | 2026-04-20 06:01:35 | +| 分类 | 历史批次预审(方案 C:详细) | +| 触发时间窗口 | 2026-04-15 ~ 2026-04-20(最后一次 commit 后 5 天累积) | +| 覆盖文件数 | 156 | +| 高风险文件数 | 54 | +| 新迁移 SQL | 2 | +| 参与 spec | 7+ | + +## 操作摘要 + +本次审计是"历史累积盘点"——156 个文件来自 HEAD (79d3c2e 开发机迁移) 之后 5 天的多次会话改动,用户本次会话无新改动。由于改动跨会话累积,缺失单次 /audit 的即时上下文,本次通过 git diff + 交叉比对 `docs/audit/changes/` 历史审计与 `docs/specs/` 现行规范还原语义上下文。 + +改动跨 6 个模块(backend / etl feiqiu / miniprogram / db / docs / 工具脚本)和 7 条主线:开发机迁移(路径基线搬迁)、rns1-customer-coach-api + 04-miniapp-core-business 联合实施、P19 指数回测框架(Phase 1+2)、Core 维度层启用、客户项目标签稳定性优化、美团结算导入收尾、运维工具与分析扩展。 + +2 个迁移 SQL 均已在开发库执行,schema 基线与任务代码一致。~95% 路径同步改动(开发机迁移衍生)为低风险;实质性业务变更集中在 16 个 backend + 22 个 miniprogram + 13 个 ETL 文件,全部可追溯到既有 spec。7 项高风险待验证项已在"风险与回滚"章节单独列出。 + +## 主线归类 + +### 主线 1:开发机迁移(路径同步,~95% 改动量来源) + +- 根目录迁移 `C:\NeoZQYY` → `C:\Project\NeoZQYY` +- 涵盖:`.env` / `.env.template` / `.mcp.json` / `apps/backend/.env.local` / `apps/etl/connectors/feiqiu/.env` / `scripts/ops/*.py` / `tools/db/*.py` / `tests/test_property_*.py` / `docs/specs/**/*.md` / `docs/deployment/*.md` / `docs/migrate/*.md` / `docs/mcp/*.md` / `docs/ops/*.md` / `docs/README.md` / `_DEL/**/*.md` +- 风险:无(纯路径同步) + +### 主线 2:rns1-customer-coach-api + 04-miniapp-core-business spec 实施 + +- **后端 16 文件**:配置 4 / 路由 schema 5 / 服务 9 +- **小程序 22 文件**:配置 5 / i18n typings 2 / 服务 1 / 工具组件 3 / 页面 11 +- **关键改动**: + - `coach-service-records` 新页面(管理者视角业绩明细,需 `view_board_coach` 权限) + - `performance-records` 拆分:去除 coachId 分支,恢复助教自查单一职责 + - `fdw_queries` 重构:`get_service_records_summary()` 直接 SQL 聚合、`get_last_visit_days()` 改用 `consumption_summary`、`get_consumption_records()` 按结算单粒度聚合 + - `build_performance_summary()` 公开化,`coach-detail` 和 `task-list` 数据源统一 + - `isScattered` 散客标记跨端贯通 + - `task_generator` 回访宽限 48h → 72h,新增 UPSERT 替代策略和 Step 5 清理保底任务 + - `recall_detector` settle_type=3 限制 + 门店级 resolved 召回解除 + +### 主线 3:P19 指数回测框架(Phase 1+2) + +- **DDL**:`dws_member_assistant_relation_index` / `dws_member_winback_index` / `dws_member_newconv_index` 新增 `stat_date DATE NOT NULL DEFAULT CURRENT_DATE`,唯一约束扩展 `(site_id, member_id[, assistant_id], stat_date)`,app schema 视图改 `DISTINCT ON + ORDER BY stat_date DESC` +- **任务**:`relation_index` / `winback_index` / `newconv_index` 改日快照模式(按 `stat_date` 删除 + 插入),批量写入优化 +- **新建**:`DWS_INDEX_BACKFILL` + `DWS_TASK_SIMULATION` 两个工具任务 +- **task_engine** 升级为双模式(HTTP 实时 / 推演回测) +- **前置**:`member_index_base` STOP 分流改为 OLD + +### 主线 4:Core 维度层启用(承接 2026-04-15 美团结算审计后续) + +- 新建 `CORE_DIM_SYNC` 任务(DWD → core 4 维度表 TRUNCATE+INSERT) +- `core.sql` 注释更新:定位为"跨平台统一维度层" +- 修复 app 视图空查询问题 +- `task_registry` + `orchestration/task_registry.py` 注册新任务 + +### 主线 5:客户项目标签稳定性优化 + +- `member_project_tag` 从 `LAST_30/60_DAYS`(固定日期窗口)改为 `LAST_30_VISITS`(最近 30 次消费) +- 配套迁移 SQL:`20260411_member_project_tag_visit_based.sql`(DELETE 旧窗口数据 + 新增 `cfg_area_category` 配置行) + +### 主线 6:美团结算数据导入(已有 2026-04-15 审计覆盖) + +- `dwd_groupbuy_redemption` 新增 6 个 `mt_*` 字段(`mt_settlement_price` / `mt_gross_income` / `mt_service_fee` / `mt_marketing_fee` / `mt_other_adjust` / `mt_import_time`) +- 本次审计仅作"基线同步"确认:`db/etl_feiqiu/schemas/dwd.sql` + `docs/database/ddl/etl_feiqiu__dwd.sql` 已更新;`apps/etl/connectors/feiqiu/docs/database/DWD/main/BD_manual_dwd_groupbuy_redemption.md` 同步 +- **主审计记录**:`docs/audit/changes/2026-04-15__meituan-settle-core-sync.md`(本批次不重复审计) + +### 主线 7:运维工具与分析扩展 + +- 新增脚本:`scripts/ops/churned_customer_report.py`(流失客户回访报告,~1137 行),`scripts/ops/simulate_historical_tasks.py`(历史任务推演,~524 行) +- 新增目录:`tools/task-analysis/`(任务报告工具 + 7 份历史报告) +- 新增启动:`start-admin.bat` +- 新增报告:`excel_analysis_report.txt` / `sheet_structure.txt`(根目录中间产物) +- `demo-miniprogram` SDK 1.6.28 → 1.6.29;项目名归一化 + +## 变更文件 + +### 后端 backend (16) + +- `apps/backend/app/config.py`:路径注释更新(开发机迁移) +- `apps/backend/.env.local`:路径同步 +- `apps/backend/auth_only.txt`:测试产物刷新 +- `apps/backend/auth_only_results.txt`:测试产物刷新 +- `apps/backend/auth_test_results.txt`:测试产物刷新 +- `apps/backend/app/routers/xcx_coaches.py`:**新增** `GET /xcx/coaches/{id}/banner` 轻量端点(+16) +- `apps/backend/app/routers/xcx_performance.py`:**关键**——新增 `coach_id` 可选参数 + 权限分流 `view_board_coach`(+29/-11) +- `apps/backend/app/schemas/xcx_coaches.py`:`PerformanceMetrics` 6→25 字段、新增 `CoachBannerResponse` / `CoachTaskStats`(+49/-8) +- `apps/backend/app/schemas/xcx_customers.py`:`ConsumptionRecord + foodDetail`,`CustomerNote + creator_name/creator_role`(+3) +- `apps/backend/app/schemas/xcx_performance.py`:`DateGroupRecord + is_scattered`(+1) +- `apps/backend/app/services/board_service.py`:狭义召回改从 `coach_tasks` 统计(+38/-38) +- `apps/backend/app/services/coach_service.py`:**关键**——新增 `get_coach_banner()`、`get_coach_detail` 重构 + `store_name/task_stats`、fdw 查询预容错(+194/-194) +- `apps/backend/app/services/customer_service.py`:`notes JOIN auth.users` 获取创建者、结算单粒度消费记录重构(+256/-395) +- `apps/backend/app/services/fdw_queries.py`:**关键**——新增 `get_service_records_summary()`、修复 `get_last_visit_days` 改用 `consumption_summary`、`get_consumption_records` 按结算单粒度(+219/-395) +- `apps/backend/app/services/performance_service.py`:`assistant_id_override` + 散客标记 + summary 直接 SQL 聚合(+34/-34) +- `apps/backend/app/services/recall_detector.py`:**关键**——`settle_type=3` 双重限制 + 门店级 resolved 召回解除 + 72h 宽限期(+109/-109) +- `apps/backend/app/services/task_generator.py`:**关键**——回访 48h→72h、UPSERT 替代策略、Step 5 清理保底任务(+194/-194) +- `apps/backend/app/services/task_manager.py`:`_build_performance_summary → build_performance_summary` 公开化、`current_tier` 改用数组下标(+18/-18) +- `apps/backend/app/services/task_registry.py`:注册 `CORE_DIM_SYNC` / `DWS_ASSISTANT_ORDER_CONTRIBUTION` / `DWS_INDEX_BACKFILL`(+6/-1) + +> 说明:`apps/backend/` 下文件总计 16 个(含 .env.local 和 3 份 auth 测试产物),其余均为实质业务逻辑改动。 + +### ETL feiqiu (13) + +- `apps/etl/connectors/feiqiu/.env`:路径迁移 + API_TOKEN 续期(不列值) +- `apps/etl/connectors/feiqiu/orchestration/task_registry.py`:注册 `CORE_DIM_SYNC` + `DWS_INDEX_BACKFILL` +- `apps/etl/connectors/feiqiu/tasks/dws/__init__.py`:导出 `CoreDimSyncTask` +- `apps/etl/connectors/feiqiu/tasks/dws/core_dim_sync_task.py` **[新建]**(+174):DWD → core 4 维度表 TRUNCATE+INSERT +- `apps/etl/connectors/feiqiu/tasks/dws/member_project_tag_task.py`:`LAST_30/60_DAYS → LAST_30_VISITS` +- `apps/etl/connectors/feiqiu/tasks/dws/task_engine.py`:**关键**——升级双模式(HTTP 实时 / 推演回测)(+767/-96) +- `apps/etl/connectors/feiqiu/tasks/dws/index/member_index_base.py`:STOP 分流改 OLD(+2/-1) +- `apps/etl/connectors/feiqiu/tasks/dws/index/newconv_index_task.py`:日快照模式(+93/-30) +- `apps/etl/connectors/feiqiu/tasks/dws/index/relation_index_task.py`:日快照 + 批量写入优化(+90/-27) +- `apps/etl/connectors/feiqiu/tasks/dws/index/winback_index_task.py`:日快照 + 365 天保留策略 + `execute_batch` +- `apps/etl/connectors/feiqiu/tasks/utility/index_backfill_task.py` **[新建]**:`DWS_INDEX_BACKFILL` 工具任务 +- `apps/etl/connectors/feiqiu/tasks/utility/task_simulation_task.py` **[新建]**:`DWS_TASK_SIMULATION` 工具任务 +- `apps/etl/connectors/feiqiu/scripts/research_coupon_details.py`:路径迁移(+1) +- `apps/etl/connectors/feiqiu/docs/database/DWD/main/BD_manual_dwd_groupbuy_redemption.md`:`mt_*` 6 字段说明(+6) +- `apps/etl/connectors/feiqiu/docs/database/DWS/main/BD_manual_cfg_area_category.md`:美洲豹赛台 BILLIARD +- `apps/etl/connectors/feiqiu/docs/database/DWS/main/BD_manual_dws_member_project_tag.md`:新窗口文档同步 +- `apps/etl/connectors/feiqiu/docs/etl_tasks/README.md`:Core 层段落新增 + +### 小程序 miniprogram (22) + +- `apps/miniprogram/project.config.json`:JSON 格式标准化 +- `apps/miniprogram/project.miniapp.json`:JSON 格式标准化 +- `apps/miniprogram/project.private.config.json`:JSON 格式标准化 +- `apps/miniprogram/miniprogram/app.miniapp.json`:JSON 格式标准化 +- `apps/miniprogram/miniprogram/app.json`:新增 `coach-service-records` 路由(+1) +- `apps/miniprogram/i18n/base.json`:i18n 更新 +- `apps/miniprogram/typings/types/wx/lib.wx.miniapp.d.ts`:微信 API 类型更新 +- `apps/miniprogram/miniprogram/services/api.ts`:**关键**——新增 `fetchCoachBanner(coachId)`、`fetchPerformanceRecords` 新增 `coachId` 可选参数(+28/-1) +- `apps/miniprogram/miniprogram/utils/format.wxs`:新增 `daysAgo()`(+11) +- `apps/miniprogram/miniprogram/utils/perf-progress.ts` **[新建]**(+125):进度条动画参数 + 工具函数单一源 +- `apps/miniprogram/miniprogram/components/perf-progress-bar/perf-progress-bar.wxss`:CSS 变量化(+1/-1) +- `apps/miniprogram/miniprogram/pages/board-coach/board-coach.ts`:`formatCount` 简化(+4/-4) +- `apps/miniprogram/miniprogram/pages/coach-detail/coach-detail.ts`:**关键**——进度条去重 + performance 字段扩展(+143/-94) +- `apps/miniprogram/miniprogram/pages/coach-detail/coach-detail.wxml`:属性传参 + 散客标记 + Recent 限制 5 条(+18/-4) +- `apps/miniprogram/miniprogram/pages/coach-detail/coach-detail.wxss`:散客置灰样式(+4) +- `apps/miniprogram/miniprogram/pages/coach-service-records/coach-service-records.json` **[新建]**(+14) +- `apps/miniprogram/miniprogram/pages/coach-service-records/coach-service-records.ts` **[新建]**(+200+):权限守卫 `checkPageAccess('view_board_coach')`,`fetchCoachBanner + fetchPerformanceRecords(coach_id)` +- `apps/miniprogram/miniprogram/pages/coach-service-records/coach-service-records.wxml` **[新建]**(+150+):助教 banner + 月份切换 + 日期分组 +- `apps/miniprogram/miniprogram/pages/coach-service-records/coach-service-records.wxss` **[新建]**(+200+):样式同 `performance-records` +- `apps/miniprogram/miniprogram/pages/customer-detail/customer-detail.ts`:`foodDetail + phoneFull` + 复制改用 `phoneFull`(+7/-2) +- `apps/miniprogram/miniprogram/pages/customer-detail/customer-detail.wxml`:手机号脱敏 + 食品类目动态 + notes 创建者(+8/-4) +- `apps/miniprogram/miniprogram/pages/customer-detail/customer-detail.wxss`:食品标签长文本支持(+9) +- `apps/miniprogram/miniprogram/pages/customer-records/customer-records.wxml`:食品类目动态同步(+4/-2) +- `apps/miniprogram/miniprogram/pages/customer-records/customer-records.wxss`:食品标签样式同步(+9/-1) +- `apps/miniprogram/miniprogram/pages/performance-records/performance-records.ts`:变更日志(拆分助教视角)(+1) +- `apps/miniprogram/miniprogram/pages/performance-records/performance-records.wxml`:散客标记(+2/-1) +- `apps/miniprogram/miniprogram/pages/performance-records/performance-records.wxss`:banner 字体 + 散客置灰(+10/-4) +- `apps/miniprogram/miniprogram/pages/task-list/task-list.ts`:进度条逻辑外包到 `perf-progress.ts`(+107/-62,净 -90) +- `apps/miniprogram/miniprogram/pages/task-list/task-list.wxml`:`fmt.days → fmt.daysAgo`(+6/-4) + +### 数据库 db (6) + +- `db/etl_feiqiu/migrations/2026-04-12__add_stat_date_to_index_tables.sql` **[新建]**:stat_date 字段 + 唯一约束扩展 + 索引重建 + app 视图 `DISTINCT ON`(详见下方 DDL 清单) +- `db/etl_feiqiu/migrations/20260411_member_project_tag_visit_based.sql` **[新建]**:美洲豹赛台配置 + 清理旧窗口数据(详见下方 DDL 清单) +- `db/etl_feiqiu/schemas/app.sql`:同步 3 视图 `DISTINCT ON` 改写(+40/-40) +- `db/etl_feiqiu/schemas/core.sql`:注释更新,定位为跨平台统一维度层(+6) +- `db/etl_feiqiu/schemas/dwd.sql`:`mt_*` 6 字段(对应 2026-04-15 美团审计) +- `db/etl_feiqiu/schemas/dws.sql`:3 表 stat_date + 约束 + 索引 + `v_member_recall_priority` 改写(+133/-88) +- `db/README.md`:core 层注释补充 + +### 文档 docs (40+) + +> 95% 为路径同步(`C:\NeoZQYY → C:\Project\NeoZQYY`);DDL 基线刷新仅 dws / zqyy_app biz 有实质内容;无新 spec。 + +**根文档**: + +- `docs/README.md`:路径同步 +- `docs/assistant-task-detail-report.md`:历史报告(内容保留) + +**DDL 基线(auto-gen,+201/-110 集中在 dws/biz)**: + +- `docs/database/ddl/etl_feiqiu__app.sql`:基线刷新 +- `docs/database/ddl/etl_feiqiu__core.sql`:基线刷新 +- `docs/database/ddl/etl_feiqiu__dwd.sql`:基线刷新 + `mt_*` 字段 +- `docs/database/ddl/etl_feiqiu__dws.sql`:基线刷新 + stat_date + 视图 +- `docs/database/ddl/etl_feiqiu__meta.sql`:基线刷新 +- `docs/database/ddl/etl_feiqiu__ods.sql`:基线刷新 +- `docs/database/ddl/zqyy_app__app.sql`:基线刷新 +- `docs/database/ddl/zqyy_app__auth.sql`:基线刷新 +- `docs/database/ddl/zqyy_app__biz.sql`:基线刷新(有内容) +- `docs/database/ddl/zqyy_app__public.sql`:基线刷新 + +**部署/迁移/MCP/运维**: + +- `docs/deployment/EXPORT-PATHS.md`:路径同步 + LF→CRLF 标准化 +- `docs/deployment/LAUNCH-CHECKLIST.md`:路径同步 + LF→CRLF 标准化 +- `docs/mcp/WEIXIN-DEVTOOLS-MCP.md`:路径同步 +- `docs/migrate/*.md × 2`:路径同步 +- `docs/ops/init-test-user.md`:路径同步 + +**Specs(约 28 份,全部路径同步无进度变更)**: + +- `docs/specs/*/tasks.md × 约 18`:pytest 命令路径同步 +- `docs/specs/*/design.md × 约 10`:pytest 命令路径同步 + +### 工具/脚本/测试/配置 (其余约 43) + +> 95% 路径迁移,实质新增 2 个运维脚本 + 1 个工具目录 + 1 个启动 bat。 + +**根配置 5**: + +- `.env`:路径同步 +- `.env.template`:路径同步 +- `.mcp.json`:路径同步 +- `.playwright-mcp/`:新增目录 +- `uv.lock`:大规模格式重排(不审跨 lockfile 内容) + +**根中间产物 2**: + +- `excel_analysis_report.txt`:Excel 分析中间产物 +- `sheet_structure.txt`:Sheet 结构中间产物 + +**scripts/ops 12**: + +- `scripts/ops/ai_backfill.py`:路径同步 +- `scripts/ops/backfill_coach_area_hours.py`:路径同步 +- `scripts/ops/backfill_finance_area_daily.py`:路径同步 +- `scripts/ops/backfill_index_snapshots.py`:路径同步 +- `scripts/ops/check_and_refresh_audit.py`:路径同步 +- `scripts/ops/etl_unified_analysis.py`:路径同步 +- `scripts/ops/gen_integration_report.py`:路径同步 +- `scripts/ops/init_test_user.py`:路径同步 +- `scripts/ops/start-admin.ps1`:路径同步 +- `scripts/ops/churned_customer_report.py` **[新建]**:流失客户回访报告(~1137 行) +- `scripts/ops/simulate_historical_tasks.py` **[新建]**:历史任务推演(~524 行) + +**tools 3 + 新建子目录**: + +- `tools/db/*.py × 3`:路径同步 +- `tools/task-analysis/` **[新建目录]**:任务报告工具 + 7 份历史报告 + +**tests 7**: + +- `tests/test_property_*.py × 7`:常量路径同步 + +**apps/demo-miniprogram 4**: + +- SDK 1.6.28 → 1.6.29 + 项目名归一化: + - `apps/demo-miniprogram/i18n/base.json` + - `apps/demo-miniprogram/miniprogram/app.miniapp.json` + - `apps/demo-miniprogram/project.miniapp.json` + - `apps/demo-miniprogram/project.private.config.json` + +**_DEL 归档 4**: + +- `_DEL/MIGRATION-PLAYBOOK.md`:路径同步 +- `_DEL/miniprogram-h5-conversion/steering/action-manual.md`:路径同步 +- `_DEL/weixin-devtools-mcp.md`:路径同步 +- `_DEL/weixin-devtools/steering/workflow.md`:路径同步 + +**根新增启动**: + +- `start-admin.bat`:根目录启动引导(新建) + +**其他配置**: + +- `.claude/settings.json`:环境配置更新 + +## 数据库变更 + +### 迁移 1:`db/etl_feiqiu/migrations/2026-04-12__add_stat_date_to_index_tables.sql` + +- **执行状态**:已执行(从 schema 基线一致性 + 任务代码已引用 `stat_date` 推断) +- **DDL 清单**: + 1. `dws.dws_member_assistant_relation_index`: + - `ADD COLUMN stat_date DATE NOT NULL DEFAULT CURRENT_DATE` + - `DROP CONSTRAINT` 原唯一约束 `(site_id, member_id, assistant_id)` + - `ADD CONSTRAINT` 新唯一约束 `(site_id, member_id, assistant_id, stat_date)` + - `DROP INDEX` 旧索引(如有) + - `CREATE INDEX` 新索引 `(site_id, stat_date)` + - `UPDATE` 回填已有行 `stat_date = CURRENT_DATE` + 2. `dws.dws_member_winback_index`:同上,唯一约束变 `(site_id, member_id, stat_date)` + 3. `dws.dws_member_newconv_index`:同上,唯一约束变 `(site_id, member_id, stat_date)` + 4. `app.v_dws_member_assistant_relation_index`:重写 `SELECT DISTINCT ON (site_id, member_id, assistant_id) ... ORDER BY site_id, member_id, assistant_id, stat_date DESC` + 5. `app.v_dws_member_winback_index`:同上 `DISTINCT ON (site_id, member_id) ... ORDER BY ..., stat_date DESC` + 6. `app.v_dws_member_newconv_index`:同上 `DISTINCT ON (site_id, member_id) ... ORDER BY ..., stat_date DESC` + 7. `dws.v_member_recall_priority`:改写以依赖新视图 +- **影响对象**:3 张 DWS 表 + 4 张视图 + 4 个新索引 +- **回滚 SQL**:文件末尾提供(TRUNCATE 过期快照 → 恢复原唯一约束 → 删除 `stat_date` 列) +- **兼容性**:`stat_date NOT NULL + DEFAULT CURRENT_DATE`,安全;大表 ALTER 因 DATE 列小,锁表风险低 + +### 迁移 2:`db/etl_feiqiu/migrations/20260411_member_project_tag_visit_based.sql` + +- **执行状态**:已执行(`member_project_tag_task` 已改为 `LAST_30_VISITS` 模式) +- **DDL 清单**: + 1. `dws.cfg_area_category`:`INSERT ... ON CONFLICT DO NOTHING` 幂等新增 `('美洲豹赛台', 'BILLIARD', '中式/追分')` + 2. `dws.dws_member_project_tag`:`DELETE WHERE time_window IN ('LAST_30_DAYS', 'LAST_60_DAYS')` +- **影响对象**:1 条配置新增 + 旧窗口数据清理 +- **回滚 SQL**:恢复 DELETE 数据(需从备份) + DELETE 新增配置行 +- **兼容性**:无破坏性(纯数据操作 + 幂等配置) + +## 风险与回滚 + +### 高风险项(需人工验证或测试) + +1. **task_generator UPSERT + Step 5 清理**(`apps/backend/app/services/task_generator.py`):72h 宽限期 + 双任务替代策略 + 保底任务清理——业务逻辑复杂,需回归测试各种任务替代路径 +2. **recall_detector settle_type=3 双重限制**(`apps/backend/app/services/recall_detector.py`):`settle_type=3` 且 `order_assistant_type=2` 才计入;门店级召回自动解除(新增 resolved 状态)——需验证对历史数据的影响 +3. **fetchPerformanceRecords coach_id 参数权限**(`apps/backend/app/routers/xcx_performance.py` + `apps/miniprogram/miniprogram/services/api.ts`):管理者跨级查询需要 `view_board_coach` 权限——需 e2e 权限测试防越权 +4. **coach-service-records 新页面权限守卫**(`apps/miniprogram/miniprogram/pages/coach-service-records/*`):`onShow` 中 `checkPageAccess('view_board_coach')`,URL 参数 `coachId` 需后端二次验证防枚举 +5. **fdw_queries 消费汇总表口径统一**(`apps/backend/app/services/fdw_queries.py`):`get_last_visit_days` / `batch_query_for_task_list` 改用 `v_dws_member_consumption_summary` 替代 `v_dwd_assistant_service_log`——下游多调用方,需验证聚合无重复 +6. **isScattered 散客标记端到端**(跨 backend/schemas + 小程序多页):后端 `member_id ≤ 0` 自动标记——需验证所有调用方语义一致 +7. **task_engine 双模式分支**(`apps/etl/connectors/feiqiu/tasks/dws/task_engine.py`):HTTP 实时 + 推演回测双路径,需独立 `APP_DB_DSN` 连接业务库 + +### 中风险项 + +- `PerformanceMetrics` schema 扩展(6→25 字段):前端多页依赖,需字段可用性保证 +- `current_tier` 语义修正(tier_id 主键 → tier_nodes 数组下标 0-based):前端档位展示语义对应 +- 指数任务日快照模式:DELETE 策略从全量变 `(site_id, stat_date)`,回填任务需防重跑 + +### 回滚策略 + +- **迁移 SQL**:两份回滚脚本已内嵌(文件末尾注释块) +- **后端代码**:git revert 对应文件即可(未 commit,`git checkout HEAD -- ` 可立即回退) +- **小程序代码**:同上 +- **ETL 任务**:可禁用 `CORE_DIM_SYNC` / `DWS_INDEX_BACKFILL` / `DWS_TASK_SIMULATION` 任务的编排注册 + +## 验证 + +### SQL 验证(3 条起步) + +```sql +-- 验证 stat_date 已生效 +SELECT COUNT(DISTINCT stat_date) FROM dws.dws_member_winback_index WHERE site_id = 1; + +-- 验证 member_project_tag 新窗口已写入 +SELECT DISTINCT time_window FROM dws.dws_member_project_tag; +-- 应只返回 LAST_30_VISITS + +-- 验证 core 维度表非空(CORE_DIM_SYNC 已跑过) +SELECT COUNT(*) FROM core.dim_assistant; +SELECT COUNT(*) FROM core.dim_member; +``` + +### 功能验证 + +- **小程序**:登录 coach 账号打开 `task-list` 查看绩效卡;登录 admin 账号从 `board-coach` 点击助教卡进 `coach-service-records` 页 +- **后端**:`pytest apps/backend/tests/` 跑现有测试 +- **ETL**:`python -m cli.main --dry-run --tasks CORE_DIM_SYNC,DWS_MEMBER_PROJECT_TAG,WINBACK_INDEX,RELATION_INDEX,NEWCONV_INDEX` + +## 合规检查 + +### 文档同步缺口(预扫描识别的 25 项) + +**已有文档覆盖(免补齐)**: + +- 美团 `mt_*` 字段 → 已在 `docs/audit/changes/2026-04-15__meituan-settle-core-sync.md` 审计覆盖 + `BD_manual_dwd_groupbuy_redemption.md` 已更新 +- `stat_date` 迁移 → `db/etl_feiqiu/migrations/` 已有完整 SQL,`docs/database/ddl/etl_feiqiu__dws.sql` 已同步 +- `member_project_tag` 新窗口 → `BD_manual_dws_member_project_tag.md` 已同步 + +**待补齐高风险项(建议后续单独任务处理,本次审计仅标注缺口,不强制补齐)**: + +- `apps/backend/docs/API-REFERENCE.md`:需增补 `xcx/coaches/{id}/banner`、`xcx/performance` 的 `coach_id` 参数说明、`xcx/customers` 的 `foodDetail` / `phoneFull` / `notes.creator*` 字段 +- `apps/miniprogram/README.md`:需增补 `coach-service-records` 新页面说明 +- `apps/etl/connectors/feiqiu/docs/architecture/`:建议补充 `orchestration/task_registry.py` 新增任务(`CORE_DIM_SYNC` / `DWS_INDEX_BACKFILL` / `DWS_TASK_SIMULATION`) + +### 状态清单 + +| 项 | 状态 | +|---|---| +| 迁移 SQL 回滚脚本 | 已内嵌 | +| DDL 基线同步 | 已同步(dws/app 一致) | +| 代码→文档映射(美团/stat_date/project_tag) | 已覆盖 | +| 代码→文档映射(backend API / miniprogram 新页 / ETL 新任务) | 待补齐(已列入后续任务) | +| Spec 与实现对应 | 全部可追溯 | + +## 下一步建议 + +1. 提交本基线(本次审计后可作为 commit 起点) +2. 后续新改动走标准 `/audit` 流程(单独审计、小颗粒度) +3. 高风险 7 项应在 commit 前或上线前完成端到端测试 +4. 文档补齐列入待办,非阻断本次提交 diff --git a/docs/specs/audit-gap-recovery/tasks.md b/docs/specs/audit-gap-recovery/tasks.md new file mode 100644 index 0000000..827de2d --- /dev/null +++ b/docs/specs/audit-gap-recovery/tasks.md @@ -0,0 +1,226 @@ +# 审计记录补追与嵌套目录清理 + +**发现日期**:2026-04-20 +**发现上下文**:2026-04-20 历史批次预审过程中,放宽 `.gitignore` 白名单后暴露出 `docs/audit/changes/changes/` 嵌套目录 + +## 背景 + +开发机迁移(79d3c2e 提交)前后,`docs/audit/changes/` 下意外出现了一个同名嵌套子目录 `docs/audit/changes/changes/`,其中堆积了 127 份审计记录 md 文件。推测原因是迁移脚本或某次批量拷贝时,误把 `docs/audit/changes/` 整个目录作为源,再次写入到了它自身下面,形成了 `changes/changes/` 的路径嵌套。 + +同时期 `.gitignore` 将 `docs/audit/` 整目录屏蔽(仅白名单少量文件),导致此后新增的审计记录长期无法入仓。主目录 `docs/audit/changes/` 当前仅有 33 份入仓 md,而嵌套目录累积了 127 份。 + +用户最初的设想是直接 `rm -rf docs/audit/changes/changes/` 了事。但实地核查发现:嵌套目录里相当一部分文件从未进入过 git 任何分支的 history(即未 commit 的孤本),一旦删除就永久丢失。因此需要先对 127 份做全量分类,再按类别分阶段处理,不能一删了之。 + +本 PRD 即用于指导后续清理动作,独立可执行。 + +## 扫描结果统计 + +| 分类 | 数量 | 含义 | 处理方式 | +|------|------|------|---------| +| A 纯副本 | 30 | 主目录同名同内容(diff 无输出) | 可直接删除嵌套版本 | +| B 内容漂移 | 1 | 主目录同名但内容不同 | 人工比对选最新 | +| C 已 commit 的孤本 | 0 | 主目录无,git history 有 | 无此类 | +| D 未 commit 的孤本 | 96 | 主目录无,git history 也无 | **最高优先级补追**,删除即永久丢失 | +| **合计** | 127 | | | + +扫描方法:对 `docs/audit/changes/changes/*.md` 每个文件,先查 `docs/audit/changes/<同名>.md` 是否存在,存在则用 `diff -q` 比对内容;不存在则用 `git log --all --oneline -- docs/audit/changes/<文件名>` 查历史。扫描时主目录文件数 33,嵌套目录文件数 127。 + +## 类别 D:未 commit 的孤本清单(最高风险,共 96 份) + +以下 96 份文件仅存在于 `docs/audit/changes/changes/`,且 git 所有分支 history 中均无记录。删除即永久丢失。 + +``` +2026-02-26__etl-bugfix-dim-staff-rankname-assistant-daily-table-area.md +2026-02-26__p1-p2-p3-fullstack-integration.md +2026-02-26__retention-clue-refactor.md +2026-02-26__root-file-gitignore-h5ui-cleanup.md +2026-02-27__biz-day-cutoff-prd-sync-check.md +2026-02-27__p4-core-business-routes-triggers.md +2026-02-28__multi-module-accumulated-changes.md +2026-03-01__dwd-cleanup-ods-fix-dim-staff-repair.md +2026-03-01__dws-numeric-precision-ods-siteid-fix.md +2026-03-02__etl-unified-analysis-hook-merge.md +2026-03-02__spi-calibration-nonzero-median.md +2026-03-03__miniprogram-dev-debug-panel.md +2026-03-04__fullstack-accumulated-changes.md +2026-03-06__fix-api-client-post-method.md +2026-03-06__fix-db-operations-dsn-proxy.md +2026-03-07__task3-project-tag-docs-sync.md +2026-03-08__p5-ai-spec-review-category-enum-align.md +2026-03-10__multi-module-ai-apps-task-defense-miniprogram.md +2026-03-12__board-finance-overview-wxss-calibration.md +2026-03-12__miniprogram-dev-docs-finalize.md +2026-03-12__multi-module-ai-taskdefense-miniprogram-etl.md +2026-03-12__pixel-audit-structured-methodology.md +2026-03-13__board-finance-line-height-audit.md +2026-03-13__board-finance-rpx-formula-correction.md +2026-03-13__task-list-h5-rewrite.md +2026-03-15__ddl-baseline-consolidation-bd-manual-reorg.md +2026-03-18__rns1-e2e-fdw-direct-connect-bugfix.md +2026-03-19__card-type-id-doc-sync.md +2026-03-19__coach-tier-hardcode-fix.md +2026-03-19__level-map-hardcode-fix.md +2026-03-19__rns12-db-audit.md +2026-03-20__ai-prompt-refinement-board-coach-mock.md +2026-03-20__h2-fdw-to-direct-etl-unification.md +2026-03-20__miniprogram-docs-sync.md +2026-03-20__r3-skill-type-filter-rebuild.md +2026-03-20__rns1-ai-autonomous-decision-risk-audit.md +2026-03-20__rns13-board-apis-e2e-fix.md +2026-03-20__rns14-chat-fdw-filter-audit.md +2026-03-20__rns14-chat-module-r3-filter-rebuild.md +2026-03-22__db-field-walkthrough-batch-fix.md +2026-03-22__ddl-db-structure-diff-bd-manual-audit.md +2026-03-22__ddl_bd_manual_consistency_fix.md +2026-03-22__dev-trace-log-fullstack-feature.md +2026-03-22__ns4-ddl-merge-deleted-at.md +2026-03-22__p14-task15-final-checkpoint.md +2026-03-22__p16-spec-closing-doc-sync.md +2026-03-22__trace-path-fix-miniprogram-login-race.md +2026-03-22__zombie-task-graceful-shutdown-rerun.md +2026-03-23__ddl-merge-rejection-count-cancelled.md +2026-03-23__disable-to-remove-user-auth-model-fix.md +2026-03-23__mysites-tenant-filter-time-format-nickname-display.md +2026-03-23__review-modal-phone-display-auto-match-identity-label.md +2026-03-23__role-routing-page-guard.md +2026-03-23__tenant-admin-case-insensitive-username.md +2026-03-23__tenant-admin-review-modal-dynamic-roles.md +2026-03-23__tenant-admin-site-access-root-fix.md +2026-03-23__tenant-user-approval-site-filter.md +2026-03-23__trigger-jobs-admin-web-miniprogram-cleanup.md +2026-03-24__add_missing_cfg_skill_type.md +2026-03-24__ddl-migration-merge-and-archive.md +2026-03-24__fix-tier-nodes-empty-progress-bar.md +2026-03-24__lookback_days_60_to_90.md +2026-03-24__miniprogram-avatar-nickname-feature.md +2026-03-24__p17-assistant-ownership-task-engine.md +2026-03-24__p18-task-engine-dashboard.md +2026-03-24__perf-page-data-fix.md +2026-03-24__review-modal-avatar-layout.md +2026-03-24__soft-delete-user-site-roles-binding.md +2026-03-24__trigger-jobs-clear-task-interaction.md +2026-03-24_fix_cfg_skill_type_missing_records.md +2026-03-25__baseline-relationship-building-tasks.md +2026-03-25__baseline-task-independent-connection-fix.md +2026-03-25__perf-to-task-detail-member-query.md +2026-03-25__perf-wxml-missing-member-id.md +2026-03-25__task-detail-service-records-6-improvements.md +2026-03-25__tenant-users-soft-delete-upsert-fix.md +2026-03-26__etl-missing-fields-phase1-ddl-mappings.md +2026-03-26__net-income-calibration-all-pages.md +2026-03-27__board-finance-double-format-fix.md +2026-03-27__board-finance-integration-T2.md +2026-03-27__board-finance-phase2-t1-t6.md +2026-03-27__board-finance-wxml-format-tabs-cleanup.md +2026-03-27__miniprogram-permission-unification.md +2026-03-27__task-list-recent60d-and-wxml-formatting.md +2026-03-28__board-finance-5fixes.md +2026-03-28__board-finance-dws-area-refactor-audit.md +2026-03-28__fix-miniprogram-login-landing-page.md +2026-03-29__board-lazy-loading-pagination.md +2026-03-29__coach-detail-500-field-name-fix.md +2026-03-29__coach-detail-design-alignment.md +2026-03-29__coach-detail-style-aggregation-fix.md +2026-03-29__dws-task-engine-etl-orchestration.md +2026-03-29__fix-recall-completion-event-chain.md +2026-03-31__task-engine-overhaul.md +2026-04-05__kiro-to-claude-code-migration.md +2026-04-08__fix13-recall-events-refactor.md +``` + +注意其中一份为 `2026-03-24_fix_cfg_skill_type_missing_records.md`(单下划线),与同日的 `2026-03-24__add_missing_cfg_skill_type.md` 命名风格不同,疑似历史遗留命名,补追时保持原名即可。 + +## 类别 B:内容漂移清单(需人工比对,共 1 份) + +``` +2026-04-06__v1-cleanup-ddl-consolidation.md +``` + +处理提示:主目录版本与嵌套版本在 2026-04-06 的 v1 整理 commit(779b2f6)前后可能经历过修订,需逐行对比选最新信息最完整的一版。 + +## 类别 C:已 commit 的孤本清单(可恢复,共 0 份) + +本次扫描未发现此类文件。主目录缺失的 94 份全部属于 D 类未 commit 孤本。 + +## 类别 A:纯副本清单(可直接删除,共 30 份) + +以下 30 份文件在主目录有同名同内容版本,嵌套副本可安全删除。 + +``` +2026-02-13__api-ods-comparison-v2.md +2026-02-13__api-ods-comparison.md +2026-02-13__api-reference-batch2.md +2026-02-13__api-reference-overhaul.md +2026-02-13__bd-manual-docs-consolidation-ddl-sync.md +2026-02-13__field-drift-report-update.md +2026-02-13__git-repo-reinit-push.md +2026-02-13__remove-legacy-index-cleanup.md +2026-02-14__api-doc-reorg-field-grouping.md +2026-02-14__api-ods-comparison-v3-fixed.md +2026-02-14__api-ods-comparison-v3.md +2026-02-14__api-param-audit-ods-design.md +2026-02-14__drop-dwd-settle-list.md +2026-02-14__drop-ods-settlelist.md +2026-02-14__dws-bugfix-tier-safedecimal.md +2026-02-14__json-refresh-md-patch.md +2026-02-14__json-vs-md-audit.md +2026-02-14__legacy-ods-dwd-cleanup.md +2026-02-14__md-placeholder-fix-cleanup.md +2026-02-14__ods-cleanup-doc-update.md +2026-02-14__ods-vs-summary-comparison.md +2026-02-14__recording-client-timezone-fix.md +2026-02-14__replace-role-area-new-api-doc.md +2026-02-14__skip-words-remark-fix.md +2026-02-15__admin-web-console-db-migration-audit-reorg.md +2026-02-15__audit-consolidation-doc-reorg.md +2026-02-15__backend-deps-bootstrap.md +2026-02-15__docs-database-merge.md +2026-02-15__docs-devnotes-index-cleanup.md +2026-02-15__monorepo-migration-phase1-8.md +``` + +## 建议的执行顺序 + +1. **阶段 1:先保全 D 类(96 份)** + - 在动任何东西前,先 `git add -A && git commit -m "WIP 清理前快照"` 做一次保护 commit + - 将 `docs/audit/changes/changes/` 下所有 D 类文件复制(不是移动)到 `docs/audit/changes/` + - 检查 `.gitignore` 是否放行 `docs/audit/changes/*.md`,若未放行则先调整白名单 + - `git add docs/audit/changes/ && git commit -m "补追未入仓的 96 份审计孤本"` + +2. **阶段 2:处理 B 类(1 份)** + - 针对 `2026-04-06__v1-cleanup-ddl-consolidation.md`,用 `diff docs/audit/changes/<该文件> docs/audit/changes/changes/<该文件>` 查看差异 + - 选更完整的一版保留到主目录;将另一版备份到 `_DEL/audit-backup/2026-04-06__v1-cleanup-ddl-consolidation.嵌套版.md` 或类似路径 + - commit 消息"内容漂移修正:v1-cleanup-ddl-consolidation" + +3. **阶段 3:恢复 C 类(0 份,跳过)** + - 本次无 C 类,无需操作 + +4. **阶段 4:删除嵌套目录** + - 确认阶段 1、2 已 commit 入仓 + - `rm -rf docs/audit/changes/changes/` + - `git add -A && git commit -m "清理嵌套目录 docs/audit/changes/changes/"` + +## 风险与回滚 + +- 风险 1:D 类补追后,主目录审计时间线会出现大段 2026-02-26 至 2026-04-08 的批量入仓,commit 时间与文件日期不一致。可接受,目标是保全历史。 +- 风险 2:B 类仅 1 份,若选错版本会丢失另一方内容。缓解:另一版强制先备份到 `_DEL/` 再删。 +- 风险 3:`.gitignore` 可能仍然屏蔽 `docs/audit/changes/*.md`,导致 `git add` 静默忽略。阶段 1 第一次 `git add` 后必须 `git status` 核对文件是否真的进入了暂存区;若未进入,先修 `.gitignore` 白名单再重试。 +- 风险 4:D 类中 `2026-03-24_fix_cfg_skill_type_missing_records.md` 为单下划线命名,可能与同日双下划线版本功能重叠,补追后若发现重复再单独合并。 +- 回滚:所有删除前应已有"WIP 清理前快照"commit;任何阶段出问题 `git reset --hard <快照 hash>` 即可恢复。 + +## 验证 + +阶段 4 完成后执行以下验证: + +- `ls docs/audit/changes/*.md | wc -l` 应等于 33(原)+ 96(D 补追)+ 0(C 恢复)= 129 +- 若 B 类合并后主目录文件未增加,则仍为 129;若 B 类创建了新文件名则为 130 +- `ls docs/audit/changes/changes/ 2>/dev/null` 应返回空或"目录不存在" +- `git log --oneline -- "docs/audit/changes/"` 应能看到至少 3 次本次操作 commit(快照 / 补追 / 清理) +- 抽查 D 类中的 3 份文件,确认 `git log --all -- "docs/audit/changes/<文件名>"` 返回非空 + +## 不在本次任务范围 + +- 审计内容本身的正确性复核(只做文件层面的保全,不审查内容) +- `.gitignore` 结构的长期设计(仅在本次清理中按需放行白名单) +- 其他模块的遗漏审计补追 +- 审计看板 `docs/audit/audit_dashboard.md` 的刷新(阶段 4 完成后单独跑 `scripts/audit/gen_audit_dashboard.py`)