diff --git a/.storkit/work/1_backlog/440_refactor_consolidate_is_permission_approval_into_chat_util.md b/.storkit/work/1_backlog/440_refactor_consolidate_is_permission_approval_into_chat_util.md new file mode 100644 index 00000000..35494d0f --- /dev/null +++ b/.storkit/work/1_backlog/440_refactor_consolidate_is_permission_approval_into_chat_util.md @@ -0,0 +1,24 @@ +--- +name: "Consolidate is_permission_approval into chat::util" +--- + +# Refactor 440: Consolidate is_permission_approval into chat::util + +## Current State + +- TBD + +## Desired State + +Three copies of `is_permission_approval` exist across Slack (`chat/transport/slack/commands.rs`), WhatsApp (`chat/transport/whatsapp/commands.rs`), and Matrix (`chat/transport/matrix/bot/messages.rs`). The Slack and WhatsApp versions are identical; the Matrix version is a superset that also strips @mentions. Consolidate into a single `pub` function in `chat::util` using the Matrix superset behavior, then delete the 3 private copies. + +## Acceptance Criteria + +- [ ] Single pub fn is_permission_approval exists in chat::util +- [ ] All 3 private copies are removed +- [ ] Matrix @mention-stripping behavior is preserved in the shared version +- [ ] All call sites use the shared version + +## Out of Scope + +- TBD