Skip to main content
Glama
khaosans

Operator ETL

by khaosans

Operator ETL

FOIA 및 공개 의견을 위한 에이전트 데이터 수집 — 결정론적 메달리온 웨어하우스, LangGraph 오케스트레이션, MCP 도구 표면, PII 정책 평면.

CI Release License

Python과 SQL이 어떤 데이터가 존재하는지 결정합니다. 에이전트는 타입이 지정된 경계 내에서 오케스트레이션합니다. 테스트가 불변 조건을 증명합니다 — MVP 데모에 LLM API 키가 필요하지 않습니다.

공개 의견을 수집하고, 공개 전에 PII를 탐지하고, 잘못된 행을 격리하며, 방어 가능한 인사이트(모든 숫자가 웨어하우스에 대해 검증됨)를 생성해야 하는 정부 기관 및 규제 기관을 위해 구축되었습니다.


문서

위키 (검색 가능): https://khaosans.github.io/operator-etl/

시작 위치

링크

작동 모습 보기

시각적 둘러보기 (스크린샷)

첫 실행

QUICKSTART — ./scripts/verify.sh

구축한 내용 학습

개념 · 패턴 · 적용 · 위험

대상 사용자

페르소나

제품 UI (추후)

PRODUCT-UX — 명세됨, 이 데모 아님


Related MCP server: MES Document MCP

한 명령으로 검증

git clone https://github.com/khaosans/operator-etl.git
cd operator-etl
./scripts/verify.sh

uv가 없으면 설치하고, 종속성을 동기화하며, 전체 증명 게이트를 실행합니다. 성공 시 OPERATOR_ETL_VERIFY=PASS 로 종료됩니다.

예상 결과: pytest 51개 통과, FOIA 데모가 status=complete 및 silver=10 출력. 전체 스크린샷 세트: docs/TOUR.md.

Gov / FOIA 대시보드

주문 데모 탭

템플릿 etl-graph 인사이트

flowchart LR
  Verify[verify.sh] --> UV[uv sync]
  UV --> E2E[e2e gate]
  E2E --> Pass[OPERATOR_ETL_VERIFY=PASS]

이미 uv가 있습니까? make e2e · 자세한 내용: docs/QUICKSTART.md · 단계별: docs/WALKTHROUGH.md

게시된 스냅샷은 git 태그입니다(모든 병합이 아님). 릴리스가 존재한 후: GitHub Releases (wheels), ghcr.io/khaosans/operator-etl:<version>, GitHub Packages operator-etl. 프로세스: docs/VERSIONING.md. 위키는 항상 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 --> fail

Operator ETL은 결정론적 ETL을 경계가 있는 에이전트와 분리합니다. PII는 제약 없는 도구에 도달하지 않습니다. 비평가는 골드에 없는 인사이트 숫자를 거부합니다. 브론즈는 불변 감사 추적을 제공합니다.

심층 분석: docs/WHY.md · 기관 워크플로: docs/FOIA-Public-Comments-Guide.md


작동 방식 — 세 가지 평면

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]
  end

평면

역할

데이터

브론즈(불변) → 실버(검증됨) → 골드(SQL 마트) + 격리. Python과 SQL이 실행되며, 원시 행에 LLM이 사용되지 않습니다.

정책

PII 스캔, 암호화된 볼트, 인사이트 전에 실패-폐쇄. 볼트는 MCP를 통해 절대 노출되지 않습니다.

제어

LangGraph 파이프라인, MCP 허용 목록 도구, 비평가가 인사이트 초안의 모든 숫자를 검증합니다.

자세한 내용: docs/HOW-IT-WORKS.md · okf/models/three-planes.md


왜 챗봇에 웨어하우스를 제공하지 않습니까?

신뢰와 증명

질문

답변

로컬에서 작동합니까?

make e2e — OKF 검증, pytest 51개, 신선한 웨어하우스에서 FOIA 데모

CI가 무엇을 증명합니까?

모든 푸시에서 동일한 게이트 (위 배지)

CI에서 증명되지 않은 것은 무엇입니까?

라이브 GCP 배포, Presidio PII, LLM 생성 인사이트 — 정직한 감사 참조

증명 매트릭스: docs/FOUNDATIONS.md · 전체 감사: docs/FINAL-REVIEW.md


방금 증명한 내용

지표

예상

샘플 의견

12개 (EPA/FCC 문서)

실버 (유효)

10

격리됨

2

그래프 상태

complete

비평가

통과

자세한 내용: okf/models/mvp-demo.md


엔지니어링 트레이드오프

결정

선택한 것

이점

비용

변경 시점

로컬 웨어하우스

DuckDB

노트북에서 제로 인프라 증명

멀티 테넌트 아님

L3 BigQuery 스테이징 — SCALING.md

PII 탐지

Regex MVP

간단함, 테스트 가능, ML 종속성 없음

이름, 주소 누락

프로덕션용 Presidio

인사이트 생성

템플릿 + 비평가

API 키 불필요, 결정론적

내러티브 유연성 감소

기관 승인 시 LLM 노드

에이전트 데이터 접근

MCP 허용 목록 (3개 도구)

최소 권한

임시 SQL 탐색 불가

프로덕션 FOIA에 대해 완화하지 마십시오

품질 실패

실패-폐쇄

신뢰할 수 있는 KPI

수정될 때까지 인사이트 차단

경고 및 표시 배너 피하기

전체 증명 매트릭스: docs/FOUNDATIONS.md


대상 사용자

역할

시작 위치

FOIA 담당자

FOIA 가이드 → TOUR · PERSONAS

데이터 엔지니어

GETTING-STARTED → SCALING

아키텍트 / 검토자

WHY → FOUNDATIONS → make e2e

AI 에이전트 (MCP)

AGENTS.md · operator-etl-mcp


도입 사다리

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]

레벨

작업

문서

0 — 증명

make e2e

WALKTHROUGH

1 — 로컬 실행

MCP, 대시보드

GETTING-STARTED

2 — 확장

새 CSV 소스

extend-new-source

3 — GCP 스테이징

Terraform + Cloud Run

SCALING

4 — 프로덕션

Presidio, HITL, 라이브 BQ, 제품 UX

FINAL-REVIEW · PRODUCT-UX


일반 명령어

명령어

작업

./scripts/verify.sh

첫 실행 — 필요 시 uv 설치 + 전체 증명 게이트

make verify

verify.sh와 동일

make e2e

전체 MVP 증명 게이트 (OKF + 테스트 + FOIA 데모)

make demo

FOIA 데모만

make test

pytest (51개 테스트)

uv run etl-graph --source public_comments

FOIA 에이전트 파이프라인

uv run etl dashboard

Streamlit — Gov + Orders 탭

uv run operator-etl-mcp

Cursor 에이전트용 MCP 서버

make share

PDF 공유 팩 재생성

모든 대상에 대해 make help를 실행하십시오.


아키텍처

평면

패키지

상태

데이터

operator_etl/

구현됨

제어

operator_etl_graph/

구현됨

정책

operator_etl_policy/

구현됨

MCP

operator_etl_mcp/

구현됨

GCP

operator_etl_gcp/ + infra/

부분

라이브 매트릭스: okf/models/implementation-status.md


범위 경계

이 데모가 증명하는 것: 로컬 FOIA 파이프라인 · PII 스캔 · MCP 경계 · 실패-폐쇄 품질 · 51개 테스트 + CI

포함되지 않은 것: 프로덕션 Presidio · Regulations.gov 어댑터 · 라이브 GCP/BQ E2E · 프로덕션 담당자 UX (반응형, 스트리밍, 일반 UI) — docs/PRODUCT-UX.md

데모 UI는 Streamlit입니다. 제품 UX는 명세되었으며, 이 MVP가 아닙니다.

프로덕션 주장 전: FINAL-REVIEW 사전 확장 체크리스트


문서

문서

왜 열어야 하는가

위키 (GitHub Pages)

검색 가능한 인간용 위키 — 여기서 시작하세요

docs/TOUR.md

verify, CLI, Streamlit 스크린샷

docs/PERSONAS.md

데모 대상 사용자

docs/PRODUCT-UX.md

제품 UI 백로그 (명세됨)

docs/QUICKSTART.md

첫 실행 — ./scripts/verify.sh

docs/CONCEPTS.md

문제, 구축 내용, 유용한 이유

docs/PATTERNS.md

Medallion, planes, critic — 영어 + 인용문

docs/APPLY.md

다른 데이터 소스 — planes 유지, 스키마 변경

docs/RISKS.md

녹색 verify 후 잔여 위험

docs/NIST.md

AI RMF / 600-1 / SP 800-122 — 정렬, 인증 아님

docs/MODELS.md

모델 카드 및 사용 시점 (Ollama vs OpenAI)

docs/GETTING-STARTED.md

설치, MCP, 환경 변수

docs/WALKTHROUGH.md

단계별 증명

docs/DASHBOARD.md

Streamlit Gov / Orders

docs/LLM.md

Ollama / OpenAI 호환 인사이트 설치

docs/SCALING.md

DuckDB → GCP

docs/FOUNDATIONS.md

인용문 + 증명 매트릭스

docs/TESTING.md

각 테스트가 증명하는 내용

docs/README.md

사용자 유형별 전체 색인

또한: HOW-IT-WORKS · WHY · 백서


공유 및 발표

오픈 소스: https://github.com/khaosans/operator-etl — 복제 후 make e2e 실행.

인터뷰, LinkedIn, 또는 제안서를 위해 docs/share/의 PDF (한 페이지 요약, 백서, 슬라이드)를 첨부하세요:

make share   # regenerates docs/share/latest/ after e2e

기여 · 라이선스 · 보안

**Apache License 2.0**에 따라 라이선스가 부여됩니다. 샘플 데이터는 합성 데이터입니다 — 실제 FOIA 기록을 커밋하지 마세요.

이슈와 PR은 환영합니다.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables 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
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables 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.
    15
    Apache 2.0