How scanning works
Supply Chain scans the immutable commit identified by GitHub. This keeps the result tied to the code a reviewer is assessing.
Scan lifecycle
Section titled “Scan lifecycle”- GitHub sends a signed check event to Signals Corps.
- Signals Corps verifies the webhook signature and rejects replayed deliveries.
- The scan is queued for the repository, module, and exact commit SHA.
- A worker downloads a bounded archive for that commit.
- The archive is checked and extracted into disposable storage.
- Supported files are inspected with pinned rules.
- Findings and reproducibility metadata are recorded.
- The result is published as a GitHub check.
- Extracted source is deleted.
Repository safety boundaries
Section titled “Repository safety boundaries”Repositories and archives are treated as untrusted input. The scanner:
- does not execute repository code;
- rejects path traversal, symbolic links, and hard links;
- limits archive download and extraction size;
- limits file counts and individual file sizes; and
- keeps private repository contents out of logs and external telemetry.
Policy
Section titled “Policy”Enforcement policy is stored in Signals Corps, outside the commit being scanned. A pull request cannot weaken the policy used to assess itself.
Policy is managed by Signals Corps and selected by the Workspace’s effective plan. Customers can inspect the active profile but cannot edit rule behavior in the MVP. Recommended policy can block high or critical matches from the stable rule subset; Essential policy reports matches without automated blocking.
Re-runs and failures
Section titled “Re-runs and failures”Repeated delivery of the same GitHub event does not create duplicate active work. An explicit re-run creates a new result for the same commit so the history remains reviewable.
Download, extraction, scanner, persistence, and publication errors fail the scan. A technical error never produces a clean result.
Read Scans and results for the meaning of scan states, conclusions, and coverage.