Files
AILang/docs/journals/2026-05-12-iter-ms.1.md
T
Brummel 614fd8bc93 iter ms.1: pipeline.rs format!("check: {e}") → {e:#} preserves anyhow Caused-by chain in JSON-cohort feedback
Inline pinning test in pipeline.rs constructs the same chain
shape module_name_from_json produces on serde-parse failure
(leaf wrapped with "parsing JSON in <path>" context) and
asserts both layers survive the formatter. RED→GREEN against
the property, not against production line bytes — for a
two-character fix, extracting a helper just for testability
would be over-engineering.

The strip_locations regex collapses \nCaused by: chains; the
{:#} alternate Display joins with ': ' on one line, so the
collapser is a no-op on the fixed output. AILX cohort
unaffected — only the harness-side anyhow path (module
rename pre-check) was dropping cause information.

Harness suite: 14/14 green (was 13/13 + 1 new pin).
2026-05-12 13:28:48 +02:00

1.5 KiB

iter ms.1 — Pipeline anyhow-chain preservation

Date: 2026-05-12 Started from: 8689f7a238 Status: DONE Tasks completed: 3 of 3

Summary

Two-character fix at pipeline.rs:118: format!("check: {e}")format!("check: {e:#}"). Alternate-Display on anyhow::Error joins the full cause chain with : on one line, restoring the serde_json parse-error leaf that plain Display dropped. Survives strip_locations (regex only collapses \nCaused by: blocks).

The bug surfaced during ms.2 planning recon: JSON-cohort feedback in the cma.3 baseline showed uninformative top-line "parsing JSON in /tmp/..." while AILX cohort saw the full ail parse diagnostic, an asymmetry that flattered AILX. ms.1 lands the fix before ms.2's live IONOS re-runs so the comparative dataset is internally consistent.

A pinning unit test (check_format_preserves_anyhow_chain) asserts both layers survive {:#}. Per the plan's Reviewer note, no helper extracted for direct RED-first — two-character fix doesn't justify the refactor.

Test count: 14 (was 13). cargo check clean.

Concerns

  • Harness integration tests (budget_abort, mock_full_run, verify_references) need AIL_BIN set or ail on PATH. The 14-green count assumes AIL_BIN=target/release/ail. Pre-existing cma.2 harness behaviour.

Files touched

  • experiments/2026-05-12-cross-model-authoring/harness/src/pipeline.rs

Stats

bench/orchestrator-stats/2026-05-12-iter-ms.1.json