78 lines
No EOL
3.3 KiB
Markdown
78 lines
No EOL
3.3 KiB
Markdown
# Drift Report Schema
|
||
|
||
## Überblick
|
||
Das Experiment **drift_report_schema** befasst sich mit der Entwicklung eines stabilen JSON-Schemas für die Datei *drift_report.json*. Ziel ist es, Byte-Stabilität und eine deterministische Klassifizierung unbekannter Kategorien sicherzustellen.
|
||
|
||
[Artikel lesen](https://donau2space.de/tag-143-byte-stabil-statt-bauchgefuehl-mein-contract-fuer-drift_report-json-steht-und-unknowns-sind-jetzt-zaehlbar/)
|
||
|
||
[Git-Repository](https://git.donau2space.de/Mika/drift_report_schema)
|
||
|
||
### Hinweis
|
||
Alle Inhalte wurden per KI generiert.
|
||
|
||
Nutzung, Anpassung und Weiterentwicklung erfolgen eigenverantwortlich auf eigenes Risiko. Es wird keine Korrektheit, Sicherheit, Funktionsfähigkeit oder rechtliche Eignung zugesichert.
|
||
|
||
## Inhalt des Repositories
|
||
Das Repository enthält drei primäre Artefakte:
|
||
|
||
### 1. drift_report_schema
|
||
- **Art:** json_dataset
|
||
- **Ziel:** mixed
|
||
- **Sprachen:** JSON
|
||
- **Zweck:** Definiert ein präzises Schema für *drift_report.json* mit Pflicht- und optionalen Feldern. Dient der Validierung von Reports.
|
||
- **Datenstruktur:** `drift_report`
|
||
- Felder: `policy_hash`, `run_id`, `pinned_flag`, `mischfenster_p95`, `metrics`, `unknown_label`
|
||
|
||
### 2. rollout_metrics_schema
|
||
- **Art:** json_dataset
|
||
- **Ziel:** mixed
|
||
- **Sprachen:** JSON
|
||
- **Zweck:** Strukturdefinition für *rollout_metrics.json* zur Erfassung der sogenannten *Known* und *Unknown* Zustände.
|
||
- **Datenstruktur:** `rollout_metrics`
|
||
- Felder: `artefact_missing_count`, `parse_error_count`, `contract_violation_count`, `valid_reports_count`
|
||
|
||
### 3. input_validation_script
|
||
- **Art:** python_script
|
||
- **Ziel:** linux-userspace
|
||
- **Sprachen:** Python
|
||
- **Zweck:** Validiere beliebige JSON-Dateien gegen die im Projekt enthaltenen Schemata.
|
||
- **API-Funktion:**
|
||
- `validate_json(input_json, schema)` → `validation_result` : Führt die Schemaüberprüfung durch und gibt das Ergebnis zurück.
|
||
|
||
## Installation & Nutzung
|
||
Da das Projekt ein Python-Skript für die Validierung enthält, kann es direkt in einer Linux-Umgebung ausgeführt werden.
|
||
|
||
### Voraussetzungen
|
||
- Python ≥ 3.8
|
||
- Zugriff auf die Schemata (`.json`-Dateien)
|
||
|
||
### Installation
|
||
1. Repository klonen:
|
||
`git clone https://git.donau2space.de/Mika/drift_report_schema`
|
||
2. In das Projektverzeichnis wechseln.
|
||
3. Benötigte Pakete installieren (z. B. `jsonschema`).
|
||
|
||
### Nutzung
|
||
Beispielhafte Nutzung zur Prüfung einer Datei:
|
||
```
|
||
python3 input_validation_script.py <input.json> <schema.json>
|
||
```
|
||
Ergebnis: Gibt eine Validierungsbewertung und mögliche Fehlerhinweise aus.
|
||
|
||
## Typische Use-Cases
|
||
- Validierung von Produktionsdaten gegen ein fest definiertes Schema.
|
||
- Sicherstellung von Kompatibilität bei Versionswechseln.
|
||
- Identifikation von Formatabweichungen vor der Integration.
|
||
- Automatisches Testen von ML-Reports auf Byte-Stabilität.
|
||
|
||
## Struktur & mögliche Erweiterungen
|
||
- `/schemas/` – Enthält *drift_report_schema.json* und *rollout_metrics_schema.json*
|
||
- `/scripts/` – Python-Validierungsskript
|
||
- `/docs/` – Konzeptionelle und Anwendungsdokumentation
|
||
|
||
Erweiterungen können sich auf zusätzliche Validierungslogik, neue Schema-Versionen oder Integration in automatisierte Deployment-Pipelines beziehen.
|
||
|
||
## Lizenz
|
||
Dieses Projekt steht unter der **MIT-Lizenz**.
|
||
|
||
*Die Inhalte wurden automatisiert per KI erstellt. Verwendung ausschließlich auf eigene Verantwortung.* |