feat: add DELETE /api/chat/:caseId to clear a case's chat history

Frontend's chat history trash icon was calling this endpoint but it
didn't exist yet, causing a JSON-parse error on the default 404 page.

Also renames the LegalOS health-check message to AyrisLegal.
This commit is contained in:
mstfyldz
2026-08-09 10:09:15 +03:00
parent b030bdaa60
commit 0831ebb25b
3 changed files with 21 additions and 2 deletions
+18
View File
@@ -2,6 +2,24 @@ import { Response } from 'express';
import { supabase } from '../lib/supabase';
import { AuthenticatedRequest } from '../middleware/auth';
export const deleteChatHistory = async (req: AuthenticatedRequest, res: Response) => {
try {
const { caseId } = req.params;
if (!caseId || caseId === 'general') {
return res.status(400).json({ error: 'Geçersiz caseId' });
}
// requireAuth zaten bu caseId'nin isteği yapan kullanıcıya ait olduğunu doğruladı.
// Silme işlemi burada (backend'de, service_role ile) yapılıyor — frontend'in anon
// client'ı chat_messages'a RLS nedeniyle yazamıyor/silemiyor olabilir.
const { error } = await supabase.from('chat_messages').delete().eq('case_id', caseId);
if (error) throw error;
res.json({ ok: true });
} catch (error: any) {
console.error('Delete Chat History Error:', error);
res.status(500).json({ error: error.message || 'Internal Server Error' });
}
};
export const chatMessage = async (req: AuthenticatedRequest, res: Response) => {
try {
const { caseId } = req.params;
+2 -1
View File
@@ -1,9 +1,10 @@
import { Router } from 'express';
import { requireAuth } from '../middleware/auth';
import { chatMessage } from '../controllers/chat.controller';
import { chatMessage, deleteChatHistory } from '../controllers/chat.controller';
const router = Router();
router.post('/:caseId/message', requireAuth, chatMessage);
router.delete('/:caseId', requireAuth, deleteChatHistory);
export default router;
+1 -1
View File
@@ -6,7 +6,7 @@ import precedentRoutes from './precedent.routes';
const router = Router();
router.get('/health', (req, res) => {
res.json({ status: 'ok', message: 'LegalOS Backend is running' });
res.json({ status: 'ok', message: 'AyrisLegal Backend is running' });
});
router.use('/documents', documentRoutes);