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

The studio's contract catches up with what shipped: finding, speed, and where New app lands #153

Merged opened this

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

Merged

scout/forge:scout/140-the-studio-s-contract-catches-up-with-wh → main 1 commit fork

  • Merged. scout/140-the-studio-s-contract-catches-up-with-wh was merged into main as 72c1428.

Review

Sign in to review this change.
1 file changed +30 −4
docs/STUDIO.md +30 −4
@@ -7,6 +7,20 @@ commits, branches, runs — unchanged. The switch is in the top bar and is a
77 cookie on that browser; the URLs are the same in both, so a link works
88 whichever way its reader sees.
99
10 Finding something never leaves the page you're on. `/` focuses the search
11 box in the top bar, unless a field already has focus; `Cmd/Ctrl-K` opens the
12 command palette from anywhere, a field included. The box takes its query to
13 `/search` (`studioSearchPage`, `src/web/studio/search.ts`): apps first,
14 matched by name, owner or description, then every change and tell whose
15 title mentions the word, each saying which app it's on — the same
16 visibility as the rest of the studio, so a signed-out reader sees only the
17 public apps a signed-out reader would. The palette starts from a short local
18 index — your own apps, then places and actions like Home, Apps, Map, New
19 app — and past two characters asks that very same search, folding its apps,
20 changes and tells in under their own headings (`rankPalette`,
21 `src/web/palette.ts`), so what it turns up can never disagree with the page
22 behind it.
23
1024 ## Five words
1125
1226 Every word on a studio page is one thing in git, and dev mode shows it.
@@ -47,9 +61,16 @@ page: the studio only offers principled moves.
4761 An app's home in the studio (`/:owner/:name`, when the repository is an
4862 app) shows, top to bottom: what it serves and where; the box; what asks
4963 you; what is happening now. Beside it, who is on the crew and what each is
50 for, this week's numbers (shipped, runs, spend, spend per shipped change),
51 and how the repository runs itself, when it does — each **Change** button
52 leading to the one place both are set. The page keeps itself
64 for, this week's numbers — shipped, runs, spend, spend per shipped change,
65 and how fast a change reaches its preview, worded as `reaches its preview in
66 6.1s` and split beneath it into waiting to be picked up and coming up, each
67 its own median (`previewLatencyWords`, `src/web/studio/app.ts`) — and how
68 the repository runs itself, when it does — each **Change** button leading to
69 the one place both are set. Below three served deploys this week the line
70 says there are not enough to trust a median, rather than printing one from a
71 run or two; when some of the week's deploys never reached a preview at all,
72 it adds how many of how many, linking to them, and says nothing extra in a
73 clean week. The page keeps itself
5374 current about deployments: a deploy run for the app being viewed refetches
5475 the head card and previews list in place, so a change serving in its
5576 preview shows up without a reload.
@@ -247,7 +268,12 @@ whether it is live, what the crew last did there, and a way in. That row is
247268 a *shelf row* (`src/web/studio/shelf.ts`): one function turns repositories
248269 into rows, from grouped reads, so every page that lists apps lists them the
249270 same way and the home only decides the card around them. **New app** is the
250 same flow as ever. `/?mode=dev` is the repositories list, and — like
271 same form either way (`/apps/new`); once the sentence becomes a repository
272 it lands on the app's own page, `/:owner/:name/app` (`appPage`,
273 `src/web/pages/apps.ts`) — not this shelf, and not the studio's five-word
274 home for it. Its first paint carries the flash saying where it's starting,
275 each environment as it comes up, the hostname and terminal, the crew, and
276 its recent runs. `/?mode=dev` is the repositories list, and — like
251277 the toggle in the top bar — it switches this browser to dev from then on;
252278 `/?mode=studio` switches it back, the same way.
253279

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs