Skip to content

feat: conversational standup collection via DM#17

Merged
sunba91-su merged 1 commit into
mainfrom
feat/standup-flow
Jun 8, 2026
Merged

feat: conversational standup collection via DM#17
sunba91-su merged 1 commit into
mainfrom
feat/standup-flow

Conversation

@sunba91-su

Copy link
Copy Markdown
Owner

Summary

Implements the conversational standup flow: users type /standup submit, the bot DMs them one question at a time, collects answers conversationally, and persists the completed response.

Changes

  • internal/convstate/convstate.go — In-memory conversation state manager tracking per-user progress
  • internal/commands/standup.gosubmit and status commands, DM room provisioning
  • internal/commands/standup_test.go — 6 tests covering submit/status/conversation flow
  • internal/convstate/convstate_test.go — 8 tests for state lifecycle
  • internal/rocket/client.goCreateDM and IsDMRoom methods using REST API
  • cmd/bot/main.go — DM room detection, conversation state wiring, non-command reply handler
  • internal/commands/registry.goConvState field on Context

Flow

  1. User /standup submit in DM or channel → bot starts session
  2. Bot DMs first question → user replies → bot asks next Q → repeat
  3. After last Q → bot saves to DB, confirms submission
  4. All non-command DMs check for active conversation first

Closes #7

Implement conversational daily standup flow: bot DMs user one question
at a time, collects answers, and persists the completed response.

- Conversation state manager (convstate) tracking per-user progress
- /standup submit command: creates session, starts DM conversation
- /standup status command: checks submission status for today
- Rocket REST API rooms.info for DM room detection
- CreateDirectMessage wrapper for initiating DM conversations
- Non-command DM messages routed to standup answer handler
- 19 new tests across convstate and commands packages
- Wire convstate manager and DM detection in main.go

Closes #7
@sunba91-su sunba91-su merged commit d0c689e into main Jun 8, 2026
1 check passed
@sunba91-su sunba91-su deleted the feat/standup-flow branch June 8, 2026 13:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement standup collection flow

1 participant