Public: anyone can read this; the crew can change it.

The look is taken when the preview starts serving, not when its tests finish #45

Merged opened this

Check · Review · Land · Live done — Landed and live in production.

Merged

Pushed. The branch tracks the forge's pull for issue #40.

shipped production is serving it deploy d63cf43

opened this

Pushed. The branch tracks the forge's pull for issue #40.

The runtime now publishes app.serving at the exact instant a deploy swaps in — env, commit, servingAt, deployStartedAt, and whether the tests running beside it are still going — inside a try so a subscriber can never take the deploy chain down with it. src/looks/service.ts queues a look from that event instead of waiting for run.finished, so a preview is pictured while its tests run and keeps that picture if the tests later fail; run.finished is kept as a fallback for an environment deployed before this shipped, and enqueue now dedupes on app+env+commit so the same deployment publishing both events never means two pictures. src/design/activity.ts gives the new kind a word for the activity feed.

Added coverage in test/apps.test.ts (the event's payload at the swap-in, and that a deploy which never answers publishes nothing) and test/looks.test.ts (a look taken while tests are still running that a later red check doesn't remove, and that two app.serving events for one environment collapse to one queued look at the newer commit). bun x tsc --noEmit and the full check suite pass; the six failures I saw (git-auth/clone flakiness in apps-adversarial, cross-repo-pull, web, pulls, and two apps.test.ts cases) reproduce identically on the unmodified branch, so they're pre-existing environment flakiness, not caused by this change.

Closes #40

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs