Tighten FM-Towns image coverage; retire stale ~2% deferral claims #275

Merged
jqueuniet merged 0 commits from refs/pull/275/head into main 2026-07-19 19:16:47 +02:00
jqueuniet commented 2026-07-19 11:56:03 +02:00 (Migrated from codeberg.org)

Refs #267 (closed with the investigation summary).

The issue's "~2% undecoded FM-Towns image tail" turned out to be stale documentation: the 80 Y-mark = -32 records (80/4,415 ≈ 1.8%) were decoded by the U4towns/C4towns ports long ago, but several ROADMAP/docs passages still called them deferred.

  • tests/fm_towns_jp_archive.rs: the coverage assertion now partitions iter_image() and asserts 4,415 records with zero Err — the old ok-count could not distinguish "all Ok" from "more records, some Err".
  • ROADMAP.md, docs/formats/graphics-dat.md, docs/sources/fm-towns-jp-cd.md, and the parse_fm_towns / crate-level rustdoc drop the stale "deferred" / "open piece" / "~2 %" claims; colour resolution is credited to the landed #260/#265 work and champion portraits to #188. Also repairs a dangling section reference (the colour material lives in palette-lut.md).

No decoder logic changes. Gates: cargo fmt --all --check, cargo clippy --workspace --tests, cargo test -p dm2-graphics, cargo doc -p dm2-graphics --no-deps all exit 0 (FM-Towns fixture present locally; CI skips fixture-gated assertions).

Refs #267 (closed with the investigation summary). The issue's "~2% undecoded FM-Towns image tail" turned out to be stale documentation: the 80 `Y-mark = -32` records (80/4,415 ≈ 1.8%) were decoded by the U4towns/C4towns ports long ago, but several ROADMAP/docs passages still called them deferred. - `tests/fm_towns_jp_archive.rs`: the coverage assertion now partitions `iter_image()` and asserts 4,415 records with zero `Err` — the old ok-count could not distinguish "all Ok" from "more records, some Err". - ROADMAP.md, `docs/formats/graphics-dat.md`, `docs/sources/fm-towns-jp-cd.md`, and the `parse_fm_towns` / crate-level rustdoc drop the stale "deferred" / "open piece" / "~2 %" claims; colour resolution is credited to the landed #260/#265 work and champion portraits to #188. Also repairs a dangling section reference (the colour material lives in `palette-lut.md`). No decoder logic changes. Gates: `cargo fmt --all --check`, `cargo clippy --workspace --tests`, `cargo test -p dm2-graphics`, `cargo doc -p dm2-graphics --no-deps` all exit 0 (FM-Towns fixture present locally; CI skips fixture-gated assertions).
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
jqueuniet/dm2-tools!275
No description provided.