Skip to content

Security: kamalenoch/Argus

Security

docs/SECURITY.md

Security and data handling

This Buildathon implementation uses synthetic, Razorpay-contract-faithful data. No production credentials or customer financial data are required.

  • secrets are read from environment variables; .env is ignored; .env.example contains no secret.
  • deterministic controller, UI, tests, and evaluation run without an AI key.
  • AI receives a bounded evidence request for explicitly selected E09/E11 cases only, not a database dump.
  • AI has no write authority and cannot certify a close.
  • financial facts have no generic PUT, PATCH, or DELETE API.
  • PostgreSQL protects immutable source facts, audit history, committed matches/resolutions, certified close history, and close-evaluation revisions.
  • reviewer HTTP mode is loopback-only by default. The containerized reviewer stack publishes port 8000 only on 127.0.0.1.
  • uploads are streamed to temporary storage, capped at 5 MiB and 5,000 records, and deleted after parsing. Controlled rejections persist source-integrity evidence.
  • external canonical strings are length-bounded before persistence.
  • weak processor provenance hints are configurable and may open E11 investigation only; they never authorize settlement identity or money movement.

The actor label in local reviewer mode is an audit label, not authenticated identity. Production deployment would add authentication/RBAC, tenant isolation, encrypted secrets, TLS, retention/PII controls, rate limiting, and operational monitoring.

There aren't any published security advisories