Multi-tenant external attack-surface monitoring SaaS. Modular-monolith NestJS API + Next.js web, Postgres with Row-Level Security, BullMQ on Valkey, and an egress-isolated scan worker. HTTPS-only edge.
pending.authorized (INV-5).SSRF guard, probes ports + TLS certs.change_events (PORT_OPENED, CERT_ROTATED…).app.tenant_id; the app connects as a non-superuser role.UNIQUE(event_id, channel_id) idempotency; ≤5 retries → dead-letter.