platform-retrofit: 8 stories / 18 tasks (spec bundle into docs/product, single-version release-please before deletions, demo feature removal, web-next auth shell, optional cores, work-tree archive, library traces, agent-doc rewrite). walking-skeleton: 11 stories / 28 tasks across workspaces, discovery, core-runner-protocol, runner app, editor, and the flagship connect-to-selection e2e; builds on platform-retrofit (prose dependency note — cross-epic frontmatter unsupported). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016j8z4VHjedXDTjEDNg7qHK
35 lines
2.7 KiB
Markdown
35 lines
2.7 KiB
Markdown
---
|
|
id: walking-skeleton
|
|
prd: docs/work/prds/walking-skeleton.prd.md
|
|
title: Walking skeleton — one real component, end to end through the hosted spine
|
|
type: epic
|
|
status: in-progress
|
|
features:
|
|
[workspaces, discovery, core-runner-protocol, editor, runner, web-next, core-testing]
|
|
created: 2026-07-12T10:24:14Z
|
|
---
|
|
|
|
## Goal
|
|
|
|
A signed-in user connects a fixture repo; a cloud runner clones and installs it; discovery finds one real component; the editor renders that component on the board through the repo's own Vite in an iframe; clicking it inside the iframe selects it in the editor. One thin, honest, end-to-end vertical through every seam that matters: control plane ↔ runner provisioning, runner ↔ repo toolchain, and editor ↔ iframe canvas across the origin boundary (ADR-027/028/029).
|
|
|
|
## Why
|
|
|
|
Every Veect risk that matters lives in the seams, not the parts. The original tech spec front-loaded exactly this with its M0 walking skeleton, but its acceptance criteria died with the Electron distribution (ADR-027). Nothing yet proves the hosted spine works at all, and every subsequent PRD (workspaces, discovery, design-doc, codegen, projects, ai) builds on these seams. If the spine is wrong, we must find out before nine PRDs are stacked on it.
|
|
|
|
**Sequencing note:** this epic builds on the sibling `platform-retrofit` epic (clean floor, ADR-022 traces, scaffolded optional cores incl. `core-events` + `core-realtime`, pre-approved editor deps). `platform-retrofit` must complete before this epic starts; cross-epic `depends-on` frontmatter is not supported, so this note (and story 01's Why) is the dependency record.
|
|
|
|
## Stories
|
|
|
|
- [ ] [01 — vite-kitchen fixture + git-serving test helpers](01-vite-kitchen-fixture/_story.md)
|
|
- [ ] [02 — core-runner-protocol package](02-core-runner-protocol/_story.md)
|
|
- [ ] [03 — workspaces feature core: connect, status, list + encrypted credentials](03-workspaces-feature-core/_story.md)
|
|
- [ ] [04 — runner app: protocol server, clone, install](04-runner-app-protocol-clone-install/_story.md)
|
|
- [ ] [05 — runner scan + preview adapter + canvas agent](05-runner-scan-and-preview-adapter/_story.md)
|
|
- [ ] [06 — IRunnerProvisioner port + process/Docker implementations](06-runner-provisioner-port/_story.md)
|
|
- [ ] [07 — runner lifecycle: events + realtime channel](07-runner-lifecycle-events-and-realtime/_story.md)
|
|
- [ ] [08 — discovery feature: registry + scan ingestion](08-discovery-feature/_story.md)
|
|
- [ ] [09 — editor package: board, frame, canvas-protocol client](09-editor-package/_story.md)
|
|
- [ ] [10 — web-next wiring: connect UX, staged progress, editor route](10-web-next-wiring/_story.md)
|
|
- [ ] [11 — flagship e2e: connect-to-selection](11-flagship-e2e/_story.md)
|