# Devlog · G9b 列表建模:IR 列表语义落地

> 日期:2026-06-10 · plan:[closing-docling-gaps.md §G9b](../plans/closing-docling-gaps.md) · 零依赖

## 实现

- **检测**(layout,双信号):① 确定性标记——项目符号(•·‣▪◦○-–+空格)与短序数("1." / "12)" / "(3)",≥3 位数字排除年份);② 标签——LI/LBody/Lbl 结构角色(G9a 管线直供);
- **成组规则**:带标记的行**永不并入前块**(修复:列表项行宽达栏缘时曾会被段落合并吞掉),折行续行仍正常并入本项;
- **出口**:`Block.list_item` → chunks 新 kind `list_item`(每项独立成块,不折进散文段)、Markdown 列表行(项目符号归一为 `- `,序数保留原编号);
- 列表项不判标题(与标签否决互补)。

## 验收

- 单测:标记模式(含年份排除/无空格排除)、标记行不被合并;
- e2e:`multi_page` 的编号列表 10 项全部识别为 `list_item`("1. Undo/Redo…"–"5. Real-Time Collaboration…");
- 100 单测(+2)、clippy 零 warning、三件套零回归;记分牌 NID/TEDS 不变,MHS ±0.001 噪声级。

## 边界

嵌套层级未建模(缩进档位→层级留 TODO);罗马数字/字母序("i."/"a.")不识别(误报风险);Markdown 连续项之间无空行(紧凑列表)。
