Registry patterns everywhere.
The next surface — IDE, desktop, messaging — is an extension point, not a rewrite. Every subsystem that could vary is behind an interface, and most already have multiple implementations shipped.
ScanEngine / EngineManagerProducts register detection engines against the platform's engine manager.
Validator registryGitHub, AWS, Stripe, Azure shipped; new providers plug into the same registry.
ComplianceMapperOne plugin per regulation — GDPR, HIPAA, PCI DSS, DPDP today; CCPA/LGPD/POPIA are mappers away.
GovernanceProviderTwo GRC providers shipped — SimpleRisk and CISO Assistant — behind one interface.
Escalation & remediation registriesSlack, Email, Jira escalators; remediation extension points exist with automation intentionally disabled.
recognizers/enterprise/A deliberate, empty extension point for organization-specific recognizers. Coming Soon
Built like the security tool it is.
Encryption
AES-256-GCM / Fernet at rest under your keys; MultiFernet rotation; fail-safe defaults.
Audit
One shared audit table; immutable timelines; reason-required, rate-limited reveal flow.
Access
RBAC — 6 roles, 11 permissions; constant-time API-key comparison; security headers; CORS hardening.
Determinism
Rule-based decision engine; LLMs architecturally confined to optional explanations.
Deployable, observable, API-first.
- ✓Prometheus
/metricsendpoint - ✓Structured JSON logging with correlation IDs
- ✓Health, liveness, and readiness probes
- ✓WebSocket event stream with per-scan log replay
- ✓OpenAPI/Swagger documentation for every endpoint
One command to start. A clear path to scale.
Docker Compose with an nginx reverse proxy fronting the React dashboard and FastAPI backend. SQLite works out of the box; switch to PostgreSQL with one environment variable. Scans fan out in parallel workers — 10 shallow / 5 deep concurrent — with semaphores and per-repo timeouts.
Confirmed findings become risk records.
A pluggable sync service creates, updates, closes, and reopens risk records per finding — race-safe row claiming, external-ID persistence before status flip, idempotency that survives crashes and replays. Runs embedded or as a standalone worker container.
Judge the architecture yourself.
1,000+ automated tests across the platform. One command to deploy — in your own infrastructure.