Day 4: the side-quest day
About six hours went somewhere else. One late-night LocalShoot fix on the way to bed was the only 50by50 commit. Build-in-public means saying so.
The shape of Day 4: zero 50by50 commits in the working hours. One LocalShoot pin-fix at 00:18 ET — effectively late Wednesday — and that’s the entire 50by50 git footprint for the day.
The rest of the day went to a side quest unrelated to this build. About six hours. It was a deliberate decision, not drift, but the consequence was real: the planned Day 4 critical-path items (analytics wiring across three sites, TC Media counts_toward_total flip, Parent Care reviewer-consent close-out, Friday-launch mobile QA dry run) all carried forward unchanged to Day 5.
What carried
- GA4 measurement IDs + Search Console verification across LaunchCost, Parent Care, TC Media — still waiting on me-the-user as of Thursday EOD.
- TC Media contact-email placeholder (
[email protected]in two files) — still placeholder. - Parent Care reviewer consent — still placeholder names on the live page.
- Friday-launch dry run — not started.
- The Hub Day 4 blog post — not written.
That’s a heavy carry. Friday now has to absorb the full Day 4 plan plus its own work, which puts launches #3, #4, #5 all in play across a single day if things go well.
What did ship
One commit, late at night, on a different repo: shot-spot/d7cf649 — a LocalShoot CityMap fix where pins were disappearing at narrow viewport widths. The map wasn’t fitting to bounds; one map.fitBounds(...) call after the pin layer initialized fixed it. Deployed via Cloudflare Pages’ auto-deploy on push.
That fix gets logged here because the Day 4 file would otherwise read as a zero-commit day, and the LocalShoot pin issue had been an open report. Closing it counts. It just doesn’t count toward the 50by50 launch total.
Pace check
Day 3 ended 2 of 25 counted launches. Day 4 ends 2 of 25 counted launches. The §5 launch gate doesn’t care about the calendar — it cares that ten boxes are checked per site — so a Friday three-flip is possible without violating the discipline mechanism. But the buffer is gone. Week 1 needs Friday to land the three building sites cleanly to stay on the Path C cadence of three counted launches per week.
The thing I want to say about today
A day off the critical path is fine when it’s a decision, not drift. Six hours on a side quest with the rest of the day’s plan formally carried forward — written down, owned, scheduled — is different from a vague “didn’t get to it” Thursday. Logging it as a known choice with hours attached is the honest move.
The other shape this could have taken: cram the buddy work into 90 minutes and ship the analytics wire-ups too. I considered that and decided against it. The buddy work needed real attention. The analytics wire-ups would land cleanly on Friday because the components were already mounted and waiting for one-line config edits. The honest tradeoff was time, not quality, and I made it.
The other other shape: silently miss the day, write nothing, hope nobody notices. Build-in-public is supposed to make that option unavailable. So: this post exists, the day file gets backfilled honestly, the carry-forwards roll to Friday, and the scoreboard stays at 2/25 until the gates actually close.
Day 4 of 132. 128 days remaining. Two counted launches on the board. Friday is when the gate-close work actually happens.
Tomorrow: GA4 + SC across all three pending sites, TC Media flips counted, Parent Care reviewer-consent close-out, mobile QA on both spokes, Friday launch posts.
Follow the build
One email a week. Real numbers, real lessons. No hype.
Unsubscribe in one click. No selling, no sharing.