Skip to content

feat(orchestration): starter recipes + getRecipes registry (#10) - #24

Merged
zaridan merged 1 commit into
mainfrom
zaridan/feat-orch-10-starter-recipes
Jun 24, 2026
Merged

feat(orchestration): starter recipes + getRecipes registry (#10)#24
zaridan merged 1 commit into
mainfrom
zaridan/feat-orch-10-starter-recipes

Conversation

@zaridan

@zaridan zaridan commented Jun 24, 2026

Copy link
Copy Markdown
Owner

Closes #10.

Adds two built-in recipes to the token-free recipe director (alongside #9's implement_then_review) and a registry the #11 picker can list. Edits only recipe-director-recipes.ts + its test — no picker/launch/UI changes (#11 owns those and only reads getRecipes()).

What's added

  • single_worker_pr — one task (deliver), no track/deps. Its track defaults to the task key → its own worktree/branch → exactly one PR. A generic "do the whole job and open a PR" spec.
  • repro_fix_verify — three tasks on one shared track (repro-fix-verify), chained repro → fix → verify via dependsOn. The chain is a total order on the track, which satisfies the coordinator's same-track ordering guard (it refuses same-track tasks not totally ordered by deps, since they'd race one checkout). Each spec instructs the worker to commit its artifact (the failing test, the fix) so the next task in the shared worktree sees it.
  • getRecipes(): Recipe[] — returns all three built-ins in display order, as a fresh array so callers can't mutate the registry.

Tests

  • Each new recipe compiles to the right tasks/tracks/deps (single_worker_pr = 1 task, own track; repro_fix_verify = 3 same-track, dep-chained).
  • repro_fix_verify's deps form a strict total order on its track.
  • getRecipes() returns all three; exposes { name, description } shape; returns a fresh (non-mutable) array.

Verification

vitest (13 pass), typecheck, oxlint, and electron-vite build all green.

Merge note

#11's picker depends on getRecipes(), so this should merge first. Do not merge yet.

🤖 Generated with Claude Code

Add two built-in recipes to the token-free recipe director, alongside
#9's implement_then_review:

- single_worker_pr: one task, no track/deps → its own worktree → one PR.
- repro_fix_verify: three tasks on one shared track, chained
  repro→fix→verify via dependsOn so the deps form a total order on the
  track (satisfying the coordinator's same-track ordering guard). Each
  spec instructs the worker to commit its artifact so the next task in
  the shared worktree sees it.

Add getRecipes(): Recipe[] returning all three built-ins in display
order (fresh array so callers can't mutate the registry) for the #11
picker to list.

Tests cover both new recipes compiling to the right tasks/tracks/deps,
the repro_fix_verify deps forming a strict total order, and getRecipes
returning all three.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@zaridan
zaridan merged commit 50c2dd5 into main Jun 24, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Starter recipes: single_worker_pr, implement_then_review, repro_fix_verify

1 participant