feat(console): real-state-first after-login dashboard + React-wired Brain controls#240
Merged
Merged
Conversation
…rain controls
Founder-directed redesign of /console ("buttons work + have meaning, not
generic; redesign it"). The audit found the buttons did fire, but two things
made the dashboard feel like a fake demo:
1. Brain-tab chips + Send + Enter were wired imperatively (addEventListener /
querySelectorAll over React-rendered nodes) — brittle, split-ownership, the
"nothing works" smell. Root-caused to real React handlers (BRAIN_TAB_CHIPS
.map + onClick/onKeyDown calling askRef.current); imperative wiring and its
teardown deleted. Input stays uncontrolled so the XSS-escape guard still
reads the DOM value directly.
2. A signed-in operator still landed on the simulated "Acme Defense" demo with
their name on top. New ActivationStrip (signed-in only): "Connect your proxy
to go live", honest state pills, and real next actions (Get your proxy URL →
Settings, Start your assessment → the 110-control board). The hero pill now
reads "Sample preview" for signed-in operators vs "Live demo" for anonymous.
The aurora palette and every honesty contract are deliberately unchanged
(founder-locked 2026-07-18; the redesign refines layout + adds the activation
surface within those tokens, it is not a palette swap).
+13 guard assertions in LiveCommandCenter.test.tsx. tsc 0, lint 0, full suite
1479/1479, build 0. Verified on a clean production build: signed-in /console
renders with zero console errors and the SPRS chip returns the operator's own
honest answer.
Docs: docs/DASHBOARD-CONSOLE-REDESIGN-2026-07-22.md
|
This pull request has been ignored for the connected project Preview Branches by Supabase. |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Founder-directed: "the after-login dashboard — nothing working, redesign it and make sure all buttons work and have meaning, not just generic."
The live audit found the buttons did fire — but a signed-in user still landed on a fake "Acme Defense" demo with their name on top, and the Brain controls were wired imperatively (a re-render away from silent breakage). This redesign makes
/consolefeel like a real product.What changed
1. Brain controls → real React handlers (root cause, not symptom)
BRAIN_TAB_CHIPS.map(...)withonClick; Send + Enter callaskRef.current?.(inputRef.current?.value ?? '').addEventListener('click', onSend), the keydown listener, thequerySelectorAll('.chips button')loop) and its teardown are deleted.id="lcc-bi"+ ref), so the XSS-escape guard still reads the DOM value directly.2. Signed-in operators land on THEIR product (real-state-first)
ActivationStripon the Overview, signed-in only: "Connect your proxy to go live", honest state pills (Proxy · not connected / Assessment · saved on this device / Reports · ready), and the two real next actions — Get your proxy URL → Settings, Start your assessment → the 110-control board. Anonymous visitors don't see it.+78.Deliberately unchanged (founder-locked, and good)
aurora-redesign-contract,design-studio-contract, founder-directed 2026-07-18). This refines layout + adds the activation surface within those tokens; it is not a palette swap.Test plan
tsc --noEmit— cleannext lint— 0 errorsvitest run— 1479/1479 (incl. +13 new redesign-contract assertions inLiveCommandCenter.test.tsx)next build— success, 252 pagesnext start): signed-in/consolerenders with 0 console errors; the activation anchor is cohesive with the aurora skin; the Brain SPRS chip fires via React and returns the operator's own honest answer.Docs:
compliance-firewall-agent/docs/DASHBOARD-CONSOLE-REDESIGN-2026-07-22.md🤖 Generated with Claude Code