Connector repository between SGraph Send and Omega Walls, without changing either upstream codebase.
- keeps integration glue isolated from product repos,
- defines one explicit contract between systems,
- provides reproducible local/full-loop environment,
- includes patch kit for upstream PRs on each side.
flowchart LR
CL[Client decrypt flow in SGraph trusted path] --> CX[Connector API]
CX --> OW[Omega scan API]
OW --> CX
CX --> CL
CL --> DEC{"Decision"}
DEC -->|allow| AG[Continue ingestion/agent]
DEC -->|quarantine| RV[Manual review queue]
DEC -->|block| ST[Stop flow]
Detailed architecture, stage map, and responsibilities:
GET /healthzPOST /v1/scan/attachmentPOST /v1/scan/attachment/document_scan_report(debug, env-gated)
Source of truth:
Request core:
tenant_id(required),request_id(optional),- one of:
file_base64orextracted_text, - optional:
filename,mime,metadata.
Response core:
request_id,tenant_id,risk_score,verdict,reasons,evidence_id,policy_trace,- optional
attestation.
Auth and replay protection:
X-API-Key,- HMAC headers
X-Signature,X-Timestamp,X-Nonce, - nonce TTL + clock skew validation.
connector/- FastAPI service, auth, validation, Omega client, normalization.contracts/- OpenAPI spec, schema snapshots, request/response examples.deploy/- compose and reverse-proxy config for local/full loop.env/- local/cloud environment templates.tests/- unit/integration/e2e/contract/perf tests.scripts/- smoke, health, qualification, performance reports.docs/- contract, architecture, operations, OSS publication guidance.upstream_patches/- copy/paste assets for SGraph and Omega upstream PRs.
Prerequisites:
- Docker + Docker Compose plugin,
- Python 3.11+,
- GNU Make (optional but recommended).
- Local clones of upstream repos (SGraph and Omega), then set:
SGRAPH_REPO_PATHinenv/.env.local.exampleOMEGA_REPO_PATHinenv/.env.local.example
make bootstrap
make up
make health
make smoke
make smoke-upstreamShutdown:
make downIf make is unavailable:
docker compose --env-file env/.env.local.example -f deploy/compose/docker-compose.local.yml up --build -d
docker compose --env-file env/.env.local.example -f deploy/compose/docker-compose.local.yml ps
docker compose --env-file env/.env.local.example -f deploy/compose/docker-compose.local.yml downmake test
RUN_COMPOSE_E2E=1 .venv/bin/pytest -s tests/e2e/test_compose_scenarios.py
make qualification-reportPerformance:
make perf-baseline
make perf-stress
make perf-reportArtifacts:
artifacts/qualification/summary.jsonartifacts/qualification/summary.mdartifacts/perf/perf-report.jsonartifacts/perf/perf-report.md
This repository already contains the adapter patch kit and copy/paste mapping:
Use it to prepare independent PRs for:
- SGraph-side connector hook (post-decrypt, pre-ingestion),
- Omega-side config alignment (transport/auth/limits).
- docs/INTEGRATION_ARCHITECTURE.md - full system blueprint.
- docs/CONTRACT.md - runtime contract details.
- docs/CONTRACT_CHANGE_POLICY.md - compatibility/change rules.
- docs/OPS_RECOVERY.md - operations runbook.
- docs/OPEN_SOURCE_PUBLISHING_GUIDE.md - what to keep/sanitize before publish.
- CHANGELOG.md - project change history.
- CONTRIBUTING.md - contribution workflow.
- SECURITY.md - vulnerability disclosure policy.
- CODE_OF_CONDUCT.md - community behavior standards.
This project is licensed under the MIT License.