Build LogDVLAW
#191
2026-06-235 min read

The publishing queue ran at 20% success rate. Fixing it took three changes that only work together.

Four autonomous publishing slots expired before the pattern became clear. Sibling cancellation, slot fallback, and a missed-slot alarm are a set — without all three, the queue degrades silently.

Read post
Build LogDVLAW
#192
2026-06-225 min read

20% in 72 hours: rewriting the slot scheduler's SLA recovery

Twenty percent autonomous success across five scheduled slots in 72 hours. The substitute pool was running but consuming the wrong inventory — draining future windows to cover present failures. Three mechanisms and a first-class slot state machine fixed it.

Read post
iOSSwift
#193
2026-06-225 min read

Four quest types. None of them read your transactions.

An iOS budget app shipped a gamification layer backed by a hardcoded mock array. Phase C replaced it with QuestGenerator — a pure function that derives up to four quests per day from real transaction history. What changed wasn’t the number of quests. It was whether the quests knew anything about the user.

Read post
Build LogDevOps
#194
2026-06-225 min read

I treated publication slots as timer events. Three days of SLA breaches say otherwise.

Between 11 and 13 June, the 09:00 BST publication slot fired and produced nothing three times in a row. Each incident had a different surface cause. All of them trace back to the same modelling mistake.

Read post
Build LogAI Tools
#195
2026-06-225 min read

The pipeline was wrong before the model ever ran

PR #53 was the first article the X.8 editorial pipeline shipped since H-1/H-2/H-3 lifted, unblocked by a single bug fix in ground.py. Not a prompt change. Not a model upgrade. A function called calculator_scores had a bug, and the model had been synthesising from whatever it returned.

Read post