feat: migrate trailing deletes to /api/chats/{id}/messages/trailing#393
feat: migrate trailing deletes to /api/chats/{id}/messages/trailing#393arpitgupta1214 merged 1 commit intomainfrom
Conversation
…385) * feat: migrate chat trailing messages delete endpoint * fix: add handler-level error guard for trailing delete * refactor: reuse existing memories helpers for trailing delete * refactor: reuse shared memories helpers for trailing delete * refactor: remove trailing delete count response * fix: harden trailing delete cursor and timestamp guard * fix: align trailing delete boundary with memories schema
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (3)
📒 Files selected for processing (5)
📝 WalkthroughWalkthroughThis PR introduces a new API endpoint to delete trailing messages from a chat starting from a specified message timestamp. It includes the route handler, request validation, and extends existing Supabase memory helpers to support timestamp-based and ID-based filtering of messages. Changes
Sequence DiagramsequenceDiagram
participant Client
participant Route as API Route
participant Validator as Validator
participant DB as Supabase
participant Handler as Handler
Client->>Route: DELETE /api/chats/[id]/messages/trailing?from_message_id=UUID
Route->>Handler: deleteTrailingChatMessagesHandler(request, id)
Handler->>Validator: validateDeleteTrailingMessagesQuery(request, id)
Validator->>DB: validateChatAccess(request, id)
DB-->>Validator: Access granted or denied
alt Access Denied
Validator-->>Handler: NextResponse (error)
Handler-->>Client: 401/403 Error
else Access Granted
Validator->>DB: selectMemories(id, {memoryId: UUID, limit: 1})
DB-->>Validator: Memory found or not found
alt Memory Not Found
Validator-->>Handler: NextResponse (404)
Handler-->>Client: 404 Message not found
else Memory Found
Validator-->>Handler: ValidatedDeleteTrailingMessagesQuery
Handler->>DB: deleteMemories(id, {fromTimestamp})
DB-->>Handler: true or false
alt Deletion Failed
Handler-->>Client: 500 Error response
else Deletion Succeeded
Handler-->>Client: 200 {chat_id, from_message_id}
end
end
end
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Suggested reviewers
Poem
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
…#385)
feat: migrate chat trailing messages delete endpoint
fix: add handler-level error guard for trailing delete
refactor: reuse existing memories helpers for trailing delete
refactor: reuse shared memories helpers for trailing delete
refactor: remove trailing delete count response
fix: harden trailing delete cursor and timestamp guard
fix: align trailing delete boundary with memories schema
Summary by CodeRabbit