You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -89,7 +89,7 @@ make rust-test
89
89
make rust-run
90
90
```
91
91
92
-
Zusätzlich stellt `rust-backend`eine Rust-Weboberflächen-Route-Map für die bisherigen Django-Mountpoints bereit (z. B. `/dashboard/`, `/reports/`, `/admin/users/`, `/cves/`) als Migrationsgrundlage.
92
+
Zusätzlich stellt `rust-backend` Rust-Weboberflächen für zentrale bisherige Django-Mountpoints bereit (z. B. `/dashboard/`, `/reports/`, `/imports/`, `/admin/users/`, `/cves/`) als Migrationsgrundlage.
`make local-test` deckt aktuell die Basis-Gesundheitschecks, mandantenbezogene Report-Views und die Product-Security-Routen ab.
275
275
`make team-test` ist der Legacy-Django-Kompatibilitaetscheck.
276
-
`make rust-smoke` ist der Rust-only Betriebs-Smoke mit DB-Bootstrap, Healthcheck, Rust-Session-Cookie, Dashboard ohne Query-Kontext und zentralen API-Probes.
276
+
`make rust-smoke` ist der Rust-only Betriebs-Smoke mit DB-Bootstrap, Healthcheck, Rust-Session-Cookie, Dashboard ohne Query-Kontext, Import-Center-CSV-Probe und zentralen API-Probes.
Copy file name to clipboardExpand all lines: docs/RUST_CUTOVER_STATUS.md
+6-6Lines changed: 6 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@ Stand: 2026-04-23
4
4
5
5
## Kurzfassung
6
6
7
-
ISCY ist fachlich weit in Richtung Rust migriert, aber noch nicht sicher Python-frei. Der Rust-Axum-Service ist als Backend direkt startbar, lokale Starts laufen Rust-only, Rust kann eigene Session-Cookies aus Django-kompatiblen Passwort-Hashes oder DB-validierten Tenant-/User-Kontexten ausstellen, liest Rollen, Gruppen und Django-kompatible Permissions aus der Rust-DB-Schicht, und erzwingt schreibende Rollen fuer migrierte Write-Flows. Die Rust-Web-Shell ist aktiv und ersetzt die frueheren Platzhalter fuer Dashboard, Risks, Evidence, Reports, Roadmap, Assets, Processesund User-Administration durch serverseitig gerenderte, datengetriebene Seiten. Die Django-Schicht ist aber weiterhin fuer vollstaendige Browser-Workflows, Detail-/Form-Flows und einen Teil der Datei-/Import-Orchestrierung relevant.
7
+
ISCY ist fachlich weit in Richtung Rust migriert, aber noch nicht sicher Python-frei. Der Rust-Axum-Service ist als Backend direkt startbar, lokale Starts laufen Rust-only, Rust kann eigene Session-Cookies aus Django-kompatiblen Passwort-Hashes oder DB-validierten Tenant-/User-Kontexten ausstellen, liest Rollen, Gruppen und Django-kompatible Permissions aus der Rust-DB-Schicht, und erzwingt schreibende Rollen fuer migrierte Write-Flows. Die Rust-Web-Shell ist aktiv und ersetzt die frueheren Platzhalter fuer Dashboard, Risks, Evidence, Reports, Roadmap, Assets, Processes, Imports und User-Administration durch serverseitig gerenderte, datengetriebene Seiten. Die Django-Schicht ist aber weiterhin fuer vollstaendige Browser-Workflows, Detail-/Form-Flows und einzelne Datei-/Upload-Orchestrierungen relevant.
8
8
9
9
Deshalb ist der finale Loeschschritt fuer Python noch nicht fachlich freigegeben. Python jetzt zu entfernen wuerde die Anwendung nicht abschliessen, sondern zentrale UI- und Betriebsfunktionen abschalten.
10
10
@@ -51,7 +51,7 @@ Der alte Django-Runserver ist damit nicht mehr der lokale Standardpfad.
51
51
- Dashboard-, Report-, Catalog-, Requirements-, Asset-, Process- und Assessment-Read-Flows.
52
52
- Risk-Register Read-, Detail-, Create- und Update-Flows.
53
53
- Evidence Read-/Detail-Flows und Evidence-Need-Sync.
54
-
- Rust-Web-Shell mit Kontext-Formular sowie datengetriebenem Dashboard, Risk-Register, Evidence-Ueberblick, Reports, Roadmap, Assets und Processes.
54
+
- Rust-Web-Shell mit Kontext-Formular sowie datengetriebenem Dashboard, Risk-Register, Evidence-Ueberblick, Reports, Roadmap, Assets, Imports und Processes.
55
55
- Rust-DB-Admin-CLI mit `migrate`, `seed-demo` und `init-demo` fuer Rust-eigenen SQLite/PostgreSQL-Bootstrap der operativen Kern-Tabellen inklusive Product-Security sowie vollstaendigem Katalog-/Requirement-Seed.
56
56
- Rust-Session-Schicht mit `iscy_auth_session`, `/api/v1/auth/sessions`, `/api/v1/auth/session`, Logout, Cookie/Bearer-Aufloesung, Django-kompatibler `pbkdf2_sha256`-Passwortpruefung und Web-Kontext ohne Query-Parameter.
57
57
- Rust-RBAC-Grundlage mit `accounts_role`, `accounts_userrole`, Session-Rollencodes, Header-Rollen-Fallback und Schreibschutz fuer migrierte Write-Endpunkte.
@@ -60,16 +60,16 @@ Der alte Django-Runserver ist damit nicht mehr der lokale Standardpfad.
60
60
-`start.sh` startet lokal Rust-only statt Django-runserver.
61
61
- Roadmap Liste, Detail, Kanban, Task-Updates und Exportdaten.
62
62
- Wizard Start-/Result-Flows.
63
-
- Import-Center bestaetigte Importjobs.
63
+
- Import-Center bestaetigte Importjobs plus Rust-CSV-API `/api/v1/import-center/csv` und Rust-Webroute `/imports/` fuer CSV-Importe von Business-Units, Prozessen, Lieferanten und Assets.
64
64
- Product-Security Liste, Produktdetail, Roadmap, Task-Updates und Vulnerability-Updates.
1.**Weboberflaeche:** Rust liefert fuer `/dashboard/`, `/risks/`, `/evidence/`, `/reports/`, `/roadmap/`, `/assets/` und `/processes/` bereits echte serverseitige Seiten. Die restlichen Views, Detail-/Form-Flows und Exporte liegen noch in Django-Templates und Django-Views.
69
+
1.**Weboberflaeche:** Rust liefert fuer `/dashboard/`, `/risks/`, `/evidence/`, `/reports/`, `/roadmap/`, `/assets/`, `/imports/` und `/processes/` bereits echte serverseitige Seiten. Die restlichen Views, Detail-/Form-Flows und Exporte liegen noch in Django-Templates und Django-Views.
70
70
2.**Auth, Sessions und Admin:** Rust-Sessions, Passwort-Login, Rollen-/Schreibrechte sowie Account-Administration fuer User/Rollen-/Gruppen-/Direktrechtewechsel sind vorhanden. Die Django-kompatiblen Tabellen fuer Gruppen, Permissions und User-Zuordnung sind gebootstrapped; vollstaendige Django-Admin-Paritaet ist noch nicht komplett ersetzt.
71
71
3.**Migrations und Seeds:** Ein Rust-eigener Bootstrap fuer operative Kern-Tabellen inklusive Product-Security, Catalog und Requirements ist vorhanden. Einzelne historische Django-Schema-Details ausserhalb dieser Cutover-Slices sind noch nicht vollstaendig abgeloest.
72
-
4.**Formulare und Uploads:**Validierung, Form-Flows, Evidence-Dateiuploads sowie CSV/XLSX-Import-Mapping sind noch teilweise Django-orchestriert.
72
+
4.**Formulare und Uploads:**CSV-Importe fuer Business-Units, Prozesse, Lieferanten und Assets laufen direkt ueber Rust-Web/API. Evidence-Dateiuploads, XLSX-Importe und Mapping-Vorschauen sind noch teilweise Django-orchestriert.
73
73
5.**Python-Dateien im Repo:** CI und lokaler Start sind Rust-first. Python/Django-Dateien bleiben noch als Legacy-Kompatibilitaet und muessen nach Abschluss von Auth/Web/Form-Flows gezielt entfernt werden.
74
74
75
75
## Naechster fachlich sinnvoller Cutover-Schritt
@@ -78,7 +78,7 @@ Der naechste Abschlussblock ist nicht mehr ein weiterer einzelner API-Endpunkt,
78
78
79
79
1. Letzte Admin-Paritaet in Rust finalisieren.
80
80
2. Django-Templates durch Rust-Web oder ein separates Frontend auf Rust-API ersetzen.
81
-
3.Upload-/Import-Dateifluss ohne Django bereitstellen.
81
+
3.Evidence-Dateiuploads, XLSX-Importe und Mapping-Vorschauen ohne Django bereitstellen.
82
82
4. Python-Dateien, Requirements, Django-Settings und Django-Startpfade entfernen.
Copy file name to clipboardExpand all lines: docs/RUST_REWRITE_ROADMAP.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -95,7 +95,9 @@ ISCY schrittweise von Django/Python auf Rust ueberfuehren, ohne Fachfunktionalit
95
95
- Django kann Wizard-Start und Ergebnisansicht ueber `WIZARD_RESULTS_BACKEND=rust_service` aus Rust lesen und im Nicht-Strict-Modus auf lokale ORM-Daten zurueckfallen
96
96
-`import_center` hat tenantgeschuetzte Importjob-Writes in Rust:
97
97
-`POST /api/v1/import-center/jobs` legt gemappte Business-Units, Prozesse, Lieferanten und Assets an oder aktualisiert sie; optional ersetzt es vorhandene Eintraege dieses Typs
98
-
- Django behaelt Datei-Upload, CSV/XLSX-Parsing und Mapping-Vorschau, uebergibt den bestaetigten Import aber ueber `IMPORT_CENTER_BACKEND=rust_service` an Rust
98
+
-`POST /api/v1/import-center/csv` parst CSV direkt in Rust und wendet Business-Unit-, Prozess-, Lieferanten- und Asset-Importe tenantgeschuetzt an
99
+
-`/imports/` stellt den CSV-Import als Rust-Webformular bereit
100
+
- Django behaelt nur noch Datei-/XLSX-Upload und Mapping-Vorschau fuer nicht migrierte Importvarianten
99
101
-`product_security` hat tenantgeschuetzte Read-APIs in Rust:
100
102
-`GET /api/v1/product-security/overview` liefert Product-Security-Matrix, Posture-Kennzahlen, Produktliste und letzte Snapshots fuer den aktuellen Tenant
101
103
-`GET /api/v1/product-security/products/{product_id}` liefert den Detailbaum mit Releases, Komponenten, Threat Models, TARAs, Schwachstellen, AI-Systemen, PSIRT, Advisories, Snapshot und Roadmap-Aufgaben
0 commit comments