64 lines
3.4 KiB
Markdown
64 lines
3.4 KiB
Markdown
# Abnahme: aktueller Work-Ansichtsexport
|
|
|
|
Stand: 18.09.2026. Ausschließlich der ausdrücklich freigegebene **Dummy** wurde
|
|
über GET-Aufrufe gelesen. Keine Änderung an Kundendaten, GPOs, Reviews,
|
|
Auswertungen oder Datenbank. Keine Dummy-Inhalte als Testfixtures gespeichert.
|
|
|
|
## Umsetzung
|
|
|
|
- CSV, MD und HTML verwenden dieselbe eingefrorene Ansicht und Sortierung.
|
|
- Genau zwei Inhaltsspalten: **Soll-Zustand** und **Abweichungen**.
|
|
- Soll-Zustand enthält Regel, erwartete Werte, native Behebung, Prüfhinweise und
|
|
Scope. Abweichungen enthält tatsächlichen Status, Werte, Quellen und Results.
|
|
- Native GPO-Anweisungen, Backup-Identitäten, Reihenfolge innerhalb der Quelle,
|
|
Baseline-Varianten und Typinformation bleiben nachvollziehbar. Kein erfundener
|
|
einheitlicher Sollwert, keine Aussage zur wirksamen Endpoint-Konfiguration.
|
|
- Nicht konfigurierte oder nicht vergleichbare Empfehlungen bleiben neutral.
|
|
Review „Done“ und Risikoakzeptanz ersetzen keinen Rescan-Nachweis.
|
|
- Fehlende Belege und fehlende separate Lösungstexte werden benannt. Bei Maester
|
|
bleiben eingebettete Remediation-Texte vollständig erhalten.
|
|
- HTML: offline, skriptfrei, eingebettetes Inter, Umbruch statt Abschneiden.
|
|
- CSV: genau zwei Spalten; große Inhalte bleiben durch beschriftete
|
|
Fortsetzungszeilen unter derselben Finding-ID vollständig erhalten.
|
|
|
|
## Vollständigkeitsabgleich
|
|
|
|
| Dummy-Auswahl | Work-Treffer | Results-Zeilen | Geprüfte Results-Zellen | Results-Textabschnitte | GPO-Observations |
|
|
| --- | ---: | ---: | ---: | ---: | ---: |
|
|
| Deviation | 477 | 7.599 | 20.434 | 395 | 16 |
|
|
| All | 1.833 | 9.917 | 27.059 | 708 | 51 |
|
|
|
|
Die geladenen Work-Daten enthalten 119 Purple-Knight-, 411 CIS-CAT-, 318
|
|
Maester-, 37 PingCastle- und 948 GPO-Einträge. Dies ist der gesamte Dummy-Scope,
|
|
nicht die Zusage identischer Zahlen für einen einzelnen Timeslot oder Filter.
|
|
|
|
Jede exportierte Finding-ID und ihre Reihenfolge wurden gegen die Work-Auswahl
|
|
geprüft. Jede verknüpfte Result-Zeile und Zelle sowie alle Results-Textabschnitte
|
|
und GPO-Quellen wurden abgeglichen. Die öffentliche Baseline-Dokumentation wurde
|
|
über denselben Workspace-Loader wie in Work berücksichtigt.
|
|
|
|
Keine fehlenden Result-Referenzen im geprüften Dummy. CSV wurde wieder eingelesen
|
|
und zellengenau abgeglichen: keine Datenverluste, keine Zellen über 32.767 Zeichen.
|
|
Zehn zusätzliche Fortsetzungszeilen für Deviation, elf für All; sie zählen nicht
|
|
als zusätzliche Findings. HTML und MD behalten eine Einheit pro Work-Eintrag.
|
|
|
|
## Technische Abnahme
|
|
|
|
53 fokussierte Export-/Results-Tests bestanden. Nach finaler Schriftintegration
|
|
nochmals 16 neue Export-/UI-Tests bestanden. Enthalten sind Filter, Suche,
|
|
Sortierung, 90 Treffer unabhängig vom Viewport, ignorierte Fremdmarkierungen,
|
|
aktives My Workspace, Nulltreffer, Results, Quellattribution, neutrale GPO-Urteile,
|
|
Review/Rescan-Trennung, CSV-Langzellen, Teilbelege, inert gerendertes Markup und
|
|
Fehler ohne Teil-Download.
|
|
|
|
Gesamtsuite: 1.412 bestanden, 13 optionale PostgreSQL-Tests übersprungen;
|
|
ein bestehender, unabhängiger Fehler in `gpo-xml-presentation.test.tsx:70`
|
|
(globale Annahme „kein code-Element“ im Reader). Unverändert offengehalten.
|
|
|
|
Client-/Server-Build, Local-only- und Designprüfung bestanden. App HTTP 200,
|
|
Backend `ok`. Synthetische Browserprüfung bei normaler Breite und 390 px:
|
|
kein horizontaler Überhang, vollständiges Dokumentende sichtbar.
|
|
|
|
Reproduzierbarer, lesender Opt-in-Abgleich:
|
|
`node outputs/dummy-work-export-audit.mjs --verify`.
|