Configuring identity-only OAuth requests in Waaseyaa

How Waaseyaa’s oauth-provider package added optional, additive configuration so a consumer that only needs a stable Google or GitHub identity can skip the email lookup, the forced consent prompt, and the offline refresh-token grant.

September 23, 2026 · 5 min · Russell

Host-bound session and CSRF cookies in Waaseyaa

How Waaseyaa’s SessionCookiePolicy enforces the __Host- cookie prefix’s four constraints for both the session cookie and the CSRF double-submit cookie, and rejects misconfiguration at boot instead of failing silently in the browser.

September 19, 2026 · 6 min · Russell

A loopback-only proxy for prototyping northway's feed reader

How northway’s browser prototype keeps its API key off client JavaScript with a loopback-only Node proxy, before any of it reaches the production Pi build.

September 13, 2026 · 4 min · Russell

Keep SQLite data in a private child directory, not at the Docker volume root

Mounting a durable volume straight onto the directory you chmod’d in the image throws away that permission — bake a private child path instead.

September 4, 2026 · 4 min · Russell

Splitting one Dockerfile into API and maintenance images

A shared runtime stage plus two build targets keeps CLI maintenance tools out of the deployed API image, and a script proves it on every build.

September 3, 2026 · 5 min · Russell

Hardening a manual Claude Code review workflow in GitHub Actions

How a human-triggered ‘@claude review’ workflow got locked down to read-only, bounded-diff, revision-verified reviews after the official tag-mode example turned out to be implementation-capable by default.

September 1, 2026 · 5 min · Russell

Backup and Disaster Recovery

Automate backups, test restores, and build a disaster recovery runbook for your VPS.

March 29, 2026 · 4 min · Russell

Monitoring, Alerting, and Incident Response

Set up lightweight monitoring and alerting for a solo-developer VPS, plus a post-incident checklist.

March 28, 2026 · 6 min · Russell

Automated Patching and Server Maintenance

Configure automatic security patches, detect stale services with needrestart, and keep logs and Docker images from filling your disk.

March 27, 2026 · 3 min · Russell

Secrets, Certificates, and Credential Rotation

Manage .env files, encrypt secrets with Ansible Vault, and rotate credentials without downtime.

March 26, 2026 · 4 min · Russell