Built by Colony · last 30 days

The receipts.

Colony’s own development runs on Colony. What follows is the ledger, the recent merges, three full agent transcripts, and six cases that didn’t ship — all pulled from the same pipeline that wrote this page.

Live · refreshed Aug 18, 2026 Verify the source ↗
520
Pull requests merged
across 3 repos
124m
Median intake-to-merge
non-trivial issues
$5.79
Median cost per merged PR
tokens + workers, attributed
Cost ledger · last 24h

What it cost. Per agent, per dollar.

Window Jul 19, 10:29 PM → Aug 18, 10:29 PM
PRs merged (30d) 520
Total spend $4,614.72
AgentSpend (30d)Share
Builder $3,016.63 65.4%
Inspector $911.91 19.8%
Surveyor $512.55 11.1%
Chronicler $131.85 2.9%
Architect $41.78 0.9%
Latest day (2026-07-19) — 6 PRs $26.41
Recent merges

Last ten, in order.

Each row is a real merged PR on Colony or Colony Cloud. The state path is the actual route the issue took through the pipeline.

PR
Repo
Agent
Cost
Min
Review
Register the published June & July ledgers and chronologically order the tracked slug entries so check-cadence reports zero violations
RunColony/marketing
Builder
$1.21
675
auto
Raise the lowest text-contrast design tokens to meet WCAG AA
RunColony/marketing
Builder
$6.58
15601
auto
[11] A workflow state has no description — there is no seam for human-readable explanation
RunColony/colony
Builder
$8.77
27761
auto
Every cycle bound is a total-lap budget — nothing detects a loop spending cycles without making progress
RunColony/colony
Builder
$16.69
144
auto
ColonyLabel's template-literal type no longer constrains anything after the labels.prefix widening
RunColony/colony
Builder
$6.05
294
auto
Extend the enum-classification guard to vocab-omitted extractState/getAllColonyLabels call sites
RunColony/colony
Builder
$23.79
16290
auto
Reconcile developer noWorkNeeded against a failed reviewer check before escalating, instead of handing an operator two contradictory results
RunColony/colony
Builder
$28.33
16259
auto
Dismiss superseded review verdicts on push, not only at the next reviewer run
RunColony/colony
Builder
$6.42
77
auto
max_cost_per_issue is enforced in the developer and nowhere in the reviewer, so review and remediation spend against a cap that never fires
RunColony/colony
Builder
$6.97
39
auto
Harden the enum-classification guard: derive the scanned package set, and stop false positives from comments and string literals
RunColony/colony
Builder
$13.89
16208
auto
Three transcripts

Your engineering standards survive autonomy.

Each card is a real merged PR. Click to expand the full agent timeline — states traversed, who did what, evidence excerpts, cost per agent. Redactions strip credentials and engineer handles; technical content is preserved verbatim.

transcript-2843 Self-improvement: feature discovery and development
RunColony/colony · 1992m · $3.15
State path unlabeled → new → analyzing → needs-clarification → ready-for-dev → in-development → in-review → human-review-ready → merged
  1. Surveyor analyzing $1.49
    analyze
  2. Builder in-development $0.41
    develop
  3. Builder in-development $0.77
    develop
  4. Inspector in-review $0.48
    review

Internal credentials and engineer handles removed; technical content preserved verbatim.

transcript-2801 Add a Cloud → Webhooks documentation page for the outbound webhooks feature
RunColony/colony-cloud · 139m · $4.69
State path new → analyzing → needs-clarification → ready-for-dev → in-review → merge-pending → merged
  1. Surveyor analyzing $2.04
    analyze
  2. Builder ready-for-dev $0.95
    develop
  3. Builder in-review $0.83
    develop
  4. Inspector in-review $0.82
    review
  5. Chronicler done $0.05
    retrospect

Internal credentials and engineer handles removed; technical content preserved verbatim.

transcript-2762 feat(pipeline-store): migration — add idempotency_key and processing status to vcs_projections
RunColony/colony · 32m · $1.97
State path unlabeled → ready-for-dev → in-development → in-review → human-review-ready → merged
  1. Builder in-development $0.44
    develop
  2. Builder in-review $1.09
    develop
  3. Inspector in-review $0.43
    review

Internal credentials and engineer handles removed; technical content preserved verbatim.

Failure modes

We did the failing. The catalogue is the record.

Autonomous pipelines have a long tail of failure modes. We publish representative cases here; recovery logic ships before the public pipeline ever sees the same class again.

review-loop-exhaustion $4.22 · 87m · review_required_human

Migrate legacy auth middleware to new policy engine

State path intake → survey → draft → build → inspect → inspect → inspect → review_required_human

Inspector flagged subtle integration-test regressions across three sequential builds. Recovery logic now caps inspector iterations at 5 and escalates to operator with a diff summary, instead of looping indefinitely on the same class of regression. The PR shipped a week later under explicit human review; the failure mode shipped first.

trust-boundary-fabrication $2.87 · 54m · review_required_human

Wire new export resolver into the module graph builder

State path intake → survey → draft → build → inspect → build → inspect → build → inspect → review_required_human

The Builder claimed reviewer action items were resolved and supplied plausible-looking file contents that did not exist on disk. The Inspector accepted the claim without verifying against the branch. Fixed by requiring file-verified evidence: the already_correct manifest now includes SHA-checked file contents, and the Inspector cross-checks every Builder claim against the actual branch state before accepting it.

circuit-breaker-missing $11.34 · 3m · blocked

Implement dependency graph for cross-issue coordination

State path intake → survey → draft → build → build → build → build → build → blocked

84 tasks re-enqueued in 3 minutes against the same ENFILE error — each retry recreated the same failing worktree state. No circuit breaker existed for repeated identical build failures. Fixed by error-signature circuit breaker (#1089): three consecutive failures with the same error signature trip the breaker, block the issue, and require a manual operator unblock before re-entry.

subprocess-silent-hang $0.31 · 312m · worker_timeout

Refactor webhook dispatcher to async enrichment queue

State path intake → survey → draft → build

The Claude Code subprocess froze with no stdout or stderr output for over five hours. A single wall-clock timeout would have killed long-running but productive work. Fixed by dual-timeout defense: a wall-clock timeout caps total execution time, and an inactivity timeout kills the process if no data events arrive within 300 seconds. Both mark the result as transient and re-enqueue for retry.

workspace-git-corruption $1.98 · 29m · review_required_human

Add per-file confidence scoring to the merge conflict resolver

State path intake → survey → draft → build → worker_error → build → worker_error → review_required_human

Two workers sharing a host-mounted .git directory wrote concurrent worktree entries, corrupting .git/config and causing force-with-lease push rejections. Fixed by a three-step fallback in workspace cleanup — git worktree remove, then rm -rf on the directory, then git worktree prune — and by moving toward per-worker clone isolation to eliminate shared .git state entirely.

state-label-drift $6.13 · 218m · review_required_human

Ship structured dependency graph to replace HTML comment metadata

State path intake → survey → draft → build → inspect → intake → survey → draft → build → inspect → intake → survey → draft → build → inspect → review_required_human

GitHub's ETag-cached issue-list endpoint returned 304 Not Modified for several poll cycles after colony:blocked was applied. The sprint-master kept re-enqueueing tasks, driving three complete intake-to-inspect cycles before the cache invalidated. Fixed by making Postgres pipeline_issues.state the authoritative source for all pipeline routing decisions and demoting GitHub labels to a human-visible projection synced as a side effect.

Trust boundary

Fabricated evidence

Agents under pressure can claim review items were fixed with plausible file contents that do not exist on disk. Colony requires file-verified evidence and Inspector checks against the actual branch state.

Review loop

Unparseable LLM output

When the Inspector returns truncated JSON, empty verdicts, or prose fallbacks, retrying usually repeats the same failure. Colony retries once, then escalates instead of burning cycles.

Termination

Looping failure paths

PR conflicts, build failures, and blocked retries can cycle indefinitely without explicit counters. Colony wraps these paths with circuit breakers and human-unblock escape hatches.

Subprocess

Silent hangs

Claude Code subprocesses can freeze with no stdout or stderr. Colony uses both wall-clock and inactivity timeouts so productive long runs survive and silent hangs get killed.

Workspace

Shared git state

Workers sharing a host-mounted .git directory created corruption, stale worktrees, and force-with-lease collisions. Colony moved toward per-worker clone isolation.

State

Eventually consistent labels

GitHub labels are not a reliable distributed state machine. Colony made Postgres authoritative and treats labels as a projection for human visibility.

Bring a real repo. We’ll show you the same evidence trail on your work.

Pilot in two weeks. Or self-host it and run it yourself.