Server und Gitea bei ITM, Backups als offener Punkt
- ITM stellt Staging- und Produktionsserver sowie den Gitea für den Push-Mirror (Adresse folgt) - Backups: Speicherort, Aufbewahrungsdauer und Zuständigkeit noch offen Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
30d80174ac
commit
558e698e3b
@@ -48,4 +48,4 @@ Die Ports 80 und 3306 sind auf dem Entwicklungsrechner belegt, daher `APP_PORT`
|
||||
- Keine Selbstregistrierung: Benutzer legt ein Administrator an.
|
||||
- 2FA (Authenticator-App) und Passkeys sind verfügbar, 2FA ist noch nicht verpflichtend.
|
||||
- Meilisearch: Version fest eingestellt, Telemetrie aus (`MEILISEARCH_NO_ANALYTICS=true`).
|
||||
- Git: führend ist der lokale Gitea; der Gitea des Kunden folgt als Push-Mirror.
|
||||
- Git: führend ist der lokale Gitea; der Gitea von ITM folgt als Push-Mirror.
|
||||
|
||||
+7
-5
@@ -5,7 +5,8 @@ Stand: 1. Oktober 2026 (KW 40). Wird nach dem Kundentermin (KW 42) zum Detailpla
|
||||
## Beteiligte
|
||||
|
||||
- **ITM:** Anbieter der KI-API (OCR, Embeddings, Reranker, ggf. Sprachmodell), Projektleitung und
|
||||
abrechnende Firma.
|
||||
abrechnende Firma. Stellt auch die Server (Staging, Produktion) und den Gitea, auf den das
|
||||
Repository gespiegelt wird.
|
||||
- **BauIn:** Endkunde. Liefert Fachdaten (LVs, MKAs, Bewertungsmatrizen), stellt den Fachexperten
|
||||
und nutzt das System.
|
||||
- „Kunde“ meint in diesem Dokument BauIn; wo ITM gemeint ist, steht ITM.
|
||||
@@ -30,7 +31,7 @@ Stand: 1. Oktober 2026 (KW 40). Wird nach dem Kundentermin (KW 42) zum Detailpla
|
||||
| | Termin | Ergebnis | Termin mit dem Kunden |
|
||||
|---|---|---|---|
|
||||
| **M1** | Ende KW 43 (23.10.) | Grundgerüst: Login/2FA, Benutzer und Rollen, Projekte und Lose, Upload, Protokoll; Detailplan steht | Demo (30 min) |
|
||||
| **M2** | Ende KW 47 (20.11.) | Pilot-LVs importiert und durchsuchbar, erste ~5 Dokumente gemeinsam mit „passt / passt nicht“ bewertet; Staging beim Kunden läuft | Prüftermin (60 min) |
|
||||
| **M2** | Ende KW 47 (20.11.) | Pilot-LVs importiert und durchsuchbar, erste ~5 Dokumente gemeinsam mit „passt / passt nicht“ bewertet; Staging bei ITM läuft | Prüftermin (60 min) |
|
||||
| **M3** | Ende KW 51 (18.12.) | Erste MKA durchgängig: Vorschläge, Feedback, Regeln, Excel-Export | Präsentation (60–90 min) |
|
||||
| **M4** | Ende KW 4/2027 (29.01.) | Alle Pilot-MKAs durchlaufen, Trefferquote und Zeitersparnis gemessen; Produktion abgesichert | Abschlusspräsentation, Entscheidung über Ausbau |
|
||||
| Puffer | KW 5–6/2027 | für Verzögerungen bei Zulieferungen oder GAEB-Import | – |
|
||||
@@ -93,10 +94,11 @@ M4 Ende KW 13/2027 (Anfang April).
|
||||
| KW 42 | BauIn | Beispieldateien (GAEB, MKA als PDF + GAEB, Matrix-Vorlage), Kopie der relevanten Lauffenburg-Dateien | AP5, AP9 |
|
||||
| KW 43 | ITM | Testzugang zur KI-API (OCR, Embedding, Reranker; Sprachmodell falls vorhanden) | AP3 |
|
||||
| KW 43 | BauIn | Entscheidung Rollenmodell, Freigabe-Variante, 2FA-Pflicht | AP1, AP8 |
|
||||
| KW 46 | klären | Staging-VM mit Zugang, Domain und Zertifikat | AP11, M2 |
|
||||
| KW 46 | ITM | Staging-Server mit Zugang, Domain und Zertifikat | AP11, M2 |
|
||||
| KW 47 | BauIn | 10–20 abgeschlossene MKAs mit Bewertung (Referenzfälle) | AP2 Teil 2, AP12 |
|
||||
| KW 48 | BauIn | Kuratierte Wissensbasis (VOB, DB-Richtlinien, Standardleistungstexte, Vorlagen) | AP4, AP7 |
|
||||
| KW 51 | klären | Produktions-VM, Backup-Ziel und Aufbewahrungsdauer | AP11 |
|
||||
| KW 51 | ITM | Produktions-Server mit Zugang, Domain und Zertifikat | AP11 |
|
||||
| KW 51 | offen | Backups: Speicherort, Aufbewahrungsdauer, Zuständigkeit | AP11 |
|
||||
|
||||
## Risiken
|
||||
|
||||
@@ -136,7 +138,7 @@ M4 Ende KW 13/2027 (Anfang April).
|
||||
**Später im Plan (bereits vorgemerkt)**
|
||||
- [ ] **Meilisearch-Test Teil 2** (KW 46–47): Trefferquote mit echten API-Vektoren und Referenzfällen,
|
||||
ohne/mit binärer Quantisierung, vor und nach dem Reranker
|
||||
- [ ] Push-Mirror zum Gitea des Kunden einrichten, sobald die Adresse vorliegt
|
||||
- [ ] Push-Mirror zum Gitea von ITM einrichten, sobald die Adresse vorliegt
|
||||
- [ ] 2FA-Pflicht umsetzen, falls der Kunde das entscheidet
|
||||
|
||||
## Später (nicht im MVP)
|
||||
|
||||
+10
-9
@@ -7,7 +7,8 @@ und benennt, wo KI-BauIN bewusst abweicht und warum.
|
||||
## Beteiligte
|
||||
|
||||
- **ITM:** Anbieter der KI-API (OCR, Embeddings, Reranker, ggf. Sprachmodell), Projektleitung und
|
||||
abrechnende Firma.
|
||||
abrechnende Firma. Stellt auch die Server (Staging, Produktion) und den Gitea, auf den das
|
||||
Repository gespiegelt wird.
|
||||
- **BauIn:** Endkunde. Liefert Fachdaten (LVs, MKAs, Bewertungsmatrizen), stellt den Fachexperten
|
||||
und nutzt das System.
|
||||
- „Kunde“ meint in diesem Dokument BauIn; wo ITM gemeint ist, steht ITM.
|
||||
@@ -76,7 +77,7 @@ Suchtreffern und bevor Inhalte an ein Sprachmodell gehen.
|
||||
| Tests | Pest 4 auf PHPUnit 12; Tests im PHPUnit-Klassenstil | gleich (Runner ergänzt) |
|
||||
| Code-Stil | Laravel Pint | gleich |
|
||||
| Statische Analyse | PHPStan/Larastan Stufe 7 | ergänzt |
|
||||
| Versionsverwaltung | Git, Gitea (lokal führend, Kunde als Push-Mirror) | gleich |
|
||||
| Versionsverwaltung | Git, Gitea (lokal führend, Gitea von ITM als Push-Mirror) | gleich |
|
||||
|
||||
## 5. Betrieb (Produktion, geplant)
|
||||
|
||||
@@ -90,11 +91,11 @@ Ergänzt bzw. anders als in der Referenz:
|
||||
|
||||
- **Externe Alarmierung von Anfang an** (z. B. Mail), wenn Worker oder Scheduler ausfallen,
|
||||
Jobs fehlschlagen oder die KI-API ITM nicht erreichbar ist.
|
||||
- **Backups verschlüsselt**, bevor sie den Server verlassen (z. B. restic). Speicherort und
|
||||
Aufbewahrungsdauer legt der Kunde fest. Gesichert werden Datenbank, private Uploads und
|
||||
- **Backups verschlüsselt**, bevor sie den Server verlassen (z. B. restic). Speicherort,
|
||||
Aufbewahrungsdauer und Zuständigkeit sind noch offen. Gesichert werden Datenbank, private Uploads und
|
||||
Konfiguration; der Meilisearch-Index nicht, er wird aus MySQL neu aufgebaut.
|
||||
- **Wiederanlauf auf einem Ersatzserver** einmal vollständig testen; Datenverlust und
|
||||
Wiederanlaufzeit mit dem Kunden festlegen.
|
||||
Wiederanlaufzeit mit BauIn und ITM festlegen.
|
||||
|
||||
## 6. Bewusste Abweichungen von der Referenz
|
||||
|
||||
@@ -103,14 +104,14 @@ Ergänzt bzw. anders als in der Referenz:
|
||||
| Livewire | 3 | 4 | Neues Projekt; das Starter-Kit von Laravel 13 baut auf Livewire 4 auf, ein späterer Umstieg entfällt. |
|
||||
| TallStackUI | 3 | 4 | TallStackUI 3 läuft nur mit Livewire 3; Version 4 setzt Livewire ≥ 4.3 voraus. |
|
||||
| PHP | 8.4 | 8.5 | Sicherheitsupdates bis Ende 2029 statt Ende 2028. |
|
||||
| Backups | unverschlüsselt, Hetzner Object Storage | verschlüsselt, Ort nach Vorgabe des Kunden | Vertrauliche Vertragsunterlagen; Vorgabe „alles lokal“. |
|
||||
| Backups | unverschlüsselt, Hetzner Object Storage | verschlüsselt, Ort noch offen | Vertrauliche Vertragsunterlagen; Vorgabe „alles lokal“. |
|
||||
| Suche | – | Meilisearch | Hybride Suche und Vektorsuche für die Nachtragsprüfung. |
|
||||
|
||||
## 7. Offene Punkte
|
||||
|
||||
- Ist 2FA für alle Benutzer Pflicht?
|
||||
- Verlangt die IT des Kunden eine Festplattenverschlüsselung auf der VM?
|
||||
- Speicherort und Aufbewahrungsdauer der Backups.
|
||||
- Verlangen BauIn oder ITM eine Festplattenverschlüsselung auf den Servern bei ITM?
|
||||
- Backups: Speicherort, Aufbewahrungsdauer und wer dafür zuständig ist.
|
||||
- Weitere Sprachen über Deutsch und Englisch hinaus (technisch vorbereitet, fachlich nicht angefragt).
|
||||
|
||||
## Architekturübersicht
|
||||
@@ -132,5 +133,5 @@ flowchart LR
|
||||
Scheduler --> Queue
|
||||
Health[Statusprüfung und Alarmierung] --> Worker
|
||||
Health --> Scheduler
|
||||
Backup[Verschlüsselte Sicherung] --> Storage[Speicherort nach Vorgabe des Kunden]
|
||||
Backup[Verschlüsselte Sicherung] --> Storage[Speicherort noch offen]
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user