3.2 KiB
Task 1: complete (commits 35d845f..df9427c, review clean)
Task 2: complete (commits df9427c..66753e4, review clean; fix: added (コード,MASTER) per design §3.5.1); Minor backlog: trailing newlines in excel_reader/provenance/excel_helpers/sheet_detector files, detect_sheet_type no docstring
Task 3: complete (commits 66753e4..4f61d24 + log b5bd21b, review clean); Minor backlog += sheet_nature MIXED branch/test coverage gap, empty-row threshold boundary test, max_cols based on len(row) vs effective cols
Task 4: complete (commits 4f61d24..63d0c90 + log 0051ad5, review clean); Minor backlog += merge_fill invalid min_row=0 branch, extract_table header_row out-of-range IndexError, trailing newlines in merge_fill/table_extractor, coverage gaps (empty matrix/row-start/header_row param)
Task 5: complete (commits 63d0c90..5818dd0 includes log, review clean); Minor backlog += formatting_detector: real tinted theme colors silently None (doc note: explicit RGB only), missing positive assertions for font/fill color, trailing newlines
Task 6: complete (commit a9cc3c9, review clean; impl matches plan placeholder-table design, no FreeText types needed); Minor backlog += free_text_extractor: hardcoded extraction_method string vs enum value, Provenance.row is block index not physical row (doc note)
Task 7: complete (commit 18da20d, review approved); IMPORTANT design gaps tracked -> (1) MIXED sheet collapsed to pure-table path (design 3.5.2 wants per-paragraph best-parse) — will surface in Task 8 real samples or Impact; (2) comments collected flat, CellValue.comment never attached — consumers must re-link via source_uri
FINAL: milestone2 有条件通过 -> must-fix x2 修复闭环 (eebed38, 41 passed) -> 交付报告 docs/milestone2-excel-parser-review.md; remaining deferred list documented (MIXED segmented parse, comments re-link contract, ExtractionMethod enum, theme colors, empty-sheet, formula/hidden/merged-header). Coverage report optional (pytest-cov not installed).
M2.5 Task 9: complete (commits 81c6b6c..34ef28b + log 0f137b9, review clean); Minor backlog += trailing newlines in paragraph_splitter.py/test_paragraph_splitter.py
M2.5 Task 10: complete (commits 0f137b9..539945b, review clean); Minor backlog += mid-file import placement in test_excel_parser.py (style)
M2.5 Task 11: complete (commits 539945b..1e3f702 + log bc79945, review approved); MIXED 装配分支(分割→每段 classify,TABLE 段 seg_fmt_map 段内坐标修正 formatting_map 错位;free_text 段防二次递归),TABLE/FREE_TEXT 路径不变; Minor backlog += MixedParagraph.matrix stores forward-filled segment vs docstring raw matrix wording, duplicate fmt_map loops in excel_parser (extractable later)
M2.5 Task 12: complete (commit 7592516, review approved; minor: assert msg tweak for brief typo)
M2.5 Task 13: complete (commit d93cc77, review approved; minor: inline comments in test, enum-to-enum assert fine given literal-assert exists)
M2.5 FINAL: 整体评审通过(base 81c6b6c..d93cc77,58 passed,无 skip); Minor backlog unchanged (progress dedup done this edit; log 范式步骤 "整体迭代"→"反馈迭代" for Task13 row; delivery report docs/milestone2-5-mixed-parser-review.md pending creation)