ship_log · 2026 · midnight_dev
Shipped,
not claimed.
From January 1 through October 13, a commit landed somewhere on 258 of 286 days — 90%. Across 103 repository identities, deduplicated and dated straight from local Git history. The entries below tell some of the stories behind the count.
Cadence
every day in the counted period · one cell each · colored by commits that day
The public work · August snapshot
These project rows belong to the earlier 5,382-commit count through August 21. They are a dated snapshot, not a breakdown of the updated headline. Client and internal repositories stay unnamed — see the remainder.
Most recent stretch
aug 7 → oct 14, 2026
Newest first. The headline and cadence run through 2026-10-13. These entries describe selected work and are not extra commits to add to that count.
A very crowded Tuesday
An October 14 audit of the previous day found 520 distinct Git commits across 39 repository identities, including 29 with Merge-prefixed subjects. They were steps in the work, not 520 deployed features. Of the same-day GitHub Actions runs linked to counted commits, 305 succeeded and 46 failed; the record includes fixes and later green runs. The essay tells the human story of the harness, the agent team, and the checks that could say no. The 520 includes merges; the non-merge day count in the heatmap above is 489. The technical notes carry the count method and its limits.
Code graph walkthrough
An 81-second walkthrough of the Yapword client code as a knowledge graph: 103 nodes and 211 edges across the UI and client logic layers, with a six-step tour from the README to Yapoleon's voice. The graph was built on 2026-06-23 with the open-source Understand Anything plugin by Yuxiang Lin. Payment, sign-in, server and data code is removed from the graph before recording, and two captions are trimmed to match.
Reviews of record
A GitHub search on 2026-10-12 for pull requests merged under my account between June 10 and October 8 finds a usage-limit notice in the comments of 788 of 934, private repositories included. The reviewer had hit its limit and said so, and the pull requests merged anyway. That one is on me: nothing in my setup checked that a review had happened. A required check now passes only on a human approval of the head commit, or on a review record committed to the branch that names a reviewer different from the author. It fails if any code changed after the review, and it runs from the base branch, so a pull request cannot edit the gate to pass itself. On 2026-10-12 it is required in 7 repositories, with 17 records on default branches. Author and reviewer are both agents under one account, and the gate can only check that the two names differ. The record makes the review a named, committed act. It does not create independence.
Typed rulebook
Agent instruction files drift apart. Measured 2026-10-12 with the scanner linked here: 205 rule files in 123 repositories, and 46 of 55 CLAUDE.md and AGENTS.md pairs differ. On the same day the rules my agents steer by were 23 typed records in a private repository, each carrying the exact quote and who said it. Twelve name the thing that enforces them. A check with 25 tests runs on every change to the rulebook, and three preregistered experiments can kill the idea.
Backlog close-out
Nineteen pull requests of mine were open on 2026-09-30, fourteen of them in my own repositories. An agent landed all fourteen and read each merge back from the remote before reporting it. Seven were strict prefixes of an eighth, proven by commit identity, so one merge closed eight and no commit landed twice. Three sat in repositories that deploy on merge, and those waited for my word.
Architecture maps
Mapped repositories keep a typed JSON spec of their own architecture, and one command re-renders every map from those specs with no model in the loop. A diagram becomes a build artifact you can regenerate and diff. The renderer is the open-source Archify by tt-a1i, which builds on Cocoon AI's diagram generator, pinned to v2.15.0 with one local patch that removes its Google Fonts request. The Caduceus map is a snapshot traced at v0.3.3, rendered here with its budget figures removed. It passes all nine showcase checks and loads nothing external.
Drift sentinel
On 2026-08-25 a 101-line installed copy of a linter passed a graph that the canonical version, 341 lines at the time, rejected. The sentinel hashes five installed copies of verification tools against their sources and fails closed. A healer runs first and overwrites only bytes that match a committed canonical version, with a backup. Anything else waits for a person. It runs each morning at 08:00 and at login. The sentinel, the healer and the dashboard overlay had 17 passing tests between them on 2026-10-12. The tools live in a private repository.
Field Notes 001
Pushed, deployed, and linked from the first public post about it.
BB-1 datasheet
A three-terminal edge primitive, published as a component datasheet.
Caduceus v0.3.0
Five-seat AI council with believability-weighted decisions, live on Hermes Agent.
Two more ships
A benchmarking essay for a generative character, and the Yapword voice-evaluation case study.
GEO hardening
ImageObject schema and IPTC/XMP metadata on every screenshot.
The firewall piece
Eighteen sites probed with the user-agent of every AI crawler that matters. Two of my own findings did not survive the data.
The August remainder
In the August snapshot, fifty more repositories carried the remaining 1,800 commits. Client and internal work stays unnamed.
- 25product & research repositories856 commits
- 14site properties490 commits
- 8internal tooling396 commits
- 3infrastructure58 commits
How this was counted. The headline and heatmap recount accessible local Git refs from 2026-01-01 through2026-10-13 in Chicago time. Commits use Alex's account emails and first-party agent attribution, are deduplicated by SHA across worktrees, and exclude commits with multiple parents. Third-party history under generic agent emails is excluded. One broken local worktree could not be read; remote-only history may be missing. The project table and remainder retain their separately counted August 21 snapshot. Git commits are steps in the work, not deployments or proof that every change was clean.
Next step
Want to talk it through?
Book a 30-minute call. I will tell you plainly whether I can help and what I would test first.