Skip to content

FE-829: Build-architect for spec-derived cook plans#184

Closed
kostandinang wants to merge 1 commit into
ka/fe-827-greenfield-single-treefrom
ka/fe-829-plan-build-architect
Closed

FE-829: Build-architect for spec-derived cook plans#184
kostandinang wants to merge 1 commit into
ka/fe-827-greenfield-single-treefrom
ka/fe-829-plan-build-architect

Conversation

@kostandinang

Copy link
Copy Markdown
Contributor

Stack Context

Stacked on FE-827 (#182). Part of the cook/orchestrator track: FE-800 (spec→cook-plan emitter) → FE-826 (spec-derived mode) → FE-827 (policy-selected slice layout + greenfield promotion) → FE-829.

This frontier evolves brunch plan from a sequencer into a build-architect that emits fixture-quality, cook-executable plan.yaml — closing the gap to the hand-authored reference fixtures (parallel-utils, layered-todo, resilient-pipeline), which already execute correctly in the orchestrator.

Why?

FE-800 makes brunch plan produce a faithful but un-buildable projection of the spec's requirement graph: plausible-looking depends_on that are conceptual references rather than build order, no decomposition, no join slice, no epic integration seam — so multi-slice epics produce "green checks, no assembled artifact" (the FE-800 integration-blind follow-on).

What (this PR — planning only)

Planning commit that registers the frontier and records the design in canonical docs. No code yet — draft for visibility while slice 1 is built.

  • SPEC: A100-K (contract-completeness assumption), D167-K (emitter guarantees cook-executability via a producer-agnostic PlanContract + deterministic repair), I129-K (every emitted plan satisfies the executability contract), Future Direction §Cook plan generation (build-architect arc + the deferred D160-K amendment).
  • PLAN: plan-build-architect frontier — Sequencing (Active) + Frontier Definition with the four-slice breakdown.

Slices

  1. Executability contract + deterministic repair (building now) — self-contained PlanContract.check (acyclic deps over existing ids; ≥1 verification target/slice; slice∈epic; requirement coverage; multi-slice epic carries an integration-test seam) + a repair loop that auto-fixes the mechanical class (cycle-break, mint target, synthesize epic seam) and surfaces the design class as typed warnings. No LLM, no D160-K change.
  2. Build-architect LLM stage — criteria + edges fed in, schema-constrained, reference fixtures inlined as few-shot exemplars.
  3. File-ownership / join synthesis — requires the D160-K amendment + a Slice.writes schema field.
  4. Eval harness — score generated plans on contract-conformance + structural similarity to the reference fixtures.

🤖 Generated with Claude Code

…ct spec

Add the plan-build-architect frontier (FE-829, stacked on FE-827): evolve
`brunch plan` from a sequencer into a build-architect emitting fixture-quality,
cook-executable plans.

SPEC: A100-K (contract-completeness assumption), D167-K (emitter guarantees
cook-executability via a producer-agnostic PlanContract + deterministic repair),
I129-K (every emitted plan satisfies the executability contract), and Future
Direction \xc2\xa7Cook plan generation (build-architect arc + deferred D160-K amendment).

PLAN: frontier added to Sequencing (Active #8) and Frontier Definitions with the
four-slice breakdown; resolves FE-800's integration-blind follow-on.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@kostandinang

Copy link
Copy Markdown
Contributor Author

Superseded by #185. The branch name ka/fe-829-plan-build-architect collided with merged PR #183's fallback headRefName, which shadowed this PR out of the Graphite stack. Recreated on ka/fe-829-build-architect via gt submit.

@kostandinang kostandinang deleted the ka/fe-829-plan-build-architect branch June 9, 2026 11:22
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.

1 participant