feat(ai-autopilot): bootstrap orchestrator core — scope -> architect -> build -> full-fledged loop (#122)#127
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Child of #116 (bootstrap). The spine.
Sequences autopilot's existing primitives into one flow, taking a user from nothing to a running, production-grade app:
Supervisorover the stack personas (ai-autopilot: personas + prompts library (stack-aware knowledge) #98) inside a runner (ai-autopilot: LocalRunner — first real runner adapter (host fs + child processes) #106), forwarding its events as narration over the generic surface stream (Generalize the surface stream to be event-type generic #120); the caller can interrupt viaAbortSignal.{ blockers }verdict is empty or amaxPassesbudget stops it. Prototype scope skips it.Bootstrapowns the control flow (loop, gate, interrupt) over four injectable steps, so it runs offline against stubs +FakeRunner. Default step builders wire those steps onto the real primitives:agentArchitect— anai-sdkagent +Output.object, with the decisions briefing prepended so it does not re-pitch a rejected idea.supervisorBuild— theSupervisorover a planner + persona workers.loopChecklist/loopImprove— the Loop (checklist verdict + firing the review/QA chains).Tests: orchestration with stubs (happy path, loop-until-clean, stop-at-maxPasses, prototype-skips-loop, abort, observer isolation, construction guards), each default step against real primitives, and a full end-to-end run wiring
Bootstrap+ all four default steps +AiFakeoffline. Full suite 158 green.Stacked on #120 and #121 — base is the #121 branch so this diff is bootstrap-only; it retargets to main once they merge. Merge order: #125 → #126 → this.
Closes #122.