Questarr

OpenSSF Best Practices Badge Evidence

This document records the evidence behind Questarr’s self-assessment against the OpenSSF Best Practices Badge criteria. Each section is named after the criterion ID used in the badge questionnaire, so it can be linked directly as the justification for that question.

This is evidence, not policy — for the underlying process/config being evidenced, see the linked files in each section.

[report_responses]

The project MUST acknowledge a majority of bug reports submitted in the last 2-12 months (inclusive); the response need not include a fix.

Status: Met.

Assessed 2026-07-06 against issues labeled bug created 2025-07-06 to 2026-05-06 on Doezer/Questarr:

[enhancement_responses]

The project SHOULD respond to a majority (>50%) of enhancement requests in the last 2-12 months (inclusive).

Status: Met.

Assessed 2026-07-06 against issues labeled enhancement created 2025-07-06 to 2026-05-06:

[warnings_strict]

It is SUGGESTED that projects be maximally strict with warnings in the software produced by the project, where practical.

Status: Met, with room to tighten further.

Assessed 2026-07-06 against tsconfig.json, eslint.config.js, and .github/workflows/ci.yml:

[dynamic_analysis]

It is SUGGESTED that at least one dynamic analysis tool be applied to any proposed major production release of the software before its release.

Status: Met.

.github/workflows/dast.yml runs an OWASP ZAP baseline scan against a live instance of the app:

This is independent of warnings_strict’s test-coverage numbers above (branch coverage threshold is currently 76%, short of the criterion’s 80% automated-test-suite alternative) — the ZAP scan satisfies dynamic_analysis on its own via the “tool that varies inputs” path, regardless of coverage.

[dynamic_analysis_enable_assertions]

It is SUGGESTED that the project use a configuration for at least some dynamic analysis (such as testing or fuzzing) which enables many assertions. In many cases these assertions should not be enabled in production builds.

Status: Met.

Questarr’s dynamic analysis is its Vitest suite (server/__tests__/, client/__tests__/), which is nothing but assertions — expect() calls that fail the run the moment observed behavior diverges from expected behavior:

[dynamic_analysis_fixed]

All medium and higher severity exploitable vulnerabilities discovered with dynamic code analysis MUST be fixed in a timely way after they are confirmed.

Status: Met.

Full policy and results table: docs/VULNERABILITY_MANAGEMENT.md §3.3.

Update policy: revisit each entry when the underlying tooling changes, or roughly every 6 months to keep the 2-12 month evidence windows current.