You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Gate /pandora behind a server-derived session and downgrade the dashboard to authenticated mock-shell state.
Removes live-looking retrieval, memory, profile, diagnostics, and queue claims until backed by real implementation and tests.
description="The Pandora dashboard shell is not a public proof page. It stays hidden until a server-derived Supabase session exists, and it must not expose memory namespaces, mock counts, or operational labels to anonymous visitors."
24
+
/>
25
+
<SectionCardtitle="Start operator session"description="No memory dashboard content is rendered without authentication.">
26
+
<divclassName="auth-status-panel">
27
+
<StatusBadgestatus="blocked"/>
28
+
<div>
29
+
<h3>Unauthenticated request blocked</h3>
30
+
<p>Use a server-visible Supabase session before opening the Pandora dashboard. The dashboard remains mock-only even after login until backed by real routes, schema, RLS, and tests.</p>
<div><pclassName="pd-label">Ask Pandora</p><h2>Pandora is stable. The next risk is memory clutter, not stream failure.</h2><p>V0.4 is hardened: payload caps, profile refresh reruns, namespace isolation, and action envelopes are working. The next cleanup target is retrieval evals plus master-pack supersession.</p></div>
<h2>Pandora dashboard is an authenticated mock shell.</h2>
9
+
<p>This route is for layout review only. It does not present live memory health, retrieval scores, profile state, or queue activity until those claims are backed by implemented routes, database policy, and tests.</p>
{id: "health",title: "Memory Health",value: "Unknown",subtitle: "No live health route wired",icon: ShieldCheck,color: "slate",sparklineData: [0,0,0,0,0,0,0]},
17
+
{id: "retrieval",title: "Retrieval Eval",value: "Gated",subtitle: "No accuracy claim without tests",icon: Target,color: "amber",sparklineData: [0,0,0,0,0,0,0]},
18
+
{id: "profiles",title: "Active Profiles",value: "Mock",subtitle: "No live profile records loaded",icon: Users,color: "blue",sparklineData: [0,0,0,0,0,0,0]},
{id: "envelope",icon: Package,color: "purple",title: "Action envelope deployed",time: "2h ago",desc: "Tool responses now include ok, request_id, and fallback_used."},
22
-
{id: "real-life",icon: Boxes,color: "emerald",title: "real_life pack re-distilled",time: "3h ago",desc: "PLP, Pandora roadmap, and technical context verified without AU bleed."},
23
-
{id: "people-map",icon: CircleAlert,color: "amber",title: "people_map limitation identified",time: "4h ago",desc: "Stoplist reached ceiling. Next real fix is known-people whitelist."},
24
-
{id: "v04",icon: Sparkles,color: "indigo",title: "V0.4 hardening checkpoint",time: "Today",desc: "Payload caps, stream stability, and profile refresh reruns are working."},
31
+
{id: "route-gated",icon: BadgeCheck,color: "emerald",title: "Dashboard route gated",time: "Patch",desc: "Anonymous requests see the operator-session panel, not the dashboard shell."},
32
+
{id: "mock-data",icon: Boxes,color: "slate",title: "Live counts removed",time: "Patch",desc: "The dashboard no longer presents mock memory, people, project, or profile numbers as operational truth."},
33
+
{id: "retrieval-gated",icon: CircleAlert,color: "amber",title: "Retrieval accuracy claim removed",time: "Patch",desc: "Semantic retrieval stays gated until backed by route and test evidence."},
{id: "ui-shell",icon: Sparkles,color: "indigo",title: "UI shell preserved",time: "Patch",desc: "The visual layout remains available for authenticated review without pretending to be the engine."},
0 commit comments