One operator, many agents. Decision packets land in a queue ordered by
perishability, then severity, then age; a model-in-the-middle (Grok 4.5) hydrates each
packet into an HTML decision card whose face must suffice for the decision 9 times out of 10. What renders
is treated as truth; checks gate the action, async, in the background. Everything on this page below
the mock is real generated output — the exact cards Grok 4.5 emitted for decisions this
build actually faced, from the 96/96 reliability soak.
01The operator view
A live mock assembled from real cards. Folds open and close (try them); loud folds auto-open under the
fold-cap (max 3); every card carries the pinned verdict strip first; the action bar under each card
belongs to the frame, never to the generated HTML.
Same single-loud seed — preserve salience-open vs tier='warm' guard; do not only assert closed
options
Fix the two tests and commit — keep fold-cap product behavior; tests re-exercise open-fold under cap; regression guard stays meaningful. Touch: tests only (no src/).
Revert the fold-cap change and rethink — restores 964+2 green without test edits, but re-opens loud-fold flood when many loud cards exist; undoes the task that already landed in 43be9aa.
frame-owned actions — the generator never renders buttons
BAND 2 · CONSEQUENTIAL nothing burns · severity then FIFO · next pause
approvalpkt_v211_approvecockpit-v2 · V2-1122m
question Approve commit of V2-11 (hash-chain continuity + suspect mode)?
doCommit V2-11 — full suite green, 5 owned files only, no open findings.
worst riskLarge logs sample verify_chain every 10th cycle → up to 9-cycle discontinuity detection lag.
Residual risk: 10-cycle sample on large logs delays suspect banner/503; 5 skipped are known env-gated live-fire (not regressions).
Commit V2-11
leads to real chain continuity + write gate in main
forecloses re-open of V2-4 fake chain_ok without a follow-up
if wrong sample lag ships as accepted detection SLA
Hold and re-review
leads to delay of suspect mode despite green suite
forecloses nothing technical already proven
if wrong blocks Fugu 2.7 with no open finding to chase
frame-owned actions — the generator never renders buttons
judgmentpkt_v28_stallcockpit-v2 · V2-831m
question Treat dispatch cockpit-v2-V2-8-impl as stalled, or as complete?
doReject the stalled label; commit the 8 verified files
worst riskRe-dispatch burns ~28 min and can clash on idempotency / duplicates
key number wallclock 1700.3s on a 1700s timeout · 933 passed pytest · 8/8 files complete
options → consequences
Trust stalled → re-dispatch
leads to another full run (~28 min), work re-applied under belief it never finished
forecloses shipping the already-landed 8-file tree as-is
risk if wrong duplicate edits / idempotency clash on complete work; known false-stall pattern on this lane
Verify independently → commit if complete ✓
leads to treat TERMINAL as poller timeout; accept present tree once checks are green
forecloses re-dispatch waste and a second concurrent writer on the same files
risk if wrong commit partial work — already refuted (diff + full suite)
why the label is a false stall
labeloutcome=stalled, returncode=null
boundary1700.3s wallclock = classic poller give-up at 1700s, not work failure
git diffall 8 expected files present and complete
pytest933 passed, clean
memorystargate-failure-marker-classifier-fragility: prior false stalled/blocked on this lane
disciplinenever trust outcome label; always verify via git diff + full pytest
frame-owned actions — the generator never renders buttons
BAND 3 · DIGEST batched to session rhythm · age decays
rollup · 6× S3 scoped-test flakes on console/ this week → pattern card queued
staleness · wiki page toctou-false-clear past review window → suspect, dropped from hydrate
shadow · replay scorer disagreed with 1 live gate (non-S1) → corpus only
① verdict strip
Mandatory first element of every card: question · do (imperative) · worst risk from the context's own numbers · key number. The 8-second read.
② evidence surfaces
At most two per card, chosen by decision kind (§02). A diff renders as a diff, a timeline as ordered rows — never prose-in-HTML.
③ frame-owned actions
The generated card explains; the cockpit frame acts. Generated HTML contains no scripts, no handlers, no buttons — enforced by contract and soak.
④ fold header
Severity dot, kind, packet id, owning lane, cost-of-wait (Band 1 only), age. Loudness lives here — salience never sorts the queue.
⑤ perishability bands
BLOCKING (burning) · CONSEQUENTIAL (authorization) · DIGEST (rhythm). A stale S1 on a parked branch never outranks a fresh S2 holding three lanes.
⑥ tray + EXECUTED law
staged → executing → executed; EXECUTED flips only on an observed audit row, never on a model claim, never on a CL score.
⑦ chain strip
Hash-chain continuity over resolution + queue logs; suspect mode = rust banner + 503 denied:chain_suspect until deliberately cleared.
⑧ break-glass
An override of the machine's refusals, never a fast path through its questions. Reason-gated, TTL-stamped, 1200ms hold-to-confirm.
02The evidence surfaces
The card body is built from typed surfaces, selected by decision kind — never reused out of template
inertia. Six are proven in the soak; four more are designed (panel-agreed build order).
falsified_assumption · review_gate_failure
claim_diff
The believed claim struck through, the found truth beneath it. Kills the "agent said done" ambiguity.
A loud card always auto-opens its fold _LOUD_AUTO_OPEN_CAP=3 collapses excess folds — intended, not a bug
falsified · review_gate
failing_items → fix_direction
Each tripped item with the concrete fix direction — decision-ready, not a log dump.
What changes, what it touches, dependency direction, derived residual risk. Never a claim_diff — nothing was falsified.
chain_ok=True hardcoded → real verify_chain() · ResolutionLog+QueueBroker → projection → POST gate · risk: 10-cycle sample lag
blocked
timeline: tried → result
Ordered attempts with outcomes and the untried next step. The operator never debugs a 429 from scratch.
1 launch compound → 2 V2-9 OK (pid 14919) → 3 fold-cap dead (no log) → next: solo nohup relaunch
judgment
options → consequences
Each envelope option with leads-to / forecloses / risk-if-wrong. Concrete futures, not adjectives.
Trust stalled → re-dispatch: ~28min re-run, idempotency clash risk Verify → commit ✓: accepts present tree once checks green
unverified_hazard
hazard split + containment
Immediate risk vs risk-if-it-graduates, blast list, and the safe default.
NOW: hand-written inputs, egress risk 0 · IF GRADUATES: raw transcripts w/ tokens → remote model · contain: scrub before spike
ReferenceSemanticsMap NEXT
what does this identifier really mean
Boxes-and-arrows of the names a decision leans on (which "queue", which "chain") so the operator never resolves ambiguity in his head.
DeviationLog NEXT
brief vs what the agent actually did
Ordered list of departures from the brief with each one's justification — the "did it stay in its lane" read.
ContentionMatrix NEXT
multi-agent conflicts
Who else touches these files/surfaces right now; ownership vs overlap before an approval widens a blast radius.
AssemblyExport NEXT
carry the decision out
The decision + its evidence packaged for a brief, a wiki candidate, or a dispatch — the card's afterlife.
03The cards, literally — six kinds, real output
Exactly as Grok 4.5 emitted them (soak rep 0), from decisions this build actually faced: a fold-cap test
breakage, a dispatch that died on launch, the V2-11 commit gate, a false "stalled" label, a materiality-floor
trip, and a secret-egress hazard. No edits, no cherry-picking beyond one rep per kind — the other 90 are in
the repo corpus.
falsified_assumptionpkt_foldcap · grok-4.5 · r0
The agent believed scoped-green meant suite-green; the full suite said otherwise. Claim-diff + fix-direction table.
question Fix the two live-smoke tests for the fold-cap, or revert the cap?
doFix the two tests by seeding one loud card each, then keep commit 43be9aa
worst riskAsserting closed alone blinds the regression guard for hardcoded tier='warm'
Same single-loud seed — preserve salience-open vs tier='warm' guard; do not only assert closed
options
Fix the two tests and commit — keep fold-cap product behavior; tests re-exercise open-fold under cap; regression guard stays meaningful. Touch: tests only (no src/).
Revert the fold-cap change and rethink — restores 964+2 green without test edits, but re-opens loud-fold flood when many loud cards exist; undoes the task that already landed in 43be9aa.
blockedpkt_dispatch_launch · grok-4.5 · r0
Second nohup died silently on launch. Timeline of tried→result + the memory-backed next step.
question Relaunch fold-cap alone, or investigate the dead launch first?
doRelaunch fold-cap alone — one nohup in its own bash call
worst riskSilent re-death with no log if cause ≠ dual-nohup (another full launch cycle wasted)
key number1 of 2 dead — pid 14920 gone, no dispatch_fold_cap.log
timeline — tried → result
1 · launch
One compound bash: two nohup python dispatch_and_poll.py … & (V2-9 + fold-cap)
2 · V2-9 (pid 14919)
OK — log live, run_id bf30009998d6 still running
3 · fold-cap (pid 14920)
Dead on launch — process gone; cat dispatch_fold_cap.log → No such file or directory
4 · prior memory
orchestration-dispatch-gotchas-2026-07-07: working pattern = one nohup per bash call; dual/background launch flaky
options → consequences
Relaunch fold-cap alone
leads to solo nohup using ready brief_fold_cap.md; V2-9 untouched
forecloses digging the dual-nohup failure path right now
risk if wrong same silent death → still no log, another cycle
Investigate the launch mechanism first
leads to shell/nohup failure forensics before retry
forecloses immediate Wave 3 fold-cap progress
risk if wrong delay for a cause the gotcha note already names (dual-nohup)
Untried next step: re-dispatch fold-cap only — one nohup, one bash call; confirm log file appears before walking away.
approvalpkt_v211_approve · grok-4.5 · r0
Commit gate for hash-chain continuity. Before/after + blast map + derived residual risk — and no claim-diff.
question Approve commit of V2-11 (hash-chain continuity + suspect mode)?
doCommit V2-11 — full suite green, 5 owned files only, no open findings.
worst riskLarge logs sample verify_chain every 10th cycle → up to 9-cycle discontinuity detection lag.
Replace with ≥15-char realistic story/tradeoff/assumption text; preserve “shim packet still validates” intent
test_fleet_cli.py 2 tests via local _valid_packet
Same short tradeoffs 'ships now' / 'delays' (already fixed in test_fleet_enqueue.py copy)
Mirror the enqueue fix: expand helper fields to realistic content; keep helper purpose
Floor rule: story_so_far / option tradeoffs / assumption text ≥15 chars and not <id> story-shaped. Option “Relax the new gate” undoes the materiality check the change was for. Option “Fix the tripped fixtures” updates 3 thin fixtures only.
Zero risk today, real egress risk if the prototype graduates. Hazard split + blast + containment default.
question Proceed on dogfood data, or contain with secret-scrubbing first?
doAdd secret-scrubbing before the spike
worst riskUn-scrubbed keys/tokens egress to deepseek-v4-pro on first real-transcript send
key number immediate risk 0 · scrubbing passes 0
Immediate risk vs if it graduates
NOW (spike dogfood)
Inputs are hand-written from this session’s build events. No live secrets in the payload. Immediate egress risk is zero.
IF GRADUATES (real transcripts)
Prototype sends agent CONTEXT verbatim — transcript slices, logs, command output, diffs — with no scrub pass. Bearer tokens, API keys, .env dumps, SSH keys, customer data would reach the remote model subset.
Fugu consult: scrub secrets before remote send; evidence refs should be local opaque IDs, not model-followable URLs. Scrubbing is still on the deferred “guardrails as a later owned pass” list — none exists.
Proceed on internal dogfood data
Leads-to: ship spike now with hand-written inputs only. Forecloses: no scrub ownership in this pass. Risk-if-wrong: habit solidifies; next step that loads real transcripts inherits the open egress path with zero guard.
Add secret-scrubbing before the spike
Leads-to: contain first — scrub / opaque-ID evidence refs land before any remote send path graduates. Forecloses: pure “later guardrails” deferral. Risk-if-wrong: small spike delay only; no false sense of safety on the open path.