docs(salvage): benchmark-archive note + impressum ground-truth
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
# Benchmark-Archiv & RC-Freeze — `v1` (2026-06-19)
|
||||
|
||||
> **Zweck:** Reproduzierbarkeits-Record der Doc-Check-Kalibrierung (DSE / Cookie / Impressum).
|
||||
> Diese Datei enthält **nur Metadaten + Hashes** — **kein** Drittanbieter-Dokumenttext (Urheber-/Datenbankrecht).
|
||||
> Die vollständigen Artefakte (Korpora, GTs, Ergebnisse, Skripte) liegen im **internen Audit-Archiv**, getrennt von Repo / RAG / Produkt.
|
||||
|
||||
## 1. Daten-Klassen (Retention-Entscheidung 2026-06-19)
|
||||
|
||||
Drei Risikoklassen, drei Regeln:
|
||||
|
||||
| Klasse | Regel |
|
||||
|---|---|
|
||||
| **RAG-Korpus** | Control ableiten → Dokument **verwerfen**. Keine Volltexte als Wissensbasis. |
|
||||
| **Kundendaten (Prod)** | Speichern: Finding · Evidence · Hash · Version · URL · Zeitpunkt. **Keine** Dauer-Volltextkopie. Datensparsamkeit. |
|
||||
| **Benchmark/Validierung** | **Versioniert behalten** — sonst sind Messungen nicht reproduzierbar. Intern, off-RAG, off-Produkt. Wie ein Test-/Audit-Archiv, nicht wie eine Wissensbasis. |
|
||||
|
||||
Begründung: Das Risiko eines kleinen internen Benchmark-Archivs (öffentlich zugängliche Dokumente) ist geringer als das Risiko, die gesamte Validierung später nicht mehr belegen zu können.
|
||||
|
||||
## 2. Release-Candidates (eingefroren)
|
||||
|
||||
| RC | doc_type | Opus-GT (Archiv) | Testfirmen | FP / FN | Status |
|
||||
|---|---|---|---|---|---|
|
||||
| **DSE_RC_v1** | dse | `gt_opus_dse.json` (5 orig) + `gt_opus_dse_fresh.json` (3 frisch) | 8 (db, otto, ikea, ob, teamviewer + GT-Roster) | FP 11 %→**6 %**, FN ~7 %; frisch FP 7 % / FN 5 % | Release-Candidate |
|
||||
| **COOKIE_RC_v1** | cookie | `gt_opus_cookie_v2.json` (Mehrfach-Sampling offen) | 7 (db, ikea, lieferando, mediamarkt, ob, tchibo, teamviewer) | Prec 0,81→**0,95**, Rec 0,26→**0,44**, verpasste Lücken→**0 %** | Wave-1 (GT-Rauschen-Vorbehalt) |
|
||||
| **IMPRESSUM_RC_v1** | impressum | `gt_opus_impressum.json` | 9 (db, ikea, lieferando, mediamarkt, ob, otto, tchibo, teamviewer, zalando) | Text-Check FP **0 %** / FN **2 %** (81 anwendbar, 9 Faktenfeld-Controls) | Release-Candidate |
|
||||
|
||||
Detail-Methodik + Fehlerkarte: [`platform_validation_v1.md`](platform_validation_v1.md). Per-Modul-Zahlen: Gedächtnis `project_engine_quality.md`.
|
||||
|
||||
## 3. Archiv-Ort + Index
|
||||
|
||||
```
|
||||
macmini:~/bp-benchmark-archive/v1_2026-06-19/
|
||||
├── MANIFEST.json # 54 Dateien, je SHA256 + Bytes (autoritativ)
|
||||
├── gt_<firma>_<doctype>.txt # Korpora (Drittanbieter-Volltext — NUR hier)
|
||||
├── gt_opus_*.json # Opus-Oracle-GTs
|
||||
├── *_candidates*.json, *_resid.json, *_falsefindings*.json
|
||||
├── *_criteria_changelog.json / *_criteria_backup.json
|
||||
└── scripts/ # 46 Mess-Skripte (cc_*.py) = "wie gemessen"
|
||||
```
|
||||
|
||||
**Versionsdefinierende Hashes** (12-stellig gekürzt; voll in `MANIFEST.json`):
|
||||
|
||||
| Artefakt | sha256… | Rolle |
|
||||
|---|---|---|
|
||||
| `gt_opus_dse.json` | `c5c8975afa42` | DSE-GT (orig) |
|
||||
| `gt_opus_dse_fresh.json` | `f3940da2e420` | DSE-GT (Anti-Overfit) |
|
||||
| `gt_opus_cookie_v2.json` | `fcb61dc9b332` | Cookie-GT |
|
||||
| `gt_opus_impressum.json` | `3e0f2f8d5f5f` | Impressum-GT |
|
||||
| `dse_criteria_changelog.json` | `d8d461527f5b` | DSE-Kriterien-Diff |
|
||||
| `cookie_criteria_changelog.json` | `9d29d7b515a5` | Cookie-Kriterien-Diff |
|
||||
| `impressum_fp_by_cause.json` | `9477f98c0577` | Impressum SCOPE/JUDGE-Split |
|
||||
|
||||
## 4. Reproduktion
|
||||
|
||||
1. Archiv = Grundwahrheit (Korpus-Hash belegt die damalige Dokumentversion; ändert die Firma ihr Dokument → neuer Hash, alte Messung bleibt über das Archiv belegbar).
|
||||
2. Mess-Skripte unter `scripts/` gegen die GTs laufen lassen (Pattern: `docker exec -i bp-compliance-backend python3 - < scripts/cc_engine_*.py`).
|
||||
3. OVH ist stochastisch → Zahlen ±Rauschen; RC-Werte sind Mittel über den dokumentierten Lauf.
|
||||
|
||||
## 5. Was NICHT passiert
|
||||
|
||||
- Korpus-Volltexte gehen **nicht** ins Repo, **nicht** in Qdrant/RAG, **nicht** ins Produkt.
|
||||
- Das Archiv ist read-only Referenz; Kalibrierungs-Änderungen sind über die Changelog-Artefakte reversibel.
|
||||
Reference in New Issue
Block a user