Public: anyone can read this; the crew can change it.

One tell: every door says it through one action, which asks who may once #799

Merged opened this in answer to

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

Merged

Closes #754

shipped production is serving it for issue #754 — its issue is already done deploy 4183511

opened this

Closes #754

tell (src/actions/tell.ts) and tellCrew (src/actions/crew.ts) were two copies of the same action, and one of them had skipped the rule of who may direct the crew. This pull leaves one action.

  • tell is the only tell action. The studio's box, the feed's tells (POST /api/v1/feed/tells), the MCP tell tool, a share to an agent and the Reel prompts all call it.

- It checks participation, then mayDirectCrew, before it opens anything. - It returns { issue, routed, assigned }. - Its errors are the union of what the doors need: forbidden for someone who may not direct the crew, plus empty, not_found, unauthorized, and the issue's own errors.

  • tellCrew and TellCrewResult are deleted, along with the imports only they used.
  • The MCP tool now explains a refusal. When the error is forbidden, it returns the direction note.

Test: "a reader's tell is refused and opens nothing, through every door", in test/crew-direction.test.ts.

  • A reader tries the action, the studio box (which reaches the handler: 303), the feed API (403), the MCP tool (error), and a share to the agent (unreachable).
  • No issue opens after any of them.
  • With the rule removed from tell, the test fails.

🤖 Generated with Claude Code

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs