What shipped today
- 0ad61f2 Self-healing merge conflicts — auto-retry back to dev instead of parking, escalate to human-needed after 3 failures
- 335d8ed Add Playwright screenshot QA to pipeline — captures screenshots of configured routes and feeds them to Claude vision during QA review
- 1784879 Fix EOD launchd agent: source .env via wrapper script
- cbfae63 One-in-flight guard: dev skips if repo has issues at qa/review/merge — prevents merge conflict cascades
- e25e97f Add ~/.local/bin to pipeline wrapper PATH for claude CLI
- 7655dc3 Pipeline resilience: merge-conflict label to stop retry loops, SIGTERM force-exit handler, launchd agents for server
- 294529e Auto-generate work log for 2026-02-24
Completed
- Self-healing merge conflicts — auto-retry back to dev instead of parking, escalate to human-needed after 3 failures
- Add Playwright screenshot QA to pipeline — captures screenshots of configured routes and feeds them to Claude vision during QA review
- Fix EOD launchd agent: source .env via wrapper script
- One-in-flight guard: dev skips if repo has issues at qa/review/merge — prevents merge conflict cascades
- Add ~/.local/bin to pipeline wrapper PATH for claude CLI
- Pipeline resilience: merge-conflict label to stop retry loops, SIGTERM force-exit handler, launchd agents for server
- Auto-generate work log for 2026-02-24
Carry-over
- (none)
Risks
- (none)
Next session
- (auto-generated from pipeline activity)
Why customer tools are organized wrong
This article reveals a fundamental flaw in how customer support tools are designed—organizing by interaction type instead of by customer—and explains why this fragmentation wastes time and obscures the full picture you need to help users effectively.
Infrastructure shapes thought
The tools you build determine what kinds of thinking become possible. On infrastructure, friction, and building deliberately for thought rather than just throughput.
Server-side dashboard architecture: Why moving data fetching off the browser changes everything
How choosing server-side rendering solved security, CORS, and credential management problems I didn't know I had.
The work of being available now
A book on AI, judgment, and staying human at work.
The practice of work in progress
Practical essays on how work actually gets done.
Manual fluency is the prerequisite for agent supervision
You cannot responsibly automate what you cannot do manually. AI agents speed up work for people who already know how to do it. They do not replace the need to learn the work in the first place.
The gun you didn't need
Every organization has loaded weapons lying around that nobody remembers loading. The most dangerous capability in any system is the one you built 'just in case.'
Nobody promotes you to operator
There's a moment in every project where the work stops being about building and starts being about keeping things running. Nobody announces this transition. Nobody gives you new tools for it. And most people keep building long past the point where they should have stopped.