---
id: 01-vite-kitchen-fixture
epic: walking-skeleton
title: vite-kitchen fixture + git-serving test helpers
type: technical-story
status: in-progress
feature: core-testing
depends-on: []
blocks: [04-runner-app-protocol-clone-install]
created: 2026-07-12T10:24:14Z
---

## Goal

Land `fixtures/vite-kitchen` — a minimal Vite + React + TS + Tailwind repo with a `Button` component — at the repo root, outside the pnpm workspace and turbo graph, plus `core-testing` helpers that serve any fixture as a local bare repo over the git protocol so integration tests can drive a real `git clone` without cloud resources.

## Why

The protocol integration suite (the load-bearing test tier of this epic) spawns a real runner against a `git daemon`-served `vite-kitchen` (tech spec §15). The fixture and its serving helpers are the substrate every runner story's tests stand on, so they land first.

**Sequencing note (cross-epic):** the sibling `platform-retrofit` epic (clean floor, ADR-022 traces, scaffolded optional cores incl. `core-events` + `core-realtime`, pre-approved editor deps) must complete before this epic starts — the PRD's "Builds on" names it. Cross-epic `depends-on` frontmatter is not supported; this note is the dependency record.

## Done when

- `fixtures/vite-kitchen` exists at the repo root: minimal Vite + React + TS + Tailwind app with a `Button` component (typed props for the docgen scan), invisible to pnpm workspace resolution and the turbo graph.
- `core-testing` exports helpers that serve a fixture directory as a local bare repo / `git daemon` remote (setup/teardown, clone URL), with tests exercising a real `git clone` of `vite-kitchen`.
- `pnpm typecheck && pnpm lint && pnpm test && pnpm conformance && pnpm fallow:audit && pnpm coverage:diff` all pass after each task.

## In scope

- `fixtures/` directory at repo root, outside pnpm workspace and turbo graph (PRD Implementation decisions).
- The `Button` component with props the react-docgen-typescript scan can discover (name + props).
- `core-testing` bare-repo/`git daemon` serving helpers for tests.

## Out of scope

- The runner's clone/install/scan of the fixture (stories 04–05).
- PAT-authenticated fixture hosting beyond what the leak-assertion tests need (real GitHub/GitLab connections are out of PRD scope).
- Additional fixtures (Next.js fixture arrives with `preview-and-nextjs-depth`).

## Tasks

- [ ] Create `fixtures/vite-kitchen` at the repo root — minimal Vite + React + TS + Tailwind app with a `Button` component (typed props) — outside the pnpm workspace and turbo graph; confirm `pnpm install` and turbo ignore it and all gates stay green.
- [ ] Add `core-testing` helpers that serve a fixture directory as a local bare repo / `git daemon` remote (setup/teardown, clone URL) with tests exercising a real `git clone` of `vite-kitchen`.
