Skip to content

imagemap parity dashboard

Differential survey of @knowvah/dot-engine render(g, 'cmapx') / render(g, 'imap') vs the native dot -Tcmapx / dot -Timap oracle over the dot-track SVG-conformant corpus set, sorted by input size. BOTH formats are rendered and compared for every id; the overall verdict is the worse of the two (see test/golden/compare-map.ts: shape/href/title/alt/target compared EXACTLY, coords compared exact-after-round — both sides are already %.0f/Math.round-integer text, see the comparator header). Regenerate: npx tsx test/corpus/map-walk.ts --survey && npx tsx test/corpus/map-dashboard.ts.

Summary

  • Oracle: dot 15.1.0 · corpus: ~/git/graphviz/tests
  • Walked (conformant SVG set): 905
  • map-conformant (overall, worst-of-both-formats): 905 (100.0%)
  • cmapx-conformant: 905 (100.0%) · imap-conformant: 905 (100.0%)
  • diverged (tracked, will-fix, either format): 0 · accepted (documented, won't-fix): 0
  • port-error: 0 · timeout: 0 · oracle-error: 0 (excluded from scoring)
  • href-bearing ids in the surveyed set: 36 — the substantive coverage (ids whose ORACLE output actually emits ≥1 real href, not an empty or tooltip-only map); see the dedicated table below.

href-bearing ids (36) — the substantive coverage

Every id in the surveyed (conformant-SVG) set whose oracle cmapx/imap output contains a real href — i.e. actually exercises anchor emission, not just an empty/tooltip-only map. Verdict spelled out per format so a reader does not have to cross-reference map-parity.json.

idpathcmapximapoverall
1425_11425_1.dotconformantconformantconformant
14471447.dotconformantconformantconformant
1447_11447_1.dotconformantconformantconformant
18791879.dotconformantconformantconformant
22582258.dotconformantconformantconformant
22952295.dotconformantconformantconformant
2619_12619_1.dotconformantconformantconformant
2619_22619_2.dotconformantconformantconformant
graphs-b102graphs/b102.gvconformantconformantconformant
graphs-b103graphs/b103.gvconformantconformantconformant
graphs-b106graphs/b106.gvconformantconformantconformant
graphs-b143graphs/b143.gvconformantconformantconformant
graphs-b155graphs/b155.gvconformantconformantconformant
graphs-b29graphs/b29.gvconformantconformantconformant
graphs-b85graphs/b85.gvconformantconformantconformant
graphs-html2graphs/html2.gvconformantconformantconformant
graphs-rootgraphs/root.gvconformantconformantconformant
graphs-urlgraphs/url.gvconformantconformantconformant
graphs-xxgraphs/xx.gvconformantconformantconformant
linux.i386-b102linux.i386/b102.gvconformantconformantconformant
linux.i386-b106linux.i386/b106.gvconformantconformantconformant
linux.i386-b29linux.i386/b29.gvconformantconformantconformant
linux.x86-html2_dotlinux.x86/html2_dot.gvconformantconformantconformant
linux.x86-root_circolinux.x86/root_circo.gvconformantconformantconformant
linux.x86-root_twopilinux.x86/root_twopi.gvconformantconformantconformant
nshare-html2_dotnshare/html2_dot.gvconformantconformantconformant
nshare-root_circonshare/root_circo.gvconformantconformantconformant
nshare-root_twopinshare/root_twopi.gvconformantconformantconformant
share-b102share/b102.gvconformantconformantconformant
share-b106share/b106.gvconformantconformantconformant
share-b29share/b29.gvconformantconformantconformant
tree-tclpkg-tcldot-examples-data-demo../tclpkg/tcldot/examples/data/demo.gvconformantconformantconformant
tree-tclpkg-tcldot-examples-data-poly../tclpkg/tcldot/examples/data/poly.gvconformantconformantconformant
windows-b102windows/b102.gvconformantconformantconformant
windows-b106windows/b106.gvconformantconformantconformant
windows-b29windows/b29.gvconformantconformantconformant

map-conformant (905)

Port output is conformant with the oracle in BOTH cmapx and imap: every area/line matches exactly (shape/href/title/alt/target) with coords equal after rounding.

Conformant ids (905) are omitted for brevity — the full roster is in map-parity.json.

Tracked diverged (0 format-rows) — worst-first

idformatsizemaxΔ#diffsfirstDiff

Diverged buckets — by (format · shape)

(none)

Accepted divergences (0 format-rows) — documented, not chased

Irreducible C quirks recorded in test/corpus/accepted-divergences-map.json. Each is referenced in the mission decision journal with its mechanism.

idopClassdeltarationale
graphs-xxarea[271].coords[2]1A8 rounding-boundary dust: 1 of 272 hotspot coords sits within the sub-0.01pt model tolerance of the integer rounding boundary (port 2654.5x vs native 2654.4x -> 2655 vs 2654); osage xdot track passes at 0.01. Irreducible print amplification. Journal 2026-07-24.
graphs-urlarea[8].coords[0]24layout drift inherited from the neato xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
share-b102area[47].coords[0]6layout drift inherited from the neato xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
linux.i386-b102area[47].coords[0]6layout drift inherited from the neato xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
linux.x86-root_circoarea[0].coords[0]3layout drift inherited from the neato xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
nshare-root_twopiarea[0].coords[0]2layout drift inherited from the neato xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
linux.x86-root_twopiarea[0].coords[0]3layout drift inherited from the neato xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
graphs-b85area[0].coords[0]8layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
1447area[0].coords[0]381layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
graphs-b106area[0].coords[0]930layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
graphs-b29area[0].coords[0]2475layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
graphs-b143area[0].coords[0]2390layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
1447_1area[0].coords[0]1023layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
graphs-b102area[0].coords[0]1527layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
linux.i386-b102area[0].coords[0]676layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
graphs-xxarea[0].coords[0]1935layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
share-b102area[0].coords[0]579layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
windows-b102area[0].coords[0]554layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
1879area[0].coords[0]12675A1 drift, chaos-proven 2026-07-24: fdp's spring layout on this graph is chaotically input-sensitive — port self-perturbation experiments (2620: node width +0.001in -> median 1120pt/max 3390pt movement of the port's OWN layout; badvoro: ONE edge len +0.0001 -> median 322pt/max 1322pt across all 1235 nodes) move the layout by the same magnitude as the port-vs-native divergence. Sub-ULP V8-vs-libm FP dust separates basins; no port stage is implicated. Same class as the fdp engine track's documented 149-id drift tail.
nshare-root_circoarea[0].coords[0]48414506layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
linux.x86-root_circoarea[0].coords[0]47792182layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
linux.x86-root_twopiarea[0].coords[0]406layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24. T6 2026-07-24: classified — port completes in 63-109s vs oracle 38-47s (1.7-2.3x, NOT the >=10x perf-quarantine class); earlier diverged/timeout flips were 8-way sweep-load artifacts (180s budget). Divergence itself is the fdp chaos class (see 1879/badvoro perturbation proof). Re-verdict big fdp ids with MAP_CONCURRENCY=1 if a load flip recurs; registry row keeps flips harmless.
nshare-root_twopiarea[0].coords[0]423layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24. T6 2026-07-24: classified — port completes in 63-109s vs oracle 38-47s (1.7-2.3x, NOT the >=10x perf-quarantine class); earlier diverged/timeout flips were 8-way sweep-load artifacts (180s budget). Divergence itself is the fdp chaos class (see 1879/badvoro perturbation proof). Re-verdict big fdp ids with MAP_CONCURRENCY=1 if a load flip recurs; registry row keeps flips harmless.
graphs-b103area[0].coords[0]3546layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24. T6 2026-07-24: classified — port completes in 63-109s vs oracle 38-47s (1.7-2.3x, NOT the >=10x perf-quarantine class); earlier diverged/timeout flips were 8-way sweep-load artifacts (180s budget). Divergence itself is the fdp chaos class (see 1879/badvoro perturbation proof). Re-verdict big fdp ids with MAP_CONCURRENCY=1 if a load flip recurs; registry row keeps flips harmless.
graphs-rootarea[0].coords[0]612layout drift inherited from the fdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24. T6 2026-07-24: classified — port completes in 63-109s vs oracle 38-47s (1.7-2.3x, NOT the >=10x perf-quarantine class); earlier diverged/timeout flips were 8-way sweep-load artifacts (180s budget). Divergence itself is the fdp chaos class (see 1879/badvoro perturbation proof). Re-verdict big fdp ids with MAP_CONCURRENCY=1 if a load flip recurs; registry row keeps flips harmless.
nshare-html2_dotarea[0].coords[0]8layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
linux.x86-html2_dotarea[0].coords[0]8layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
graphs-urlarea[0].coords[1]4layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
2619_1area[1].coords[0]2A1 sfdp spring drift (diagnosed 2026-07-24): 6 nodes, positional drift 0.7-1.3pt — the documented chaotic-engine regime, mildly above the 0.5 bar on a small graph. Same class as the sfdp engine track's 232-id tail.
1447area[0].coords[1]4layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
graphs-b106area[0].coords[0]1057layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
graphs-b143area[0].coords[3]9layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
1447_1area[0].coords[1]86layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
share-b106area[0].coords[0]1057layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
linux.i386-b106area[0].coords[0]1057layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
windows-b106area[0].coords[0]1057layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
graphs-b29area[0].coords[0]271layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
linux.i386-b29area[0].coords[0]281layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
graphs-b102area[0].coords[0]520layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
share-b29area[0].coords[0]282layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
windows-b29area[0].coords[0]272layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
graphs-xxarea[0].coords[0]668layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
linux.i386-b102area[0].coords[0]521layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
share-b102area[0].coords[0]522layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
windows-b102area[0].coords[0]525layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
1879area[0].coords[0]10044A1 sfdp chaotic drift (2026-07-24): whole-layout basin divergence on a huge graph (maxDelta 7.6kpt), the documented sfdp spring chaos regime — same class as fdp 1879 (chaos proven by perturbation A/B on the fdp family; sfdp is the measured chaotic engine).
graphs-rootarea[0].coords[1]2layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
linux.x86-root_twopiarea[0].coords[1]4layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
nshare-root_twopiarea[0].coords[0]5layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
nshare-root_circoarea[0].coords[0]5layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
linux.x86-root_circoarea[0].coords[1]4layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.
graphs-b103area[0].coords[0]92layout drift inherited from the sfdp xdot engine track: id diverged there with the documented accepted mechanism; imagemap re-emits the same layout as rounded hotspot coords. Journal 2026-07-24.

port-error (0)

idpathmessage

timeout (0)

idpathmessage

oracle-error (0) — excluded from scoring

idpathmessage