Extend the nest contract with a work mode per request: solo | conspiracy | split, tagged Jev-first with the poster's header as escape. Payload gets mode and invited (how many crows a conspiracy expects).
Acceptance criteria — falsifiable tests
TestModeQuestionsExist (jev_test.go) — Given modeQuestions, then it is a choice question with criteria keys solo, conspiracy, splitand an escape ("other"). Red now (no such var), green after.
TestClassifyMode — Given a fake-Jev server returning conspiracy at confidence 0.9, when Flock.ClassifyMode(ctx, "should we launch..."), then returns ("conspiracy", true) and writes one mode Event with Prob set. Red now (no method), green after.
EVENTS.md nest record table gains mode and invited rows with solo|conspiracy|split|"". grep -qE '^\| .mode.' EVENTS.md && grep -qE '^\| .invited.' EVENTS.md — fails now.
Test command
go test -race -run 'TestModeQuestionsExist|TestClassifyMode' . && grep -qE 'invited' EVENTS.md && echo PASS
Blockers / unknowns
None (score/noul/choice shapes verified live in #7).
Epic: #21. Depends on: none
## Goal
Extend the nest contract with a work **mode** per `request`: solo | conspiracy | split, tagged Jev-first with the poster's header as escape. Payload gets `mode` and `invited` (how many crows a conspiracy expects).
## Acceptance criteria — falsifiable tests
1. `TestModeQuestionsExist` (`jev_test.go`) — Given `modeQuestions`, then it is a `choice` question with criteria keys `solo`, `conspiracy`, `split` **and** an escape (`"other"`). Red now (no such var), green after.
2. `TestClassifyMode` — Given a fake-Jev server returning `conspiracy` at confidence 0.9, when `Flock.ClassifyMode(ctx, "should we launch...")`, then returns ("conspiracy", true) and writes one `mode` Event with `Prob` set. Red now (no method), green after.
3. `EVENTS.md` nest record table gains `mode` and `invited` rows with `solo|conspiracy|split|""`. `grep -qE '^\| .mode.' EVENTS.md && grep -qE '^\| .invited.' EVENTS.md` — fails now.
## Test command
`go test -race -run 'TestModeQuestionsExist|TestClassifyMode' . && grep -qE 'invited' EVENTS.md && echo PASS`
## Blockers / unknowns
None (score/noul/choice shapes verified live in #7).
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: #21. Depends on: none
Goal
Extend the nest contract with a work mode per
request: solo | conspiracy | split, tagged Jev-first with the poster's header as escape. Payload getsmodeandinvited(how many crows a conspiracy expects).Acceptance criteria — falsifiable tests
TestModeQuestionsExist(jev_test.go) — GivenmodeQuestions, then it is achoicequestion with criteria keyssolo,conspiracy,splitand an escape ("other"). Red now (no such var), green after.TestClassifyMode— Given a fake-Jev server returningconspiracyat confidence 0.9, whenFlock.ClassifyMode(ctx, "should we launch..."), then returns ("conspiracy", true) and writes onemodeEvent withProbset. Red now (no method), green after.EVENTS.mdnest record table gainsmodeandinvitedrows withsolo|conspiracy|split|"".grep -qE '^\| .mode.' EVENTS.md && grep -qE '^\| .invited.' EVENTS.md— fails now.Test command
go test -race -run 'TestModeQuestionsExist|TestClassifyMode' . && grep -qE 'invited' EVENTS.md && echo PASSBlockers / unknowns
None (score/noul/choice shapes verified live in #7).