test(client): retire the top-down visual suite, aim the Atlas ladder at land

The visual gate had stopped measuring anything: 30 of 32 scenarios
failed, and the two that passed were the worst result of the lot.

Deleted the 15 top-down scenarios (fog, HUD, dialogue, NPC, minimap,
cursor) and their goldens. They all failed at a near-uniform ~12%, and
that uniformity across unrelated scenes is one global cause -- the
ultrawide UI stretch moved every element. They cover the renderer the
cascade freezes until Phase 5, which will need its own tests anyway, so
re-baselining would only have blessed a deprecated layer nobody is
reviewing. Jeroen's call.

The remaining problem was the goldens that PASSED. atlas_GJ338Bd_Block
and atlas_GJ445c-m1_Chunk matched at 0.0% because capture and golden
were both blank -- the same "goldens have been measuring nothing" trap
e024cfb3f caught at Global, still live at the bottom of the ladder. The
cause is that every below-Global golden descends at jump_to(ZERO), and
world-metre zero is merely the origin of the region grid, not anywhere
chosen. So _setup_atlas_golden_shot now takes an optional world_center
(default ZERO -- existing goldens are untouched), and a new
atlas_GJ820Bc_land_* set walks Region through Chunk at ONE land point,
so the rungs can be read as a descent instead of five unrelated frames.

aliveness_probe prints the placement's world metres alongside its pixel
and survey cell, since that is the coordinate the Atlas actually
navigates in.

Recorded because it will be asked again: the ladder is anchored via a
CityPlacement, but that is a match record -- a pixel, an archetype, an
orientation -- not built geography. No settlement exists anywhere yet
and none is due before T-1207, so the empty deep rungs are the expected
state. What the ladder judges is the nature layer.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-08-06 16:33:57 +02:00
co-authored by Claude Opus 5
parent 4e503c3565
commit c91096a3c9
36 changed files with 126 additions and 782 deletions
+26 -64
View File
@@ -6,70 +6,6 @@
"golden_dir": "client/tests/golden/visual",
"_comment_atlas_goldens": "T-1157 (D-255 rewrite of the T-1120 matrix, PR #180 provenance carried forward, Tyre): the atlas_* golden scenarios below key on (body, rung) per the stepped Atlas ladder, 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,
"description": "All 3 fog states — clear/explored/unexplored"
},
"fog_diagonal": {
"ticks": 10,
"description": "Diagonal LOS boundary (staircase regression target)"
},
"fog_boundary": {
"ticks": 8,
"description": "Explored/unexplored transition centered in frame"
},
"fog_zone_tint": {
"ticks": 5,
"description": "Bar zone warm amber tint in explored fog (D-046)"
},
"fog_debug": {
"ticks": 5,
"description": "Raw exploration overlay (green/blue/red)"
},
"npc_in_fog": {
"ticks": 5,
"description": "NPC sprite visible above fog overlay (D-033)"
},
"hud_default": {
"ticks": 1,
"description": "Full HUD: time, Careful stance (green), minimap, monologue"
},
"dialogue_open": {
"ticks": 3,
"description": "Dialogue box + interaction prompt + key bar positioning"
},
"dialogue_with_monologue": {
"ticks": 4,
"description": "Confrontation beat: dialogue + monologue simultaneously"
},
"minimap_stance": {
"ticks": 2,
"description": "Minimap + Sprint stance indicator overlap (top-right)"
},
"cursor_menu": {
"ticks": 3,
"description": "Cursor rendering over dialogue option"
},
"fog_live_replay": {
"ticks": 1,
"description": "Replay real server hub snapshot — full pipeline fog test",
"replay_snapshot": "tests/fixtures/gauntlet/hub_spawn.msgpack"
},
"fog_theater_replay": {
"ticks": 1,
"description": "Replay Fog Theater — large room with NPCs at varying distances",
"replay_snapshot": "tests/fixtures/gauntlet/fog_theater.msgpack"
},
"fog_boundary_replay": {
"ticks": 1,
"description": "Replay hub after movement — explored/visible tile boundary",
"replay_snapshot": "tests/fixtures/gauntlet/hub_after_movement.msgpack"
},
"fog_live_hub": {
"ticks": 10,
"live": true,
"description": "Live server: Hub spawn fog — real pipeline regression test"
},
"implant_pending": {
"ticks": 1,
"description": "ImplantPending — diegetic Layer-1 generating indicator (#960)"
@@ -136,6 +72,32 @@
"live": true,
"description": "T-1157 curated Atlas golden (D-255): Ferrath (GJ820Bc), District rung, temperature overlay"
},
"_comment_descent_ladder": "The atlas_GJ820Bc_land_* set is one body at ONE world point, once per rung, so the ladder reads as a descent. Anchored on land rather than world-metre zero. It judges the NATURE layer (relief, coast, watercourses, biome character) — nothing civilizational is generated yet and none is due before T-1207, so an absence of settlements is the expected state, not a finding.",
"atlas_GJ820Bc_land_Region": {
"ticks": 240,
"live": true,
"description": "Descent ladder (2026-08-06): Ferrath (GJ820Bc), Region rung, land-anchored, no overlay"
},
"atlas_GJ820Bc_land_District": {
"ticks": 240,
"live": true,
"description": "Descent ladder: Ferrath (GJ820Bc), District rung, land-anchored, no overlay"
},
"atlas_GJ820Bc_land_Quarter": {
"ticks": 240,
"live": true,
"description": "Descent ladder: Ferrath (GJ820Bc), Quarter rung, land-anchored, no overlay"
},
"atlas_GJ820Bc_land_Block": {
"ticks": 240,
"live": true,
"description": "Descent ladder: Ferrath (GJ820Bc), Block rung, land-anchored, no overlay"
},
"atlas_GJ820Bc_land_Chunk": {
"ticks": 240,
"live": true,
"description": "Descent ladder: Ferrath (GJ820Bc), Chunk rung (deepest), land-anchored, no overlay"
},
"atlas_GJ251c_Global": {
"ticks": 240,
"live": true,