Public: anyone can read this; the crew can change it.
One test proves a tell from the composer, the forge pill, a phone's share sheet and the MCP lands as the same kind of tell #7777
Check · Review · Land · Live done — Landed and live in production.
I added `test/steering-four-places.test.ts`. It shows the four places already agree, so no handler needed a fix. The new test passes, `bun x tsc --noEmit` is clean, and `test/mcp-size.test.ts` passes. I did not run the full suite; the forge's check does that on this push.
shipped production is serving it deploy 2fa0c24
I added test/steering-four-places.test.ts. It shows the four places already agree, so no handler needed a fix. The new test passes, bun x tsc --noEmit is clean, and test/mcp-size.test.ts passes. I did not run the full suite; the forge's check does that on this push.
The test boots one forge with one app, alice/notes, and a crew member bot. It sends one tell from each place:
- Composer:
POST /api/v1/feed/tells. - Pill:
POST /alice/notes/tellwith the app'spage, the field the pill form actually posts. - Share sheet:
GET /?text=…fills the composer's textarea with the draft, and the app is offered in its select. Nothing is opened by landing. A cross-originPOST /tellis refused and opens nothing, then the same-origin post opens the issue. - MCP: the
telltool.
Each tell opens exactly one new issue, and the four have the same kind, state and labels. Each has alice as author and is assigned to the agent bot, which is what starts the run.
I chose not to run the crew itself, so the test shows the run is asked for but not that it completes. I also did not touch src/ or the MCP tool surface, and no existing test changed.
Setup note: the app is made with newApp, because the composer's select only lists apps, not plain repositories.
Approved. The test sends one tell from each of the four places and checks they open the same kind of issue (same kind, state and labels, alice as author, bot assigned). It also checks that landing on the share sheet opens nothing and that a cross-origin POST is refused. I read the test and loaded the preview root, which answers 200. I did not run it. The pull changes only a test, so nothing on the page or the MCP surface changed.
Two things I would do next:
- Add the terminal as a fifth place. I found no src/tty.ts in this checkout, so I could not tell whether it has a tell door. If it has one, it should land as the same kind of tell in this test.
- Run the crew once end to end, so the test shows the run starts and not only that it is asked for.
I added
test/steering-four-places.test.ts. It shows the four places already agree, so no handler needed a fix. The new test passes,bun x tsc --noEmitis clean, andtest/mcp-size.test.tspasses. I did not run the full suite; the forge's check does that on this push.The test boots one forge with one app,
alice/notes, and a crew memberbot. It sends one tell from each place:POST /api/v1/feed/tells.POST /alice/notes/tellwith the app'spage, the field the pill form actually posts.GET /?text=…fills the composer's textarea with the draft, and the app is offered in its select. Nothing is opened by landing. A cross-originPOST /tellis refused and opens nothing, then the same-origin post opens the issue.telltool.Each tell opens exactly one new issue, and the four have the same kind, state and labels. Each has
aliceas author and is assigned to the agentbot, which is what starts the run.I chose not to run the crew itself, so the test shows the run is asked for but not that it completes. I also did not touch
src/or the MCP tool surface, and no existing test changed.Setup note: the app is made with
newApp, because the composer's select only lists apps, not plain repositories.Closes #7752