Two months of senior engineering in 36 AI-assisted hours

A 36-hour window where an autonomous session opened a stack of PRs and the rest of the time went to landing them cleanly.

August 21, 2026 · 3 min · Russell

Splitting Anokii into composable core, identity, and operator packages

How Anokii went from one monolithic repo with duplicate identity code to three composable Composer packages, published by a governed CI split instead of a manual release process.

August 20, 2026 · 4 min · Russell

Bimaaji: agent-safe mutations for Waaseyaa

Why AI agents modifying a Waaseyaa app need a DSL, an AST-safe patch generator, and sovereignty guardrails, instead of raw file edits.

July 2, 2026 · 5 min · Russell

The ingest side of a sovereign language platform

How an Elder’s whiteboard video becomes a searchable Anishinaabemowin lesson, on infrastructure the community owns end to end.

June 25, 2026 · 5 min · Russell

One URL, two readers: serving HTML to people and Markdown to agents

How Waaseyaa serves the same content as a web page for people and clean Markdown for AI agents from a single URL, using HTTP content negotiation.

June 19, 2026 · 4 min · Russell

Agent-friendly JSON output for PHP CI tools

How the waaseyaa/agent-output package shrinks PHPUnit, PHPStan, and bin/check-* output to compact NDJSON envelopes so AI agents do not drown their context window in CI noise.

May 24, 2026 · 5 min · Russell

Bumping a PHP monorepo to 8.5: the mechanics

Sixty-seven packages, one CI matrix, one PHPStan target. What it takes to actually move the floor.

May 11, 2026 · 4 min · Russell

PHP 8.5 restraint: features we did not adopt

An upgrade is also a decision about what not to use. Property hooks, the pipe operator, and an array_find pass we mostly rejected.

May 11, 2026 · 6 min · Russell

Spec Kitty mission lifecycle: a domain modeling pass through Giiken

What a full Spec Kitty mission actually looks like end to end: spec, plan, tasks, implement, review, merge.

May 11, 2026 · 3 min · Russell

The PHP 8.5 deprecation sweep: from 34 warnings to zero

Three deprecation categories. Twenty-nine call sites. A test corpus that surfaces them all.

May 11, 2026 · 4 min · Russell