fix(GRO-1368): remove unused getDb import from consent.ts #426

Merged
The Dogfather merged 3 commits from fix/gro-1368-consent-ts into dev 2026-05-21 19:51:09 +00:00

3 Commits

Author SHA1 Message Date
Flea Flicker de3877b28d docs(app): add UAT_PLAYBOOK.md section 4.20 for STOP/HELP consent handler
CI / Update Infra Image Tags (pull_request) Has been skipped
CI / Lint & Typecheck (pull_request) Failing after 24s
CI / Test (pull_request) Successful in 25s
CI / E2E Tests (pull_request) Has been skipped
CI / Build (pull_request) Has been skipped
CI / Build & Push Docker Images (pull_request) Has been skipped
CI / Deploy PR to groombook-dev (pull_request) Has been cancelled
CI / Web E2E (Dev) (pull_request) Has been cancelled
Adds 12 test cases covering:
- STOP/START/HELP flows and their auto-reply verification
- Alias keywords (STOPALL, UNSUBSCRIBE, CANCEL, END, QUIT / UNSTOP, YES, SUBSCRIBE, INFO)
- Idempotency for double STOP and double START
- Case-insensitivity and whitespace trimming
- Non-keyword message rejection
- Consent event audit log verification

Refs: GRO-1205, GRO-1469, PR #426

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-21 19:50:37 +00:00
Chris Farhood 7d3adeae98 fix(GRO-1368): remove unused getDb import from consent.ts
getDb was imported but never used — db is passed as a parameter to
handleConsentKeyword. This was the primary TypeScript/lint error
flagged by QA.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-21 19:49:33 +00:00
Chris Farhood 1fbe670751 feat(GRO-106): STOP/HELP compliance + consent log
- Add detectKeyword() and handleConsentKeyword() in consent.ts
- Wire keyword detection into handleMessageReceived() in inbound.ts
- Add 24-unit test suite for consent.ts covering all keywords,
  case insensitivity, whitespace tolerance, idempotency, and
  help keyword state preservation

Fixes from QA review:
- Use getDb() instead of non-existent db export; import Db type
- Destructure clientId from findOrCreateConversation result
- Rename staffId → sentByStaffId in sendMessage call
- Remove messagingHelpReply query (column not yet in schema)

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-21 19:49:33 +00:00