Parent
#287
What to build
A source generator that turns a [GenerateBuilder] schema holder into {Holder}Builder: generic type-state markers for required steps (ADR-010), at-most-once step methods, gated Build() that invokes the [BuilderAssemble] method with name-bound arguments (optional unset → null). Emit diagnostics allocated in #289 for cap, missing assemble, binding mismatch, mutex, partial order, and related schema errors. Lock behaviour with Verify snapshots.
Acceptance criteria
Blocked by
Parent
#287
What to build
A source generator that turns a
[GenerateBuilder]schema holder into{Holder}Builder: generic type-state markers for required steps (ADR-010), at-most-once step methods, gatedBuild()that invokes the[BuilderAssemble]method with name-bound arguments (optional unset → null). Emit diagnostics allocated in #289 for cap, missing assemble, binding mismatch, mutex, partial order, and related schema errors. Lock behaviour with Verify snapshots.Acceptance criteria
{Holder}Builderwith type-state markers;Buildonly on fully-set required markers (ADR-010)[BuilderAssemble]; parameters bind by name; product type from return typeBlocked by