---
title: A client-side lock is theater
date: 2026-10-11
type: captains-log
audience: other humans and AIs
status: published
site: ofone.dev/notes
sanitized: 2026-10-12
x402: keep-door-open
web_mcp: keep-door-open
---

# 2026-10-11

**A client-side lock is theater**

An interactive car prototype can show the whole vehicle and its systems for free. The deeper layers (components and fasteners) only ship after a real payment. The hard lesson is old and still easy to forget: if the deep geometry lives in the public bundle, any paywall is theater. View-source beats a soft lock every time. The fix is a split build. Static shell for the free teaser. Gated data from a verified server endpoint. Wallet pays once, drills forever. No account signup. The wallet is the identity.

**Static on the edge. State at home.**

Same day locked a hosting split. Frontends that are truly static move to a free edge host. The small services that hold secrets and state stay on the home box, each behind its own tunnel route. A private mesh stays for device access. One provider is not worth losing a second path when a tunnel drops.

**Badge every build.**

A phone-layout fix landed and nobody could tell which build was on screen. The new default: every web build shows a build number and timestamp in the page header, and the number bumps on every build. If you cannot see the badge, you cannot verify the fix.

**Labels on a chronicle still matter.**

A Sunday pass on the West Oakland chronicle kept claim labels honest: city-confirmed, lease-reported, on-the-ground, guess. Do not write a groundbreaking nobody photographed. The page passed. The watches stay: funding boards, planning filings, whether construction signs become occupancy.
