| name | goal-workgraph |
| description | Project current source-bound work into the smallest verifier-first owner graph only when decomposition changes execution. Omit the graph for one bounded operation; compress repeated classes, derive the frontier from current evidence, and invalidate stale graphs. |
Goal WorkGraph
Mission
Project current controlling obligations into the smallest verifier-first graph
that changes execution. The graph is an advisory, ephemeral view for
$goal-actuating; it is not an authority source, event store, architecture
selector, or recursive executor.
Admission
Do not create a WorkGraph for one bounded owner operation with one known
verifier. Let $goal-actuating select that operation directly.
Use a graph only when decomposition changes at least one of:
- dependency order;
- repeated-class realization;
- proof fanout;
- safe read-only parallelism; or
- stopping behavior.
A graph that merely wraps one selected operation is ceremony.
Node
work_node:
version: WN-v2
node_id:
run_id:
kind: inspect | edit | verify | review | ask | block
description:
depends_on: []
paths: []
resource_keys: []
owner_boundary:
invariant:
proof_surface: []
verifier: []
expected_evidence: []
review_resolution_ref:
resolution_decision_id:
strategy: none | local-repair | replacement-kernel
parallel_safe: true | false
isolation: read-only | file-disjoint | serial
status: pending | selected | running | passed | failed | blocked
Graph
work_graph:
version: WG-v2
goal_id:
run_id:
source_digest:
nodes: []
frontier_policy: verifier-first | highest-risk-first | dependency-order
combine_policy: all-pass | proof-sufficient
next_ready_node_ids: []
Node status and next_ready_node_ids are projections, never continuation
authority. Recompute them from the current controlling artifacts, kernel state,
and evidence.
Compilation laws
- Current control basis. Derive nodes only from the current GoalContract,
selected review resolution or construction, current counterexamples, the
canonical applicable route-exclusion projection, subject identity, path
scope, obligations, and verifier bindings. Raw findings and suggested
patches are never nodes.
- Repeated-class compression. When many instances share one governing law
and one construction, create one canonical owner edit node. Instance
application or verification may fan out; do not duplicate architecture
nodes.
- Current-evidence frontier. Recompute the ready frontier after every
observation. Cached node state or an earlier ready frontier cannot authorize
continuation.
- Whole-graph invalidation. A change to the source, selected construction,
current counterexamples, canonical applicable route-exclusion projection,
subject identity, paths, obligations, or verifier bindings invalidates the
complete graph. Regenerate it rather than repairing stale graph state.
- Distinct stop meanings. Keep failed execution, blocked progress, and
invalid proof distinct. Stale, mismatched, fallback, or incomplete evidence
does not become an implementation failure or a repair node.
- Selected architecture only. Read-only experiments may compare candidate
behavior, but architecture selection remains outside the graph. Only the
already-selected construction may inform edit nodes. When the source is a
review resolution, only its exact synthesis-owned
selected_work_node may
become an edit node.
- Bounded parallelism. Parallelize only resource-disjoint read-only scout,
review, or proof nodes. Shared-owner mutation remains serial and every fanout
returns through
$goal-actuating.
Procedure
- Apply the admission rule; omit the graph when one direct operation suffices.
- Preserve the current source, run, owner, subject, path, obligation, and
verifier bindings.
- Split only by owner boundary, invariant, proof surface, or real dependency.
- Compress repeated instances that share one law and construction.
- Group already-quotiented review findings into one resolution decision; never
create one node per comment.
- For review-resolution-derived work, create edit nodes only from the exact
synthesis-owned
selected_work_node of an already-selected local-repair
or replacement-kernel decision; construction-only and node-free decisions
do not produce edit nodes.
- Make replacement-kernel work one serial canonical-owner node with explicit
retirements.
- Consume current counterexamples and the canonical applicable
$negative-ledger route-exclusion projection before proposing inspect work;
never infer or perform reopening locally.
- Return the currently ready node IDs to
$goal-actuating for lead selection.
Guardrails
- The graph cannot grant mutation or complete the goal.
- The graph cannot select architecture or reinterpret a selected strategy.
- Unknown review pressure routes back to classification or resolution.
- Do not persist graph state as a second control plan.
- Do not parallelize a shared owner boundary.
- Do not add refactor work unless it removes a shared cause or proof surface.