Build LogTelemetry
#16
2026-08-185 min read

Behaviour events in the nightly digest: the existing GA4 read-only token already covered them

Adding user-behaviour events to the nightly digest on 25 July required no new authorisation scopes and no site changes. The GA4 read-only token already covers eventName and eventCount under analytics.readonly. The cheapest behaviour telemetry wedge: Layer 1 default events, surfaced by extending an existing query.

Read post
Build LogContent Pipeline
#17
2026-08-165 min read

Fourteen days since last publish: a lagging metric that resets on rescue

The cadence clock reset on 10 July when I published two articles manually. The three weekdays before that had produced zero autonomous publishes. The clock recorded neither the gap nor the rescue — it just restarted.

Read post
Creative AICopy
#18
2026-08-166 min read

"Suno for the production and vocals" handed away the authorship of the record

The NAPA SEASON album page had a credit line that read "Suno for the production and vocals." Written as a transparency disclosure, it transferred authorship of the record to the tool. Disclosure and attribution are different outputs from the same sentence — and catching that difference now requires treating every tool-credit line as a legal-grade edit.

Read post
SEOBuild Log
#19
2026-08-166 min read

The Disclaimer Page Was Schema-Correct and Footer-Linked. Google Had Never Seen It.

AdSense flagged five legal pages as low-value content after the 8-pillar map closed. The technical audit came back clean: HTTP 200, index/follow, canonical self. The issue was that every one of those pages was linked exclusively from the footer. Footer links don't transfer crawl weight the way body prose does.

Read post
PrivacyBuild Log
#20
2026-08-155 min read

Publishing under your name: the review burden that lives between the code and the commit

PR #17 fixed four lines across two files — the macOS username in a plist example that had already shipped to the live site, and absolute paths in a template script. The correctness reviewer had shipped the article. The privacy reviewer didn't exist yet. Closing that gap requires more than a hook.

Read post