Decide how each nest message gets its kind (say/request/claim/deliver/refer). Options: Jev tags every message (JEV_STRATEGIES.md strategy 1), the model returns a structured header, or both with Jev as a check. This gates Epic B (the contract) and C.
Acceptance criteria — falsifiable checks
grep -A1 "How does the message kind get tagged" CHATROOM_SPEC.md currently shows it as an open question. After: that line is struck/removed AND a new line message kind: [decided YYYY-MM-DD] <method> exists in section 13. Fails now (no decided marker), passes after.
The chosen method is written into EVENTS.md's new nest section (name of the tagging mechanism and which fields carry it). grep -q <method-keyword> EVENTS.md — fails now (no nest section), passes after.
If the decision is "Jev tags," confirm the message-kind choice question can include a none/other escape option (pairs with A2/A5). A5's probe result may inform this — run A5 first if unsure.
Epic: #1. Depends on: none (Smokey's decision)
## Goal
Decide how each nest message gets its `kind` (say/request/claim/deliver/refer). Options: Jev tags every message (`JEV_STRATEGIES.md` strategy 1), the model returns a structured header, or both with Jev as a check. This gates Epic B (the contract) and C.
## Acceptance criteria — falsifiable checks
1. `grep -A1 "How does the message kind get tagged" CHATROOM_SPEC.md` currently shows it as an open question. After: that line is struck/removed AND a new line `message kind: [decided YYYY-MM-DD] <method>` exists in section 13. Fails now (no decided marker), passes after.
2. The chosen method is written into `EVENTS.md`'s new nest section (name of the tagging mechanism and which fields carry it). `grep -q <method-keyword> EVENTS.md` — fails now (no nest section), passes after.
## Test command
`grep -qE 'message kind:.*\[decided' CHATROOM_SPEC.md && grep -qi 'nest' EVENTS.md && echo PASS`
## Blockers / unknowns
If the decision is "Jev tags," confirm the message-kind choice question can include a `none`/`other` escape option (pairs with A2/A5). A5's probe result may inform this — run A5 first if unsure.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Epic: #1. Depends on: none (Smokey's decision)
Goal
Decide how each nest message gets its
kind(say/request/claim/deliver/refer). Options: Jev tags every message (JEV_STRATEGIES.mdstrategy 1), the model returns a structured header, or both with Jev as a check. This gates Epic B (the contract) and C.Acceptance criteria — falsifiable checks
grep -A1 "How does the message kind get tagged" CHATROOM_SPEC.mdcurrently shows it as an open question. After: that line is struck/removed AND a new linemessage kind: [decided YYYY-MM-DD] <method>exists in section 13. Fails now (no decided marker), passes after.EVENTS.md's new nest section (name of the tagging mechanism and which fields carry it).grep -q <method-keyword> EVENTS.md— fails now (no nest section), passes after.Test command
grep -qE 'message kind:.*\[decided' CHATROOM_SPEC.md && grep -qi 'nest' EVENTS.md && echo PASSBlockers / unknowns
If the decision is "Jev tags," confirm the message-kind choice question can include a
none/otherescape option (pairs with A2/A5). A5's probe result may inform this — run A5 first if unsure.Decided 2026-10-27 by Smokey: both, Jev first. Jev choice-tags every message (its own question, proven on jev-1.14.0 at 0.17s); tag stands above the band. Jev unsure -> crow's structured header. Disagree -> Jev wins, logged. Neither ->
say. In CHATROOM_SPEC.md section 4 (rule + question 5 closed) and EVENTS.md nest section. #3's test command PASSES.