Skip to content

feat: implement real buyer-merchant chat with persistence and partici…#105

Open
1sraeliteX wants to merge 1 commit into
ericmt-98:mainfrom
1sraeliteX:feature/75-buyer-merchant-chat-backend
Open

feat: implement real buyer-merchant chat with persistence and partici…#105
1sraeliteX wants to merge 1 commit into
ericmt-98:mainfrom
1sraeliteX:feature/75-buyer-merchant-chat-backend

Conversation

@1sraeliteX
Copy link
Copy Markdown

@1sraeliteX 1sraeliteX commented May 29, 2026

Closes #75


…pant auth (#75)

  • Add trade_messages table with sender_id, body, created_at, read_at
  • Create assertTradeParticipant() utility for participant authorization
  • Implement 3 API endpoints:
    • GET /trades/:id/messages (fetch with pagination, mark as read)
    • POST /trades/:id/messages (send with body validation, status check)
    • POST /trades/:id/messages/read (explicit read receipt)
  • Wire ChatRoom.tsx and DepositChat.tsx to real API data
  • Add useChatMessages hook with 3s polling, visibility pausing, optimistic updates
  • Replace hardcoded messages with persistent backend storage
  • All endpoints enforce participant gating (buyer or seller only)
  • Add comprehensive test suite for authorization and data integrity

Migration: 20260529100000_create_trade_messages
Tests: All authorization paths covered
Frontend: Polling, optimistic sends, error states, empty state

…pant auth (ericmt-98#75)

- Add trade_messages table with sender_id, body, created_at, read_at
- Create assertTradeParticipant() utility for participant authorization
- Implement 3 API endpoints:
  - GET /trades/:id/messages (fetch with pagination, mark as read)
  - POST /trades/:id/messages (send with body validation, status check)
  - POST /trades/:id/messages/read (explicit read receipt)
- Wire ChatRoom.tsx and DepositChat.tsx to real API data
- Add useChatMessages hook with 3s polling, visibility pausing, optimistic updates
- Replace hardcoded messages with persistent backend storage
- All endpoints enforce participant gating (buyer or seller only)
- Add comprehensive test suite for authorization and data integrity

Migration: 20260529100000_create_trade_messages
Tests: All authorization paths covered
Frontend: Polling, optimistic sends, error states, empty state
@drips-wave
Copy link
Copy Markdown

drips-wave Bot commented May 29, 2026

@1sraeliteX Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@1sraeliteX
Copy link
Copy Markdown
Author

@ericmt-98 check and merge PR, thanks!

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Real buyer-merchant chat backend

1 participant