Operator ETL
Operator ETL
Agentische Datenerfassung für FOIA und öffentliche Kommentare — deterministisches Medaillon-Warehouse, LangGraph-Orchestrierung, MCP-Tool-Oberfläche, PII-Richtlinienebene.
Python und SQL entscheiden, welche Daten existieren. Agenten orchestrieren innerhalb typisierter Grenzen. Tests beweisen die Invarianten — kein LLM-API-Schlüssel für die MVP-Demo erforderlich.
Entwickelt für Regierungsbehörden und regulierte Stellen, die öffentliche Kommentare erfassen, PII vor der Veröffentlichung erkennen, fehlerhafte Zeilen unter Quarantäne stellen und verteidigungsfähige Erkenntnisse (jede Zahl gegen das Warehouse verifiziert) produzieren müssen.
Dokumentation
Wiki (durchsuchbar): https://khaosans.github.io/operator-etl/
Hier starten | Link |
In Aktion sehen | Visuelle Tour (Screenshots) |
Erster Start | QUICKSTART — |
Erfahren, was wir gebaut haben | |
Für wen es gedacht ist | |
Produkt-UI (später) | PRODUCT-UX — SPEZIFIZIERT, nicht diese Demo |
Related MCP server: MES Document MCP
Mit einem Befehl verifizieren
git clone https://github.com/khaosans/operator-etl.git
cd operator-etl
./scripts/verify.shInstalliert uv falls fehlend, synchronisiert Abhängigkeiten, führt das vollständige Proof-Gate aus. Erfolg endet mit OPERATOR_ETL_VERIFY=PASS.
Erwartet: 51 pytest bestehen, FOIA-Demo gibt status=complete und silver=10 aus. Vollständiges Screenshot-Set: docs/TOUR.md.



flowchart LR
Verify[verify.sh] --> UV[uv sync]
UV --> E2E[e2e gate]
E2E --> Pass[OPERATOR_ETL_VERIFY=PASS]Bereits uv installiert? make e2e · Details: docs/QUICKSTART.md · Schritt-für-Schritt: docs/WALKTHROUGH.md
Veröffentlichte Snapshots sind Git-Tags (nicht jeder Merge). Nachdem eine Veröffentlichung existiert: GitHub Releases (Wheels), ghcr.io/khaosans/operator-etl:<version>, GitHub Packages operator-etl. Prozess: docs/VERSIONING.md. Das Wiki folgt immer master.
flowchart LR
subgraph problem [The usual demo]
A[Chatbot + SQL] --> W[(Warehouse)]
A --> M[Memo with KPIs]
end
subgraph fail [Three failures]
F1[PII in context]
F2[Hallucinated counts]
F3[No replay audit]
end
M --> failOperator ETL trennt deterministisches ETL von begrenzten Agenten. PII erreicht nie uneingeschränkte Tools; der Kritiker lehzt Erkenntniszahlen ab, die nicht in gold sind; bronze gibt Ihnen eine unveränderliche Prüfspur.
Tiefergehend: docs/WHY.md · Behörden-Workflow: docs/FOIA-Public-Comments-Guide.md
So funktioniert es — drei Ebenen
flowchart TB
subgraph data [Data plane]
direction TB
CSV[CSV intake] --> Bronze[bronze_raw]
Bronze --> Silver[silver validated]
Bronze --> Quarantine[quarantine]
Silver --> Gold[gold SQL marts]
end
subgraph policy [Policy plane]
PII[PII scan + vault]
Bronze --> PII
end
subgraph control [Control plane]
Graph[LangGraph]
MCP[MCP allowlist]
Critic[critic]
Graph --> MCP --> Gold
Graph --> Critic --> Insight[verified insight]
endEbene | Rolle |
Daten | Bronze (unveränderlich) → Silber (validiert) → Gold (SQL-Marts) + Quarantäne. Python und SQL führen aus; kein LLM auf Rohdaten. |
Richtlinie | PII-Scan, verschlüsselter Tresor, fehlschlagen-schließen vor Erkenntnis. Tresor nie über MCP exponiert. |
Steuerung | LangGraph-Pipeline, MCP-allowlistierte Tools, Kritiker verifiziert jede Zahl im Erkenntnisentwurf. |
Details: docs/HOW-IT-WORKS.md · okf/models/three-planes.md
Warum dem Chatbot nicht Ihr Warehouse geben?
Vertrauen und Beweis
Frage | Antwort |
Funktioniert es lokal? |
|
Was beweist CI? | Gleiches Gate bei jedem Push (Badge oben) |
Was wird nicht in CI bewiesen? | Live-GCP-Deploy, Presidio PII, LLM-generierte Erkenntnisse — siehe ehrliches Audit |
Beweismatrix: docs/FOUNDATIONS.md · Vollständiges Audit: docs/FINAL-REVIEW.md
Was Sie gerade bewiesen haben
Metrik | Erwartet |
Beispielkommentare | 12 (EPA/FCC-Akten) |
Silber (gültig) | 10 |
Unter Quarantäne | 2 |
Graph-Status |
|
Kritiker | bestanden |
Details: okf/models/mvp-demo.md
Technische Abwägungen
Entscheidung | Wir wählten | Vorteil | Kosten | Wann ändern |
Lokales Warehouse | DuckDB | Null-Infrastruktur-Beweis auf einem Laptop | Nicht mehrfachmandantenfähig | Stufe L3 BigQuery — SCALING.md |
PII-Erkennung | Regex MVP | Einfach, testbar, keine ML-Abhängigkeiten | Übersieht Namen, Adressen | Presidio für Produktion |
Erkenntnisgenerierung | Vorlage + Kritiker | Kein API-Schlüssel; deterministisch | Weniger narrative Flexibilität | LLM-Knoten, wenn Behörde zustimmt |
Agentendatenzugriff | MCP-Allowlist (3 Tools) | Minimale Rechte | Keine Ad-hoc-SQL-Erkundung | Für Produktions-FOIA nicht lockern |
Qualitätsfehler | Fehlschlagen-schließen | Vertrauenswürdige KPIs | Blockiert Erkenntnisse bis zur Behebung | Warn-und-Banner vermeiden |
Vollständige Beweismatrix: docs/FOUNDATIONS.md
Für wen das gedacht ist
Rolle | Hier starten |
FOIA-Beauftragter | |
Dateningenieur | |
Architekt / Prüfer | WHY → FOUNDATIONS → |
KI-Agent (MCP) | AGENTS.md · |
Übernahme-Leiter
flowchart LR
L0[L0 Prove make e2e] --> L1[L1 Run locally]
L1 --> L2[L2 Extend source]
L2 --> L3[L3 GCP staging]
L3 --> L4[L4 Production HITL]Ebene | Aktion | Dokument |
0 — Beweisen |
| |
1 — Lokal ausführen | MCP, Dashboard | |
2 — Erweitern | Neue CSV-Quelle | |
3 — GCP-Staging | Terraform + Cloud Run | |
4 — Produktion | Presidio, HITL, Live-BQ, Produkt-UI |
Häufige Befehle
Befehl | Aktion |
| Erster Start — uv installieren falls nötig + vollständiges Proof-Gate |
| Wie verify.sh |
| Vollständiges MVP-Proof-Gate (OKF + Tests + FOIA-Demo) |
| Nur FOIA-Demo |
| pytest (51 Tests) |
| FOIA-agentische Pipeline |
| Streamlit — Gov + Orders Tabs |
| MCP-Server für Cursor-Agenten |
| PDF-Share-Pack neu generieren |
Führen Sie make help für alle Ziele aus.
Architektur
Ebene | Paket | Status |
Daten |
| IMPLEMENTIERT |
Steuerung |
| IMPLEMENTIERT |
Richtlinie |
| IMPLEMENTIERT |
MCP |
| IMPLEMENTIERT |
GCP |
| TEILWEISE |
Lebende Matrix: okf/models/implementation-status.md
Umfangsgrenzen
Diese Demo beweist: Lokale FOIA-Pipeline · PII-Scan · MCP-Grenze · fehlschlagen-schließen-Qualität · 51 Tests + CI
Nicht enthalten: Produktions-Presidio · Regulations.gov-Adapter · Live-GCP/BQ-E2E · Produktions-Beauftragter-UI (responsiv, Streaming, gen UI) — docs/PRODUCT-UX.md
Die Demo-UI ist Streamlit. Produkt-UI ist SPEZIFIZIERT, nicht dieser MVP.
Vor Produktionsbehauptungen: FINAL-REVIEW Pre-Scale-Checkliste
Dokumentation
Dokumentation | Warum öffnen |
Durchsuchbares Human-Wiki – hier starten | |
Screenshots von verify, CLI, Streamlit | |
Für wen die Demo gedacht ist | |
Product-UI-Backlog (SPEZIFIZIERT) | |
Erster Start – | |
Problem, was wir gebaut haben, warum es nützlich ist | |
Medaillon, Ebenen, Kritiker – Englisch + Quellenangaben | |
Andere Datenquellen – Ebenen behalten, Schema ändern | |
Restrisiken nach einem grünen Verify | |
AI RMF / 600-1 / SP 800-122 – Ausrichtung, nicht Zertifizierung | |
Modellkarten und Einsatzzeitpunkt (Ollama vs. OpenAI) | |
Installation, MCP, Umgebungsvariablen | |
Schritt-für-Schritt-Nachweis | |
Streamlit Gov / Orders | |
Installiere Ollama / OpenAI-kompatible Einblicke | |
DuckDB → GCP | |
Quellenangaben + Beweismatrix | |
Was jeder Test beweist | |
Vollständiger Index nach Persona |
Auch: HOW-IT-WORKS · WHY · Whitepaper
Teilen und präsentieren
Open Source: https://github.com/khaosans/operator-etl – klonen und make e2e ausführen.
Für Vorstellungsgespräche, LinkedIn oder Vorschläge die PDFs aus docs/share/ (One-Pager, Whitepaper, Folien) anhängen:
make share # regenerates docs/share/latest/ after e2eMitwirken · Lizenz · Sicherheit
Lizenziert unter der Apache License 2.0. Die Beispieldaten sind synthetisch – keine echten FOIA-Unterlagen einchecken.
docs/VERSIONING.md – Tags veröffentlichen; eine Version nicht überschreiben
docs/RELEASING.md – PR-Workflow, Release erstellen, Dependabot
Issues und PRs sind willkommen.
This server cannot be deployed
Maintenance
Related MCP Connectors
AI agents for federal IT & pharma: alert triage, ICAM, helpdesk, incidents, ticket routing.
Normalized official data with provenance, aggregations, insights, free samples and agent access.
Normalized official data with provenance, aggregations, insights, free samples and agent access.
Source-reconciled U.S. environmental facility compliance evidence for AI agents.
Related MCP Servers
FlicenseAqualityCmaintenanceEnables AI agents to upload, verify, and chat about documents for compliance (e.g., SOC2, GDPR) with PII redacted server-side.812 npm-- AlicenseBqualityDmaintenanceEnables AI agents to safely ingest, inspect, edit, and export manufacturing documents (Excel, PDF, Word, Markdown) with controlled patch workflows and MES entity extraction.23MIT
- AlicenseNot gradedqualityBmaintenanceEnables enterprise AI agents to query governed data lineage, PII-aware schema documentation, and semantic metadata from SQL logs via MCP, with role-based access and vector search.MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI agents to query governed data warehouses through plain language, returning grounded answers with SQL, confidence grades, and signed receipts while enforcing access, testing, and audit controls.15Apache 2.0