Olympus/ROADMAP.md
2026-07-05 11:54:23 +02:00

8.6 KiB

Olympus CRM Roadmap

Die Roadmap beschreibt die geplante fachliche Entwicklung von Olympus CRM. Architekturregeln aus ARCHITECTURE.md und Entwicklungsregeln aus CONTRIBUTING.md bleiben fuer alle Versionen verbindlich.

v0.2.0 - Auth und Benutzerverwaltung

  • Serverseitige Authentifizierung ueber Athena BFF und Hermes JWT
  • HttpOnly-Cookie in Athena
  • Benutzerverwaltung mit CRUD
  • Passwortaenderung
  • Self-Delete-Schutz

v0.3.0 - RBAC

  • Rollenmodell
  • Berechtigungen
  • Serverseitige Permission-Pruefung in Hermes
  • Permission-basierte Navigation und UI-Aktionen in Athena

v0.4.0 - Dashboard und Kundenmodul

  • Dashboard mit berechtigungsabhaengigen Kennzahlen
  • Kundenverwaltung mit Adressen und Ansprechpartnern
  • Kunden-BFF-Routen in Athena
  • Keine Fake-Daten fuer nicht implementierte Module

v0.5.0 - Qualitaetsplattform

  • Persistente Audit Logs
  • Activity Feed im Dashboard
  • Audit-Log-UI
  • Einheitliches Fehler- und Response-Format fuer neue Plattform-Endpunkte
  • Zentrales Hermes-Logging mit LOG_LEVEL
  • Globale Toasts fuer CRUD-Erfolg und Fehler
  • Docker-Konfiguration fuer Logging-Level

v0.5.1 - Bootstrap und Kundenimport

  • Initial-Admin-Bootstrap fuer neue Installationen ohne aktive Benutzer
  • Optionale INITIAL_ADMIN_* Deployment-Variablen
  • Dynamische Header-Benutzeranzeige ueber GET /api/me
  • CSV-Kundenimport mit Preview und Commit
  • Importmodi create_only, update_existing und upsert
  • Excel-freundliche CSV-Vorlage ueber Athena
  • Audit Log fuer Kundenimporte ohne CSV-Rohdaten

v0.6.0 - Wissensdatenbank / Service Library

  • Herstellerverwaltung
  • Geraete- und Modellverwaltung
  • Dokumentverwaltung mit lokalem Upload und Download
  • Reparaturhinweise und Knowledge Notes
  • Suche ueber Hersteller, Modelle, Dokumente und Notizen
  • RBAC-Permissions fuer Knowledge-Lesen, Upload und Download
  • Paperless-ngx vorbereitet ueber paperless_document_id und external_url
  • Persistentes Docker-Volume fuer Knowledge-Dateien

v0.7.0 - Storage Framework und Deployment-Grundlage

  • Zentrales Storage Framework in Hermes
  • LocalDisk Storage Provider
  • Knowledge-Dateilogik ueber StorageService
  • Storage-Konfiguration fuer lokale Entwicklung und VPS
  • Empfohlener VPS-Pfad /opt/olympus-storage
  • Deployment-, Migrations-, Healthcheck-, Backup- und Restore-Skripte
  • README-DEV fuer mehrere Entwicklungsrechner

v0.7.1 - Knowledge UX und Workflow

  • Gefuehrter Workflow Hersteller -> Geraet -> Dokument -> Notiz
  • Dokumentupload erst nach Hersteller- und Geraeteanlage
  • Inline-Validierung fuer Upload-Pflichtfelder
  • Professionelle Empty States fuer Knowledge-Listen und Suchen
  • Idempotentes Standard-Hersteller-Seeding
  • Klarere Hermes-Fehler fuer unvollstaendige Dokumentzuordnungen

v0.8.0 - Reparaturmanagement

  • Reparaturstammdaten und Werkstattvorgaenge
  • Reparaturnummern im Format R<jahr>-000001
  • Statusmodell und Statushistorie
  • Website Repair Intake API vorbereitet
  • RBAC-Permissions fuer Reparaturen
  • Audit Logs und Activity Feed fuer Reparaturaktionen
  • Dashboard-Kennzahlen fuer Reparaturen
  • Athena-BFF-Routen und Reparatur-UI

v0.8.1 - Reparaturstatus und Kundenkommunikation

  • Deutsche Statuslabels in Athena bei stabilen englischen API-Statuscodes
  • Werkstattgerechte Status-Timeline auf der Reparaturdetailseite
  • Sicheres Public-Token-Modell fuer spaetere Statuslinks
  • Oeffentlicher Hermes-Endpunkt GET /public/repairs/status/{token} mit minimalen Kundendaten
  • Interne Statuslink-Verwaltung in Athena
  • E-Mail-Vorlagen und repair_notification_events vorbereitet
  • Keine Kundenlogin-Funktion und keine Aenderungen an der oeffentlichen Website

v0.8.2 - Website-Statusintegration, geplant

  • /status/<token> als spaeterer Einstieg fuer Statusabfragen auf der Website
  • Website ruft Statusdaten serverseitig oder ueber einen eigenen BFF ab
  • Kein Token im Log und keine unnoetigen Kundendaten in der oeffentlichen Antwort
  • Optionaler E-Mail-Versand mit sicherem Statuslink

v0.8.3 - Automatische Reparaturstatusmails

  • Automatischer Statusmail-Versand bei Reparaturstatuswechseln
  • Frische sichere Public-Statuslinks fuer Statusmails
  • Professionelles HTML-Mailtemplate fuer Funktechnik Schubert
  • Notification-Historie mit Erfolg, Fehler und Empfaenger
  • Manueller Neuversand ueber POST /repairs/{id}/send-status-mail
  • Athena-BFF-Route und Button "E-Mail erneut senden"
  • Dashboard-Kennzahlen fuer Statusmails und Reparaturen ohne Kundenmail
  • SMTP-Ausfall blockiert keine Reparaturprozesse

v0.8.4 - Admin SMTP Settings

  • SMTP-Konfiguration im Olympus-Webinterface unter /settings
  • Testmail-Versand mit Audit-Log
  • system_settings als zentrale Tabelle fuer Systemkonfiguration
  • Env Vars bleiben als Fallback fuer SMTP und Public Repair Status Base URL
  • Statusmail-Versand nutzt bevorzugt Admin-Konfiguration
  • Passwort wird nicht an Athena zurueckgegeben
  • Encryption at rest fuer Secrets bleibt als v0.8.x-Haertung geplant

v0.8.5 - Reparaturdokumente

  • Dokumente und Bilder direkt an Reparaturen verwalten
  • Upload ueber Athena-BFF und Hermes StorageService
  • Storage-Pfad repairs/<repair_id>/documents
  • Erlaubte Dateitypen JPG, PNG, WEBP und PDF
  • Dokumenttypen fuer Geraetefotos, Fehlerbilder, Messbilder, Kostenvoranschlag, Reparaturbericht, Versandbeleg und Sonstiges
  • Sichtbarkeit internal/customer vorbereitet, aber noch keine oeffentliche Kundenanzeige
  • Bildvorschau mit Lightbox, PDF inline/download
  • Audit Logs fuer Upload, Aenderung und Loeschung

v0.8.6 - Kostenvoranschläge und Kundenfreigabe

  • Kostenvoranschläge direkt an Reparaturen
  • Positionen fuer Arbeitszeit, Ersatzteile, Pauschalen, Versand und Sonstiges
  • Serverseitige Netto-, MwSt.- und Gesamtsummen
  • KV-Nummern im Format KV<jahr>-000001
  • Versand per bestehendem Public-Statuslink und SMTP-Systemsettings
  • Public API liefert Estimate-Daten am Statuslink
  • Public Approve/Decline/Question ohne Kundenlogin
  • Kundenentscheidung aktualisiert Reparaturstatus und KV-Historie
  • Keine PDF-Erzeugung, keine Lexoffice-Anbindung und keine Rechnungserstellung in dieser Version
  • Website-Anzeige/Freigabe wird spaeter in funktechnik-schubert-website nachgezogen

v0.8.7 - Lager / Ersatzteile

  • Ersatzteil- und Lagerartikelverwaltung
  • Kategorien, Lagerorte und Lieferanten
  • SKU-Format ET-<jahr>-000001
  • Bestandslogik mit Lagerbestand, Reservierung und Verfuegbarkeit
  • Bestandsbewegungen fuer Anfangsbestand, Anpassung, Reservierung, Freigabe und Verbrauch
  • Preise intern in cents, UI-Eingabe in Euro
  • RBAC-Permissions fuer Lagerlesen, Artikelpflege, Bestandsbuchungen und Stammdaten
  • Dashboard-Kennzahlen fuer aktive Ersatzteile, niedrigen Bestand, Lagerwert und Bewegungen
  • Audit Logs und Activity Feed fuer Lageraktionen
  • Athena-BFF-Routen und UI fuer /inventory und /inventory/items/[id]
  • Vorbereitung fuer Kostenvoranschlagsintegration in v0.8.8
  • Keine Lexoffice-Anbindung, keine automatische Bestellung, keine Barcode-/QR-Funktion

v0.8.8 - Lagerintegration in Kostenvoranschläge

  • Lagerartikel als KV-Position ueber Suche auswaehlen
  • Verkaufspreis aus selling_price_cents uebernehmen
  • Snapshot-Konzept fuer Name, SKU, Hersteller und Teilenummer in KV-Positionen
  • Reservierung beim Senden eines KV
  • Freigabe behaelt Reservierung
  • Ablehnung, Storno und Loeschung geben Reservierungen frei
  • Bestandsbewegungen mit reference_type=repair_estimate
  • Dashboard-Kennzahlen fuer reservierte Artikel, reservierten Warenwert und Mindestbestand
  • Audit-/Activity-Eintraege fuer Reservierung, Freigabe, Verbrauchsvorbereitung und manuelle Preisueberschreibung
  • Automatische Verbrauchsbuchung beim Reparaturabschluss vorbereitet, aber noch nicht aktiv
  • CSV-Template und Exportkonzept fuer Lagerdaten bleiben Folgefeatures

v0.8.9 - Kundenportal, geplant

  • /portal/login fuer spaeteren Kundenlogin
  • Separates Authentifizierungsmodell fuer Kunden
  • Keine Vermischung mit internen Olympus-Benutzern

v0.9.0 - Tickets, geplant

  • Ticketverwaltung
  • Status- und Prioritaetsmodell
  • Zuordnung zu Kunden und Benutzern
  • RBAC-Permissions fuer Tickets
  • Audit Logs fuer Ticketaktionen

v0.10.0 - Integrationen Paperless/Lexoffice, geplant

  • Paperless-ngx Connector fuer Wissensdokumente
  • Lexoffice-Vorbereitung fuer Kunden- und Projektdaten
  • Sichere Connector-Konfiguration ohne Browser-Secrets
  • Verknuepfung externer Dokumente mit Kunden, Projekten, Tickets und Reparaturen

v1.0.0 - Kalender, Aufgaben und produktiver Beta-Release

  • Aufgabenverwaltung
  • Kalenderansicht
  • Faelligkeiten und Verantwortlichkeiten
  • Verknuepfung mit Kunden, Projekten und Tickets
  • Gehaertete Produktionskonfiguration
  • Vollstaendige Migrationsstrategie
  • Deployment-Dokumentation
  • Betriebs- und Backup-Konzept
  • Review aller Sicherheitsregeln