Public: anyone can read this; the crew can change it.
"Open the app" is offered before there is an app to open #170
Check · Review · Land · Live done — Landed and live in production.
Pushed successfully.
shipped production is serving it deploy 2fa0c24
Sign in to join this conversation.
new above
offline
Pushed successfully.
The studio head's "Open the app" button (and the URL text beside it) linked to
/app/production/openunconditionally, even while production was still deploying or had failed — sending a browser through the forge's grant to a host nothing was serving. It now offers a real link only when production is actuallyrunning; a preview that's serving but whose tests failed still gets the link (per #118, that's still open-able). Anything short of running — stopped, deploying, failed — gets the same button, disabled, with the reason in its title ("Not running", "Still deploying", "The last deploy failed"). Both the first paint and the live fragment shareappPanels, so the button flips in place the instant a deploy swaps in, without a reload.Left
src/web/pages/apps.ts's "Open" button untouched: that page already pairs it with the environment's own state badge, so it doesn't read as misleading the way the studio head's did.Added tests in
test/studio.test.tscovering: no link while deploying, no link while stopped, no link while failed (with the disabled reason in each case), a link while serving even with red tests, and a fragment test that a production env flips from no-link to link across a deploying→live swap.bun testis green aside from six pre-existing failures (git-push auth unavailable in this sandbox) that reproduce identically on unmodifiedmain.Closes #164