Independent analysis
Autonomous Organizations Need a Deterministic Control Spine
Generative agents can remain probabilistic—provided that the organization’s routing, authority, recovery and commitment logic is reproducible.

An autonomous organization should not try to make its agents deterministic. It should make the control system around them deterministic.
That distinction is not semantic. A durable business process must survive a worker crash, a delayed approval, a retry after an outage, or a pause that lasts days. When it resumes, the organization needs to know which work was authorized, which decision was accepted, which deadline applies, and whether an external commitment has already been made. It cannot safely rediscover those facts by asking a model to think again.
Generative-model inference is not a stable foundation for replayed control flow. Google documents that a fixed seed is only a best-effort aid to repeatability: deterministic output is not guaranteed, and changes to a model or its parameters can alter a response. This is not a defect to engineer away. Probabilistic judgment is often why an agent is useful. The architectural mistake is allowing that judgment to silently reappear inside the mechanism that must recover organizational execution.
The spine is control flow, not intelligence
A deterministic control spine is a durable orchestration layer that owns the sequence and conditions of organizational work. It routes cases, checks authorization, applies retry rules, manages deadlines and budgets, triggers escalation, and decides when a proposed action meets its commit conditions. Its job is to preserve the organization’s operational state across failure and time.
The agent belongs inside this architecture, but not at its centre. Model inference, retrieval, and other operations whose outputs may vary should sit behind explicit activity boundaries. The orchestrator calls an activity, receives a result, records the result as part of the workflow history, and then uses that recorded result to drive subsequent steps.
This pattern follows the basic constraints of durable execution. Microsoft documents that durable orchestrators use event sourcing and replay, and therefore must produce the same result on each replay. It specifically warns that direct calls to time, random-number, and UUID APIs can violate this requirement. Its recommended remedy for random-number generation is instructive: move it to an activity, because the activity return value is saved in orchestration history and is safe when the orchestration replays.
AWS describes the same principle in its durable execution guidance. A durable step has a return value that is checkpointed and retrieved on subsequent replay. Step identity must itself remain stable: a timestamp or random identifier in a step name creates a different identity and breaks replay. The implication for agent systems is direct. A model call is not control logic to rerun during replay. It is a durable activity whose accepted output must be retrieved.
The organization need not reproduce the model’s reasoning. It must reproduce what it did after accepting the model’s result.
Acceptance turns an output into a decision artifact
The boundary matters most at acceptance. Before an inference result is accepted, it is a candidate: an agent’s recommendation, classification, plan, extraction, or proposed next action. The organization may evaluate it, reject it, request another attempt, or send it to an escalator. Once the runtime accepts it for a particular workflow instance, that result becomes a decision artifact: an immutable input to later control flow.
That artifact need not be treated as inherently correct. Deterministic orchestration does not guarantee safe, accurate, or policy-compliant outcomes. It guarantees something narrower and essential: recovery will not quietly substitute a different judgment for the one on which the organization already acted.
Consider a claims workflow. An agent reviews submitted material and recommends either standard handling or specialist review. The durable spine records the recommendation, checks whether the case and budget permit the proposed route, assigns the next owner, and starts the applicable deadline. If the process crashes after assignment, recovery should reuse the accepted recommendation. Calling the model again could produce a different route, even under a fixed seed. That is not recovery; it is a new decision.
A new decision can be legitimate. New evidence may arrive. A policy may require periodic reassessment. An operator may challenge the original result. But the workflow should name this explicitly: request a new inference, apply whatever fresh authorization or evaluation is required, compare it with the prior artifact where relevant, and record why the earlier decision was superseded. Treating the invocation as replay hides a consequential change behind a technical mechanism.
What belongs on each side of the boundary
The division should be strict enough to test. The durable spine owns facts and transitions that must remain stable for the organization to operate coherently. Activities own work that obtains or produces variable results. In practice, a workflow design should make the boundary visible in code, execution history, and operational review.
- Keep routing rules, authorization checks, retry schedules, escalation paths, deadlines, budget limits, and commit conditions in durable orchestration.
- Place model inference, retrieval, external lookups, and other nondeterministic operations in explicit activities with stable identities.
- Persist the accepted activity result and the context necessary to interpret it: the workflow instance, the request, the governing policy context, and the acceptance event.
- On recovery, retrieve the recorded artifact. Do not invoke the model again merely because orchestration code is replaying.
- Model reconsideration as a new governed transition, with its own reason, evaluation, authorization, and recorded result when appropriate.
The third item is more than a logging convention. A trace can describe what appeared to happen; a durable boundary constrains what can happen during recovery. If a replayed orchestrator directly calls a model, an apparently harmless restart can change a route, a commitment threshold, or an escalation path. Persisting the accepted result outside the replayed decision logic prevents that substitution.
Recoverability is an organizational property
Azure Durable Functions separates orchestrator, activity, and entity functions, while the runtime manages state, checkpoints, retries, and recovery for long-running workflows. Those facilities are useful not only for technical jobs. They express a requirement that autonomous organizations also have: work must remain intelligible and governable when no single process remains continuously alive.
This changes how teams should test agents in production workflows. Test the agent activity for quality, schema adherence, and the conditions under which its output should be accepted. Separately test the spine for stable routing, budget enforcement, deadline behavior, retries, escalation, and recovery from checkpoints. Then test the joint boundary: a persisted agent result must lead to the same subsequent organizational transitions after restart.
Observability becomes clearer as well. Operators can inspect the accepted artifact, the policy and authorization checks that followed it, and the eventual business effect. They can distinguish an original inference from a later reassessment. They do not need to infer, from a changing transcript, whether the system recovered an old decision or made a new one.
Do not confuse replay with reconsideration
The practical rule is simple. Replay reconstructs prior execution from recorded history. Reconsideration creates new history. They require different controls.
An organization that blurs them may look autonomous while remaining operationally unstable. Its agents can revise the past whenever infrastructure restarts, a timeout fires, or a workflow is resumed. An organization with a deterministic spine makes a more modest and more durable promise: judgment can be uncertain, but the consequences of accepted judgment will not mutate by accident.
That is the right division of labor. Let agents generate, interpret, recommend, and adapt. Let durable orchestration remember what the organization accepted, enforce what it may do next, and recover without inventing a different past.
Sources
- Microsoft, “Durable Task Framework code constraints”: https://learn.microsoft.com/en-us/azure/durable-task/common/durable-task-code-constraints
- Microsoft, “Durable Functions overview”: https://learn.microsoft.com/en-us/azure/durable-task/durable-functions/durable-functions-overview
- AWS, “Durable execution step design best practices”: https://docs.aws.amazon.com/durable-execution/patterns/best-practices/step-design/
- Google Cloud, “Content generation parameters”: https://cloud.google.com/vertex-ai/generative-ai/docs/multimodal/content-generation-parameters

