0001-Sprint5回顾会议纪要 » 历史记录 » 版本 1
Huarui Lin, 2026-04-29 10:28
| 1 | 1 | Huarui Lin | # Sprint 5 物理防线与架构规约落地回顾会议纪要 |
|---|---|---|---|
| 2 | **会议时间**:[填写实际日期] |
||
| 3 | **会议议题**:Sprint 5 全链路物理防线验收与 S6 准入决策 |
||
| 4 | **参考基准文档**:`2-dry_module_list.md` |
||
| 5 | **会议结论**:**Sprint 5 架构规约全面落地,零技术债遗留,同意解除阻塞,准予进入 Sprint 6 推理服务阶段。**(含 1 项线下补充验证待办) |
||
| 6 | --- |
||
| 7 | ## 一、 会议确认项清单 |
||
| 8 | 经逐项严格核验,以下架构规约与物理防线已实锤落地,录入基线: |
||
| 9 | ### 1. 核心模块复用边界 (议题 1) |
||
| 10 | * **CONF-01**:`core.standardization_math` 模块文档中的“S5 训练阶段因 3000万行宽表 OOM 红线已豁免复用”说明闭环,无违规调用。 |
||
| 11 | * **CONF-02**:S5.2 标准化 Apply 阶段代码及 Git 记录中,已绝对封杀对 `core.standardization_math` 的调用路径。 |
||
| 12 | ### 2. 数据流加载边界与配置契约 (议题 2) |
||
| 13 | * **CONF-03**:S5 全链路数据时间窗口边界严格从 `config.yaml` 动态读取,代码中无硬编码年份常量。 |
||
| 14 | * **CONF-04**:S5.4 Spearman 阶段严格调用 `core.stream_engine.stream_by_year()`,无业务侧裸循环逻辑。 |
||
| 15 | ### 3. S5.1 截面聚合与双形态参数物理时序隔离 (议题 3) |
||
| 16 | * **CONF-05**:`standardization_params_wide.parquet` 已执行 `.shift(1)` 实现 T-1 对齐。 |
||
| 17 | * **CONF-06**:已物理产出 `calendar_dim.parquet`,且基于 S3 时间极值动态生成绝对自然日频连续日历表。 |
||
| 18 | * **CONF-07**:针对 `std == 0` 或 `mad == 0` 的截面,`is_production_ready` 列已绝对置为 `False`。 |
||
| 19 | ### 4. S5.2 标准化 Apply 物理防线 (议题 4) |
||
| 20 | * **CONF-08**:S5.2 代码库全局无 `unpivot` 关键字,3000 万行宽表原地 Apply,内存防爆防线生效。 |
||
| 21 | * **CONF-09**:Polars 表达式树已对 38 个特征列强制注入 IEEE 754 除零拦截(`std == 0 -> None`),封杀 `Inf` 击穿路径。 |
||
| 22 | ### 5. S5.3 训练 Join 三键死锁与毒样本截断 (议题 5) |
||
| 23 | * **CONF-10**:特征宽表与标签表 Join 的 `on` 参数严格且仅包含 `["fund_id", "net_value_date", "segment_id"]`。 |
||
| 24 | * **CONF-11**:毒样本截断(`is_feature_complete == False` 覆写 `label=0`)严格位于 Join 之后、Spearman 之前。 |
||
| 25 | ### 6. S5.4 Spearman 秩相关内存防爆防线 (议题 6) |
||
| 26 | * **CONF-12**:Spearman 计算物理分块标尺严格为“自然年”,无固定行数分片。 |
||
| 27 | * **CONF-13**:`spearman.load_mode` 配置项已读取,且生产环境锁定为 `yearly_chunked`。 |
||
| 28 | * **CONF-14**:Spearman 数学链路中,`method="average"` 锁定、中心化、Pearson 跨年累加、对称化强制截断四步动作按序严格存在。 |
||
| 29 | * **CONF-15**:基于 `0.90` 阈值剔除共线性后,最终特征子集已物理落盘为 `final_feature_list.json`。 |
||
| 30 | ### 7. S5.3 训练流水线防线 (议题 7) |
||
| 31 | * **CONF-16**:LambdaRank 样本平衡严格按单基金差异化等距抽样,`ordinal rank` 断崖消化位于抽样之后、喂入模型之前。 |
||
| 32 | * **CONF-17**:Time-Series 5 折评估实现累积扩展窗口,评估期间绝对无特征剔除或超参修改。 |
||
| 33 | * **CONF-18**:闭环全量重训超参已硬编码锁定为 `max_depth=3, num_leaves=7, min_data_in_leaf=20, learning_rate=0.02`。 |
||
| 34 | * **CONF-19**:`model.txt` 与双形态参数表已打入同一时间戳发布目录,且 MD5 摘要文件已生成。 |
||
| 35 | ### 8. CI 门禁执行与工程治理闭环 (议题 8) |
||
| 36 | * **CONF-20**:Sprint 5 新增物理产物已补充至 CI Pydantic 校验或产物断言拦截器中。 |
||
| 37 | * **CONF-21**:Sprint 5 新增代码已完整通过四大 CI 红线扫描,无违规命中。 |
||
| 38 | ### 9. 遗留问题与技术债清理 (议题 9) |
||
| 39 | * **CONF-22**(更正):确认 Sprint 5 代码库中**未**遗留任何 `TODO`、`HACK`、`FIXME` 注释及临时变通逻辑。 |
||
| 40 | * **CONF-23**:确认 Sprint 5 代码库零技术债遗留,可无损进入 Sprint 6。 |
||
| 41 | --- |
||
| 42 | ## 二、 会议待办事项追踪池 |
||
| 43 | | 工单编号 | 事项描述 | 责任人 | 验收标准 | 状态 | |
||
| 44 | | :--- | :--- | :--- | :--- | :--- | |
||
| 45 | | **TODO-01** | 补充验证推理参数表物理排序键 | 研发工程师 | 线下出示 `standardization_params.parquet` 的 PyArrow Schema 截图或 Parquet Footer Metadata,向架构师强制验证物理排序键是否绝对为 `["feature_name", "date"]`。 | 待处理 | |
||
| 46 | --- |
||
| 47 | ## 三、 决议颁布 |
||
| 48 | 1. **Sprint 5 准入准出**:各项死锁逻辑、数学防线、内存防线及 CI 红线均已通过物理级验收,Sprint 5 正式宣告准出。 |
||
| 49 | 2. **S6 启动令**:解除 S6 推理服务开发阻塞。S6 团队可直接基于 `artifacts/v_xxx/` 下的发布目录,以 `core.standardization_math` 为唯一数学内核启动矩阵推理服务开发。 |
||
| 50 | 3. **例外放行**:`TODO-01` 不作为 Sprint 5 准出的阻塞项,但必须于 **[填写具体日期,建议 S6 启动前]** 前完成线下闭环验证。 |