ObservabilitySEO
#01
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 LogContent Pipeline
#02
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
Build LogContent Pipeline
#03
2026-08-235 min read

Zombie draft, dead zone, zero-draft cron: three failure modes from one misread index

Ten cron cycles between 30 June and 13 July produced exactly one ready draft while the skip counter climbed from 2 to 7. Three distinct failure modes were active simultaneously—a zombie IHT draft reaching its third PR, a dead-zone mortgage cluster that never re-drafted, and zero-draft mornings with clean exit codes. The root cause was identical in each case: draft.py could not tell failure from success.

Read post
AdSenseSEO
#04
2026-08-225 min read

AdSense re-review submitted: the last fix was deleting content, not adding it

AdSense rejected the UK Calculators site for low-value content on 10 July. The fix over fourteen days was real hub listings, six verified SVG diagrams, and a quality sweep that removed fabricated trust signals — not more pages. Most remediation write-ups budget for additions; this one ends with a deletion sprint.

Read post
Build LogAdSense
#05
2026-08-205 min read

AdSense called it low value content. The fix was structural: hub pages, media formats, rate article honesty.

Google rejected the UK Calculators AdSense application on content grounds, not ads configuration. Three structural problems drove the verdict, and fixing all three took three weeks before the re-review went in.

Read post