@@ -20,7 +20,7 @@ Invocation kernel
2020 │ │ │
2121 │ │ └─ Inline / Thread / Process / Remote
2222 │ └─ field cache + generic method-version result cache
23- └─ 28 executable scientific Methods
23+ └─ 30 executable scientific Methods
2424 │
2525 ┌──────────┼──────────┐
2626 ▼ ▼ ▼
@@ -90,7 +90,7 @@ PostgreSQL is the durable authority:
9090- ` app.command_trace ` and ` app.v_command_observation ` retain semantic-command outcomes,
9191 latency, cache, actor and linked-Job evidence for the architecture twin.
9292
93- Migrations are forward-only and content-hash checked. Migrations 000–038 are the
93+ Migrations are forward-only and content-hash checked. Migrations 000–048 are the
9494current schema history.
9595
9696## Client application
@@ -101,12 +101,63 @@ the separate truth for connected scientific capability. `AppShell` owns routing
101101` ScientificContextStore ` owns Program, focus, selection and the application's only
102102staleness generation; ` SceneService ` owns one mol* instance that survives navigation.
103103
104- Twelve of thirty Views currently expose connected modules across Programs, Design,
104+ Thirteen of thirty Views currently expose connected modules across Programs, Design,
105105Structures, Campaigns, Synthesis, Experiments, Knowledge and Runs. Existing chemistry
106106facets are modules over the shared scene and context. Molecule embedding, fields,
107107surface MEP and torsion strain enter through semantic commands; long results return by
108108Job and content-addressed artifacts.
109109
110+ The browser has two explicit runtime tiers built from one shared ESM graph. ` shell.ts `
111+ boots routing, context, commands, theme and human-facing Workspace projections without
112+ importing mol* or RDKit. The first in-app navigation to a Scene route dynamically imports
113+ the molecular runtime without replacing the document; later Workspace and Scene changes
114+ reuse that module and the single ` SceneService ` instance. Program, ML, voice and
115+ scientific-chart code remain route- or visibility-owned chunks. Both the RDKit JavaScript
116+ bootstrap and WASM binary are fetched only when a chemistry-dependent surface is opened.
117+ The module registry projects real facet surfaces directly—there is no module-host or
118+ view-state adapter between the registry and the DOM. Production bundles also omit the
119+ generated-command integrity walk: that invariant is enforced by build and test gates.
120+
121+ Desktop navigation owns one browser-local expanded/collapsed preference through the
122+ ` RailController ` ; the responsive mobile rail deliberately ignores that desktop geometry.
123+ This is presentation state only and never enters Program, scientific-context or evidence
124+ records.
125+
126+ Background work is visibility-aware and single-owner. The shell coalesces Program
127+ refreshes and publishes one state event to Workspace and Compute projections; hidden
128+ legacy surfaces are not populated. Off-screen graphs, charts and Gantt views defer both
129+ their runtime download and rendering. The ML control-room refresh loop suspends in hidden
130+ tabs, refreshes volatile Jobs and attention every 15 seconds, refreshes capability
131+ metadata on a five-minute/manual cadence, and fingerprints snapshots before replacing
132+ the DOM. Palette updates subscribe to scene state instead of polling. Chemistry results
133+ have one generation-aware cache that is invalidated on molecule, ligand-target and
134+ cutoff changes, preventing both repeated WASM work and stale cross-molecule facets.
135+
136+ Three cross-cutting human layers deepen the existing Views without creating new product
137+ surface area. The Journey Rail projects one durable Program and Work Item across
138+ Question, Understand, Design, Decide, Make, Test and Learn; it delegates its visible
139+ "next" action to the existing governed handoff controller rather than bypassing command
140+ preconditions. The lazily loaded Evidence Inspector classifies a selected record as
141+ observed, computed, inferred, proposed or unresolved, then reports missing identity,
142+ observation time, method version, frozen inputs, provenance, artifacts, digest declaration
143+ and evidence boundary without upgrading presence into validation. Program disclosures and
144+ the comfortable/compact density preference are browser-local reading state, never durable
145+ scientific state.
146+
147+ The shell also carries one five-level reading contract across every Workspace and the ML
148+ control room: ** Signal (1) → Visual (2) → Structured (3) → Explanation (4) → Audit (5)** .
149+ This is explicit component metadata rather than an inferred font-size heuristic. ` Scan `
150+ prioritizes state and visual flow, ` Work ` balances canonical records with explanation, and
151+ ` Audit ` opens provenance and raw records. The preference is browser-local. No mode deletes,
152+ hides, reclassifies, or mutates scientific evidence; high-difficulty material remains
153+ keyboard reachable through progressive disclosure.
154+
155+ The all-route performance gate covers the thirty routable Views. The 2026-08-13 local
156+ matrix verified a roughly 943 KB cold payload for non-scene routes, four font files per
157+ route, no eager RDKit payload, no eager scientific-visual payload on ordinary Workspace
158+ routes, and no initial long task on the Program overview. Scene routes deliberately pay
159+ the mol* runtime cost; that boundary is kept separate from the compact application shell.
160+
110161## Runtime topology
111162
112163- ` dirac-fields.service ` on ` :8901 ` is the one application/scientific control plane.
@@ -148,7 +199,7 @@ rebuilds. The model can therefore calibrate observed command latency and outcome
148199addition to detecting drift, ranking static hotspots and estimating dependency radius.
149200It still cannot predict unseen inputs or autonomously change the architecture; that is
150201the L4 boundary. The platform substrate is complete against its approved DoD; the
151- product capability is explicitly partial (currently 8/8 Workspaces represented and 12 /30 Views connected)
202+ product capability is explicitly partial (currently 8/8 Workspaces represented and 13 /30 Views connected)
152203even though the navigable product shell is complete at 8/8 and 30/30.
153204
154205` scripts/digital_twin_scope.json ` is the ownership boundary. The watcher recursively
0 commit comments