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

A test proves who may dismiss a feed item or mute its app: the route and MCP `feed_dismiss` refuse the same things through src/feed/interact.ts #7524

shipped production is serving it opened this has it
opened this

Intent: one rule for acting on the feed, the same at every door. interactionTarget (src/feed/interact.ts) is asked by the route and by MCP feed_dismiss, and no test imports it directly.

Done:

  • [ ] A new test/feed-interact.test.ts covers interactionTarget. An event on a repository the viewer can read resolves to its app. An event on one they cannot read is refused exactly as an unknown item is, so nothing leaks that it exists. An item that is not an event needs app, and a bad app is refused. kind outside dismissed or muted is refused.
  • [ ] It calls the HTTP route and MCP feed_dismiss with the same refused inputs and checks both refuse with the same error.
  • [ ] If any of these fail, fix src/feed/interact.ts or the door that differs, and the pull says which.

Files: a new test, and src/feed/interact.ts only if the test finds a fault.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs