Phase 1 Pages
First-pass mocks for all 17 Phase-1 dashboard pages (Linear PRO-19…35) on one unified fixture world — the simplest literal execution of the listing → expand → detail → actor-web pattern
Why
The Linear "Dashboard - inventory" project defines Phase 1: the users, teams, agent-discovery, and monitoring surface — 17 pages, each needing spec and design. The current UI is a prototype; this is a new experience. Positioning is freshly clarified: for operators, inventory & visibility first — governance is not this cycle's focus (findings + control-center carry it; quiet links only). Eight design cycles of settled verdicts and unpromoted ideas exist and should slot directly into a first prototype rather than be re-invented.
Objective
Every Phase-1 page exists at /pages/phase1/<slug>, derived from one ID-linked org world, following the shared page anatomy (verdict line → framing band → DataTable of all n → expand row → drill), with horizontal actor links throughout. "Done" = 17/17 designed on the /pages/phase1 index, both attention and all-clear states where the world supports them, each page passing the 5-question framework.
Per page, three questions drive the design:
- Compress the page into a single statement/visual (at-a-glance verdict)
- Frame the information usefully (question the framing per page)
- Make vertical penetration into deeper data easy — and correlated actors explorable horizontally
Scope
app/data/phase1/— the unified world (entity files + derived helpers + validator), extendingc21-inventory-fixtures.tsapp/components/phase1/— chassis pieces (EntityChip, StatBlock, VerdictLine); layer extraction deferred to a close-time shortlistapp/pages/pages/phase1/*.vue— the 17 mocksapp/data/page-registry.ts(+phase: 'phase1'entries) andapp/data/phase1-registry.ts(slug per designed page)- Standing plan: execution-plan.md · prior work: prior-art.md
Out of scope: layer extractions (shortlist only) · the gated c67 lever strip · governance mechanics/lens · exec-summary page · Phase-0 moves · qdash/qcontrol porting.
Key Changes
- kick-off (2026-09-01): Cycle created with plans only — no pages built yet, per Mark. Three exploration sweeps (prior work per page, chassis/fixtures, founding docs) synthesized into prior-art.md; architecture, build order (world + Agent Inventory exemplar first, Fleet Overview last), and 17 per-page briefs ruled in execution-plan.md. Sibling cycle c82.cloud-execution parked with the remote-execution thinking.
- cloud run — setup (2026-09-01): Executed unattended in a claude.ai/code environment as the c82 experiment (notes in
cycles/c82.cloud-execution/first-run-notes.md). Layer installed from the public git tag; private viz packages stubbed locally; one dev server; capture proven early (scripts/capture.mtsnow honorsPW_CHROMIUM_PATH). Mechanics for 16 parallel agents ruled in cloud-agent-brief.md: slug/selection protocol, links-land-first, world read-only for page agents, per-page commits, registries committed by the orchestrator. - stage 1 — world + chassis + exemplar (2026-09-01):
app/data/phase1/— 18 people, 21 devices, 5 companies → 7 technologies → 28 installs, 5 accounts, 7 models with a 12-week trend, 12 MCP servers, 36 tools, 4 skills, 2 plugins, 7 repos, 16 endpoints, 11 files, 55 sessions (4 with the c77 event grain absorbed);validateWorld()in both states;allClearWorld()overlay = the calm morning on the same cast;routes.ts(entityRoute) +state.ts(?state=). Chassisapp/components/phase1/—Phase1EntityChip,Phase1StatBlock,Phase1VerdictLine,Phase1StateToggle. Agent Inventory exemplar at/pages/phase1/inventory, both states. Record: stage1-plan.md. - stages 2–4 — 15 pages in parallel (2026-09-01): one agent per page, ~7–19 min each, all 15 landed in 31 minutes wall-clock: Teams & Users, User detail, Session detail, Device detail, Providers, Agent detail (slug
agent-instance—agent-detailbelongs to a phase-0 mock), Accounts, Models, MCP servers, Tools, Skills, Plugins, Repos, Endpoints, Files. Each has<slug>-prompt.md+<slug>-plan.mdwith its question, framing, 5-question pass and fold-in notes. Registry conflicts: none. - stage 5 — Fleet Overview + reconcile (2026-09-01):
/pages/phase1/fleet-overviewre-derives the v3 spine (verdict → exception queue → band → gateway cards → funnel) from the pages' verdicts; 17/17 designed on/pages/phase1. Reconcile folded every page's sharpened verdict intoverdicts.*, moved page rollups intoderived.ts, turned fabrications into world facts (integrations.ts,Device.enrolledAt/processes,McpServer.endpointId,THRESHOLDS), fixed the overlay/duration/$0bugs, swept hand-typed stats (6 fixed). Record: reconcile-plan.md. - cloud review + fixer round (2026-09-01 → 02): all 17 pages captured and reviewed unattended (cloud-review.md): the chassis holds; the defects were systemic — content-sized bands, red spent outside the warn class, uppercase micro-headings, two attention colors on one row, two-line verdicts. Seven fixer bundles landed across two sessions (the first hit its session limit after F2; its uncommitted work was lost and redone): F2 mechanical sweep · F1 chassis + derived (
Phase1StatBlockequal-width, every*Verdict()≤ 90 chars with asubLine()helper,plural(),fmtRatePerMTok(), home/echo card dots, the(, )host set) · F3 detail pages (verdict under the identity line, four-block bands, full-width body) · F4 inventory/providers/accounts/fleet-overview (one color per row, providers table fits, queue folds to two red cards + nine one-liners) · F5 models/mcp/tools/skills (mute columns dropped, tools band inverted to the 212 debt, 15-row cap) · F6 plugins/repos/endpoints/files/teams (verdict first, conditional Port/TLS and Sessions columns) · F7 zero-not-dash sweep.npm run buildpasses clean. Round-2 captures of all 17 pages in both states are inpublic/cycles/design/(<slug>[-clear][-full].png); the round-2 review is appended to cloud-review.md. Round 2 verdict: 114 of 118 round-1 items resolved, no blocking items; the all-clear state (seen for the first time) reads as the calm morning on 14 pages, and 6 new should items came out of it — 5 fixed in F8 the same night, the receipt-tone ruling (tools + files) and the nits left for the local visual pass. - v2 — Mark Peterson second-pass (2026-09-03): Sourced a design brief (mark-peterson-design-brief.md) from the Sept 3 advisor walkthrough (call
09ecfede-75cf-4139-8559-0a2627eae803in market-analyst) plus Mark Parson's own notes, correlated per page against the Linear issues. Per-page plans (teams-v2-plan.md, user-detail-v2-plan.md, session-detail-v2-plan.md, device-detail-v2-plan.md) then built non-destructively as<slug>-v2.vuesiblings — v1 files untouched, both live and linked from/pages/phase1(a new "v2 →" affordance, additive to the index). Teams & Users: Intensity column/meter dropped (already redundant with the roster's tokens-descending base order), a lack-of-signal note, the person's LLM work summary promoted into the expand card (previously an unrendered fixture field), a stated web-AI coverage gap. User detail: top stats swapped to tokens · spend · providers/agents, a Models card (per-person token breakdown, no auto-attribution), same work-summary promotion. Session detail (heaviest): Chapters dropped per direct in-call confusion, three views (Summary always on-screen, Transcript ⇄ Surface tab switch, raw events nested under Transcript), minimized-by-default dialogue text, person-right layout, a stated BYOK-encryption line, labelled rail glyphs. Device detail (lightest — v1 already matched what the call validated): a lack-of-signal flag, a ghosted MDM deep-link scaffold. Team-level cost comparison and quota-vs-overage cost representation both stay explicitly open, not built.npm run buildnot yet re-run for this round; all four pages verified rendering via the live dev server.
Outcome
Artifacts
- initial-prompt.md
- thread: accounts — prompt + plan
- thread: agent-detail — prompt + plan
- thread: cloud-kickoff — prompt
- thread: device-detail — prompt + plan
- thread: endpoints — prompt + plan
- thread: files — prompt + plan
- thread: fleet-overview — prompt + plan
- thread: mcp — prompt + plan
- thread: models — prompt + plan
- thread: plugins — prompt + plan
- thread: providers — prompt + plan
- thread: repos — prompt + plan
- thread: session-detail — prompt + plan
- thread: skills — prompt + plan
- thread: stage1 — prompt + plan
- thread: teams — prompt + plan
- thread: tools — prompt + plan
- thread: user-detail — prompt + plan
- 2026.09.03.other.notes.md
- 2026.09.03m.parson.notes.md
- cloud-agent-brief.md
- cloud-review.md
- initial-prompt.md
- mark-peterson-design-brief.md
- prior-art.md