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
+13 -1
View File
@@ -121,8 +121,20 @@ fn main() {
// HEIGHTMAP_CELLS_PER_DISTRICT working pixels), never true DISTRICT_M.
let anchor_cell = bws.placements.iter().max_by_key(|p| p.score).map(|p| {
let cell = scale::heightmap_pixel_to_survey_cell(p.position);
// World metres too, not just pixel/cell: this is the coordinate the
// Atlas navigates in (StepCanvasViewer.jump_to takes world_center), so
// printing it is what lets a capture descend the rung ladder ON a
// settlement instead of at world-metre zero.
let (sx, sy) = district_profile::survey_cell_centre_world_m(
cell,
scale::HEIGHTMAP_CELLS_PER_DISTRICT,
bws.heightmap_width as usize,
bws.heightmap_height as usize,
body_params.body_radius_km,
);
println!(
"\nprincipal settlement: city {} @ pixel {:?} → survey cell {:?} (placement score {})",
"\nprincipal settlement: city {} @ pixel {:?} → survey cell {:?} \
→ world ({sx:.0}, {sy:.0}) m (placement score {})",
p.city_id, p.position, cell, p.score
);
// 150 chunks (9 600 m) ÷ one survey cell's ACTUAL metric width at this