Separate the objective from the model.
Start with the work you want completed, not the model you want to call. The objective describes the outcome, scope, constraints, and acceptance criteria. The model is one replaceable component that may help achieve it.
This separation makes the question clearer: “What does the next step need?” rather than “What can this one model do?”
Give the work a shared state.
Define a record of the objective, plan, permitted inputs, intermediate artifacts, unresolved issues, and approval status. Keep it distinct from any single chat transcript.
A useful state record should let a reviewer understand what changed, why it changed, and which information informed a decision. It should not silently replace evidence with a model’s summary of that evidence.
STILLPOINT
State / Policy / Routing / Review
Shared context. Explicit boundaries. Reviewable outputs.
Treat policy as a boundary.
Write down the allowed tools, approved inputs, data boundaries, and actions that require approval. A planner should not be able to expand those permissions merely by describing a new plan.
For example, a research workflow could be permitted to organize an approved source set but not send emails, browse arbitrary systems, or publish a report.
Route by the next step’s needs.
Routing is the decision about which capability should attempt a bounded piece of work. The selection can depend on the task, available context, cost limits, and evaluation criteria.
Do not treat a router’s choice as proof that the result is correct. The output still needs checks appropriate to the task, and the decision path should remain inspectable.
Make completion an explicit decision.
Separate “a draft exists,” “checks have run,” and “an authorized person approved it.” These are different states, not interchangeable labels for completion.
That distinction is the center of this architecture: an objective drives the work, components attempt the steps, and review determines whether the result is ready.