Docs / Scanning
Scanning modes
Two presets — shallow and deep — with per-flag overrides. Both feed the same detection engine: 200+ compiled patterns, Shannon entropy, and contextual scoring composed into a 0–100 confidence.
Shallow vs. deep
| shallow | deep | |
|---|---|---|
| Method | GitHub API, no clone | Full clone (GitPython/subprocess) |
| Coverage | HEAD files · branch tips · CI/CD workflow files | Complete commit history, all branches |
| Concurrency | 10 repos in parallel | 5 repos in parallel, per-repo timeouts |
| Limits | — | 500 commits · 50 branches per repo (configurable) |
Triggering scans
POST /scan/github/org {"org": "acme-corp"}
POST /scan/github/repo {"repo": "acme-corp/payments-api"}
POST /scan/github/repos {"repos": ["acme-corp/a", "acme-corp/b"]}
# optional per-request: "token", "scan_type", per-flag overridesPerformance features
- Repository cache — subsequent scans ~80% faster
- Incremental scanning — per-repo
last_scan_committracking cuts commits processed by ~99% In Development - Cross-scan deduplication — findings keyed by secret fingerprint; one credential = one finding across any number of scans
- Developer attribution — commit authorship recorded per finding
Source: radar_scanner/orchestration/ · scanning/ · .env.example (scanning section)