HANDOFF.md
@@ -15,6 +15,37 @@
- **遗留的是口径问题,不是缺数据**:中口径排名/明细的 2025 列仍以母版静态定稿值为准(`readMidDetailLastYearCumulative`,`ReportExportService.java:2745` 起),注释(2686-2689 行)说明原因是"排名页原先查库现算,两者在 2025-03/04 网约车拆分上不同"。→ 需先做「库内 2025 vs 母版 2025」逐项 diff,交业务确认基准后再决定是否切换读库(切换必须过 diff=0 回归)。
- **规格更新**:`docs/汇总大表M0版式重建器规格_2026-10-06.md` 新增第十二节(三层职责 / 一表一粒度 / 调整值覆盖层 / 2025 实测核验 / 结果层可选 / 「母版不留数据」红线 / 与 M0 的依赖顺序)。
- **状态**:本节与规格第十二节均为【待验收】;未改动代码、未导入数据。
### 10-09(2):查证既有拍板——同比基准以母版缓存为准;扩列按月按需
- **同比基准(用户指出,已查证;先前判断修正)**:2026 与 2025 的同比**以母版缓存为准**,库只做校验、不直接替代。出处:`docs/要求与验收基线清单.md` F8(✅ 口径确认)、`docs/确认回执汇总与剩余疑问_汇总大表数据驱动改造_2026-09-07.md` Q1、`docs/汇总大表数据驱动改造方案_2026-09-07.md` 第九节、`docs/待确认_汇总大表数据驱动改造问题清单_2026-09-07.md` A1、`docs/问题汇总/汇总大表问题交接_2026-09-21.md` 方案 A(已实施)。切换唯一前提 = 人工核对并重导一致。
  - **修正**:本日上一条"中口径 2025 遗留口径待定"的说法作废;库内 2025 现算值不得直接替代母版静态定稿值。
- **扩列方式(既有拍板,与 M0 规格冲突)**:`docs/要求与验收基线清单.md` F10 = **按月按需扩列,不预做 12 月满版**(✅ M0 v4);改造方案 v1.1(09-08 用户拍板)同口径,正文"12 月满版列版式"建议已作废。M0 规格第九/十一节的"满版式"建议**待用户裁定**。
- **已有 09-29 扩列产物(本地未入库)**:`docs/问题汇总/_扩列规格表_2026-09-29.md/.csv`(19 页逐页规格)、`_扩列配置初稿_20260929.md/.csv`、`_扩列计划_v3..v10.json`、`_扩列进度_20260929.md`;试做件 `docs/生成汇总大表/2026年9月道路运输量汇总表_试做_20260929.xlsx`(数值未修完,勿用于出表)。
- **规格更新**:`docs/汇总大表M0版式重建器规格_2026-10-06.md` 新增第十三节(既有拍板核验,优先级最高);并修正 12.4 的处置结论。
- **状态**:【待验收】;未改动代码、未导入数据。
### 10-09(3):已确认口径全量核验 + 09-29 扩列规格转正入库 + M0 规格改写
- **口径核验范围**:`docs/要求与验收基线清单.md`、`docs/确认回执汇总与剩余疑问_汇总大表数据驱动改造_2026-09-07.md`(唯一决策基线)、`docs/待确认_汇总大表数据驱动改造问题清单_2026-09-07.md`、`docs/问题汇总/汇总大表问题交接_2026-09-21.md`、`docs/问题汇总/中口径排名同比与城市客运列错位_根因与长效方案_2026-09-18.md`、`docs/问题汇总/数据查看汇总与汇总大表口径对应关系_2026-09-23.md`。
- **关键已确认项**:F1(全精度存储+显示两位小数)、F8(母版缓存优先作同比基准,库仅校验)、F10(扩列按月按需、不预做 12 月满版、新增列为两行纵向合并标题)、A1(只覆盖 2026 动态块,2025 及以前不重算)、A3(备份还原验证通过前保留)、A4(母版只当版式模板)、D1-D5(D3 每年新开一本、2026 只到 12 月)、E1-E3、C1-C7(C5 中口径排名/分析只由中口径客运量页生成、C6 周转量系数固定、C7 城市汇总口径)、C3(累计同比分母按表头定位"去年 M 月"列)、C4(版式对齐按表头文字匹配列)、确认回执六.4/六.5(两行合并标题、母版文本数字归一)。
- **撤回三处此前误述**:① "12 月满版式"(与 F10 / 六.1 冲突);② "历史参照值入库、同比切库值"(与 F8 / Q1 冲突);③ "停用 `_备份_` donor 还原"(与 A3 冲突,须验证通过后再做)。
- **规格转正入库(2026-10-09)**:`docs/汇总大表母版扩列规格_2026-09-29.md` / `.csv`(19 页逐页规格)、`docs/汇总大表母版扩列配置初稿_2026-09-29.md`(逐页列位配置 + 硬前提)。原文件在 `docs/问题汇总/_*`(被 `.gitignore:118` 挡住、仅本机),本次按正式文件名入库,原 `_` 文件保留本地。
- **新增关键硬前提**(来自配置初稿第五节):`SM_CUR_COL0=2`(2026年1月=C)与 `SM_LAST_COL0=21`(2025年1月=V)是**写死的列位置**,插列后四张跨页合成页会读错 2025 基数 → **扩列前必须先改成按表头动态定位**。
- **M0 规格改写**:第九/十一节"满版式"表述就地作废;新增第十四节《最终执行口径》(6 条动作 + 逐格 diff 验收 + 未决项)。
- **未决**:扩列走"程序自动"(09-21 §5.3 方案 A)还是"本机 Excel 小工具"(方案 B)——09-21 交接 §11.2 未记录结论,09-29 产物为"程序生成计划 + 人工确认"混合路线,待用户确认。
- **状态**:【待验收】;未改动代码、未导入数据。
### 10-09(4):扩列口径拍板——程序扩列、范围 8 页、4 个隐藏页保留隐藏
- **用户拍板(2026-10-09)**:① 扩列方式 = **程序扩列**(扩列器);② 扩列范围 = **8 个可见台账页**(` 货运`、`班线包车`、`城市客运`、`公交`、`出租`、`网约车`、`轨道、轮渡`、`中口径明细`);③ **4 个隐藏页保留并继续隐藏、不纳入数据加工**(`公路总客运`、`2025年城市客运量`、`中口径客运量`、`中口径计算过程`),不插列、不改公式。
- **母版构成实测(openpyxl + xl/workbook.xml)**:**15 个可见页签 + 4 个隐藏页签**,隐藏状态为 `state="hidden"`(非 veryHidden,右键标签可取消隐藏)。`公路总客运` 40×274、`中口径客运量` 189×68、`中口径计算过程` 217×11、`2025年城市客运量` 16×13。
- **消解两处矛盾**:09-29《扩列规格表》把 `中口径客运量`(页签 18)标为 A 类、且 09-29 进度里已插列的 8 页没有它;《配置初稿》又把它标成"无 2026 月份对"。按本次拍板统一为**不加工**;两份文档已就地追加《口径补充(2026-10-09)》。
- **字母陷阱记档(避免再混)**:09-21 交接 §5.3「方案 A=程序自动扩列 / 方案 B=Excel 小工具」,与 09-28/09-29 工作日结「方案 A=人工做母版 / 方案 B=扩列器」**字母相反**。后续统一写"**扩列器(程序)**",不再用 A/B 字母。
- **易混淆点记档**:`中口径明细` 页的 A1 标题本身就写作"中口径客运量",与隐藏页签 `中口径客运量` 同名——文档与口头沟通务必带页签位置(第 13 位 vs 第 18 位)。
- **仍待确认(仅一项)**:扩列产物是自动落盘为下期母版,还是每次人工确认后再落盘(建议后者,与 A3/A4 一致)。
- **文档更新**:`docs/汇总大表M0版式重建器规格_2026-10-06.md` 第十四节已定项替换"未决项";规格表与配置初稿各追加口径补充。
- **状态**:【待验收】;未改动代码、未导入数据。
## 最新(2026-10-06,zyj 线)
### 10-06:拉取合并 + 验收门禁分级 + 汇总大表 M0 立项