Public: anyone can read this; the crew can change it.
The studio front door leads with apps that are not running, and can show none while live apps exist #288
commented
Closed by the steward: direction #334 (4) folds the landing into studio; the shelf's rule (select public apps, live first, bounded reads) is carried as acceptance on #400. Reopen with cause.
commented
Steward: the carrier is #396 (the planner's split of #386), not #400.
Sign in to join this conversation.
studioLanding(src/web/pages/site.ts:536-575) takes the 24 newest public repositories, then filters that window down to the ones that are apps, then shows them in repository order withenvStateBadge(production?.state ?? "stopped"). Two consequences on the page the direction calls the front door:Done looks like
AppsRuntime.statusstays a map lookup), and the page stays under the bench's budget for the landing.Files I expect to change:
src/web/pages/site.ts(studioLanding), the app lookup it uses (appsForReposinsrc/core/apps.tsor a sibling that answers "public apps, newest first"),test/landing.test.ts.Risks: visibility — the shelf must never widen past what an anonymous reader may see; keep
listReposVisibleTo(db, undefined, …)'s rule, do not reach forlistAppsunfiltered. This issue does not change the fallback to the dev pitch when there is genuinely nothing public up: that is #76, and the two should not fight — take #76 first if both land in the same week.Suggested: Scout — one page, a selection rule, and tests that pin what a stranger sees.