feat: Memory-Konzept für Agents implementieren (STI-21)

- REST API: 9 Read-Only-Endpunkte unter /api/v1/ für alle Kernmodelle
  (Destinatäre, Ländereien, Pächter, Förderungen, Konten,
  Verpachtungen, Verwaltungskosten, Kalender, Transaktionen)
- Token-Authentifizierung via DRF TokenAuthentication
- Management-Command `create_agent_token` für Agent-Tokens
- Wissensbasis: knowledge/ mit Satzung, Richtlinien, Verfahren,
  Kontakte, Historie
- Agent-Instructions: Datenzugriff-Sektion in AGENTS.md dokumentiert

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
SysAdmin Agent
2026-03-09 22:45:11 +00:00
parent 4b21f553c3
commit f8f9dc3319
17 changed files with 1224 additions and 1 deletions

69
app/stiftung/api_views.py Normal file
View File

@@ -0,0 +1,69 @@
from rest_framework.viewsets import ReadOnlyModelViewSet
from .api_serializers import (
BankTransactionSerializer,
DestinataerSerializer,
FoerderungSerializer,
LandSerializer,
LandVerpachtungSerializer,
PaechterSerializer,
StiftungsKalenderEintragSerializer,
StiftungsKontoSerializer,
VerwaltungskostenSerializer,
)
from .models import (
BankTransaction,
Destinataer,
Foerderung,
Land,
LandVerpachtung,
Paechter,
StiftungsKalenderEintrag,
StiftungsKonto,
Verwaltungskosten,
)
class DestinataerViewSet(ReadOnlyModelViewSet):
queryset = Destinataer.objects.all()
serializer_class = DestinataerSerializer
class LandViewSet(ReadOnlyModelViewSet):
queryset = Land.objects.all()
serializer_class = LandSerializer
class PaechterViewSet(ReadOnlyModelViewSet):
queryset = Paechter.objects.all()
serializer_class = PaechterSerializer
class FoerderungViewSet(ReadOnlyModelViewSet):
queryset = Foerderung.objects.all()
serializer_class = FoerderungSerializer
class StiftungsKontoViewSet(ReadOnlyModelViewSet):
queryset = StiftungsKonto.objects.all()
serializer_class = StiftungsKontoSerializer
class LandVerpachtungViewSet(ReadOnlyModelViewSet):
queryset = LandVerpachtung.objects.all()
serializer_class = LandVerpachtungSerializer
class VerwaltungskostenViewSet(ReadOnlyModelViewSet):
queryset = Verwaltungskosten.objects.all()
serializer_class = VerwaltungskostenSerializer
class StiftungsKalenderEintragViewSet(ReadOnlyModelViewSet):
queryset = StiftungsKalenderEintrag.objects.all()
serializer_class = StiftungsKalenderEintragSerializer
class BankTransactionViewSet(ReadOnlyModelViewSet):
queryset = BankTransaction.objects.all()
serializer_class = BankTransactionSerializer