## Intent

DirektVermittlungDe (DVD) exists to collapse the multi-step "phone hunt" citizens go through to reach the right caseworker in a German public authority. Today, resolving a routine inquiry takes ~2 minutes once you reach the correct person, but ~30 minutes to get there (wrong contact → call center → transfer → re-identification → re-explanation).

DVD replaces that chain with a single step: the citizen submits a source document or a unique identifying feature (e.g. Aktenzeichen/Kassenzeichen). The system determines functional responsibility from that input and opens a direct communication thread with the correct caseworker — via callback, appointment, or text chat — instead of parking citizens in queues or burdening caseworkers with manual forwarding.

### Core architectural constraint

Documents use a split-payload model (ADR-0001): plaintext routing metadata (authorityId, referenceNumber, docType, issuedAt) is separated from an encrypted payload (the actual document/scan). The backend routes on metadata alone and never decrypts the payload — this is non-negotiable and shapes every service boundary.

### Where the project stands

Three independent prototype implementations (chatgpt5, geminiNbt3pro, grok4.1) explored the problem space. The project is now migrating to a single production codebase under `/src`, built test-first (TDD), governed by the ADRs in `docs/architecture/adr/` and tracked in `docs/WORKPLAN_MainCodebase_Integration.md`.

### In scope
- Document/reference-number intake and metadata-based routing to the responsible unit
- Citizen–official communication threads (chat, callback requests, appointments)
- Stateless OAuth2/JWT authentication with citizen/official scopes
- Async data export for authority systems
- GDPR-compliant retention and cleanup of documents/threads

### Out of scope
- Decrypting or processing document payload contents in the main service
- General-purpose CRM or ticketing functionality unrelated to authority routing
- Non-government (private sector) support-routing use cases
