Files
ARCADIA-Studio/harness/experiments/auto-layout-20260925/terminal-join-results-audit.md
T

5.0 KiB
Raw Blame History

J terminal-join actual-results independent audit

Result: the finite experiment supports the terminal-cost asymmetry diagnosis, with a real ordinary-scene overlap regression retained below. It does not establish universally improved routing, complete readability, or #32 acceptance. Static audit only: no compilation, probe rerun, GUI, source edit or publication by reviewer.

Evidence and checks

Tested pin 497c1ad8b39788148c5f03bc8542d6d8e28dbc01, compared against first probe e7deea7039bcf31675cffbb462cfeb19d62a7e20. Run03 command cargo run --locked --offline -p oa-core --example auto_layout_probe, Windows x86_64-pc-windows-gnullvm/dev: receipt exit0, failure null, inputs unchanged. Independently verified receipt log hashes. Test02 at the same pin also exit0/unchanged: six summaries132+7+13+18+2+13 =185 passed, zero failed/ignored.

Independently parsed both raw JSONL outputs, rather than relying only on comparison-helper booleans: all37 variant Projects, complete projected nodes/ports, and per-edge first/last coordinates match exactly. Thus changed area is routed/label bounds, not changed node placement. Independently recomputed every raw pairwise axis-aligned collinear interval total in both runs (74 variant observations); all agree with emitted totals.

All nine candidate rows report supported, identical repeated input, idempotence, passes2–10 equal first and previous, exact JSON/canonical-single-source roundtrips, no associated errors. Conservation remains true except the intentional authored-detour route reset (authored_routes_exact=false). Exact old/new Projects additionally confirm J changed none of these model records. Existing Command::Layout history/Undo/Redo checks pass in all nine rows; the layered candidate remains a pure Project transformation with no candidate-command history evidence. No native GUI evidence.

Complete changed quality-vector rows

Fixture / variant Raw sharing old→J Nonterminal sharing old→J Other changed fields
diamond / before 136→36 100→0 none
diamond / layered candidate 82→36 46→0 none
crossed_bipartite / before 730→872 658→800 bends5→4; length2076→2064
crossed_bipartite / layered candidate 344→187 272→115 drawing area165360→175960
two_containers_reversed_children / before 200→54 200→54 none
two_containers_reversed_children / baseline 148→18 148→18 none
two_containers_reversed_children / reset control 148→18 148→18 none

These are all changes in the comparison's pre-existing12-field quality vector; the remaining30 rows are unchanged. All baseline/reset rows outside the two-container case are unchanged. Seven of nine layered candidate vectors remain unchanged. Raw strict proper crossings remain zero throughout these comparisons; no demonstrated proper-crossing reduction follows.

The crossed-bipartite BEFORE regression is substantive, not a metric artifact: independent interval sums confirm142 additional shared units. Fewer bends and12 shorter length do not erase that readability tradeoff. Layered bipartite improves157 shared units but retains115 nonterminal units and grows routed drawing area10600 (~6.41%). Viewed its actual offline PNG: distinct vertical channels remain joined to shared horizontal routes. This is not an unambiguous-trace acceptance result. Diamond's remaining36 units are the separately classified common terminal stubs.

The new point-contact metric has no v1 field to compare directly: do not interpret its mere introduction as newly created contacts. Current layered diamond records2 contacts and bipartite9; the independent contact worker's retrospective audit is pending at this review. Counts classify contacts and do not alone establish readability. Approximate core label bounds, missing renderer/port-label measurements, finite fixture families, axis-only grid state, sequential edge ordering and no global hard-pin optimization remain limits.

Binding and recommendation

  • Old raw output SHA256 21786ae5cb668f60e9252dc884668ee5e98289443d0b3723a9ea69bf21d47fd1.
  • J raw output SHA256 f9ac7c1320b1cf026259bfcaf13a39e968ae317463712d8dc793375d9a4a541f.
  • Run03 result.json SHA256 57a1f866b2cb67880decd26becf3ac2e7715e38bbd26d3089c47dd62294afa4f.
  • Comparison JSON SHA256 3d5435686c2d23e97f08340693015ef66d1127726c9b5b5212678f43b3ad6b76.
  • Geometry manifest SHA256 0102449f730651a92233c4ae959e95e0a58036fe2b1c309224558c496241c741; all37 image byte lengths/SHA256 verified. These are offline geometry schematics, not native captures.

Recommendation: retain J as a successfully isolated scoring correction candidate, with explicit non-monotonic quality results. Before further penalty tuning, use the independently reconstructed contacts and the crossed-bipartite BEFORE regression as falsifiers for any stronger penalty/lane experiment. Keep exact Projects/nodes/ports/endpoints fixed and retain the entire vector, including labels and area. Do not advance directly to broad production quality acceptance based on the layered diamond improvement.