Loading report…
← nittim
[](https://nittim.com)Material risks remain. Remediate before relying on this in production.Real risks remain. Fix these before you rely on this for real users.Fix these risks before shipping to real users.
package.jsondependencies: "find-my-way": "^9.6.0"; scanner: [HIGH] find-my-way@9.6.0 GHSA-c96f-x56v-gq3h 'find-my-way: DDoS with HTTP2'. find-my-way is the router used by lib/route.js (buildRouting) and lib/four-oh-four.js.docs/Reference/Errors.mdsection "What The Default Error Handler Sends", documents that `message` is `error.message` verbatim for every status code including 500, and explicitly warns that a downstream library error (e.g. a DB driver 'ER_BAD_FIELD_ERROR') can leak schema details to the client.Full coverage — every eligible source and configuration file was audited.
14 other files aren’t code this audit reads — images, lockfiles, generated output, and similar non-source content.
Dependency manifests: 3 package roots found, 3 scanned.
This snapshot is the Fastify web framework (v6.0.0-alpha.2), one of the most mature and widely-used Node.js HTTP frameworks. It is a library, not an application, so several audit dimensions (privacy/GDPR, accessibility, application-level auth) are largely not applicable — the framework itself handles no personal data and delegates auth/rate-limiting to plugins as documented in SECURITY.md. Code quality, test coverage (100% line coverage enforced in CI), type coverage, CI hygiene (SHA-pinned actions, persist-credentials:false, least-privilege permissions), and documentation are all excellent. The deterministic scanner found no committed secrets. The dependency scan flagged 12 vulnerable versions, but all but one are devDependencies not shipped to consumers; the sole production concern is find-my-way@9.6.0 (HIGH, HTTP/2 DDoS advisory) which is Fastify's own router — reachability was not verified. The repository is public and the code embodies routing, content-type parsing and schema-compilation techniques that are now well-established prior art, so there is little defensible novel IP at stake. Overall this is a production-grade codebase; the only actionable items are keeping the router dependency current and hardening a couple of pull_request_target workflows.
.github/workflows/backport.yml(on: pull_request_target, permissions contents:write, pull-requests:write) and .github/workflows/labeler.yml (on: pull_request_target, permissions pull-requests:write).docs/Reference/Logging.mdcontains an example serializer logging all request headers (including `authorization`) with a warning, and a redaction example (`redact: ['req.headers.authorization']`). The default request serializers can capture headers.package.json"version": "6.0.0-alpha.2"; fastify.js const VERSION = '6.0.0-alpha.2'.Weighted blend of 4 dimensions → ~86/100. Dimensions are weighted by importance (Security and Privacy weigh heaviest). Published figures are approximate; nittim's exact weighting and precise scoring are proprietary, while the verdict is computed on exact internal values.4 categories combine into ~86/100. Some categories count for more than others (Security and Privacy count the most). The published numbers are approximate; nittim's exact math is kept private, while the verdict itself is worked out from the exact internal numbers.Weighted blend of 4 dimensions → ~86/100 (Security and Privacy weigh heaviest). Published figures are approximate; nittim's exact weighting is proprietary. The verdict runs on exact internal values.
IP Protection is an independent IP-defensibility lens and is excluded from this blend.IP Protection (checking whether your ideas are exposed) is judged separately and isn’t
part of this combined number.IP Protection is judged separately, excluded from this blend.
Scores are a judgement, not a measurement: a re-audit of the same commit can land a few
points either side of this figure. The evidence underneath it is deterministic — the same
commit always yields the same committed-secret and vulnerable-dependency findings.Scores are a judgment call, not an exact measurement: checking the same saved snapshot of
your code twice can land a few points either side of this number. The evidence underneath
it is not — the same snapshot always turns up the same passwords-in-code and known-security-bug
findings.Scores are a judgment, not a measurement — a re-audit can land a few points either side. The evidence underneath is deterministic: the same commit always yields the same secret and vulnerable-dependency findings.
Each score is the model's overall assessment of the dimensions it covers, across everything it reviewed — not a tally of the findings in this report. Findings are the subset worth acting on, so a score can sit above or below what the listed findings alone would suggest.Each score is the AI's overall judgment of everything it reviewed in that category — not a
count of the problems listed in this report. The listed problems are the ones worth acting
on, so a score can sit above or below what they alone would suggest.Each score is the model's overall assessment across everything it reviewed — not a tally of this report's findings. A score can sit above or below what the findings alone suggest.
nittim guardrail — nittim's safety check — nittim guardrail — The model proposed “ready_with_conditions”; nittim's deterministic layer set the final verdict to “high_risk” because of a high-severity vulnerability in an installed runtime dependency (reachability from your own code was not verified). The written rationale below reflects the model's proposal — the verdict above is the one that governs.
Verdict rationale — Why this verdict — Verdict rationale — Fastify is a mature, production-grade framework with excellent architecture, enforced 100% line coverage, strong CI hygiene, no committed secrets, and a documented security policy. The only material condition is the HIGH-severity advisory on its production router dependency find-my-way@9.6.0 (HTTP/2 DDoS, reachability unverified), which should be updated and released; the remaining devDependency advisories are not shipped and the pull_request_target workflows are low-risk hardening items. None of these block correct operation of the framework itself, so the verdict is production-ready subject to bumping the router dependency. The IP and AI-authorship lenses did not affect this verdict: the code is clearly human-authored over a long history and, though public, contains no unprotected novel IP (routing/parsing/schema techniques are established prior art).