Build order
Governed Autonomy Journey
A PAA implementation begins with a bounded task under human control. You instrument the task, evaluate a worker alongside the existing process, and collect evidence. When that evidence supports a change, the task can move to a different level of oversight. Evaluation continues after every change.
The stages below walk through that process using one publishing task.
The executable quickstart uses a refund task, but follows the same governance sequence shown here. The refund approval quickstart runs propose, approve, and emergency demotion against a disposable store.
-
Stage 1
Declare the task
State: none yet; the boundary is not yet declared.
Before measuring performance, define exactly what work you are measuring. Name the input, the output, the real-world effect, and the work that remains outside the boundary.
Our running example is bounded_publication. It accepts a draft_post and may produce a published_post for either a community or professional channel. Publishing anything outside those channels is excluded.
PAA records this stable boundary in a task declaration. The declaration defines the work; it does not authorize the system to perform it.
Artifact:
declaration-
Task
bounded_publication, declaration version1 -
Boundary: input
draft_post, outputpublished_post -
initial_position:manual·deployment:disabled -
scopes:publish:community,publish:professional
deployment is disabled, required on every declaration, with no default, and set to disabled until Stage 2 instruments the existing manual effect.
Invariant: An unbounded workflow cannot enter the spectrum: no typed boundary, no evidence, no gate.
-
Task
-
Stage 2
Instrument the existing work
State: position
manual, deploymentactivefor scopepublish:communityCapture the existing workflow before adding automation. Record each draft, the published result, and the human decision so later comparisons use observable executions rather than memory.
A person still writes and publishes every post. PAA calls this manual, the first governed position: the task is active and observable, but the human performs the real-world effect.
A minimal structural check confirms that each output was recorded. Its result is the first evidence record for the task.
Artifact:
evidence_records-
Scope
publish:community, subject kindcase -
output_recorded: techniquedeterministic, evaluation basis kindinvariant, epistemic statusground_truth, authorityblocking, versionv1
A minimal structural evaluator on the human-produced output, enough to satisfy the evidence-record contract while the real quality evaluators are still absent.
Invariant: Manual is the first on-spectrum position: the human performs the effect, and the effect is observable.
-
Scope
-
Stage 3
Run the worker in shadow
State: position
manual, deploymentshadowfor scopepublish:communityNow the candidate worker turns each draft post into a candidate publication, but its output never reaches a reader. The human continues to publish the real result.
This production context reveals how the candidate behaves without giving it production authority. PAA calls this shadow operation.
The system records the candidate output beside the human-controlled outcome so the next stage can compare them. Being evaluated in production context is not the same as having production authority.
Artifact:
evidence_records-
Scope
publish:community, subject kindcase -
publication_quality: techniquellm_judge, evaluation basis kindrubric, epistemic statusproxy, authorityadvisory, versionv1 -
publication_quality: techniquehuman, evaluation basis kindhuman_gold, epistemic statusground_truth, authorityadvisory, versionv1
Both evaluators share property publication_quality without sharing technique, evaluation basis, epistemic status, or authority. This is the multiple-evaluators-per-property case.
Invariant: A shadow deployment and an advisory verdict can each accumulate evidence, but neither can authorize the governed effect.
-
Scope
-
Stage 4
Evaluate and establish evidence
State: position
manual, deploymentshadowfor scopepublish:communityHow do we know whether the worker performed correctly? A rubric-driven model and a human reviewer each judge publication_quality for the same candidate publications. Each judgment identifies what was measured, how it was produced, and which evaluator version produced it.
Individual judgments are observations. PAA keeps them as evidence so performance can be assessed across many executions.
Before governance uses that evidence, a declared policy checks which records qualify. PAA calls qualifying evidence admissible. A decision artifact freezes the 200-case window, records every inclusion and exclusion, and states whether the promotion conditions passed.
Artifact:
decision_artifact-
Scope
publish:community, decision kindpromotion, outcomeeligible -
Window:
cases:200 -
Included
194, excluded6
Every excluded reference carries a reason. An admissibility snapshot without a reason for each exclusion is not a valid decision artifact.
Invariant: Recorded evidence is not automatically admissible evidence; admissibility is a declared, snapshotted decision.
-
Scope
-
Stage 5
Promotion eligibility
State: position
manual, deploymentshadowfor scopepublish:communityThe accumulated evidence now satisfies the declared requirements for considering less oversight. PAA calls the task eligible for a different position.
Eligibility changes nothing by itself. The worker still runs in shadow, both publishing scopes remain manual, and a governance decision is still required.
Artifact:
position_projection-
deployment:shadow -
Scope
publish:communityresolves tomanual -
Scope
publish:professionalresolves tomanual
Both declared scopes still resolve to manual. An eligible outcome on a decision artifact is not itself a position_changed event.
Invariant: Eligibility is a decision-artifact outcome, not a position change. A motion must still be proposed and resolved.
-
-
Stage 6
Decide whether to change oversight
State: position
manual, deploymentshadowfor scopepublish:communityA proposal now asks governance to move publish:community from manual to human-in-the-loop review. PAA calls this proposal a motion and binds it to the decision artifact that contains the supporting evidence.
operator:jordan_lee reviews that evidence and approves the motion. A rejection would end the proposal and leave oversight unchanged.
Evidence justified considering the change. The governance decision, not the evidence, approves it.
Artifact:
motion_events-
Scope
publish:community:manualtohitl -
motion_proposed: actorsystem:promotion_rule: promotion window (200 cases) admissible and eligible per decision artifact -
motion_approved: actoroperator:jordan_lee: evidence reviewed; publication_quality agreement across both evaluators clears the promotion bar
Both rows share one motion_id and bind to the same evidence_ref and evidence_sha256 as the Stage 4 decision artifact.
Invariant: A motion is proposed and resolved by a named actor or a system actor. It does not fire itself.
-
Scope
-
Stage 7
Apply the scoped change
State: position
hitl, deploymentshadowfor scopepublish:communityThe approved motion changes one declared scope: publish:community moves from manual to human-in-the-loop review. PAA calls this level of oversight the task's position.
The professional channel remains manual. Autonomy is scoped rather than global, so approval for one channel never changes its sibling.
PAA records the change as an event. The ordered event history is the source used to reconstruct the current position.
Artifact:
motion_events-
Scope
publish:community:manualtohitl -
position_changed: actoroperator:jordan_lee: motion approved; committing publish:community from manual to hitl
This row shares its motion_id with the motion_proposed and motion_approved rows from Stage 6: three rows, one motion, one scope.
Invariant: position_changed is scoped to exactly one declared scope; no other scope is affected by the same motion.
-
Scope
-
Stage 8
Operate and keep evaluating
State: position
hitl, deploymentactivefor scopepublish:communityThe community worker now prepares each publication. Its blocking checks must pass, and a human still authorizes the final action. Low-confidence cases can route directly to the human without changing the position of the whole scope.
Evaluation continues during active operation. When a validated classifier replaces the rubric judge, PAA creates a new declaration version and starts a new evidence partition. Historical records keep the worker and evaluator context that produced them; replacement never rewrites the past or silently inherits prior authority.
Artifact:
position_projection-
deployment:active -
Scope
publish:communityresolves tohitl -
Scope
publish:professionalresolves tomanual
The active declaration is a new version. Its two scopes resolve independently: publish:community reaches hitl through a new exact-scope motion, while publish:professional remains manual.
Invariant: Deployment and evaluator succession require new declaration versions; neither silently mutates a position or an evidence record already on file.
-
-
Stage 9
Demotion
State: position
manual, deploymentactivefor scopepublish:communityPromotion did not end evaluation. After one confirmed publishing failure, the current evidence no longer supports human-in-the-loop operation for the community channel.
operator:jordan_lee approves an immediate demotion, returning publish:community to manual. The professional channel is unaffected. The same governed path that reduced oversight now increases it again.
Artifact:
motion_events-
Scope
publish:community:hitltomanual -
motion_proposed: actoroperator:jordan_lee: confirmed publish_authorization failure on one case; demotion.window (1 case) satisfied -
motion_approved: actoroperator:jordan_lee: operator-initiated demotion, committed immediately -
position_changed: actoroperator:jordan_lee: committing publish:community from hitl back to manual
All three rows share one motion_id and are committed in a single immediate operator action, for publish:community alone.
Invariant: A policy failure or an operator can demote immediately, on a one-case window, for the affected scope only.
-
Scope