This document consolidates the facts a security or compliance review needs. Each claim below is enforced by code or CI, not just policy.
All processing happens in the caller's process, on the caller's infrastructure.
api.github.com, gitlab.com, or the custom host you configure. There is no telemetry, no analytics endpoint, no update check, and no AI service.fetch implementations and loggers are trusted caller code.npm audit signatures. See npm provenance.sbom.spdx.json) describing the published package. With zero runtime dependencies it contains exactly one package entry — a property your scanner can verify rather than trust.v1.2.3 release tags are immutable; the moving v1 Action tag advances only after npm provenance and GitHub Release synchronization checks pass. When policy requires immutability, pin the Action to a release commit SHA: uses: moh3n9595/reviewer-suggestion@<commit-sha> # v1.2.3.main, and restrict publishing to a protected environment.The library, CLI, and Action use Node's built-in fetch, which does not honor HTTP_PROXY/HTTPS_PROXY environment variables by default:
NODE_USE_ENV_PROXY=1 to enable proxy environment variables for the built-in fetch (the GitHub Action runs on Node 24).fetch (for example one built on undici's ProxyAgent) through the provider's fetch option.NODE_EXTRA_CA_CERTS at your CA bundle. Custom hosts must present trusted TLS certificates; the transport does not offer an insecure-skip-verify option.npm pack reviewer-suggestion) promoted through your artifact pipeline. Zero runtime dependencies means the mirror needs exactly one package.action-dist/) and attached to every release, so mirroring the repository into your GitHub Enterprise instance is sufficient — no build step, no registry access at runtime.| Component | Requirement |
|---|---|
| Node.js | 22.14 or newer; CI tests 22.14 and current 24 on Linux, macOS, and Windows |
| GitHub | GitHub.com and GitHub Enterprise Server via apiUrl (…/api/v3), REST API version 2022-11-28 |
| GitLab | GitLab.com and Self-Managed via apiUrl (…/api/v4) |
API capabilities vary by host version and token visibility; the package reports missing optional signals as warnings rather than guessing, and does not claim support for every historical Enterprise/Self-Managed release.
Ranking is deterministic: identical inputs produce identical output, ties break on normalized username and ID, and a single captured clock (now) makes any past run reproducible. Every selection includes its per-signal score breakdown and file-level evidence. The --json CLI output and the Action's result output are complete decision records suitable for retention.
The no-AI design is a commitment, not a gap: no model calls, no embeddings service, no data leaving your infrastructure, and no non-reproducible scores. Any future semantic capability would be an optional, clearly separated adapter — never a change to the deterministic core.
See SECURITY.md. Security fixes target the latest stable major release.