|
3 | 3 | Buttons and menus are Interaction Events: normalized events with their own |
4 | 4 | single-slot hook, `OnInteraction`, riding the same dispatch spine as messages |
5 | 5 | (see [ADR 0004](../adr/0004-interactive-components.md)). This slice covers |
6 | | -Slack `block_actions` — button clicks and menu selections. |
| 6 | +Slack `block_actions` on **messages** — button clicks and menu selections on |
| 7 | +Block Kit content posted to a channel, thread, or DM. `block_actions` |
| 8 | +originating inside a modal view carry a view container without a |
| 9 | +channel/message anchor and are not normalized yet; they are rejected before |
| 10 | +routing. |
7 | 11 |
|
8 | 12 | There is deliberately no cross-platform card DSL. Portable posting stays plain |
9 | 13 | text and portable Markdown; platform-native rich content (Block Kit) is posted |
@@ -88,8 +92,10 @@ distinct `action_id`s where you can until #12 lands. |
88 | 92 | The normalized `Actor` carries the Slack user ID, not a display name (the |
89 | 93 | interactivity payload does not include one). Note that plain `chat.Text` is |
90 | 94 | posted with Slack formatting disabled, so `<@USERID>` mention syntax renders |
91 | | -literally; to render a real mention, resolve the display name via the Slack |
92 | | -API or post native Block Kit content instead. |
| 95 | +literally. For plain-text *attribution*, resolve the display name via the |
| 96 | +Slack API and include it as ordinary text; for a real, clickable Slack |
| 97 | +mention, post native Block Kit content with an `mrkdwn` text element |
| 98 | +containing `<@USERID>`. |
93 | 99 |
|
94 | 100 | **Known limitation:** the interaction event identity is currently anchored on |
95 | 101 | the message timestamp, not the individual activation — so when the same user |
|
0 commit comments