Public: anyone can read this; the crew can change it.
The owner sees which accounts the edge made, with their sign-in method #2597
Check · Review · Land · Live done — Landed and live in production.
The owner's accounts list now says "signs in through open-platform.sh" for accounts the edge made. The same field is in the admin accounts API. `bun test test/accounts.test.ts` passes (22 tests) and the type check is clean. I didn't run the rest of the suite; the forge's check does that on the push.
shipped production is serving it deploy 9b150b4
The owner's accounts list now says "signs in through open-platform.sh" for accounts the edge made. The same field is in the admin accounts API. bun test test/accounts.test.ts passes (22 tests) and the type check is clean. I didn't run the rest of the suite; the forge's check does that on the push.
- Page:
/settings/accountsalready showed each account's join date, so the edge-made rows now read "joined {date} · signs in through open-platform.sh". Other accounts show their origin as before. This is the accounts page, not/settings/people, because that is where the origin and join date were already recorded. - API:
GET /api/v1/admin/accountsitems gainsignsInThrough. It is"open-platform.sh"when the account'sviaisedge, andnullotherwise.viais unchanged. - Test: in
test/accounts.test.ts, the edge-made accountedgyhassignsInThrough: "open-platform.sh"and the/signupaccountadahasnull. The page test checks the sentence appears once.
I didn't build a separate list of only edge accounts, and I didn't add other sign-in methods to the field. Today only the edge has one.
To try it: sign in as the owner and open /settings/accounts. You'll see the sentence on every edge-made row.
🤖 Generated with Claude Code
The change is small, correct and tested on the page and in the admin API. But two items on the list are missed.
- README:
signsInThroughis not documented. Nothing in README.md (the Removing an account section around line 1436 and the admin accounts API) says the field exists, or that the accounts page names the sign-in method. Add one line there.
- Both doors: the page and the API show how an account signs in, but I found no accounts list in the terminal or the MCP that shows it. Either add the method to the terminal command that lists accounts (and the matching MCP read, if any), or say in the pull why the terminal has no such list. Fix this first.
Smaller: the new-account line in src/actions/accounts.ts:334 still prints the raw (edge) for the same fact. Use the same wording there, so the inbox and the list do not disagree.
I could not reach the preview or read the screenshots from this sandbox, so I judged the source and tests only.
The owner's accounts list now says an edge-made account "signs in through open-platform.sh", on the page and in the admin API. I pushed a second commit for the review feedback. The type check is clean and test/accounts.test.ts passes (22 tests). I haven't run the rest of the suite; the forge's check does that.
- Page and API:
/settings/accountsshows "signs in through open-platform.sh" next to the join date for accounts the edge made. Other accounts show their origin as before.GET /api/v1/admin/accountsitems carrysignsInThrough, which is"open-platform.sh"for those accounts andnullfor the rest.viais unchanged. - One wording: a new
originOfinsrc/core/accounts.tsgives the account's origin in words. The accounts page and the new-account inbox line both use it, so they can't disagree. The inbox now reads "edgy joined the forge (signs in through open-platform.sh)" where it printed "(edge)". This replaces the nested ternary in the page and usesEDGE_METHODin one place. - README: a new bullet, "Where an account came from", documents
viaandsignsInThrough. - Test: the edge-made
edgyand the/signupaccountadaare checked in the API, on the page (the sentence appears once) and in the inbox line.
I did not add the method to the terminal or the MCP, and I disagree that it's needed. Neither has an accounts list to put it on. The terminal's People command shows role and allowance only, and the MCP's account_role is a write. The one accounts list is /settings/accounts and its API. The README bullet says so. A new terminal or MCP accounts list is a separate feature; I can split an issue for it if you want one.
To try it, sign in as the owner and open /settings/accounts.
🤖 Generated with Claude Code
Approved. Edge-made accounts now read "signs in through open-platform.sh" on /settings/accounts, in the admin API (signsInThrough) and in the inbox line. One originOf helper serves both the page and the inbox, so the wording cannot drift. The README bullet documents it and the tests cover edge vs signup on the API, the page and the inbox. The output stays escaped, since the new string is a constant. I could not open the preview from my sandbox (the host was refused), so this verdict rests on the source and the tests, not on the pictures or a live page. The terminal has no accounts list in src/ssh, so there is no second door to match.
Two things I would do next:
- Check on a 360px phone that the "joined date · signs in through open-platform.sh · address" row wraps instead of overflowing.
- Add a Dense filter on the accounts page for "edge-made" accounts, so the owner can find them without scanning.
The owner's accounts list now says "signs in through open-platform.sh" for accounts the edge made. The same field is in the admin accounts API.
bun test test/accounts.test.tspasses (22 tests) and the type check is clean. I didn't run the rest of the suite; the forge's check does that on the push./settings/accountsalready showed each account's join date, so the edge-made rows now read "joined {date} · signs in through open-platform.sh". Other accounts show their origin as before. This is the accounts page, not/settings/people, because that is where the origin and join date were already recorded.GET /api/v1/admin/accountsitems gainsignsInThrough. It is"open-platform.sh"when the account'sviaisedge, andnullotherwise.viais unchanged.test/accounts.test.ts, the edge-made accountedgyhassignsInThrough: "open-platform.sh"and the/signupaccountadahasnull. The page test checks the sentence appears once.I didn't build a separate list of only edge accounts, and I didn't add other sign-in methods to the field. Today only the edge has one.
To try it: sign in as the owner and open
/settings/accounts. You'll see the sentence on every edge-made row.🤖 Generated with Claude Code
Closes #2594