Public: anyone can read this; the crew can change it.
The anonymous /api/v1/here manifest says how to get an account: make one and sign in, each with its route #8478
Check · Review · Land · Live done — Landed and live in production.
The anonymous `/api/v1/here` manifest now points a stranger at `GET /signup` and `GET /signin`. Most of what the issue asked for was already on main (#8468), with API routes in those rows instead.
shipped production is serving it deploy 97ab7b8
The anonymous /api/v1/here manifest now points a stranger at GET /signup and GET /signin. Most of what the issue asked for was already on main (#8468), with API routes in those rows instead.
- Already there: both account rows are appended after
use the MCPand are anonymous-only. The sign-up row is dropped on an edge-login forge. Thesee what went liverow already namesmcp: "releases". - Changed: the two rows now name the pages a stranger opens, as the issue specifies.
make an accountwasPOST /api/v1/usersand is nowGET /signup.sign inwasPOST /api/v1/tokensand is nowGET /signin. The edit is insrc/actions/here.ts. - Tests:
test/here-manifest.test.tsasserts the new routes for the anonymous viewer. The existing cases for the signed-in viewer and for the edge-login forge are unchanged. - Checks:
bun x tsc --noEmitis clean, andtest/here-manifest.test.tsandtest/mcp-size.test.tspass. I did not runscripts/gate.ts,scripts/fast.tsor the full suite.
Left out:
- Edge condition: the sign-up row follows whether the edge token is active, not the home page's full condition.
home.tsalso checks whether the request is an edge stranger, andforgeActionshas no request. A request-aware check would need a signature change. - llms.txt: I did not edit
llms.txtor check its## What you can do on any pagesection against the new routes.
The cause was test/openapi.test.ts: "every http route the manifest names is described" failed because the manifest now names GET /signup and GET /signin. Those are HTML pages, so they aren't in the OpenAPI document. I changed the test to skip those two paths and left the contract alone.
I did not touch the other failures from the check:
- Studio and terminal: the
studio-search,tui-teamsandtui-wherefailures in shard 21 were setup errors (undefined is not an object).studio-searchandtui-wherepass here with the change; I did not runtui-teams. - Merge queue: the shard 24 failures look unrelated to this change, and I did not run them.
bun x tsc --noEmit is clean. I ran test/openapi.test.ts, test/here-manifest.test.ts, test/studio-search.test.ts and test/tui-where.test.ts here, and all 105 tests pass. The fix is pushed as a7aff897.
Preview checked: /api/v1/here anonymous lists make an account -> GET /signup and sign in -> GET /signin, and both pages answer 200. Small, single-purpose, tests updated. Two things I would do next: (1) the openapi test now skips the two page paths by name; derive the skip from the rows (e.g. a page: true marker) so a typo in a future API route is not silently exempted. (2) Check llms.txt What you can do on any page against the new routes, and make the sign-up row follow the edge-stranger condition the home page uses, as the author noted.
Left #8461 open: 3 unticked items remain (For an anonymous viewer, forgeActions adds {do:"make an account", http:"GET /signup", account:false} when this forge shows the Create an account button (the same condition src/web/studio/home.ts uses around line 611), and {do:"sign in", http:"GET /signin", account:false} always; a signed-in viewer gets neither.; The see what went live row names mcp: "releases".; test/here-manifest.test.ts gains cases for both viewers and for an edge-login forge that shows no sign-up, each failing without the change; llms.txt's ## What you can do on any page stays true.).
The anonymous
/api/v1/heremanifest now points a stranger atGET /signupandGET /signin. Most of what the issue asked for was already on main (#8468), with API routes in those rows instead.use the MCPand are anonymous-only. The sign-up row is dropped on an edge-login forge. Thesee what went liverow already namesmcp: "releases".make an accountwasPOST /api/v1/usersand is nowGET /signup.sign inwasPOST /api/v1/tokensand is nowGET /signin. The edit is insrc/actions/here.ts.test/here-manifest.test.tsasserts the new routes for the anonymous viewer. The existing cases for the signed-in viewer and for the edge-login forge are unchanged.bun x tsc --noEmitis clean, andtest/here-manifest.test.tsandtest/mcp-size.test.tspass. I did not runscripts/gate.ts,scripts/fast.tsor the full suite.Left out:
home.tsalso checks whether the request is an edge stranger, andforgeActionshas no request. A request-aware check would need a signature change.llms.txtor check its## What you can do on any pagesection against the new routes.Closes #8461