Skip to content

feat(ui): console shell, typed API layer and live overview - #50

Closed
AndyTechnologies wants to merge 9 commits into
masterfrom
ui-console/slice-1
Closed

AndyTechnologies wants to merge 9 commits into
masterfrom
ui-console/slice-1

Conversation

@AndyTechnologies

Copy link
Copy Markdown
Owner

Work unit

Slice 1 — Console shell, typed API layer and live overview (U01–U03).

Start state: master.
End state: 16-page console shell with design tokens, navigation, typed API clients over the real backend surface, and a live Overview dashboard.

Chain context (feature-branch-chain) — LOCATION OF THIS PR

feat/ui-console (tracker, draft) ──→ master
  └─ ui-console/slice-1 ──→ master (review diff; integration via tracker)  📍 THIS PR
       └─ ui-console/slice-2 ──→ slice-1      (workflow library)
            └─ ui-console/slice-3 ──→ slice-2 (editor + semantics)
                 └─ ui-console/slice-4 ──→ slice-3 (execution, models, providers)
                      └─ ui-console/slice-5 ──→ slice-4 (executions, playground, runtime)
                           └─ ui-console/slice-6 ──→ slice-5 (settings, about, hardening)

Review budget

3.814 changed lines (3.728 additions + 86 deletions) — exceeds 400 → size:exception: cohesive phase-group slice of a 14-phase console; splitting further (shell vs API vs overview) breaks work-unit cohesion. ~60–90 min review.

Start / end / dependencies

  • Prior: none (base of the chain).
  • Follow-up: slice-2 (workflow library) builds on this shell.

Verification

  • bun run typecheck ✓ · bun run lint ✓ · bun test ✓ 462 · frontend api tests ✓ 26 · bun run build:frontend ✓ 12 pages.

Out of scope

  • Backend changes (read-only by contract), remaining phases (children), delivery to master.

Base note: feat/ui-console..slice-1 is empty by design (the tracker already holds these commits), so the reviewable base is master..slice-1. Integration into main happens through the tracker PR (#44, draft, no-merge until all children are reviewed).

PHASE 1 of the revised UI spec: Gentle-AI token system (replaces #F095C8),
AppLayout shell (sidebar/topbar/statusbar), command palette (Ctrl/Cmd+K),
12 route placeholders, typed API origin helpers, and the existing
WorkflowEditor mounted at /workflows/[name]. No fake endpoints or data;
backend untouched.
ApiError + request helper with injected fetch seam, typed clients for
health, models, workflows and runtime status (auth probe) over the real
/api surface, 26 tests. No invented endpoints: providers surface is absent
in the backend and is intentionally not represented here.
Runtime/models/workflows cards fed by the typed API clients, 10s
auto-refresh with stale-response guard, per-card Unavailable+Retry,
quick actions as semantic anchors. Fixes U02 defect: defines the
previously undefined RuntimeStatusOptions DI seam type (invisible to
gates because frontend has no tsconfig — astro build does not typecheck).
WorkflowsList island over the real /api/workflows surface, accessible
run/logs/delete dialogs, NewWorkflowModal with a template matching the
real workflow-yaml parser (array-form nodes, non-empty llm_call model,
edges-only flow — the previous map-form template 400ed on the backend),
21 pure-helper tests. Backend format verified against
src/orchestrator/workflow-yaml.ts + graph.ts before landing.
feat(ui): workflow library with list, create, run, logs, delete
@AndyTechnologies

Copy link
Copy Markdown
Owner Author

Cerrando sin merge por contrato de la cadena: este diff (U01–U03) llega a master integrado en el tracker PR #44, que es el único vehículo de entrega a main (feature-branch-chain). Su revisión queda registrada aquí.

@AndyTechnologies
AndyTechnologies deleted the ui-console/slice-1 branch September 23, 2026 16:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant