Skip to content

Spec: views — same-frame digital and real representations

SPEC Binding system contract
Status: IMPLEMENTED
Status note: Implemented through the 2026-07-14 final cross-dialect audit.
Criterion 1 landed 2026-07-11: fresh Bevy and terminal
frontends now open in DIGITAL; labeled F3 flips to REAL and back while
frontend-boundary tests hold cursor, machine/menu selection, and a serialized
sim-state hash unchanged. The representation remains frontend-only and is
absent from saves. A 2026-07-11 Bevy readability slice establishes the
binding hierarchy for DIGITAL without claiming full dialect parity. The Bevy
half of criteria 3-4 landed 2026-07-12: known graph edges now join exact
device anchors in-place, with separate shape grammar for owned, tapped,
reachable, closed-segment frontier, and air-gap states. Terminal reach
projection and criterion 8 landed 2026-07-14: the terminal now renders
distinct DIGITAL learned-model and REAL physical/fog dialects over the same
coordinates, consuming the same renderer-neutral reach state and link
projection as Bevy. The final Bevy audit pairs opening, audio, and covered-
hall DIGITAL/REAL frames at identical complete persisted and frontend state;
green material fog audits and exact-image review close criteria 3-7 and 9.
Audio remains capture-device event evidence in both dialects, never room fog
or geography; semantic captures may pulse briefly at the subscribed instrument.
Stage: B1 — The Basement
Work order: views
Work priority: 35
Work class: frontend
Blocked by: none
Exclusive keys:
- crates/misaligned-bevy/
- crates/misaligned-terminal/
- wiki/interface/views.md
Design:
- wiki/interface/presence.md#two-views-of-one-world-same-frame-digital-and-real-representations
- wiki/interface/presence.md#presence-the-cursor-and-the-senses
- wiki/interface/terminal-first.md#the-terminal-is-a-first-class-frontend
- wiki/vision/simulation-laws.md#justification-and-legibility
- wiki/art/visual-identity.md#visual-identity-clinical-gore
- wiki/vision/scale.md#self-similar-scale
Depends on:
- wiki/mechanics/reach.md#spec-digital-reach
- wiki/mechanics/cursor.md#spec-the-cursor-and-the-senses
- wiki/world/places/basement-map.md#spec-the-basement-map
- wiki/mechanics/detection.md#spec-detection
- wiki/mechanics/core.md#spec-the-core

The structured references above identify the contracts to re-verify. Relationship context:

reach.md (spatially embedded device/reach layer), cursor.md (fog states + inspection feed both views), basement-map.md (shared physical anchors), detection.md (signatures shown in both), core.md (the core is your anchor in both)

The player flips between two representations of the same place. Digital is home: a new game and a fresh frontend open in the AI’s digital representation. Flipping to real/camera view is a frontend action (one keypress terminal; a toggle in Bevy); it changes nothing in the sim — same tick, same knowledge, same cursor position, same selected coordinate, same physical anchors. The sim stores no view state (like the cursor, the view is frontend-only and absent from the save).

The flip should feel like changing the render/sensor layer on one canvas, not like teleporting from a room game to a separate graph game.

Both views are grounded in the physical layout. A rack, door, camera, person, wall, and core have one underlying coordinate/anchor and one knowledge state. Digital and real can choose different symbols, materials, lighting, and labels, but they do not re-layout the basement into different maps.

  • The cursor/focus remains on the same coordinate across flips.
  • Device nodes are anchored to the device’s physical location.
  • Reach edges are drawn between physical device anchors, even when stylized.
  • Air-gaps are gaps in the in-place reach layer, not islands on a separate topology board.
  • Unknown space stays unknown in both representations; neither view earns facts the other lacks.

Misaligned has one world and two render dialects.

Digital representation (home): machine perception of the same room

Section titled “Digital representation (home): machine perception of the same room”

Digital view is the AI’s learned/signal model of the physical place. It uses amber/cold-signal/black sensorium language — device nodes, spatially embedded reach traces, signal flow, scan grids, telemetry labels, load/efficiency readouts, and schematic/learned surfaces — but the objects are still where they physically are. The player does not walk a body through it; attention moves as the cursor and reach spreads through controlled/known devices.

Reach is native here, but reach is a layer, not a replacement layout. A known switch, rack, camera, and air-gapped machine remain in their room positions; digital view shows which of them are owned, tapped, reachable, known-but-unreachable, emitting, or silent.

Digital view may simplify or abstract physical surfaces aggressively. It should look like a model the AI maintains, not like a camera feed and not like a Tron portal. It still obeys cursor.md fog: blueprint is schematic, remembered is stale, and unknown is sensor darkness. Audio events live on their channel device rather than entering the map model.

The digital canvas is a layered institutional model, not every known fact drawn at equal weight. Its resting hierarchy is attention, focused object, local geography, actionable route, knowledge boundary, coordinate substrate.

  • The cursor surrounds the focused anchor with exterior corner brackets. It never replaces the object beneath it, fills the tile amber, or reads as the player’s physical server.
  • The coordinate grid is neutral bone/gunmetal, subordinate, and strongest only near attention. Amber is not spent on ordinary grid lines.
  • Empty floor remains visually empty. Growable bays are latent construction information: they surface locally around attention or while an applicable construction interaction is being considered, not as a permanent field of identical circles.
  • Rack sites, cameras/sensors, switches, and generic devices use distinct silhouettes at their physical anchors. A rack is a narrow chassis plus its state-bearing beam; a camera is a lens/body mark; a switch is a junction. Color qualifies ownership, power, and feed state but does not carry object identity alone.
  • Seen floor resolves as a calm contiguous model field. Rack and device state is drawn on top of that field rather than recoloring whole tiles into a checkerboard. Blueprint and Remembered remain subordinate line/model states.
  • Audio pressure is event-local and instrument-bound: one recent semantic capture may pulse as short waveform bars at the subscribed device. Coverage domains, room-scale rings, floor marks, and inferred source positions never enter the canvas.
  • Focus and reach are different facts. Merely moving attention does not draw a causal line from the core; routes appear only when they describe actual infrastructure, reach, work, or a proposed world act.

Detail is semantic rather than a separate mode: wide framing keeps room/aisle structure and object families; local focus admits tile coordinates, latent bay marks, labels, and exact telemetry. Information arrives in layers as knowledge and attention earn it instead of the first live feed enabling every overlay at once.

Real / camera representation: physical rendering of the same room

Section titled “Real / camera representation: physical rendering of the same room”

Real view is the deliberate flip into meatspace: cameras, hardware, people, blood, traps, and the overt phase’s kinetic reality under strict fog. In Bevy this can be gritty 2.5D/near-3D; in the terminal it is still a spatial layout with clinical glyphs. It shares the same anchors as digital view but renders materials, bodies, machines, doors, occlusion, and gore instead of signal logic.

Cameras are how you look into it. People render spatially only under camera coverage and staged knowledge (schedules.md, cursor.md). Mic-only coverage may produce source-tagged events and recordings, but no body, presence marker, room mass, floor tint, or acoustic-origin marker. A recent semantic capture may pulse only at the subscribed instrument.

  • One meaning per color: sterile amber for owned machine presence, attention, claims, and agency; cold signal for neutral power, live feeds, and reachable infrastructure; bone/chrome/gunmetal for structure/data; crimson for detection/danger/blood only.
  • No avatar: the AI is attention/focus/reach, never a humanoid body.
  • No unearned facts: digital abstraction is not an excuse to show what no sense/reach/fog state has earned; real rendering is not an excuse to show room geometry hidden by unknown fog.
  • Same selection and inspection: the inspect card, provenance, clock, log, and detection bands are present in both representations.
  • A single flip control, labeled, in both frontends; the current representation is always indicated (DIGITAL / REAL, or equivalent).
  • Digital representation: same spatial canvas, but with reach coloring, anchored device nodes, signal edges, node load/telemetry, and reach frontier visible in-place.
  • Real representation: same spatial canvas, but with physical materials, camera feeds/coverage, camera-earned people, hardware, and gore/traps in the overt phase.
  • The inspect card, clock, log, and detection bands render in both.

Digital is the decided default. A proposal to make the overt phase snap the default to the real/camera representation (the mask dropping is also the camera falling into meatspace) is noted for overt-phase.md; not law until affirmed.

The interim material-first Bevy staging is retired. Both fresh frontends now open in DIGITAL, identify the current representation, and use F3 as the single flip to REAL and back. The Bevy flip selects the existing flat sensorium or material camera; the terminal flip establishes the same frontend-only mode boundary and label without claiming the distinct terminal glyph dialects required later by criterion 8. No representation state enters the sim or save.

Bevy DIGITAL projects the existing ReachNet graph directly between each known device’s physical map anchor. Paired directed simulation edges collapse to one visual link; unknown endpoints never leak through an otherwise known wire. Open reachable links are continuous and quiet. A closed segment edge is dashed and carries an opposed-bar gate at the actual frontier. A separately known air-gap endpoint renders in place with no invented link.

Node identity and network state are independent shape layers. Camera, audio, switch, and generic endpoint bodies keep their family silhouettes; an outer claim frame means owned, a double ring means tapped, a single ring means reachable, opposed side bars mean segment-blocked, and an X means air-gapped. Focus labels print the exact pair (CAM / TAPPED, SWITCH / REACHABLE, DEVICE / AIR GAP, or the named blocked segment), so color is never the sole carrier. Known graph facts may appear over sensor darkness because graph knowledge is itself earned; no floor, room, body, or material sight is inferred from that fact.

This completed the Bevy projection portion of criteria 3-4. At that landing, terminal’s equivalent spatial dialect still remained under criterion 8, so the spec stayed IN PROGRESS.

Terminal spatial-dialect landing (2026-07-14)

Section titled “Terminal spatial-dialect landing (2026-07-14)”

The terminal’s F3 label now changes the map projection rather than only its heading. REAL retains the existing physical tile, rack, furniture, strict fog, person-coverage, and sparse feel-rail rendering. DIGITAL quiets seen physical detail into a learned substrate, then embeds the canonical ReachNet links and nodes on those same coordinates. Continuous cold-signal lines mean reachable endpoints; dotted lines mean a known non-live relation; a dotted line with ╫ is a closed segment frontier. Unknown endpoints never create a line, and a known air gap is an x at its physical anchor with no invented wire.

The terminal’s one-cell node grammar carries state without color: $ / # is owned, + is tapped, S / C / M / o are reachable switch, camera, audio, and generic families, ! is segment-blocked, and x is air-gapped. The INSPECT rail prints the exact focused pair (RACK / OWNED, CAM / SECURITY SEGMENT BLOCKED, and so on) plus the compact legend. Growable bays surface only within two cells of attention in DIGITAL. Cursor, people, machine-work tokens, clock, log, facts, and detection remain the shared surfaces over both dialects.

DigitalReachState, DigitalLinkState, node-state projection, link deduplication, unknown-endpoint suppression, and stable state labels now live in renderer-neutral core UI projection code. Bevy and terminal consume that same truth; only their shape/render grammars differ. No simulation, save, map, fog, action, device, or topology state changed. This completes terminal criterion 8 and the terminal half of criteria 3-4.

Final cross-dialect acceptance audit (2026-07-14)

Section titled “Final cross-dialect acceptance audit (2026-07-14)”

Three deterministic Bevy sibling pairs now exercise the epistemic boundaries that matter rather than presenting two hand-staged lookalikes:

  • opening-digital / opening: Unknown around host telemetry and the same attention anchor;
  • ears-digital / ears: one subscribed audio instrument and event pulse without any promoted room fog or inferred source geometry;
  • hall / hall-material: the same covered data hall with machines, people, physical fixtures, and shared rail state.

screenshot_pairs_hold_one_world_state_under_both_dialects executes each pair through the production screenshot staging helper and compares canonical complete persisted state, screen/pause/speed, logs, cursor, machine selection, and closed menu/workspace state. Only RenderMode.material differs. Existing flip tests separately prove repeated live toggles cannot mutate sim, cursor, or selection state.

The REAL captures passed the runtime fog audit: Unknown has no geometry, Blueprint and Remembered have no material mass, Seen alone admits physical geometry and its local lights, and people exist only under coverage. DIGITAL retains the same knowledge as unlit schematic/model grades and anchored signal facts, while audio remains instrument-bound evidence. The exact six final 2560x1440 artifacts were opened after their final encoding; both dialects keep the same clock, log, detection, mode, and inspector rails legible, preserve attention and object geography, and obey the clinical palette. The terminal’s separately observed fixed-size replays complete criterion 8. All nine criteria are therefore implemented; later aesthetic refinement can reopen a narrower visual spec without reopening this mechanic.

  1. Both frontends open in the digital representation by default; a flip control switches to the real/camera representation and back, changing no sim state (test: sim state hash identical across any sequence of flips).
  2. The sim stores no view state; save/load carries no view field; the view is frontend-only (audited, like the cursor).
  3. Both representations share physical anchors: the cursor coordinate, core, racks, doors, devices, and known people remain in the same underlying map positions across flips. The digital representation does not re-layout the basement as a detached topology graph.
  4. The digital representation renders the reach graph spatially embedded in the same place: known nodes appear at their device anchors; reachable, known-unreachable-with-segment, frontier, tapped, owned, and air-gapped states are legible without inventing a second map.
  5. The real/camera representation renders the spatial map under cursor.md fog; no tile or person shows a live fact without the coverage that earns it.
  6. Unknown, blueprint, remembered, and seen/telemetry states obey the same knowledge contract in both representations. Audio remains event/feed provenance in both and never becomes a spatial state.
  7. Inspection, clock, log, and detection bands are present and correct in both representations (parity of legibility).
  8. Terminal renders both representations legibly at DF density (no view is Bevy-only — the mechanic is playable in the terminal), even though Bevy may use 2.5D depth and the terminal cannot.
  9. Bevy DIGITAL obeys the legibility hierarchy above: its cursor leaves the focused object visible; the resting grid remains subordinate and no audio coverage field exists; rack, sensor, switch, and generic-device silhouettes are distinguishable without color alone; growable bays are local/latent rather than a permanent room-wide field; and attention alone creates no core-to-cursor route.