The FinalApproval blog
Notes from the
human-in-the-loop.
Short essays on building agents that ask before they act, what we learn from the teams using us, and the occasional detour into webhooks, UI, and the quiet corners of production reliability.
Why every serious agent needs a pause button
The gap between 'the agent can do this' and 'we let the agent do this unsupervised' is where most AI-in-production projects die. A pause button is the cheapest way to cross it.
More from the blog
4 postsDesigning an approval UI you can decide in under five seconds
Most approval tools optimise for filling in a form. Ours optimise for someone who got pinged, opened the page, and needs to answer 'approve or deny' without reading a manual.
The quiet details of a good webhook: HMAC, timestamps, replay windows
A walk through the verification contract we send to your endpoint, why the timestamp header matters as much as the signature, and what we learned shipping it.
Indie devs and the trust ceiling
Conversations with solo builders shipping agents to real customers. Almost all of them hit the same wall: the agent is capable enough to be useful, and dangerous enough to need a human on the rail.
Ship log — March 2026
Custom action buttons, agent identity on every approval, invite-link sharing, and the quiet infra work behind the scenes.
Low volume. No noise.
Get new posts by email.
Roughly one essay a fortnight. Product notes, field notes from teams gating real agents, and the occasional deep dive. Unsubscribe with one click.