Files
settled-reach/docs/workshops/body-map-viewer/clarifications.md
T
jpmschweitzerandClaude Fable 5 77531a0eab docs(meta): body-map-viewer workshop brief signed off — T-1176 prep session
Three-way prep session (Jeroen + lead + Tyre) for the map-handler revision:
Jeroen's design outline captured verbatim, two clarification rounds, Tyre's
governance-delta/implications pass, brief co-written and ratified (zero
misrepresentations, zero blocking gaps), signed off by Jeroen with three edit
rounds (vocabulary repair tile->gridunit, client cache-store question with
SQLite fact base, explicit DQR/ticket deprecation sweep as gated deliverable).

Workshop: 5 seats (Dudley/Araminta/Stig/Tyre + Troblum r2), 2 rounds + lead
interview extendable at Jeroen's call, round 1 gated on measurements
T-1177/T-1178/T-1154/T-1179 (T-1180 non-gating). T-1176 in_progress with gate
blocker edges; T-1154 repurposed as measurement (3) and set ready.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-23 18:29:21 +02:00

4.3 KiB
Raw Blame History

title, description, type, status, workshop, created
title description type status workshop created
Body Map Viewer — Clarification Rounds Q&A rounds on Jeroen's outline (T-1176 prep session): settled premises vs deferred workshop deliverables workshop active body-map-viewer 2026-07-25

Clarification Rounds (prep session)

Two AskUserQuestion rounds on jeroen-outline.md, questions merged from the lead and Tyre. Answers verbatim where they carry nuance.

Settled by round A

  1. Zoom model — fully stepped. "fully stepped zoom, but still cursor centers and the edge scrolling also works. Just, we click through the zoom levels on scroll. We could investigate a client side morph." Scroll wheel steps through discrete zoom levels; cursor-anchored centering and edge-scroll pan are retained; a client-side morph/tween between levels is an investigation item. Supersedes the continuous-multiplier zoom of the T-1143 ruling (entry-seam ruling 3) — to be recorded as a deliberate revision when the workshop's decisions are filed.
  2. Vocabulary — "tile" repaired, "gridunit" coined. Tile means the ground-level 1×1 m unit (D-243) — Jeroen: "I misused the term several times. Tile should mean the ground level 1x1m. I suggest we talk about gridunit (at zoom level) for the wrong uses." Legitimate tile uses in the outline: the "~10px per tile" bottom-out (deepest step shows the 1 m tile at ~10 screen px on the smaller axis) and "the amount of steps … from largest to visible tile". Everything else (the n×n grid, per-pixel records) reads as gridunits at a zoom level.
  3. Data resolution is a tunable, not a constant. "I would like pixel resolution on the maps, but that may be too much, so maybe we do 5x5 pixels as a display unit … Crisper is better, but the computer must not catch fire." Ideal = 1 gridunit per screen pixel; acceptable fallback ≈ 1 gridunit per 5×5 px display unit (a 4K-class canvas drops from ~8.3M to ~330K gridunits). The knob is decided by measurement, not taste.
  4. Hydrology — deterministic equilibrium. Lake fill, overflow re-routing, gorge carving are a single-pass settled end-state computed from heightmap + moisture/climate as a pure function of seed ("over time" = geological backstory). Extends today's D8 drainage; no stateful simulation.

Confirmed inline

  • Step boundaries = compute-chunk boundaries. Tyre's reading that zoom-step boundaries and deterministic-generation load-partitioning boundaries are intended to be the same boundaries stands unchallenged.
  • Server side is in play (premise from the outline itself): content determination relocates to the server; the server sends what is at a given world coordinate at that zoom level. Dudley is core roster.
  • Performance is a first-class driver (lazy/late compute, TTL cache, "snappy after first calc").

Deferred to the workshop (round B — all four explicitly "workshop deliverable")

  1. Named-feature encoding (rivers/settlements/roads/POIs: dense rasters + sparse feature list vs inline identity vs ids-with-lookup). Jeroen's constraint: "best fidelity vs wire contract possible … The information the client needs needs to be there."
  2. Data-canvas sizing (canonical fixed size for all clients vs viewport-sized capped): "I see value in both."
  3. Cache-tier architecture (server TTL / client layer cache / disk-persisted global tier / predictive precache — which exist, and what "always keep the global level" means concretely).
  4. Map time axis (climatology vs current sim state for frozen/flooded). Jeroen's hint, on record as direction not ruling: "maybe we put shorter ttl on the climate sim state components?"
  5. Step count largest→visible-tile (deferred in the outline itself), coupled to compute-chunk partitioning.

Flags carried forward (not questions)

  • Cliff/multi-height data model gap (Tyre): "two heights in the same tile and cliff forming" exceeds the one-height-per-cell model (elev_q u8); the per- gridunit payload needs a sub-unit vertical-structure answer, and a ruling on whether cliffs are Phase-4 Atlas content or Phase-5 geometry.
  • Phase-5 reuse of the map drawing component (same code path as the future in-world viewport or Atlas-only) — scoping decision for the workshop.