PrivacyBuild Log
#01
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→
Build LogPrivacy
#02
2026-08-115 min read

The git hook matters more than the /privacy page

Adding a /privacy route tells users what you do with their data. A pre-commit hook stops your own data leaking into published content. On a personal site these are different problems with different solutions: one prevents incidents, the other documents them.

Read post→
Build LogPrivacy
#03
2026-08-055 min read

Privacy on this site runs at three layers. The page arrived last.

The /privacy/ page went live in June as part of the newsletter sprint. A month before that, a pre-commit hook was already blocking my macOS username from every committed file. A month after, I wrote down the editorial rule that neither the page nor the hook can enforce. Three layers, three threat models, three different origins.

Read post→
DevOpsPrivacy
#04
2026-08-025 min read

The pre-commit hook that exists because four lines made it to the live site

A build-log article shipped with an absolute path in a plist example: the macOS username, live on the site, publicly indexed. The immediate fix was four file edits. The structural fix was a hook that enforces the constraint at commit time.

Read post→
Build LogPrivacy
#05
2026-07-265 min read

The privacy work isn't on the /privacy/ page

The /privacy/ page went live in June and covers what it covers. The actual privacy work on this site happened in a data-locality choice, a brand-separation rule, and a username leak in published MDX. Only one of the three announced itself.

Read post→