test/dedup-fakekek-testutil
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (push) Canceled after 0s
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (pull_request) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / Connect Security-Test-Gate (QA-01 AC4, Merge-Gate) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (pull_request) Canceled after 0s
CI / Connect Security-Test-Gate (QA-01 AC4, Merge-Gate) (pull_request) Canceled after 0s
Archive-Pflichttest-Gate / pflichttest-gate (pull_request) Canceled after 0s
Supply-Chain-Scan (Go) / govulncheck (push) Canceled after 0s
Supply-Chain-Scan (Go) / govulncheck (pull_request) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (pull_request) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (pull_request) Canceled after 0s
CI / Web (dms-browser) (pull_request) Canceled after 0s
CI / Web (pdf-viewer) (pull_request) Canceled after 0s
CI / Web (shl) (pull_request) Canceled after 0s
Connect-Schnittstellen-Vertragstests / contract-tests (push) Canceled after 0s
Connect-Schnittstellen-Vertragstests / contract-tests (pull_request) Canceled after 0s
Core-Schnittstellen-Vertragstests / contract-tests (pull_request) Canceled after 0s
Supply-Chain-Scan (npm) / npm-audit (pull_request) Canceled after 0s
Core-Pflichttest-Gate / pflichttest-gate (pull_request) Canceled after 0s
RBAC-Rollenhierarchie-Pflichtgate / rbac-policy-invariant (pull_request) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (pull_request) Canceled after 0s
Fable-Review auf Code-Dopplung (P1). Byteidentische Test-Doubles, die unabhaengig in vielen *_test.go-Dateien dupliziert waren, je Modul in ein neues internal/testutil-Paket gezogen (Go-Modulgrenzen verhindern ein gemeinsames Paket ueber dms/archive/connect hinweg): - dms/internal/testutil.FakeKEKProvider: 14 Dateien (thumbnail, versioningapi, documentapi, pdfsign, docmerge, pdfconvert, export, watchfolder, downloadapi, malwarescan, uploadapi, versioning, migrationdocument, upload) + 2 weitere Nutzstellen ohne eigene Typdefinition (versioning/diff_test.go, uploadapi/int19_...). dms/internal/crypto/service_test.go NICHT angefasst -- eigene Call-Counting-Variante, keine echte Dopplung. - archive/internal/testutil.FakeKEKProvider: backup + objectbackup (tenant-keyed Map-Variante, von der dms-Variante verschieden). - connect/internal/testutil.FakeKEK: 7 Dateien (backupconnector, credential, contracttest, connectorsetupapi, webhooksub x2, m365connector). connect/internal/crypto/envelope_test.go NICHT angefasst -- einziges Vorkommen, keine Dopplung. fakeUsageReporter/fakeVerifier bewusst NICHT konsolidiert: bei Pruefung stellten sich die meisten Vorkommen als inhaltlich verschiedene Varianten heraus (unterschiedliche Felder/Fehlerpfade), keine echte Kopie. Die eine echte Dopplung (archive/workflow moduleadapter) liegt ueber einer Modulgrenze, nicht ohne neue Shared-Library loesbar. go build/vet/test (-p 1) sauber in allen betroffenen Paketen von dms, archive, connect auf Testhost 131. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
NEXARCH
Modulares Dokumentenmanagement- und Office-System. Siehe CLAUDE.md für
Arbeitsregeln (Datenschutz, Secrets) und die Konzeptdokumente unten für die
fachliche Gesamtübersicht.
Dokumentenlandkarte
Root-Ebene — Konzeptdokumente (projektweit):
| Datei | Inhalt |
|---|---|
PRODUKTARCHITEKTUR.md |
Gesamtübersicht über Module, Schnittstellen, Deployment |
SICHERHEITSKONZEPT.md |
Sicherheitsarchitektur, Bedrohungsmodell |
MIGRATIONSKONZEPT.md |
Übernahme aus Altsystemen (archivdms, archivmail) |
SKALIERUNGSKONZEPT.md |
Mandantenfähigkeit, Skalierungsstrategie |
STORAGE-KONZEPT.md |
Speicher-/Ablagearchitektur |
SAAS-BETRIEBSMODELL.md |
Betriebsmodell für den SaaS-Betrieb |
UI-UX-KONZEPT.md |
Design-System- und UX-Leitlinien |
CLAUDE.md |
Arbeitsregeln für KI-gestützte Entwicklung in diesem Repo |
Module (je eigenes Kanban-Board + Code-Verzeichnis):
| Board | Code | Modul |
|---|---|---|
core-kanban/ |
internal/, cmd/ |
Identität, Mandanten, Rechte, API-Grundgerüst |
dms-kanban/ |
dms/ |
Dokumentenmanagement (siehe dms/README.md für Referenzprojekte) |
mail-kanban/ |
mail/ |
Postfach-Modul |
workflow-kanban/ |
workflow/ |
Aufgaben, Freigaben, Routing |
ai-kanban/ |
ai/ |
KI-Funktionen (Zusammenfassung, Extraktion, Suche) |
connect-kanban/ |
connect/ |
Externe Systemanbindungen (ERP, DATEV, CRM) |
archive-kanban/ |
archive/ |
Archivierung, Retention, Kennzahlen |
migration-kanban/ |
migrations/ |
Datenübernahme aus Altsystemen |
Jedes Board hat README.md (Modulübersicht) und DEVLOG.md (Session-Log).
Ticket-Dateien liegen unter <board>/tickets/<CODE>.md, Bearbeitungsstand in
<board>/board.csv/board.json.
Prüfprotokolle:
docs/— Core-Prüfprotokolle (<CODE>-PRUEFPROTOKOLL.md) sowie einige projektweite Betriebsdokumente (Teststrategie, Coding-Guidelines, Incident Response, Rollout-131)<modul>/docs/(z. B.dms/docs/,ai/docs/) — Prüfprotokolle des jeweiligen Moduls
Gemeinsames Frontend-Design-System: web/shl/ (@nexarch/shl), von
allen web/<modul>/-Apps importiert.
Setup
Jedes Modul hat ein eigenes README.md mit Setup-Anleitung (z. B.
dms/README.md, cmd//internal/ für Core).
Languages
Go
83.6%
TypeScript
12%
Shell
2.1%
JavaScript
1%
Kotlin
0.5%
Other
0.8%