Skip to content

design: dev-dashboard revamp umbrella (analysis + Claude-Design prompts)#685

Merged
rickylabs merged 49 commits into
mainfrom
design/dev-dashboard-revamp
Jul 12, 2026
Merged

design: dev-dashboard revamp umbrella (analysis + Claude-Design prompts)#685
rickylabs merged 49 commits into
mainfrom
design/dev-dashboard-revamp

Conversation

@rickylabs

Copy link
Copy Markdown
Owner

Dev Dashboard Design Revamp — Umbrella (analysis + design-spec only)

DRAFT umbrella PR — nothing here merges to main until the owner reviews. This run changes NO
product code; it produces analysis artifacts and Claude-Design-ready prompts under
.llm/runs/dashboard-design--orchestrator/.

Refs #400 (dev-dashboard epic; no closing keyword — umbrella).

Mission

Produce the design reference bar for the beta.10 dev-dashboard milestone
(https://github.com/rickylabs/netscript/milestone/12): a locked routing hierarchy, screen-by-screen
catalog of the current Claude Design prototype, multi-model analysis passes, a dynamic
plugin/extension architecture proposal, a beta.10 cross-coverage matrix, and multiple
self-contained Claude Design prompts the owner can hand directly to Claude Design.

Slice plan (each merged into this branch, tracked by a per-slice comment)

  1. Screenshot inventory + screen catalog of the current prototype (DesignSync + playwright)
  2. Prior-work + reference-routing analysis (routing resort ground truth)
  3. GLM 5.2 design/UX critique pass (OpenRouter capability test)
  4. Codex GPT-5.6 Sol max adversarial UX/DX pass
  5. Dynamic plugin/extension system architecture proposal (Fable 5 low single delegation)
  6. Beta.10 cross-coverage matrix + issue context augmentation
  7. Final Claude-Design prompts + run eval

Improvement axes covered

Zero future-beta prose · complete routing-hierarchy resort · full feature coverage incl. project
writes · beta.10 cross-coverage · diversified AI surface (not a generic chat) · dynamic
plugin/extension system.

Supervisor session: 0e4ec217 (Fable 5 medium) — see
.llm/runs/dashboard-design--orchestrator/orchestrator-session.md.

rickylabs and others added 23 commits July 6, 2026 11:53
…gn checkpoint locked

Run feat-dashboard-design-prototype--design: supervisor identity, four-lane research
(seed corpus, board, fresh-ui surface, eis-chat + Claude Design), locked plan LD-1..LD-7,
8-slice design checkpoint. Supersedes-in-execution #425 (DDX-15) scope; no framework source.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
…policy addendum (Fable 5 = design lane, WSL = chores only)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
…-eval phase

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
…oard-design-prototype--design

Eight Plan-Gate boxes walked. Research re-baselined against 317e4b5 and
spot-checked against fresh-ui registry / DTCG token pipeline. Open-decision
sweep is clean (4 OQs flagged, no unflagged rework-forcing decisions). Eight
commit slices (0-7) ordered, sized, each names its gate and files. Risk
register and gate set both explicit. Archetype N/A (no packages/plugins
surface) and the plan states it. Verdict: PASS.

Co-authored-by: openhands <openhands@all-hands.dev>
… tool supersedes raw MCP (OQ-1 green)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
…NS One' created (ec262e10)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
…y with green traps and idempotence

Slice 1 of the dashboard design-prototype run: tools/design-sync/ v1
converts the fresh-ui registry (Preact) into a synthetic React package,
concat-builds the CSS closure (registry has zero Tailwind utilities),
bundles via native deno bundle, emits 44 preview cards + prompt.md
contracts, and gates on ParityReport + six eis-chat traps + double-build
idempotence. Interactive primitives fold in via the subpaths module-graph
loader; markdown (template-sourced chat stack) is a recorded exclusion.

Gate: deno task design:sync check = PASS (parity 44/44, idempotence
dfac420b48f8, traps 4xPASS/2 by-design WARN); scoped check/lint/fmt clean.

Refs #507, part of #400.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
…ontract for pass 1

Slice 2: CLAUDE-DESIGN-BRIEF.md carries the locked IA (cross-cutting
panels + per-capability manage loop + Plugin Control host), hard DS
rules, and voice constraints; PROPOSED-COMPONENTS.md inventories the
seeded system, sets per-block DDX-0 validation criteria, records the
data-grid/MCP negative verdicts, and names the net-new candidate set
(4 compose, 2 new-block, 2 new-component) with sync-back contracts.

Fable-5 medium sub-agent authored per owner lane directive; supervisor
slice review PASS vs proposal §3/§5.1/§9.1 + voice rules.

Refs #507, part of #400.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
… across all 44 cards

Slice 1.1: 26 previews/<unit>.preview.js story files (Opus 4.8 delegated
lane, supervisor-reviewed) replace every predicted-blank floor card with
dashboard-flavored stories on the seeded token/class contract. weak-dts
stays WARN by verdict: theme-toggle is a verified zero-prop component.

Gate: design:sync check PASS (render-blank 26 authored/0 blank, parity
44/44, idempotence 98be0c4a39b7, no FAIL traps); fmt clean.

Refs #507, part of #400.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
…le via DesignSync

finalize_plan plan_ec262e10d4ad451f_52521883d287 + one write_files call
(localPath streaming, contents never in supervisor context); remote
list_files verified identical to the local bundle tree. Canvas-side
fitness green; prototype pass 1 unblocked.

Refs #507, part of #400.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
… platform-reserved (slice 3.1)

The canvas compiles uploaded .tsx into its own _ds_bundle.js (no ReactDOM,
no window globals), clobbering the self-contained runtime and breaking
every seeded card. Runtime/closure now emit as _ns_runtime.js/_ns_styles.css;
card + conventions templates re-pointed; drift D4 records the reserved-path
law for the reusable tool.

Refs #507, refs #506.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
… authored / 0 floor (slice 3.2)

18 new preview stories with real prop contracts; CommandPalette/Toast/
SidebarToggle wrapped in translateZ(0) containing-block stages. Drift D5:
7 L3 blocks emit undefined Tailwind utilities (framework fix routed to #509).

Refs #507

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
….css + DDX-0 verdicts (slice 4)

Stack Map, Flow/Trace Waterfall, Service Catalog/API Explorer, Run
Inspector; one coherent incident narrative; all 7 promote-set blocks
validated with recorded contract deltas.

Refs #507

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
…ce layer

The owner-reported 'still ugly' cards were triaged with a new headless
render loop (48 shots); three root causes fixed: React string-style
throws blanked EmptyState/Toast/CommandPalette, the registry silently
depends on Tailwind's border-box preflight, and the D5 utility gap is a
closed ~60-class set now shipped as a host-env layer in the closure.
proto.css gains a container-query waterfall axis + rail StatsGrid cap.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
…cord

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
…lone

The #547 ns-* conversion + scoped box-sizing made the host-env equivalence
layer dead weight; render gate re-shot 7 surfaces to prove closure parity.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Dgu7TfPnzpXUii84FSybbg
…ary-DX rescope drafts (plan, epic rewrite, per-issue verdicts, Claude Design prompts, ratification batch)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017DfDh7meeQUMBJRPvzJq5N
…seam-flow pillars (owner amendment)

Owner feedback on v1: the Appwrite-style management console and Encore-model
seam-flow telemetry were mandated by the seed research, not duplication.
v2 keeps S1-S12 and adds: three-pillar thesis (Observe/Manage/Follow),
S13 Live Flow (#418 CLOSE->REWRITE), #432 elevation to beta.7 management
keystone, DDX-23 seam-event flow plane co-req, gated write-back on S3,
management-loop addenda on S5/S7-S11. Drafts only; owner ratifies.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017DfDh7meeQUMBJRPvzJq5N
…+ bodies + comments + MANIFEST)

Materializes the owner-ratified v2 batch as re-runnable local files for the main
session to review and fire (subagent is soft-blocked from mass external gh mutation).

batch/execute_batch.sh — WSL gh one-pass: create area:queue; comment-then-close
#421/#422/#425 (not planned, no closing keyword); create 7 new issues in dependency
order (DDX-20/21/22, TriggerDlq/QueueDlq co-reqs, runtime-config mutation co-req,
DDX-23); back-fill real numbers into bodies; rewrite 18 existing bodies with label/
milestone deltas; retitle #400/#418; append #432 addendum + milestone beta.7;
tightening comments on #408/#427/#418. Renders bodies to a temp dir so committed
sources keep NUM_* placeholders and the script is re-runnable-safe.

batch/bodies/ (26) + batch/comments/ (6) — verbatim v2 bodies; DDX-20/S3 read-only
in beta.6 with write-back gated behind the runtime-config mutation co-req (D6).
batch/MANIFEST.md — ordered mutation checklist to diff against ratification-summary.md.

Refs #506 #400
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017DfDh7meeQUMBJRPvzJq5N
…, issues #551-557)

Owner ratified 'yes to all, proceed'; executed the full GitHub mutation batch.
Closed #421/#422/#425 (not planned/superseded); filed #551-557; rewrote 18 bodies
+ #432 addendum; tightening comments on #408/#427/#418; created area:queue label.
D5/D6 corrections applied (beta.7 milestone pre-existed; runtime-config read-only
-> S3 ships read-only, mutation co-req #556 filed).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017DfDh7meeQUMBJRPvzJq5N
@rickylabs rickylabs added this to the 0.0.1-beta.10 milestone Jul 11, 2026
@rickylabs rickylabs added type:umbrella area:tooling status:research Harness research phase priority:p1 High epic:dev-dashboard Dev Dashboard epic (Spine-1 headline, ships as a plugin) labels Jul 11, 2026
…+ pulled design-project ground truth

Slice 1 of design/dev-dashboard-revamp: 17 full-page screenshots (15 routes + dark + cmdk), screen-by-screen catalog, prototype source snapshot, prior adversarial review + POC ground truth + v2 prompts pulled from the Claude Design project.

Refs #400

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NVzdQYtTJobUxiho3YMnXt
@rickylabs

Copy link
Copy Markdown
Owner Author

✅ Run complete — dev-dashboard design revamp (all 7 slices)

One action needed from you to publish the umbrella content (auto-mode classifier blocks me from pushing reference-derived analysis to this public repo):

git -C /home/codex/repos/netscript-547-lffix/.claude/worktrees/dashboard-design-orchestrator push

After that push, this PR's diff contains everything below under .llm/runs/dashboard-design--orchestrator/.

The deliverable: six Claude-Design-ready prompts (design-prompts/)

# Prompt Produces
P1 Shell, IA & Home locked route tree, 4-group sidebar w/ derived badges, pathname breadcrumbs, ⌘K (navigate/act/recent), revamped Home
P2 Investigation spine /flow/:correlationId journey (flagship) + /runs/:correlationId inspector twin
P3 Capability consoles Workers (jobs + polyglot tasks), Sagas (compensation hero), Triggers (8 types + action chains + builder), Streams (fan-out) — list→detail→leaf, full writes
P4 Control plane Runtime-config audit/rollback workspace, labeled-edge topology, Catalog procedure detail (duality), Migrations apply, full DLQ, Auth-as-projection-debugger
P5 AI surface distributed assists (chips + inline grounded cards + proposed-action → confirm), global Ask, AI-drafted triggers, /ai console + durable runs on the spine
P6 Extension platform /extensions manager, injection-zone inspector, trust tiers + permission prompts, install/create-from-template with file-diff previews, provenance chips everywhere

All six: final-product framing (zero future-beta prose), the locked hierarchy from analysis/routing-resort.md, one canonical Stripe correlation fixture, confirm-with-CLI on every write, satellite doctrine intact, leak-checked for internal names.

Also on the umbrella

Epic #400 gets a cross-link comment next. This PR stays DRAFT for your review.

rickylabs and others added 2 commits July 12, 2026 03:25
…design run artifacts; drop fresh-ui residue

Absorbs #506 into the design umbrella so it can close as superseded by #685:
- tools/design-sync/ (57 files) + deno task design:sync + .gitignore rules — the reusable
  fresh-ui→Claude-Design converter the revamp prompts will be executed with.
- .llm/runs/ design + rescope run artifacts (63 files) and resources/design prototype screens.
- packages/fresh-ui changes DELIBERATELY DROPPED (resolved to main): that delta was extracted
  and landed via the #547 pixel-polish pass; any residue belongs to the #509 fresh-ui lane,
  not a design umbrella. deno.json conflict resolved keeping main's agentic task block +
  adding design:sync.

Refs #400. Supersedes #506; #425 disposition stays an owner call (see PR comment).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NVzdQYtTJobUxiho3YMnXt
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NVzdQYtTJobUxiho3YMnXt
@rickylabs

Copy link
Copy Markdown
Owner Author

Slice 8 — PR #506 absorbed (partial, deliberate)

Per owner direction, feat/dashboard-design-prototype (#506) is now merged into this umbrella (5d905018, +11,417 lines) so #506 can be closed as superseded when #685 merges (manual close — PR-on-PR has no auto-close keyword).

What was absorbed:

  • tools/design-sync/ (57 files) + deno task design:sync + the .gitignore scratch rules — the reusable fresh-ui → Claude Design converter. Scoped deno check on the tool: green (11 files, 0 errors). This is the tool the six revamp prompts will be executed with.
  • The design + rescope run artifacts (63 files under .llm/runs/) and resources/design/ prototype screens.

What was deliberately DROPPED (resolved to main): the branch's 42-file packages/fresh-ui delta. That work was extracted and landed via the #547 pixel-polish pass (the branch even records #547's landing); the merge conflict on layouts.css confirmed main has moved past it. Any residual registry improvements belong to the #509 fresh-ui lane with proper review — not riding a design umbrella. Zero packages//plugins/ changes remain in this PR's diff.

Why absorb rather than merge #506 separately: #506's base is beta.5-era (317e4b50) and conflicts with current main; merging it separately would (a) require the same conflict surgery anyway, (b) re-land fresh-ui code already superseded by #547, and (c) auto-close #425 via its Closes #425 body line while the PR no longer represents the current state of that scope. Absorbing keeps one review/merge event and an explicit record of what was kept vs dropped.

Board dispositions at #685 merge time (owner calls):

@rickylabs

Copy link
Copy Markdown
Owner Author

Slice 4b — GLM 5.2 AGENTIC design pass (through the repaired #696 lane) + prompt sharpenings

Now that the OpenRouter lane is fixed, the GLM design pass was re-run as a full agentic session (22 turns, $1.27, claude-print lane, branch design/ddr-s4b-glm-agentic, merged at 4a60cee6). File: analysis/glm-design-pass-agentic.md.

Its conclusion: verdict 7/10; "the locked revamp direction is correct — the six prompts target the three real structural diseases (flat in-memory routing, read-only bias, siloed chat-AI) while preserving the genuine strengths (ns- token system, correlation spine, confirm-with-CLI signature)."* Biggest remaining risk: the six prompts, pasted independently, shared no binding fixture/derived-stats contract — six screens could silently diverge on ids, stat numbers and model labels, undoing the "one id, numbers that reconcile" thesis.

Notable evidence-grounded catches (things the one-shot pass missed or got wrong):

  • Polyglot runtime badges are entirely absent in the markup (one-shot said "verify and polish") — it's build-from-scratch work.
  • The one-shot had invented route names (/journey/:id, /sagas/instances/:id) that diverge from the locked tree — repo access fixed that.
  • Only 3 real netscript … CLI lines exist in the whole prototype vs ~15 writes the prompts add — CLI-transparency must be an enforced invariant, not a convention.
  • Two real shell defects named: the Console/Consoles sidebar label collision and the synthetic Console / breadcrumb prefix.

Applied (commit 0946740d): the shared-contract preamble items added to design-prompts/00-README.md (retire-list for ns-waterfall/ns-preview-tag, hard CLI invariant on ns-confirm, numbers-reconcile rule, neutral AI model labels) and P1 now names the sidebar/breadcrumb defects explicitly so a design agent can't preserve them.

GLM capability re-assessment for the run eval: agentic GLM (repo access, xhigh) is a materially better design analyst than one-shot GLM — it cited class names/markup lines, deduped against the six prompts, and self-corrected its earlier pass. Still below the Opus/Codex passes on architectural judgment, but now clearly useful as a cheap evidence-checking critic. Lane cost: ~$1.3/pass.

@rickylabs
rickylabs marked this pull request as ready for review July 12, 2026 04:11
@rickylabs
rickylabs merged commit eac57c5 into main Jul 12, 2026
8 checks passed
This was referenced Jul 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:tooling epic:dev-dashboard Dev Dashboard epic (Spine-1 headline, ships as a plugin) priority:p1 High status:research Harness research phase type:umbrella

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants