← Files Planning SkillsARCHIVED FILE

templates/executable-breadboard.md

3.98 KB · Nov 3, 2026 · 19:05 UTC

↓ Download file

---
planning: true
shaping: true
artifact_type: executable-breadboard
status: draft
source_of_truth: true
feeds:
  - context-packet
  - implementation
  - reflection
---

# [Project] — Executable Breadboard

# Context Card

## Use this when
An agent or engineer is ready to implement a selected slice and needs concrete examples, fixtures, expected outputs, and tests.

## Must preserve
- selected slice ID and boundary
- stable place, affordance, store, contract, and state IDs
- field names, required/optional distinctions, enum values, and nullability when specified
- example starting data
- expected outputs and visible consequences
- edge cases and acceptance tests
- open decisions the agent must not invent

## Ignore unless asked
- rejected shapes
- future slices
- production schemas
- framework-specific implementation details
- broad refactors outside the selected slice

## Source references
- Framing artifact:
- Shaping artifact:
- Breadboard artifact:
- Slice artifact:
- Interface contract artifact, if split out separately:

## Selected slice

| ID | Slice | Demo path | Produces | Explicit exclusions |
|---|---|---|---|---|
| V1 | ... | ... | ... | ... |

## Relevant breadboard structure

### Places

| ID | Place | Why it matters for this slice |
|---|---|---|
| P1 | ... | ... |

### UI affordances

| ID | Place | Affordance | Control | Wires Out | Returns To |
|---|---|---|---|---|---|
| U1 | P1 | ... | ... | -> N1 | ... |

### Non-UI affordances

| ID | Place | Affordance | Control | Wires Out | Returns To |
|---|---|---|---|---|---|
| N1 | P1 | ... | call | -> S1 | -> U1 |

### Stores and state

| ID | Store / State | Starting value | Expected change |
|---|---|---|---|
| S1 | ... | ... | ... |

## Rules for this slice

- ...

## Interface contracts

Use this section when the slice crosses a meaningful boundary: UI -> backend, frontend -> API, service -> store, agent -> tool, import -> parser, or external integration.

| ID | Trigger / Wire | From | To | Input shape | Output shape | Branches / errors | Open decisions |
|---|---|---|---|---|---|---|---|
| C1 | U1 -> N1 | ... | ... | ... | ... | ... | ... |

## Example starting data / fixtures

Describe concrete records, users, objects, stores, or external responses the implementation can use as test fixtures.

- user_1: ...
- record_1: ...
- starting state: ...

## Example runs

### RUN1 — Happy path

**Given**
- ...

**When**
- ...

**Then**
- ...

**Expected user-visible result**
- ...

**Expected state changes**
- ...

**Expected side effects**
- ...

### RUN2 — Edge case

**Given**
- ...

**When**
- ...

**Then**
- ...

## Edge cases

| Case | Starting condition | Action | Expected result | Test needed? |
|---|---|---|---|---|
| E1 | ... | ... | ... | yes/no |

## Acceptance tests

Write acceptance tests in plain language or Gherkin-style prose.

- Given ...
- When ...
- Then ...

## Verification target

This slice is complete when:

- [ ] ...
- [ ] ...
- [ ] ...

## Open decisions the agent must not invent

- ...

## Agent handoff prompt

Use this executable breadboard as the build contract for the selected slice.

Before writing code, restate the selected slice, list the fixtures or starting data, identify the interface contracts that must be preserved, identify edge cases and tests implied by the example runs, and flag any missing decisions you would otherwise have to invent.

Then implement only the selected slice.

Do not rename stable IDs, fields, states, enum values, or boundary names unless explicitly asked. If implementation reality conflicts with the executable breadboard, stop and propose a planning update.

## Self-check

- [ ] The selected slice is explicit.
- [ ] The example starting data is concrete enough to run mentally or in tests.
- [ ] Expected outputs are observable.
- [ ] State changes and side effects are named.
- [ ] Boundary-crossing data shapes are specified or flagged as open decisions.
- [ ] Edge cases are listed.
- [ ] Acceptance tests prove the slice works.
- [ ] Open decisions are flagged instead of invented.

SHA-256: ec332b7e12a13485475e61de00e1da7518914f277489a0c8fa7a003525a3f7ac