docs: embed live ENSEMBLE dashboard in hero (replaces stat-cards)#233
Conversation
Replace the four hero stat-cards in docs/index.html with a scoped, vector-crisp HTML+CSS embed of the h5i serve Ensemble tab: a browser-window frame, the settlement rail (Draft->Seal->Review->Verify-> Apply), three sealed lanes (claude-1, codex-1 winner, claude-2), and the neutral-verdict card. CSS ported from web/src/theme.css's .team-* block, namespaced under .ee with dark tokens so the theme can't leak into the light page; reuses the page's existing Space Grotesk/Mono fonts. Keeps the Works strip and folds the value-prop keywords into a caption row.
Wire the hero dashboard embed's tab bar to switch panels: Ensemble and Sandbox are now real buttons (data-tab) toggling sibling .ee-panel views, driven by a small handler in the existing inline script; Context/Memory stay decorative. Add a faithful Sandbox panel (ported .sbx-* CSS): host readiness strip + vitals, fleet table, and the flight-recorder timeline with the enforced-policy grid. Timeline trimmed to FS/NET/PROC lanes so the verdict labels (e.g. the pip-install net-pressure trip) have room and don't overlap the column borders. Switched the wrapper to role=group/ tablist so the now-interactive content stays accessible.
Pin Isolation/Status/Pressure to fixed widths and keep the env id on one line so the Env column takes the remaining width; give the table a min-width so the fleet pane's existing horizontal scroll engages when the pane is narrow.
Make the hero embed's Context tab functional (was a decorative chip): a faithful port of ContextView's signature parts under the .ee namespace — the goal/purpose hero on the violet→teal gradient, the KPI row (milestones/trace lines/snapshots/todos/branches), recent milestones with teal sha chips, and the OBSERVE/THINK/ACT/NOTE/MERGE OTA-balance bar + legend. Reuses the existing data-tab/data-panel switch handler, so no JS change was needed; Memory stays decorative.
Drop the non-functional Memory chip and its now-unused .ee-tab.ghost rule; the embed's tab bar is now Ensemble / Sandbox / Context, all live.
🪙 83% AI-authored · 3 files · prompt 35/100
Important 🎯 Goal: evaluate/replace docs/index.html hero feature cards with an embedded example of the ENSEMBLE tab of h5i serve
💬 The ask
📍 What shipped
Note 🪴 Prompt maturity: 35/100 · developing · 5 prompts scored (100% of AI commits) 📊 heuristic breakdown
Readability (display-only): Flesch 66 · FK grade 8.4 · Gunning Fog 11.3 Offline classical-NLP score — no LLM. Higher = more specific, bounded, and grounded prompting. Tip ✅ Security scan cleanNo credentials leaked in this branch's diff. h5i scanned every added line against the secret rule pack and found nothing to rotate. Note Duplicate-code scan clean — no copy-paste blocks introduced. 🧠 Reasoning by file — 10062 nodes across 4 lanes, latest 24 only%%{init: {"flowchart": {"nodeSpacing": 42, "rankSpacing": 48, "diagramPadding": 14}, "themeVariables": {"fontSize": "18px"}} }%%
flowchart TB
subgraph lane_0["💭 Reasoning · 3 steps"]
direction LR
n_lane_0_0["THINK · Let me remove the RES and PROV columns from the timeline (grid + all thr…"]:::t
n_lane_0_1["THINK · Let me understand its visual structure via its class names and the main …"]:::t
n_lane_0_2["THINK · I see the user manually tweaked the env cells (line breaks) — I'll leave…"]:::t
n_lane_0_0 --> n_lane_0_1
n_lane_0_1 --> n_lane_0_2
end
subgraph lane_1["📄 docs/index.html · 16 ops"]
direction LR
n_lane_1_0["EDIT × 7"]:::a
n_lane_1_1["READ"]:::o
n_lane_1_2["EDIT × 2"]:::a
n_lane_1_3["READ × 2"]:::o
n_lane_1_4["EDIT × 2"]:::a
n_lane_1_5["READ"]:::o
n_lane_1_6["EDIT"]:::a
n_lane_1_0 --> n_lane_1_1
n_lane_1_1 --> n_lane_1_2
n_lane_1_2 --> n_lane_1_3
n_lane_1_3 --> n_lane_1_4
n_lane_1_4 --> n_lane_1_5
n_lane_1_5 --> n_lane_1_6
end
subgraph lane_2["📄 web/src/ContextView.tsx · 3 ops"]
direction LR
n_lane_2_0["READ × 3"]:::o
end
subgraph lane_3["📄 web/src/theme.css · 2 ops"]
direction LR
n_lane_3_0["READ × 2"]:::o
end
classDef o fill:#dbeafe,stroke:#1e3a8a,color:#0b1c4a;
classDef t fill:#fef3c7,stroke:#92400e,color:#3f2d05;
classDef a fill:#dcfce7,stroke:#166534,color:#0a2e16;
classDef n fill:#ede9fe,stroke:#5b21b6,color:#221251;
classDef m fill:#e5e7eb,stroke:#374151,color:#0b0f17;
📜 Per-commit provenance
|
No description provided.