docs(design): amend C22/C14 visual face — web-from-disk, not egui
The visual face pivots from the ledger's egui-native, in-process zero-copy direction to a web frontend served from disk-persisted recorder traces: the engine writes recorded traces to disk, a browser charts them. Settled in an in-context design discussion (provenance in issue #101): raw per-tap trace persistence + serve-time join_on_ts alignment + a static self-contained HTML chart (uPlot). The engine stays headless (C14) — arguably more strictly, since a browser reading a serialized file is further from the hot path than egui reaching into the live SoA columns. Amends the C14 visual-face note and the open "Playground & World UI surface" thread; the C22 realization note lands when the seam ships. refs #101
This commit is contained in:
+16
-6
@@ -623,9 +623,14 @@ for human exploration. Visualization is only a downstream consumer node on the
|
||||
streams.
|
||||
**Forbids.** Any UI/pixel knowledge inside the engine.
|
||||
**Why.** The LLM drives programmatically, the human visually; a headless core
|
||||
serves both. The visual face is the **playground** (C22) — egui-native,
|
||||
in-process zero-copy from the SoA columns; it is staged after the runnable
|
||||
substrate but is core to aura's identity, not optional.
|
||||
serves both. The visual face is the **playground** (C22) — a **web frontend
|
||||
served from disk-persisted traces** (revised 2026-06, issue #101: the engine
|
||||
writes recorded traces to disk, a browser charts them; supersedes the earlier
|
||||
egui-native / in-process-zero-copy-from-SoA direction). It is staged after the
|
||||
runnable substrate but is core to aura's identity, not optional. The pivot keeps
|
||||
this contract's core intact — and arguably tightens it: a browser reading a
|
||||
serialized trace file is a stricter "no UI knowledge in the engine" than egui
|
||||
reaching zero-copy into the live SoA columns.
|
||||
|
||||
### C15 — Resampling-as-node; sessions/calendars
|
||||
**Guarantee.** A resampler is a node (finer stream → coarser bar stream),
|
||||
@@ -1066,9 +1071,14 @@ load-bearing in the flat graph.
|
||||
|
||||
## Open architectural threads not yet resolved
|
||||
|
||||
- **Playground & World UI surface** — the playground is core (C22), egui-native;
|
||||
open is the concrete UI of the meta-views (walk-forward, sweep surfaces,
|
||||
comparison) and the run/replay clock controls.
|
||||
- **Playground & World UI surface** — the playground is core (C22); the surface
|
||||
is a **web frontend served from disk-persisted traces** (revised 2026-06, issue
|
||||
#101; not egui). Settled for the first cut: raw per-tap trace persistence to
|
||||
disk (columnar/SoA form, C7) + serve-time `join_on_ts` alignment + a static
|
||||
self-contained HTML chart page (uPlot, vendored like the `render_html`
|
||||
Graphviz-WASM blob), feeds overlaid or timestamp-aligned in panels. Still open:
|
||||
families-comparison meta-views (walk-forward, sweep surfaces, multi-strategy /
|
||||
instrument comparison), a local server, and the run/replay clock controls.
|
||||
- **Parameter-space search strategies** (Bayesian/genetic) — pluggable policies
|
||||
atop the atomic sim unit (C12), not yet designed.
|
||||
- **`aura new` scaffolder, the experiment-builder API, and `Aura.toml`'s
|
||||
|
||||
Reference in New Issue
Block a user