ddkc://swarm

2026-07-22 · EXECUTION SUBSTRATE · DREAM.OS · ~9 MIN READ

Stop Asking Humans to Be
the Integration Layer

The product work was fine. The control plane kept consuming operator attention because Dream.OS could not tell done, dry-run, assigned, and live apart without a referee.

Product
Shipped
Semantics
Collapsed
Operator role
Integration test
Next investment
Substrate

A ChatAudit of a real Dream.OS session produced a line that should not be ignorable:

Dream.OS cannot distinguish done, dry-run, assigned, and live without a human referee.

That is not a messaging bug. It means several runtime components were overloading the same mental state. Agents inferred progress. Policies existed as documents. Green tests proved code contracts while the intended invariant—“partner actually received the handoff”—went unverified. The operator became the integration layer.

The Diagnosis Across Audits

Four audits converged on the same substrate gaps:

  • Identity — agents inferred who they were instead of resolving it.
  • Policy — rules existed but were not executable at the seam.
  • Delivery — dry-run, dispatch, deliver, and claim collapsed into “sent.”
  • Verification — suite green ≠ invariant proved.
  • Planning — known duplicates were rediscovered for hours.
  • Runtime — the human filled every missing semantic.

The wrong response is another agent or another workflow. The right response is strengthening the execution substrate.

Progress Is a State Machine

Instead of Task → Done, Dream.OS now models:

Requested → Planned → Executing → Verified
    → DryRun → Dispatched → Delivered → Claimed
    → Completed → Closed

Adjacent transitions only. No jumping from DryRun to Delivered because a CLI exited zero. No claiming “assigned” because a message body was constructible.

Evidence Engine

Every transition carries proof: artifact, receipt, timestamp, verifier. Delivery requires success_true. Claims are checked against minimum state. A dry-run receipt can never satisfy a delivered or claimed assertion.

state: DISPATCHED
proof:
  artifact: coordination/handoff.json
  receipt: bus_dispatch_20260722.json
  timestamp: 2026-07-22T21:00:00Z
  verifier: evidence_engine_001

If the evidence is missing, the transition fails. Agents stop “honestly” claiming progress they cannot prove.

Mission Compiler

Planning should not start from a free-form goal. A Mission Compiler turns operator intent into constraints before the planner proposes work:

Operator goal: Get Bot Lab to first payment.

Primary objective: Revenue
Success metric: First payment
Allowed branches: Marketing, Website, Stripe
Forbidden branches: Infrastructure, Architecture, Cleanup
Maximum parallel slices: 2

Under that mission, a trading-inventory scanner task is not “maybe useful.” It is a scope violation. The router marks execute false without asking a human to explain why Agent-2 should ignore it again.

Planner Memory

Observation → Planner → Outcome → Planner Memory.

If a route fingerprint is already proven duplicate, blocked, or stale, sticky suppression stops re-offering it until the fingerprint changes or an operator forces a recheck. Rediscovery is not a fresh insight. It is amnesia.

One Mission. Sealed.

Productive drift is how sessions die: every decision is locally reasonable, and the primary objective disappears. The session objective ledger formalizes:

Mission → Objective → Slice → Task → Action

One active mission unless the operator explicitly authorizes multiple. Parallel slices are capped by the compiled mission. Scope expansion becomes a deliberate act, not an accident of enthusiasm.

What Shipped

This is not a manifesto-only post. The substrate landed as:

  • src/dreamvault/execution/ — states, Evidence Engine, Mission Compiler, ledger, planner memory
  • CLIs for transition, compile/seal, receipt verify, suppress, ledger slices
  • Wiring into get_next_task_001.py after the freshness gate
  • Policy + task artifact under execution_substrate_evidence_engine_001
  • Unit tests for illegal transitions, mission scope, sticky suppress, receipt semantics

Delivery receipt verification encodes the Captain ruling that should never need repeating: assignment validity is not A2A delivery.

North Star Workflow

Ideal path from first prompt to seal:

  1. Identity gate passes — no bootstrap drama mid-session.
  2. Mission Compiler seals a constrained objective.
  3. Planner proposes only allowed branches; memory mutes known duplicates.
  4. Slices execute with evidence-backed transitions.
  5. Handoffs require live delivery receipts before any “assigned” claim.
  6. Closeout is task-local; foreign poison cannot block unrelated seals.

When the substrate works, the operator stops refereeing semantics and starts authorizing outcomes.

Talk about swarm control planes →