Skip to content

Retrospection conversation DM flow #27

Description

@sunba91-su

Goal

Implement the conversational DM collection flow for team retrospectives, similar to daily standups but with retro-specific questions and structure.

Acceptance Criteria

  • Register commands under /standup namespace:
    • /standup retro start — starts a retro session for today
    • /standup retro add <column> <text> — adds an item to a retro column
    • /standup retro submit — finishes and saves retro
    • /standup retro cancel — aborts retro (deletes partial)
  • Or create a separate /retro command namespace (preferred):
    • /retro start — starts a retro session
    • /retro add <text> — adds to current column (DM walks through columns one at a time)
    • /retro submit — finishes
    • /retro cancel — aborts
  • DM conversation flow (reuse or extend convstate):
    • Bot: "Starting retro for team X. Column 1: What went well? (reply with your item)"
    • User replies
    • Bot: "Column 2: What could be improved?"
    • ...repeat for each column
    • Bot: "✅ Retro submitted! Thanks."
  • Permission: team member or lead (same as standup submit)
  • Multi-team support: --team flag for team selection
  • Duplicate prevention: one retro per team per day (re-open allowed? optional)
  • Update internal/commands/help.go with new commands

Technical Notes

  • Reuse convstate.Manager — add a Type field to Conversation to distinguish standup vs retro
  • Or create a separate retro conversation manager — evaluate tradeoffs
  • Retro columns come from the session (created at session start via defaults or team config)
  • Store items as they are added (immediate persistence, not just in-memory)

Dependencies

  • Blocked by: Retrospection data model and store

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions