Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save simeonpashley/641fa30d628e9b53a261eb545a2faec0 to your computer and use it in GitHub Desktop.

Select an option

Save simeonpashley/641fa30d628e9b53a261eb545a2faec0 to your computer and use it in GitHub Desktop.
Using multiple models to extend long context tasks, and increase build viability

How I Run Builds with multiple managed agents

A working-practices doc, not a research claim. This is the workflow I actually use day-to-day for building software with multi-model agent loops. It's lived, not benchmarked. If something here is useful to you, take it; if it isn't, ignore it.

The diagram lives alongside this doc as build-workflow.drawio.


The insight worth leading with

The Auditor is a context manager for the Manager, not just a quality gate.

Most agent loop designs treat the auditor role as pass/fail on worker output. In this workflow, the Auditor does that and something more important: it reads the full Worker output, code diff, and test results, and what flows up to the Manager is a compressed verdict plus a recommendation. The Manager never has to load raw Worker artifacts into its own context to decide what to do next.

That changes which resource you're optimizing for. Manager context is the scarcest thing in a long-running build session — it's holding the spec, the task graph, milestone state, and the history of decisions made so far. Every token of raw Worker output you keep out of it extends how long the Manager can run before context rot sets in.

This is why the Auditor needs to be a capable model, not a cheap one. If you run the Auditor on a small model, you get either bad audits or bad summaries, and either failure mode poisons the Manager's working state. In my fleet, Auditor and Worker draw from the same model tier (DS Flash V4, Qwen 3.6 35B MoE, with frontier runner-ups) — same capability, different role.

If you take one thing from this doc, take that.


The roles

Planner (User + Frontier model)

Refines the idea into a spec. Spec is append-only — that's the core truth of the project. Edits are appends, not rewrites, so you get a free audit trail of how the project's requirements evolved. Anything downstream that needs "the spec" gets the resolved view, not the raw append log.

Manager (Frontier model)

Decomposes the spec into a phased task list with audit gating at minor and major milestones. Makes the final call on retask vs. halt. The judgment is between local failures (this task got it wrong, next task can absorb the fix) and structural failures (the spec or plan is wrong, human needs to weigh in). This judgment is the Manager's actual value — don't try to formalize it into a rule.

Worker (Scoped, often local)

Executes one task at a time. Runs the automated tests for that task. Stops at designated checkpoints and reports out for verification. Scope discipline is what makes local models viable here — a 35B MoE doing one well-defined task with tests is a different problem than the same model trying to plan.

Auditor (Same tier as Worker)

Audits Worker output against codebase and spec. Also compresses that audit into a contracted output format (see below) for the Manager. Reports findings and recommended action.

Exit Manager (Frontier model, formerly "Debugger")

Spec conformance gate. Tests the running program with full project context. Applies surgical edits within bounded scope. If a structural fix is needed, kicks back to the Manager with diagnosis — which re-enters the audited build loop. If pass, closes session.

This role needs the largest available context window, not just the strongest reasoner. It's the one role that can't be scoped down, because validating against spec means validating against everything.

User (me, in the loop)

Manages physical handoffs between models. Can halt any window. Gets prompted by the Manager when a structural decision needs human judgment.


The Auditor output contract

This is the load-bearing piece. The Auditor's value as a context filter only works if its output format is consistent.

verdict:    pass | fail | partial
diagnosis:  one line
rec_action: continue | retask | escalate
pointer:    file / function / test

The Manager pulls more detail only on demand. A verbose Auditor that writes paragraphs of findings defeats the purpose. A terse one that just says "fail, retry" loses the information needed to decide local vs. structural.

This contract gets enforced in the Auditor's system prompt. It's one of the few places in the workflow where being prescriptive about output format pays off significantly.


How the loop actually runs

  1. Idea → Planner → spec append.
  2. Manager reads resolved spec, decomposes into task list.
  3. Manager hands a task to a Worker.
  4. Worker executes, runs tests, reports.
  5. Auditor reads full output + diff + tests. Emits contracted verdict to Manager.
  6. Manager decides: continue to next task, retask (same or different prompt), or halt for user input.
  7. At major milestones, Exit Manager validates whole-project conformance.
  8. Exit Manager passes → done. Structural fix needed → kicks back to Manager (audited path). Surgical fix in scope → applies and continues.

The user can interrupt any stage at any time. That's not a feature, it's a property of the workflow being human-in-the-loop rather than autonomous.


Spec discipline

Append-only matters more than it sounds. Two reasons:

  1. No drift. The Manager and Exit Manager are always validating against the same accumulated truth. There's no "version of the spec the Worker thought it was building against."
  2. Free history. Every requirement change is timestamped and contextual. When you look back at why a decision was made, the spec evolution shows you.

The thing to be careful about: hand downstream roles the resolved view of the spec, not the raw append log. Otherwise they'll evaluate against superseded requirements.


Model fleet (current)

Frontier (Planner / Manager / Exit Manager)

  • Primary: Opus 4.6/4.7, GPT 5.4/5.5
  • Runner-ups: Gemini Pro 3.1, GLM 5.1, Kimi 2.6, Qwen 3.6 MAX
  • Exit Manager: bias toward largest context window available.

Worker / Auditor (same tier — both jobs need real capability)

  • Primary: DS Flash V4, Qwen 3.6 35B MoE (local)
  • Runner-ups: GLM 5.1, Kimi 2.6, Sonnet 4.6, Gemini Flash 3.0, Gemini Pro 3.1, GPT 5.3

Local models cover the Worker tier when latency or sovereignty matters. The MoE preference is real — small active parameter counts hit the tok/s threshold (30–60 tok/s minimum) that makes the loop usable rather than painful.


What this isn't

It isn't autonomous. It isn't benchmarked against alternatives. It isn't a framework you can pip install. It's how I work, written down. The framing might transfer; the specific model choices won't survive contact with the next six months.

The thing I'd most want someone else to take from it is the Auditor framing. The role boxes and arrows are scaffolding. The insight that the Auditor is doing context management — that's the part worth stealing.


Build workflow diagram: build-workflow.drawio

<mxfile host="Electron" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/29.5.2 Chrome/142.0.7444.265 Electron/39.6.1 Safari/537.36" version="29.5.2">
<diagram name="Build-Workflow-v2" id="WrTtcerdQPlLpfKY2O-s">
<mxGraphModel dx="1749" dy="1771" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1700" pageHeight="1700" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="title" parent="1" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fillColor=none;strokeColor=none;fontSize=42;" value="&lt;b&gt;&lt;font&gt;Build Workflow&lt;/font&gt;&lt;/b&gt;" vertex="1">
<mxGeometry height="40" width="600" x="1110" y="440" as="geometry" />
</mxCell>
<mxCell id="idea" parent="1" style="ellipse;shape=cloud;whiteSpace=wrap;html=1;fillColor=#1ba1e2;strokeColor=#006EAF;fontColor=#ffffff;" value="&lt;b&gt;&lt;font style=&quot;font-size:18px;&quot;&gt;User has Idea&lt;/font&gt;&lt;/b&gt;" vertex="1">
<mxGeometry height="120" width="180" x="60" y="380" as="geometry" />
</mxCell>
<mxCell id="planner" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#008a00;strokeColor=#005700;fontColor=#ffffff;" value="&lt;b&gt;&lt;font style=&quot;font-size:18px;&quot;&gt;User + Frontier Planner&lt;/font&gt;&lt;/b&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Refine idea, develop spec from idea.&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Spec is &lt;b&gt;append-only&lt;/b&gt; — core truth.&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="120" width="260" x="320" y="380" as="geometry" />
</mxCell>
<mxCell id="spec_store" parent="1" style="shape=cylinder3;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;size=15;fillColor=#e3c800;strokeColor=#B09500;fontColor=#000000;" value="&lt;b&gt;&lt;font style=&quot;font-size:14px;&quot;&gt;Spec (append-only)&lt;/font&gt;&lt;/b&gt;&lt;div&gt;&lt;font style=&quot;font-size:11px;&quot;&gt;Resolved view served&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:11px;&quot;&gt;to Manager + Exit Mgr&lt;/font&gt;&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="100" width="140" x="660" y="390" as="geometry" />
</mxCell>
<mxCell id="knowledge" parent="1" style="shape=cylinder3;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;size=15;fillColor=#e3c800;strokeColor=#B09500;fontColor=#000000;" value="&lt;b&gt;&lt;font style=&quot;font-size:14px;&quot;&gt;Layered Knowledge&lt;/font&gt;&lt;/b&gt;&lt;div&gt;&lt;font style=&quot;font-size:11px;&quot;&gt;Project context, prior&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:11px;&quot;&gt;decisions, anti-patterns&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="100" width="160" x="840" y="390" as="geometry" />
</mxCell>
<mxCell id="build_box" parent="1" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#6c8ebf;strokeWidth=2;" value="" vertex="1">
<mxGeometry height="540" width="1100" x="40" y="620" as="geometry" />
</mxCell>
<mxCell id="build_label" parent="1" style="text;html=1;align=left;verticalAlign=middle;whiteSpace=wrap;rounded=0;fillColor=none;strokeColor=none;fontColor=#6c8ebf;" value="&lt;b&gt;&lt;font style=&quot;font-size:14px;&quot;&gt;Build Loop&lt;/font&gt;&lt;/b&gt;" vertex="1">
<mxGeometry height="30" width="120" x="60" y="630" as="geometry" />
</mxCell>
<mxCell id="user_block" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#1ba1e2;strokeColor=#006EAF;fontColor=#ffffff;" value="&lt;b&gt;&lt;font style=&quot;font-size:18px;&quot;&gt;User&lt;/font&gt;&lt;/b&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Prompted for action or approval of spec change.&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Manages all model handoffs.&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Can halt any window.&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="160" width="220" x="80" y="700" as="geometry" />
</mxCell>
<mxCell id="manager" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#008a00;strokeColor=#005700;fontColor=#ffffff;" value="&lt;b&gt;&lt;font style=&quot;font-size:18px;&quot;&gt;Frontier Manager&lt;/font&gt;&lt;/b&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Decompose spec into phased task list.&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Audit gating at minor + major milestones.&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Final call on retask vs halt — judgment, not rule.&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Local fix → next task list. Structural → user prompt.&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="200" width="360" x="380" y="680" as="geometry" />
</mxCell>
<mxCell id="worker" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#6a00ff;strokeColor=#3700CC;fontColor=#ffffff;" value="&lt;b&gt;&lt;font style=&quot;font-size:18px;&quot;&gt;Scoped Worker(s)&lt;/font&gt;&lt;/b&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Executes task list, runs automated tests.&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Stops at designated checkpoints.&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Reports for verification by Auditor.&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="160" width="290" x="200" y="960" as="geometry" />
</mxCell>
<mxCell id="auditor" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#d80073;strokeColor=#A50040;fontColor=#ffffff;" value="&lt;b&gt;&lt;font style=&quot;font-size:18px;&quot;&gt;Auditor&lt;/font&gt;&lt;/b&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Audits worker output vs codebase + spec.&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;&lt;b&gt;Also acts as Manager context filter&lt;/b&gt; —&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;raw worker output never reaches Manager.&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="160" width="320" x="600" y="960" as="geometry" />
</mxCell>
<mxCell id="audit_contract" parent="1" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#a0522d;strokeColor=#6D1F00;dashed=1;align=left;spacingLeft=8;fontColor=#ffffff;" value="&lt;b&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Auditor Output Contract&lt;/font&gt;&lt;/b&gt;&lt;div&gt;&lt;font style=&quot;font-size:11px;&quot;&gt;• verdict: pass / fail / partial&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:11px;&quot;&gt;• one-line diagnosis&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:11px;&quot;&gt;• rec action: continue / retask / escalate&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:11px;&quot;&gt;• pointer: file / function / test&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:11px;&quot;&gt;&lt;i&gt;Manager pulls more detail only on demand.&lt;/i&gt;&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="160" width="200" x="940" y="960" as="geometry" />
</mxCell>
<mxCell id="exit_mgr" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#008a00;fontColor=#ffffff;strokeColor=#005700;" value="&lt;b&gt;&lt;font style=&quot;font-size:18px;&quot;&gt;Frontier Exit Manager&lt;/font&gt;&lt;/b&gt;&lt;div&gt;&lt;font style=&quot;font-size:11px;&quot;&gt;(was: Debugger)&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;User test program with debugger. Watches logs, applies surgical edits within bounded scope.&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;If structural fix needed → kicks back to Manager with diagnosis (re-enters audited build).&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;&lt;b&gt;Needs whole-project context — sized for largest context window.&lt;/b&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;If pass → close session.&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="240" width="340" x="1240" y="700" as="geometry" />
</mxCell>
<mxCell id="finished" parent="1" style="ellipse;whiteSpace=wrap;html=1;fillColor=#647687;strokeColor=#314354;fontColor=#ffffff;" value="&lt;b&gt;&lt;font style=&quot;font-size:18px;&quot;&gt;Finished App&lt;/font&gt;&lt;/b&gt;" vertex="1">
<mxGeometry height="120" width="220" x="1300" y="990" as="geometry" />
</mxCell>
<mxCell id="e_idea_planner" edge="1" parent="1" source="idea" style="endArrow=classic;html=1;rounded=0;strokeWidth=2;" target="planner">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="e_planner_spec" edge="1" parent="1" source="planner" style="endArrow=classic;html=1;rounded=0;strokeWidth=2;" target="spec_store">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="e_spec_manager" edge="1" parent="1" source="spec_store" style="endArrow=classic;html=1;rounded=0;strokeWidth=1;dashed=1;" target="manager">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="730" y="600" />
<mxPoint x="560" y="600" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="e_spec_exit" edge="1" parent="1" source="spec_store" style="endArrow=classic;html=1;rounded=0;strokeWidth=1;dashed=1;" target="exit_mgr">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="e_know_manager" edge="1" parent="1" source="knowledge" style="endArrow=classic;html=1;rounded=0;strokeWidth=1;dashed=1;" target="manager">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="920" y="600" />
<mxPoint x="560" y="600" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="e_know_auditor" edge="1" parent="1" source="knowledge" style="endArrow=classic;html=1;rounded=0;strokeWidth=1;dashed=1;" target="auditor">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="920" y="540" />
<mxPoint x="920" y="600" />
<mxPoint x="840" y="600" />
<mxPoint x="760" y="600" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="e_manager_worker" edge="1" parent="1" source="manager" style="endArrow=classic;html=1;rounded=0;strokeWidth=2;exitX=0.25;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" target="worker">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="e_worker_auditor" edge="1" parent="1" source="worker" style="endArrow=classic;html=1;rounded=0;strokeWidth=2;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" target="auditor">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="e_auditor_manager" edge="1" parent="1" source="auditor" style="endArrow=classic;html=1;rounded=0;strokeWidth=2;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.75;entryY=1;entryDx=0;entryDy=0;" target="manager" value="&lt;font style=&quot;font-size:11px;&quot;&gt;contract&lt;/font&gt;">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="e_manager_user" edge="1" parent="1" source="manager" style="endArrow=classic;html=1;rounded=0;strokeWidth=2;exitX=0;exitY=0.25;exitDx=0;exitDy=0;entryX=1;entryY=0.25;entryDx=0;entryDy=0;" target="user_block">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="e_user_manager" edge="1" parent="1" source="user_block" style="endArrow=classic;html=1;rounded=0;strokeWidth=2;exitX=1;exitY=0.75;exitDx=0;exitDy=0;entryX=0;entryY=0.75;entryDx=0;entryDy=0;" target="manager">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="e_manager_exit" edge="1" parent="1" source="manager" style="endArrow=classic;html=1;rounded=0;strokeWidth=2;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" target="exit_mgr">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="e_exit_manager" edge="1" parent="1" source="exit_mgr" style="endArrow=classic;html=1;rounded=0;strokeWidth=2;exitX=0;exitY=0.75;exitDx=0;exitDy=0;entryX=1;entryY=0.75;entryDx=0;entryDy=0;dashed=1;" target="manager" value="&lt;font style=&quot;font-size:11px;&quot;&gt;structural fix&lt;/font&gt;">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="e_exit_finished" edge="1" parent="1" source="exit_mgr" style="endArrow=classic;html=1;rounded=0;strokeWidth=2;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;" target="finished" value="&lt;font style=&quot;font-size:11px;&quot;&gt;pass&lt;/font&gt;">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="halt_label" parent="1" style="text;html=1;align=center;verticalAlign=middle;whiteSpace=wrap;rounded=0;fillColor=none;strokeColor=none;fontSize=15;" value="&lt;b&gt;&lt;font style=&quot;color: rgb(204, 0, 0);&quot;&gt;User can halt any window&lt;/font&gt;&lt;/b&gt;" vertex="1">
<mxGeometry height="20" width="220" x="180" y="890" as="geometry" />
</mxCell>
<mxCell id="e_halt_worker" edge="1" parent="1" source="user_block" style="endArrow=classic;html=1;rounded=0;strokeWidth=4;dashed=1;strokeColor=#cc0000;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" target="worker">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="160" y="960" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="e_halt_auditor" edge="1" parent="1" style="endArrow=classic;html=1;rounded=0;strokeWidth=3;dashed=1;strokeColor=#cc0000;entryX=0;entryY=1;entryDx=0;entryDy=0;startSize=10;endSize=10;" target="auditor">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="130" y="1010" />
<mxPoint x="180" y="1240" />
<mxPoint x="600" y="1240" />
</Array>
<mxPoint x="160" y="960" as="sourcePoint" />
</mxGeometry>
</mxCell>
<mxCell id="e_halt_exit" edge="1" parent="1" source="user_block" style="endArrow=classic;html=1;rounded=0;strokeWidth=3;dashed=1;strokeColor=#cc0000;exitX=1;exitY=0;exitDx=0;exitDy=0;entryX=0.041;entryY=0.067;entryDx=0;entryDy=0;entryPerimeter=0;" target="exit_mgr">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="410" y="660" />
<mxPoint x="780" y="650" />
<mxPoint x="1240" y="690" />
</Array>
<mxPoint x="1240" y="700" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="frontier_panel" parent="1" style="rounded=0;whiteSpace=wrap;html=1;align=left;spacingLeft=10;fillColor=#008a00;fontColor=#ffffff;strokeColor=#005700;" value="&lt;b&gt;&lt;font style=&quot;font-size:16px;&quot;&gt;Frontier (Planner / Manager / Exit Mgr)&lt;/font&gt;&lt;/b&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Opus 4.6 / 4.7&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;GPT 5.4 / 5.5&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Runner-ups&lt;/font&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Gemini Pro 3.1&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;GLM 5.1&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Kimi 2.6&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Qwen 3.6 MAX&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:11px;&quot;&gt;&lt;i&gt;Exit Mgr: bias toward largest context window — needs whole-project view.&lt;/i&gt;&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="280" width="260" x="1280" y="1270" as="geometry" />
</mxCell>
<mxCell id="worker_panel" parent="1" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#6a00ff;strokeColor=#3700CC;align=left;spacingLeft=10;fontColor=#ffffff;" value="&lt;b&gt;&lt;font style=&quot;font-size:16px;&quot;&gt;Scoped Worker&lt;/font&gt;&lt;/b&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;DS Flash V4&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Qwen 3.6 35B MoE (local)&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Runner-ups&lt;/font&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;GLM 5.1&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Kimi 2.6&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Sonnet 4.6&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Gemini Flash 3.0&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Gemini Pro 3.1&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;GPT 5.3&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="260" width="240" x="100" y="1280" as="geometry" />
</mxCell>
<mxCell id="auditor_panel" parent="1" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#d80073;strokeColor=#A50040;align=left;spacingLeft=10;fontColor=#ffffff;" value="&lt;b&gt;&lt;font style=&quot;font-size:16px;&quot;&gt;Auditor&lt;/font&gt;&lt;/b&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;DS Flash V4&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Qwen 3.6 35B MoE (local)&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Runner-ups&lt;/font&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;GLM 5.1&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Kimi 2.6&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Sonnet 4.6&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Gemini Flash 3.0&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;Gemini Pro 3.1&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:13px;&quot;&gt;GPT 5.3&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size:11px;&quot;&gt;&lt;i&gt;Same tier as Worker — context filter for Manager only works if Auditor is capable.&lt;/i&gt;&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="320" width="260" x="380" y="1280" as="geometry" />
</mxCell>
<mxCell id="cli_placeholder" parent="1" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#6d8764;strokeColor=#3A5431;dashed=1;align=left;spacingLeft=10;fontColor=#ffffff;" value="&lt;b&gt;&lt;font style=&quot;font-size:14px;&quot;&gt;CLI / IDE layer&lt;/font&gt;&lt;/b&gt;&lt;div&gt;&lt;i&gt;Opencode, Claude Code, VsCode, Ect&lt;/i&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="80" width="280" x="700" y="1280" as="geometry" />
</mxCell>
<mxCell id="legend" parent="1" style="rounded=0;whiteSpace=wrap;html=1;fillColor=#6d8764;strokeColor=#3A5431;align=left;spacingLeft=10;fontColor=#ffffff;" value="&lt;b&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;Legend&lt;/font&gt;&lt;/b&gt;&lt;div&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;— solid: data / control flow&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;— dashed: context read (spec / knowledge)&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;color: rgb(204, 0, 0); font-size: 14px;&quot;&gt;— red dashed: user halt / interrupt&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="100" width="280" x="700" y="1380" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment