TestingPython
#01
2026-09-256 min read

post_today opens two connections. The test fixture only controlled one.

Three tests in test_post.py broke when auto_mode was turned back on in production. No code had regressed. post_today also opens its own connection to read the auto_mode flag, independent of the connection the fixture supplies, and the test hadn't controlled it.

Read post→
Build LogGodot
#02
2026-09-216 min read

The proxy proved it; Meshy delivered it — Mixamo was never in the chain

The plan called for Mixamo at step three of five. Instead: Meshy API, Blender retarget, Godot import — two tools, one afternoon, no Mixamo. The proxy rig was why the swap cost nothing.

Read post→
ObservabilitySEO
#03
2026-08-235 min read

ga-telemetry shipped the same morning as the Phase 1.6 sitemap push — they're the same job

Two pull requests landed on 2026-06-20: a stdlib-only GA skill and an operator-side sitemap push. One queried Google Analytics. The other filed Request-Indexing nudges. Underneath both was the same question — did Google see this? That's one discipline, not two.

Read post→
Build LogUKCalculators
#04
2026-08-235 min read

`mortgage-abandoned-about-above`: Title-Mangling, Claim Blocks, and the Corrective Pass That Held Fourteen Pillars Together

The Day 2 cron draft came with an unusable slug and three claim blocks that would have shipped unverified. Both got caught and corrected. That pattern — not just the gate, but the corrective pass — is what held a fourteen-pillar streak together.

Read post→
Build LogContent Pipeline
#05
2026-08-235 min read

The pipeline ran every day in July. Every published article started as a rescue.

Five publish events across July. Every one required a human to notice the cron had failed and pull a piece through by hand. The one exception — a two-day autonomous streak on 16–17 July — proved the pipeline can work. The rescue rate is the metric no one was tracking.

Read post→