6.17.3 Discoverable "Start building in public" entry point → confirm → go public
Estimate: 55m · Type: code · Depends on: 6.17.1, 6.17.2
The discoverable entry point. Add a prominent "Start building in public" CTA for non-public projects (placement per 6.17.1 — e.g. a project-settings General card and/or a dismissible project-shell nudge), gated to project admins (assertCanManage), shown only when the project is NOT already public. Clicking opens the 6.17.2 explainer/confirm → on confirm flips access to public via setAccessLevel. After success, update affected surfaces (server refresh for the settings/header server bits; the page-state-after-mutation rule). Non-admins / already-public projects don't see the CTA.
Acceptance criteria
- Admin on a non-public project sees the CTA in the designed location(s); confirm → project becomes
public; the public page becomes reachable. - Non-admins never see it; already-public projects show the status (6.17.4), not the CTA.
- Surfaces update without a stale view;
--el-*/shape tokens; matches 6.17.1.
Context refs
- project settings General (
app/(authed)/settings/project/...) + project shell/header;setAccessLevel; CLAUDE.md "Page state after a mutation"; design 6.17.1