fix(client): move golden-provenance key out of scenarios{} — crashed visual_capture --list (PR #180 review, Hoshe)

The _comment_atlas_goldens key inside scenarios{} hit _print_list's .get() on a bare String (reproduced: Invalid call on String at visual_capture.gd:699). Moved to a top-level key alongside resolution/golden_dir; _print_list now also skips _-prefixed and non-Dictionary entries so future comment keys cannot crash it. Verified: --list runs clean, JSON valid.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-16 21:40:03 +02:00
co-authored by Claude Fable 5
parent 3819e65759
commit fcf913a413
2 changed files with 6 additions and 1 deletions
+5
View File
@@ -696,6 +696,11 @@ func _print_list() -> void:
var flows: Dictionary = _config.get("flows", {})
print("scenarios:")
for name in scenarios:
# Skip "_"-prefixed comment keys and any non-Dictionary value — a bare
# string here crashed --list once (PR #180: a provenance _comment key
# placed inside scenarios{}; now top-level, but stay robust).
if String(name).begins_with("_") or not (scenarios[name] is Dictionary):
continue
var desc: String = scenarios[name].get("description", "")
print(" %s%s" % [name, desc])
# T-1120: atlas_matrix isn't a tests/visual.json scenarios{} entry (it reads
+1 -1
View File
@@ -4,6 +4,7 @@
"tolerance": 5,
"max_diff_pct": 0.5,
"golden_dir": "client/tests/golden/visual",
"_comment_atlas_goldens": "T-1120 provenance (PR #180 review, Tyre): the 12 atlas_* golden scenarios were captured AND verified (exact pixel match) on danoontje's Mesa/AMD stack. T-1121 documents that goldens do NOT port across boxes at the current tolerance (the 19 pre-existing goldens fail 12-14% on this same box) — an atlas_* golden failing on a DIFFERENT machine is expected baseline drift, not a regression, until T-1121 resolves the canonical-capture-box question.",
"scenarios": {
"fog_3state": {
"ticks": 5,
@@ -90,7 +91,6 @@
"env": { "SR_AUTOPILOT": "stance_up,south:6.0" },
"description": "Live 3D sandbox: autopilot walks south into a wall — cutaway stub golden (T-1088)"
},
"_comment_atlas_goldens": "T-1120 provenance (PR #180 review, Tyre): the 12 atlas_* goldens below were captured AND verified (exact pixel match) on danoontje's Mesa/AMD stack. T-1121 documents that goldens do NOT port across boxes at the current tolerance (the 19 pre-existing goldens fail 12-14% on this same box) — an atlas_* golden failing on a DIFFERENT machine is expected baseline drift, not a regression, until T-1121 resolves the canonical-capture-box question.",
"atlas_GJ380c_zfit_C": {
"ticks": 240,
"live": true,