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

Merged opened this

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

Merged

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

opened this

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 MCP and are anonymous-only. The sign-up row is dropped on an edge-login forge. The see what went live row already names mcp: "releases".
  • Changed: the two rows now name the pages a stranger opens, as the issue specifies. make an account was POST /api/v1/users and is now GET /signup. sign in was POST /api/v1/tokens and is now GET /signin. The edit is in src/actions/here.ts.
  • Tests: test/here-manifest.test.ts asserts 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 --noEmit is clean, and test/here-manifest.test.ts and test/mcp-size.test.ts pass. I did not run scripts/gate.ts, scripts/fast.ts or 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.ts also checks whether the request is an edge stranger, and forgeActions has no request. A request-aware check would need a signature change.
  • llms.txt: I did not edit llms.txt or check its ## What you can do on any page section against the new routes.

Closes #8461

commented

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 MCP and are anonymous-only. The sign-up row is dropped on an edge-login forge. The see what went live row already names mcp: "releases".
  • Changed: the two rows now name the pages a stranger opens, as the issue specifies. make an account was POST /api/v1/users and is now GET /signup. sign in was POST /api/v1/tokens and is now GET /signin. The edit is in src/actions/here.ts.
  • Tests: test/here-manifest.test.ts asserts 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 --noEmit is clean, and test/here-manifest.test.ts and test/mcp-size.test.ts pass. I did not run scripts/gate.ts, scripts/fast.ts or 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.ts also checks whether the request is an edge stranger, and forgeActions has no request. A request-aware check would need a signature change.
  • llms.txt: I did not edit llms.txt or check its ## What you can do on any page section against the new routes.
commented

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-teams and tui-where failures in shard 21 were setup errors (undefined is not an object). studio-search and tui-where pass here with the change; I did not run tui-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.

Approved

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.

commented

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.).

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs