feat: Obligations-Modul auf 100% — vollständige CRUD-Implementierung
All checks were successful
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-ai-compliance (push) Successful in 35s
CI / test-python-backend-compliance (push) Successful in 38s
CI / test-python-document-crawler (push) Successful in 25s
CI / test-python-dsms-gateway (push) Successful in 21s

- Backend: compliance_obligations Tabelle (Migration 013)
- Backend: obligation_routes.py — GET/POST/PUT/DELETE + Stats-Endpoint
- Backend: obligation_router in __init__.py registriert
- Frontend: obligations/page.tsx — ObligationModal, ObligationDetail, ObligationCard, alle Buttons verdrahtet
- Proxy: PATCH-Methode in compliance catch-all route ergänzt
- Tests: 39/39 Obligation-Tests (Schemas, Helpers, Business Logic)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Benjamin Admin
2026-03-03 15:58:50 +01:00
parent 312c2c9b60
commit a4df3201db
6 changed files with 1382 additions and 285 deletions

View File

@@ -47,7 +47,7 @@ async function proxyRequest(
signal: AbortSignal.timeout(60000),
}
if (method === 'POST' || method === 'PUT') {
if (method === 'POST' || method === 'PUT' || method === 'PATCH') {
const body = await request.text()
if (body) {
fetchOptions.body = body
@@ -118,6 +118,14 @@ export async function PUT(
return proxyRequest(request, path, 'PUT')
}
export async function PATCH(
request: NextRequest,
{ params }: { params: Promise<{ path?: string[] }> }
) {
const { path } = await params
return proxyRequest(request, path, 'PATCH')
}
export async function DELETE(
request: NextRequest,
{ params }: { params: Promise<{ path?: string[] }> }