TopBar menus & run surfaces [UI]
Source path: knowledge-base/diagrams/ui/topbar.md
# TopBar menus & run surfaces `[UI]`
The workspace TopBar's menus and the modals they open, plus the run/output surfaces reachable from the shell.
## Menus & modals
```mermaid
flowchart LR
TB["TopBar"]
TB --> Settings & View & Analyze & Profiles & Reference & Debug & Right
Settings["**Settings**"] --> s["About · Members · Agents"]
View["**View**"] --> v["Slides · Slide regions · Theme · Time flow"]
Analyze["**Analyze**"] --> a["Game theory · Proposition · Force · Markov"]
Profiles["**Profiles**"] --> p["Prose · Beat · Patterns · Story settings"]
Reference["**Reference**"] --> r["Formula · Definitions"]
Debug["**Debug**"] --> d["API logs · System log · Regenerate embeddings"]
Right["**Right controls**"] --> x["Gas meter ($) · Now playing · Export/Import · Learn"]
```
- Two wiring conventions: open a local modal (`setXOpen(true)`), or `window.dispatchEvent('open-xxx')` that a listening component handles (the page listens when a panel lives at page level).
- **Learn** — the badge opens `LearnModal` directly; the scene Learn tab and the Coverage inspector panel open it pre-scoped via `open-learn-modal` with a `ScopeSelection`.
## Run & output surfaces
```mermaid
flowchart TB
subgraph Capture["**CAPTURE**"]
c["CaptureView → priors · StreamsView →<br/>commit + fold → MergesView"]
end
subgraph Generate["**GENERATE** (forward)"]
g["RunBar / GeneratePanel → useAutoPlay →<br/>reasoning-graph → scenes → plan → prose"]
end
subgraph Scenario["**SCENARIO**"]
rh["ReadingsView / FuturesPanel →<br/>futures-engine → sister branches"]
end
subgraph Review["**REVIEW**"]
rv["SlidesPlayer · DecisionView /<br/>GameTheoryDashboard · BranchEval → ai/review"]
end
```
> **Shipped:** the room/participant model (Member/Agent/Perspective), capture-as-perspective-PRs (Streams), the war-room Merge, the [Scenario](../flows/scenario-loop.md) card game, futures/slides, and `ai/review`. **Not yet built:** the weekly market, local encryption/PIN, Signal async capture, Cloudflare-tunnel multi-user live access. *(Review-as-a-loop-phase and Butterfly were dropped.)*
**Learning (Quiz) layer** — a purely additive, post-hoc surface: per-scene MCQ banks (`ai/learning`) aggregated/scoped by `lib/core/learning/quiz`; the three surfaces above read the same `scene.questions`. A **Curriculum** layer organises the bank into a reorganisable Topic tree, with per-member spaced-repetition **Coverage** on top (the Coverage tab + TreeView).
Open on GitHubRaw Markdown source