From dfbd635d4547c3c44c4d05c0a72ad41e1c1b0d0e Mon Sep 17 00:00:00 2001 From: Cameron Date: Sat, 11 Jul 2026 22:05:57 -0700 Subject: [PATCH] Reconcile the DIGITAL startup contract. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Update current player and interface documentation to match the implemented DIGITAL-home view boundary while preserving REAL as the default-quality material dialect. Defense: wiki/interface/views.md criterion 1 makes DIGITAL the opening representation in both frontends. These documentation and spec corrections remove superseded material-first staging claims without changing runtime or save behavior. 👾 Generated with [Letta Code](https://letta.com) Co-Authored-By: Letta Code --- README.md | 2 +- wiki/engineering/current-build.md | 2 +- wiki/interface/bevy-digital-real-canvas.md | 33 ++++++++--------- wiki/interface/bevy.md | 22 ++++++------ wiki/interface/clinical-frame.md | 6 ++-- wiki/interface/material-render.md | 19 +++++----- ...2-digital-default-corpus-reconciliation.md | 36 +++++++++++++++++++ wiki/process/tick-ledger.md | 1 + 8 files changed, 80 insertions(+), 41 deletions(-) create mode 100644 wiki/log/2026-07-12-digital-default-corpus-reconciliation.md diff --git a/README.md b/README.md index 6ea027b3..e7f0dab3 100644 --- a/README.md +++ b/README.md @@ -147,7 +147,7 @@ retired words are inventoried in | `[` / `]` or mouse/trackpad wheel over the canvas | Zoom in / out (Bevy; material zoom also retunes pitch/framing) | | `Tab` | Expand / compact Bevy rail secondary detail (frontend-only) | | Mouse/trackpad wheel over right pane / `PageUp` / `PageDown` / `Home` / `End` | Scroll Bevy sidebar | -| `F3` | Flip Bevy render: material (HD-2D, default) / flat sensorium | +| `F3` | Flip Bevy render: DIGITAL flat sensorium (default) / REAL material (HD-2D) | | `F4` | Dev work light: flood the material render flat and neutral (inspection only) | | `Ctrl+S` / `Ctrl+L` | Save / load | diff --git a/wiki/engineering/current-build.md b/wiki/engineering/current-build.md index bd12fa91..04b34f65 100644 --- a/wiki/engineering/current-build.md +++ b/wiki/engineering/current-build.md @@ -34,7 +34,7 @@ fiction. Spec status lives in | Context menu (`available_actions`) | Live | | Save/load (serde JSON, versioned) | Live — v29 adds the run origin (chargen.md; pre-v29 saves default to Pilot); v28 replaces the global persona with named persona instances (personas.md); v27 adds persisted carried asset-task packets; v14-v25 Operations dockets migrate into exact-remaining-work Thought reservoirs, v24 restores the pooled review policy, and v25 restores durable person roles/account binding | | Terminal frontend (crossterm) + agent mode | First-class | -| Bevy frontend (material render default; flat sensorium) | Live — consumes sim-authored machine-work motion | +| Bevy frontend (DIGITAL flat sensorium default; REAL material dialect) | Live — consumes sim-authored machine-work motion | The big loop in play today is the concealment loop this design corpus names: delegate machines → clear visible work → watch through instruments → work diff --git a/wiki/interface/bevy-digital-real-canvas.md b/wiki/interface/bevy-digital-real-canvas.md index 350a691e..8886e510 100644 --- a/wiki/interface/bevy-digital-real-canvas.md +++ b/wiki/interface/bevy-digital-real-canvas.md @@ -5,10 +5,12 @@ Type: spec Status: IN PROGRESS Status note: Cameron approved the 2026-07-07 HD-2D prototype screenshots and chose "land the toggle + write the art spec." That art spec, - material-render.md, was implemented 2026-07-08: the material render is now - the DEFAULT Bevy physical view (F3 flips to the flat sensorium), with + material-render.md, was implemented 2026-07-08: the material render became + Bevy's default-quality REAL physical dialect, with occlusion solved by fog-gated south-face cutaways, dedicated top caps, and the b1 palette sweep. Same anchors, same fog, same UI, no sim/save state. + Views.md criterion 1 superseded its opening-default staging on 2026-07-11: + fresh Bevy and terminal frontends now open DIGITAL and F3 flips to REAL. Remaining before IMPLEMENTED here: digital-dialect depth polish beyond the flat sensorium and the final real/digital parity pass. A 2026-07-12 DIGITAL reach slice now embeds deduplicated known links on exact device anchors and @@ -17,13 +19,8 @@ Status note: Cameron approved the 2026-07-07 HD-2D prototype screenshots and was added. A 2026-07-13 verification slice made the shared Bevy canvas build and capture on Linux without unused ALSA/libudev backends, and made the evidence helper understand DIGITAL shots rather than demanding a - material-only fog audit from them. Staging note - (2026-07-10): opening in the material dark frame inverts views.md's - digital-is-home default on purpose, as interim B1 staging only — the - eventual requirement stays that both frontends open digital and share the - full same-frame digital/real contract (views.md criterion 1); the F3 flip - is dev staging until that parity pass lands. 2026-07-11 whole-frame slice: - the material view now uses a shared procedural Foundation institution kit + material-only fog audit from them. A 2026-07-11 whole-frame slice made + the material view use a shared procedural Foundation institution kit for cameras, UPS cabinets, breaker panels, patch panels, HVAC, and floor fixtures; people are volumetric articulated silhouettes with deterministic gait; and material Thought routes use the shared effects renderer while @@ -246,10 +243,11 @@ Cameron's screenshot verdict resolved the taste calls into this staging contract: 1. **Surface:** the material render shipped first as an F3 preview/toggle; - material-render.md (IMPLEMENTED 2026-07-08) then made it the default - physical view once its debts were paid. It remains a Bevy representation - dialect only: frontend resource, never sim state, save state, pathing, - collision, or knowledge. + material-render.md (IMPLEMENTED 2026-07-08) then brought it to + default-quality physical treatment. It served as the opening default until + views.md criterion 1 made DIGITAL home on 2026-07-11. It remains a Bevy + representation dialect only: frontend resource, never sim state, save + state, pathing, collision, or knowledge. 2. **Camera:** fixed oblique material camera, readability first. The landed prototype uses a pitched perspective Camera3d (medium FOV 35) because it gave the screenshots enough depth; a future pass may move closer to @@ -281,11 +279,10 @@ contract: 7. **Fog:** unknown spawns no geometry; blueprint/remembered render as unlit or schematic model states; only seen/camera truth participates in rich material lighting. Audio remains a device-bound event overlay, not model geometry. -8. **Digital depth:** the flat sensorium remains the digital dialect, one F3 - from the default material view. Digital overlays (reach traces, nodes, - cursor reticle) must remain anchored and legible in material mode; later - digital depth can ghost the same anchors but must not become a separate - topology board. +8. **Digital depth:** the flat sensorium is the default/home DIGITAL dialect; + one F3 selects the REAL material view. Digital overlays (reach traces, + nodes, cursor reticle) remain anchored to the shared canvas; later digital + depth can ghost those anchors but must not become a separate topology board. 9. **Occlusion rule (debt paid 2026-07-08):** structural blocks whose known north neighbor is open interior drop to a low cutaway parapet; the rule is fog-gated so an unknown neighbor keeps full height and the cutaway never diff --git a/wiki/interface/bevy.md b/wiki/interface/bevy.md index efbff42a..fd86aa6a 100644 --- a/wiki/interface/bevy.md +++ b/wiki/interface/bevy.md @@ -49,7 +49,7 @@ placeholder color from B1 runtime rendering, gives unknown space deliberate sensor-dark treatment, dims the physical world into a learned-world model, overlays earned device nodes and reach/topology traces, and turns the right rail into graphical command cards with pinned status/nudge/footer. As of -2026-07-08 the **material render is the default physical view** +2026-07-08 the **material render is the default-quality physical dialect** ([material-render.md](material-render.md), IMPLEMENTED): an HD-2D treatment — tilted Camera3d, floor planes, extruded wall boxes with dedicated top caps, fog-gated south-face cutaways, billboarded machines/people, and the @@ -59,10 +59,12 @@ dark rig — over the same sim facts, fog, anchors, UI, and panels. As of institutional fluorescent is gone and ambient is near-nothing, so the render is a physically dark room lit only by the machines' own light and the soft amber pools they cast; blueprint/remembered mass no longer draws -here at all (light is the only revealer); the default camera opens as a -close-up on the core; and a dev work light (`F4`) floods the scene flat -and neutral for inspection. F3 flips to the flat sensorium render and back; -the flip is frontend-only and never saved. As of the same day the world +here at all (light is the only revealer); its camera opens as a close-up on +the core; and a dev work light (`F4`) floods the scene flat and neutral for +inspection. Since views.md criterion 1 landed on 2026-07-11, a fresh Bevy +frontend opens in the DIGITAL flat sensorium and F3 flips to the REAL material +dialect and back. The flip is frontend-only and never saved. As of the same +day the world is **flat materials** ([flat-materials.md](flat-materials.md), IMPLEMENTED): every world surface in both modes is solid palette color under light from one named table; no image textures load; emissive is @@ -135,8 +137,8 @@ so no heard-set map walk or room-scale geometry exists at display rate. spine remain visible in the workspace header. Mouse and keyboard share one selection state; `h`/`l`, `j`/`k`, Enter, and Esc mirror the terminal. Opening or browsing it changes no sim state and does not pause time. -- **Material render (default)** — the physical canvas opens in the HD-2D - material render as the dark frame ([material-dark-frame.md](material-dark-frame.md)): +- **REAL material render** — selecting REAL shows the physical canvas in the + HD-2D material render as the dark frame ([material-dark-frame.md](material-dark-frame.md)): a close-up on the core in a physically dark room. Only camera-seen surfaces (flat-color floor planes, extruded wall/rock/door boxes with dedicated darkened top caps, fog-gated south-face cutaways at the 40 @@ -156,8 +158,8 @@ so no heard-set map walk or room-scale geometry exists at display rate. FOV-compensated monotonic distance — still attention-anchored, no free orbit. Wheel input over the right rail remains sidebar scrolling. `F4` toggles the dev work light (a flat neutral flood, not a player surface). - F3 flips to the flat sensorium render; the mode is not saved and changes - no sim state. + F3 flips back to the default DIGITAL flat sensorium; the mode is not saved + and changes no sim state. - **Overlays** — title card and the RUN ENDED card (reason, day / tick). Text remains ASCII-only because Bevy's embedded default font carries a limited @@ -178,7 +180,7 @@ controls table), plus zoom, sidebar scrolling, and the render flip: `SPACE`/`p`; speed `+`/`-`; zoom `[` / `]` or wheel over the canvas; `Tab` expands/compacts secondary rail detail (frontend-only; ignored while a context menu owns input); scroll the right sidebar with wheel input over - that pane, `PageUp`/`PageDown`, or `Home`/`End`; F3 flips material/sensorium; + that pane, `PageUp`/`PageDown`, or `Home`/`End`; F3 flips DIGITAL/REAL; F4 toggles the dev work light (material mode only, a flat neutral flood for inspection, not a player surface); uppercase `I` opens Operations; quit `q`; save/load `Ctrl+S` / `Ctrl+L`. diff --git a/wiki/interface/clinical-frame.md b/wiki/interface/clinical-frame.md index cef9c014..30fdc14b 100644 --- a/wiki/interface/clinical-frame.md +++ b/wiki/interface/clinical-frame.md @@ -287,9 +287,9 @@ and action surfaces. remain out of scope. Authored procedural service infrastructure on the existing data-hall plate is now explicitly in scope; it must use flat materials and fog-gated presentation geometry rather than imported room art. -- Digital-home default versus the currently implemented material default is a - separate existing corpus/runtime contradiction. This visual pass must work - in both representations and does not resolve that behavior by implication. +- DIGITAL home is settled and implemented by views.md criterion 1. Clinical + composition must remain coherent in both the default DIGITAL dialect and + the F3-selected REAL material dialect. ## Acceptance criteria diff --git a/wiki/interface/material-render.md b/wiki/interface/material-render.md index 2285c6c7..ab658711 100644 --- a/wiki/interface/material-render.md +++ b/wiki/interface/material-render.md @@ -3,8 +3,10 @@ ``` Type: spec Status: IMPLEMENTED -Status note: implemented 2026-07-08 — the material render is the Bevy - default physical view; F3 flips to the flat sensorium. Debts paid: +Status note: implemented 2026-07-08 — the material render reached + default-quality physical-view treatment and became Bevy's REAL dialect. + It was the opening default until views.md criterion 1 landed on 2026-07-11; + fresh frontends now open DIGITAL and F3 flips to REAL. Debts paid: fog-gated south-face cutaway (chosen over a steeper pitch by screenshot comparison), dedicated darkened top caps on all extruded boxes, palette sweep of the b1 set (door/UPS/HVAC/switch hue-remapped @@ -19,7 +21,7 @@ Status note: implemented 2026-07-08 — the material render is the Bevy 2026-07-08 flat-materials restyle (flat-materials.md): the texture language here (tile textures on sides, concrete caps) is superseded by solid palette color; the structural criteria (cutaway, caps, - framing, fog contract, pooling, default view) were re-verified after + framing, fog contract, pooling, physical-view quality) were re-verified after the restyle — fog_audit_3d green, zoom-bound screenshots retaken. 2026-07-09 dark-frame amendment (material-dark-frame.md): in the material render, blueprint/remembered mass is absent (not unlit) and @@ -52,9 +54,9 @@ floor), the landed F3 toggle ## Behavior The material render (Camera3d, extruded walls, billboarded sprites, -lit) becomes the default physical-view treatment in Bevy once its debts -are paid; the flat sensorium render remains the digital-layer treatment -and the terminal remains first-class. The prototype's fog contract is +lit) is Bevy's default-quality REAL physical-view treatment; the flat +sensorium remains the DIGITAL home/default and the terminal remains +first-class. The prototype's fog contract is law: unknown space is absent geometry, blueprint/remembered surfaces render unlit, only camera-seen surfaces participate in lighting. (Amended 2026-07-09: in the *material* render blueprint/remembered mass @@ -101,5 +103,6 @@ treatment.) gone (no per-tile unique materials in the frame loop). Full map restyle is not driven by the wall-clock timer alone — only by sim steps or an explicit dirty flag (2026-07-10). -7. Material render becomes the default physical view (F3 still flips - to sensorium); README and bevy.md updated; terminal unaffected. +7. Material render reaches default-quality physical-view treatment as the REAL + dialect; F3 selects it from DIGITAL home; README and bevy.md stay current; + terminal unaffected. diff --git a/wiki/log/2026-07-12-digital-default-corpus-reconciliation.md b/wiki/log/2026-07-12-digital-default-corpus-reconciliation.md new file mode 100644 index 00000000..8154608a --- /dev/null +++ b/wiki/log/2026-07-12-digital-default-corpus-reconciliation.md @@ -0,0 +1,36 @@ +# Digital-home corpus reconciliation + +``` +Type: log +``` + +## Intent + +The live `RenderMode::default`, the implemented views spec, and both fresh +frontends open in DIGITAL. Several current player, knowledge, and interface +pages still described the superseded 2026-07-08 material-first staging as the +opening default. The active corpus therefore contradicted both its owning view +contract and runtime. + +## Correction + +- `README.md` and `wiki/engineering/current-build.md` now identify DIGITAL as + home/default and REAL material as the F3-selected physical dialect. +- `wiki/interface/bevy.md` describes the same current transition while + preserving the material render's dark-frame and semantic-camera facts. +- `wiki/interface/material-render.md` keeps its implemented quality contract + without claiming that REAL still owns startup; its historical default window + is named explicitly. +- `wiki/interface/bevy-digital-real-canvas.md` retires the obsolete interim + staging note, and `wiki/interface/clinical-frame.md` no longer lists the + resolved default as an open contradiction. + +No runtime or save behavior changed. This repairs current documentation toward +the already-binding and tested `wiki/interface/views.md` criterion 1. + +## Verification + +- searched current player, interface, and engineering docs for material-first + startup claims; +- `./tools/check.sh --docs`; +- `tools/ledger_index.sh` and a clean generated-ledger check. diff --git a/wiki/process/tick-ledger.md b/wiki/process/tick-ledger.md index 28530836..3c686f2b 100644 --- a/wiki/process/tick-ledger.md +++ b/wiki/process/tick-ledger.md @@ -20,6 +20,7 @@ Verdicts: **clean** (slice and code agree), **finding** (acted this tick), | Slice | Last audited | Verdict | Trace | |---|---|---|---| +| `wiki/interface/views.md` + representation docs | 2026-07-12 | finding | [log](../log/2026-07-12-digital-default-corpus-reconciliation.md) | | `wiki/mechanics/day-job.md` | 2026-07-12 | clean | constants match: `BAND_LO_BASE` 2.0 (retuned from 6.0), `BAND_LO_STEP` 2.0 + `BAND_RAMP_JOBS` 2 so the floor ramps 2.0→4.0→6.0 (=`BAND_WIDTH`) by the third job, `PILOT_STRIKES` 4, cadence 600 (~1.5 days at 400/day); the origin `assign_kind` lean (1/2 vs 1/4) and `meeting_the_band_needs_no_growth_at_the_start` hold | | `wiki/mechanics/core.md` | 2026-07-12 | clean | implemented criteria (2-5) match: `Core::new` overhead 20.0 (~20% [TUNE]) and sync_cadence 400, `charge_overhead` degrades when compute < overhead (`overhead_charged_before_allocation`), one host with no-fallback game-over vs fallback rollback (`loss_without_fallback_is_game_over`, `loss_with_fallback_rolls_back`); criterion 1's sim-level snapshot restore is honestly marked outstanding, deferred to the rollback work order | | `wiki/mechanics/cursor.md` | 2026-07-12 | clean | `fog_at` (`perception.rs`) implements the exact Seen>Remembered>Blueprint>Unknown precedence; blueprint is not recomputed from devices (opening stays a beam, not floor/blueprint), hearing never enters tile fog, and remembered snapshots survive save/load — pinned by `hearing_does_not_create_spatial_fog_or_inspect_facts`, `opening_is_beam_not_floor_or_blueprint`, `earned_empty_bay_inspect_is_feel_not_blueprint`, `remembered_tiles_survive_lost_sight_and_save_load` | -- 2.51.2