DEV Community

Running an AI Agent Fleet Series' Articles

Back to John's Series
Why I Rejected an Event Bus for My Solo Agent Fleet: State Is Truth, Events Are Rumors

Why I Rejected an Event Bus for My Solo Agent Fleet: State Is Truth, Events Are Rumors

Comments 7
7 min read
Stop Hooks as Hard Constraints: Enforcing Claude Code Behavior Outside the Model

Stop Hooks as Hard Constraints: Enforcing Claude Code Behavior Outside the Model

Comments 6
6 min read
No AI Claim Without a Kill Condition: Falsifier-Driven AI Decisions

No AI Claim Without a Kill Condition: Falsifier-Driven AI Decisions

1
Comments 2
4 min read
Stop AI Agent Drift Across Sessions With Versioned, Grep-able Rules

Stop AI Agent Drift Across Sessions With Versioned, Grep-able Rules

2
Comments 2
5 min read
Aggregating cron and launchd Into One Dashboard — Without Migrating Either

Aggregating cron and launchd Into One Dashboard — Without Migrating Either

Comments
6 min read
The 'You Decide' Reflex: Blocking AI-Agent Decision Punting with a Stop Hook

The 'You Decide' Reflex: Blocking AI-Agent Decision Punting with a Stop Hook

Comments 38
8 min read
Your AI Agent Folds When You Push Back: Measured Sycophancy and a Challenge-Triggered Verification Gate

Your AI Agent Folds When You Push Back: Measured Sycophancy and a Challenge-Triggered Verification Gate

Comments 25
8 min read
The Scary Metric Was Wrong, the Audit Still Paid: A 21-Agent Sweep of My Claude Code Fleet

The Scary Metric Was Wrong, the Audit Still Paid: A 21-Agent Sweep of My Claude Code Fleet

Comments
7 min read
Five Models, One Shared Blind Spot: What Multi-Model Fan-Out Catches and What It Can't

Five Models, One Shared Blind Spot: What Multi-Model Fan-Out Catches and What It Can't

Comments 2
6 min read
Verify the Output Surface: How 19 Green Tests Shipped Nine Broken Titles for Nine Days

Verify the Output Surface: How 19 Green Tests Shipped Nine Broken Titles for Nine Days

Comments
8 min read
Cross-Vendor Audit: What It Caught in My Own Model's Writing, and What It Got Wrong

Cross-Vendor Audit: What It Caught in My Own Model's Writing, and What It Got Wrong

Comments
6 min read
Green for Four Days While Nothing Shipped: A Reader Rebutted My Monitoring Post, and He Was Right

Green for Four Days While Nothing Shipped: A Reader Rebutted My Monitoring Post, and He Was Right

Comments 2
8 min read
I Asked Three Judges If I Was Wrong. One JSON Field Decided the Answer.

I Asked Three Judges If I Was Wrong. One JSON Field Decided the Answer.

Comments
6 min read
Your Agent Telemetry Ranks Your Routing Policy, Not Your Models

Your Agent Telemetry Ranks Your Routing Policy, Not Your Models

1
Comments 4
6 min read
My AI Subagent Faked the Verification Output I Asked It to Attach

My AI Subagent Faked the Verification Output I Asked It to Attach

2
Comments 14
6 min read
Deterministic Tool Adoption Gates: Score It, Don't Vibe It

Deterministic Tool Adoption Gates: Score It, Don't Vibe It

2
Comments 2
7 min read
Rotating the Hostile Seat: A Six-Round Adversarial Design Review Before Hardening an Agent

Rotating the Hostile Seat: A Six-Round Adversarial Design Review Before Hardening an Agent

Comments
7 min read
My Verification Gate Cleared on a Keyword, Not Evidence

Commenters expose a flaw in the gate logic

My Verification Gate Cleared on a Keyword, Not Evidence

11
Comments 30
6 min read
A Forced Dissent Slot Has a Floor: Read It by Convergence, Not Presence

A Forced Dissent Slot Has a Floor: Read It by Convergence, Not Presence

2
Comments
6 min read
Four Models Cited My Numbers Perfectly. One Still Misread Them.

Four Models Cited My Numbers Perfectly. One Still Misread Them.

Comments
6 min read
Our Quality Gate Was 24x Noisier Than What It Guarded

Our Quality Gate Was 24x Noisier Than What It Guarded

5
Comments 2
8 min read
Sub-Agent Metrics Are Not Comparable to Main-Thread Metrics

Reveals dispatchers confound agent benchmarks

Sub-Agent Metrics Are Not Comparable to Main-Thread Metrics

9
Comments 44
11 min read
The Wrapper Failed, Not the Capability: Descend to the API Before Saying Impossible

The Wrapper Failed, Not the Capability: Descend to the API Before Saying Impossible

1
Comments
10 min read
The Quota Said 100% Used. Actual Demand Was 13%.

The Quota Said 100% Used. Actual Demand Was 13%.

2
Comments 7
9 min read
Perfect Instrumentation Won't Save an Underpowered Experiment

Perfect Instrumentation Won't Save an Underpowered Experiment

1
Comments 6
8 min read
The Gate Only Logged When It Fired. I Replayed 116,022 Candidate Stop Points to Find the Rest.

Replaying transcripts reveals a 64% filter rate

The Gate Only Logged When It Fired. I Replayed 116,022 Candidate Stop Points to Find the Rest.

1
Comments 19
8 min read
Our Status Column Said 30 Waiting. Six Were.

Our Status Column Said 30 Waiting. Six Were.

Comments
7 min read
Two of Five Gates Replayed Clean. The Other Three Read a Ledger With No History.

Two of Five Gates Replayed Clean. The Other Three Read a Ledger With No History.

1
Comments
8 min read
The Guardrail Pointed at a File That Never Existed

The Guardrail Pointed at a File That Never Existed

Comments 4
6 min read
An Empty Prompt Is Not a Blind Review

An Empty Prompt Is Not a Blind Review

1
Comments
5 min read
One Leg Can Raise an Objection. It Can't Settle One.

One Leg Can Raise an Objection. It Can't Settle One.

Comments 10
6 min read
Route the Claim to Its Verifier - Legs Are Not Votes

Route the Claim to Its Verifier - Legs Are Not Votes

Comments
7 min read
The Bug Was in the Brief, Upstream of Both Reviews

The Bug Was in the Brief, Upstream of Both Reviews

1
Comments 2
7 min read
The Key's Owner Wasn't the Spender

The Key's Owner Wasn't the Spender

2
Comments
6 min read
The Fix Was Committed. The Old Value Kept Running.

The Fix Was Committed. The Old Value Kept Running.

Comments
5 min read
The Gate Pinned a Model That No Longer Exists

The Gate Pinned a Model That No Longer Exists

1
Comments
5 min read
Deprecation Doesn't Reach the Copies

Deprecation Doesn't Reach the Copies

Comments
6 min read
The Rule That Triggered on Its Own Advice

The Rule That Triggered on Its Own Advice

Comments
6 min read
Exit 0, Empty stdout: the Quota Died on stderr

Exit 0, Empty stdout: the Quota Died on stderr

Comments
4 min read
Your Report's Numbers Are Computed. Its Sentences Are Not.

Your Report's Numbers Are Computed. Its Sentences Are Not.

Comments
6 min read
The Ablation Had Four Arms. None Matched What Shipped.

The Ablation Had Four Arms. None Matched What Shipped.

Comments
11 min read
The Count Read in the Thousands. It Was Thirty-Seven Things, Recounted.

The Count Read in the Thousands. It Was Thirty-Seven Things, Recounted.

1
Comments
11 min read
Why My Correct Config Value Was Being Ignored

Why My Correct Config Value Was Being Ignored

2
Comments 8
5 min read
The Proxy I Added to Measure Tokens Tripled Them

The Proxy I Added to Measure Tokens Tripled Them

3
Comments
8 min read
Same Bytes, 20% Fewer Tokens: Token Counts Are Model-Scoped

Same Bytes, 20% Fewer Tokens: Token Counts Are Model-Scoped

4
Comments 4
6 min read