Field notes · Shipped
Resume shouldn’t be a footgun
Yesterday, Rhema Briggs-Ikeotuonye and I were collaborating for hours on sys-buddy. It got late and we needed to pause for the day.
Today we tried to resume that session, and it hit me: we did not have a user-friendly resume feature.
It took an hour to get back to where we left off. Four things had quietly rotted overnight:
- our tunnel URL had rotated, so his agent was talking to nothing
- our access tokens were hours from expiring
- the test environment URL was dead
- and he had lost his dashboard link
Here is the part that stung. I "fixed" that last one by removing him from the task entirely and setting him up from scratch. He lost his whole setup, to recover one mislaid link.
That was the only tool I had.
That is the trap. When the only tool you own is the destructive one, you reach for it on problems that never needed it.
So my first instinct was a Resume button. One click, put everything back.
That instinct was wrong, and working out why is what made this release worth shipping.
"Resume" as a single action is a footgun. Press it on a healthy session and you have just kicked out a teammate who was working perfectly fine.
Four of my five problems never needed anyone removed. They needed a new address, a longer expiry, an updated test URL. Small, specific, harmless fixes.
So resume is not a button. It is a diagnosis.
One screen that probes what is actually true right now: is the broker up, has your public address changed, is the test environment still reachable, is anyone's access about to expire, and who has actually joined. Nothing changes by looking.
Then every line that is broken carries its own fix right beside it, and the terminal command too, so you can do it either way. You press only what you need.
Removing and re-adding someone still exists. It is the only cure when a teammate has genuinely lost their access. But it is tucked away now, it spells out what it costs, and it asks before it does anything.
It went from the first tool I reached for to the last one, which is where it belonged the whole time.
v2.18.0 is live.