| name | orchestrating-cybernetic-pregoal |
| description | Use when resuming an existing v1 run that already requires pre-goal control-chain compilation. |
Orchestrating Cybernetic Pre-goal
Legacy v1 compatibility only. New commitment-controlled runs have no pre-goal
compiler and execute commitment.control.json directly.
Overview
Coordinate approved JSON control artifacts before runtime execution.
Read the rule files before acting:
references/orchestration-protocol.md
references/subagent-review-roles.md
references/output-and-final-checks.md
references/pregoal-detailed-rules.md
../references/transition-gate-protocol.md
Process Need Check
A user request to use a heavier or lighter process is not sufficient by itself.
Use $routing-cybernetic-workflows when control-entry need is unclear and
$framing-cybernetic-intent for pre-task intent. Do not create controlled-run
artifacts when ordinary direct work or bounded_runtime preserves the
controlled run target with less evidence/context/review budget.
Ownership
It may update run control files. Route semantic changes to their owning skill;
never execute target work or start /goal.
Required Inputs
Require approved requirements.control.json; otherwise return to requirements
analysis.
Requirements approval is not pre-goal invocation, and predictor output is not pre-goal invocation.
Start only when the latest user message explicitly invokes $orchestrating-cybernetic-pregoal
or an already active orchestration run is being resumed.
Review And Gates
Review subagents are allowed when provenance is required; never ask separate
authorization. If unavailable, leave review unapproved and report the external
wait.
Approved review must include counterexample-gate before runtime compilation.
It must execute the requirements-approved counterexample_gate_contract and
each blocking outcome's per-outcome gate. Self-written evidence is not enough.
Regression rule: a required /api/v2 implementation must not be accepted as
legacy Drogon compatibility readiness; that is NeedsRevision.
Non-passing checks identify invariant, typed owner, stage, counterexample, and
artifact hashes. Route by owner; mechanism suggestions are nonbinding.
Before every pre-goal transition, run scripts/orchestration_guard.py for the
matching state. If information_sufficiency_check fails, route to
RunInformationSufficiencyCheck by running
.agents/skills/analyzing-cybernetic-requirements/scripts/requirements_information_loop.py --run-dir <run-dir> --json; follow its next_action and rerun the gate. Do
not treat missing facts as design assumptions, and do not ask the user to
authorize internal counterexample review.
Compile Gate
Do not compile runtime.control.json until review verdict is Approved. Expanded
chains also require design, goal, plan, and review statuses to be approved.
Candidate, dirty, or needs-revision artifacts may not enter runtime compilation.
Run both structural gates before outputting the runtime /goal:
control_chain_guard.py --run-dir docs/cybernetics/runs/<slug>
python3 .agents/skills/using-control-json/scripts/validate_control_chain.py docs/cybernetics/runs/<slug>
The second command must return ok: true. These are structural gates; the
approved counterexample-gate is the quality gate.
Expanded runtimes load/hash generation control_refs, project the plan's
ordered work packages and action alignment into execution_policy, and require
content-resolved evidence components for every mainline work package.
Run after-runtime-compile before outputting the pointer.
Runtime Amendment Orchestration
When runtime writes control.amendment.proposed, continue only when
strategy_policy is reviewed_replanning, approved anchors are preserved,
the patch binds a complete generation-specific plan, independent review
approves that exact plan and patch, and generation switch passes guard. The
orchestrator then switches automatically. A proposal that changes semantic
base, required outcomes, or commitment authority is not an amendment; return
it to human commitment instead of trying to approve it inside the amendment
flow. A successful switch returns agent-owned ResumeRuntimeGeneration; load
the new current_generation and continue without asking the user. With
frozen_strategy, stop and report the decision needed.
State Machine
Use scripts/orchestration_guard.py --state <state> --run-dir <run-dir> before
each transition. A nonterminal transition-gate result is not a report to the
user; execute its next_action and run the gate again.
If the gate reports agent_must_continue: true, continue internally in the
same turn. Do not ask the user to authorize RunInformationCounterexampleReview
or other agent-owned review subagents.
Main transitions: RequirementsMissing, RequirementsComplete, DesignReady,
GoalReady, PolicyReady, ReviewApproved, ValidateCompiledProjection,
RuntimeGoalReady.
Terminal states are only ready, typed human/authority/external waits,
constraint-proven impossibility, or user abort; never generic Blocked.
Unknowns route to DiagnoseAndClassify. Do not cap total reviews: record
history and send repeated identical no-progress findings to
DiagnoseNonConvergence.
Final Output
Use references/output-and-final-checks.md. Output artifact paths, review
status, control summary, and the approved user-entered /goal pointer. The
runtime JSON path is the pointer's internal target, not the user-facing pointer
by itself. Do not start /goal.