Skip to content

chore(security): add trust scanners and SECURITY.md#57

Merged
linusdevx merged 3 commits into
mainfrom
dev
Jun 22, 2026
Merged

chore(security): add trust scanners and SECURITY.md#57
linusdevx merged 3 commits into
mainfrom
dev

Conversation

@linusdevx

Copy link
Copy Markdown
Owner

What

Adds four verifiable trust signals so users (especially security teams reviewing the tool for CPI work) can confirm the repo is safe without taking our word for it.

Changes

File Purpose
.github/workflows/codeql.yml CodeQL static analysis, security-and-quality query suite. Runs on every push, every PR, and weekly. Vendored lib/SaxonJS2.js, tests/, and dist/ are excluded so findings only target our code.
.github/workflows/scorecard.yml OpenSSF Scorecard, weekly + push to main. Publishes results to api.scorecard.dev for the public badge and uploads SARIF to the Security tab.
.github/dependabot.yml Weekly version updates for npm (devDeps only — there are no runtime deps) and GitHub Actions. Patch+minor grouped to reduce PR noise.
SECURITY.md Vulnerability reporting policy and honest security posture (no backend, no telemetry, zero runtime npm deps, GoatCounter pageview pings disclosed).
README.md Adds 4 badges (CodeQL, OpenSSF Scorecard, Dependabot enabled, No Telemetry) and a new Security section above Support.

Why these four scanners

  • CodeQL — actually scans the source for malicious patterns, XSS sinks, unsafe eval, etc. Most defensible claim for a vanilla-JS app.
  • OpenSSF Scorecard — repository hygiene scoring (branch protection, signed releases, SAST, etc.). Broad "follows secure-development practices" claim.
  • Dependabot — version updates + (enabled separately) security alerts for dev tools. Honest scope: there are no runtime deps to scan.
  • No Telemetry badge — backed by the new SECURITY.md, not a scanner.

Repo settings already configured via API

  • Branch protection on main: PR required, e2e-tests must pass, branch up-to-date, no force pushes, no deletions
  • Secret scanning + push protection enabled
  • Dependabot security updates + vulnerability alerts enabled

Notes

  • The OpenSSF Scorecard badge will 404 until the first scheduled run completes on main (Mondays 07:00 UTC) or a manual workflow_dispatch.
  • CodeQL badge works as soon as the workflow exists; the first run happens on this PR.

…t badges

- .github/workflows/codeql.yml: security-and-quality query suite on push/PR + weekly cron, ignores vendored Saxon-JS, tests/, dist/
- .github/workflows/scorecard.yml: OpenSSF Scorecard weekly + push to main, publishes to api.scorecard.dev, uploads SARIF
- .github/dependabot.yml: weekly npm devDeps and github-actions updates, grouped minor+patch
- SECURITY.md: vulnerability reporting policy plus honest posture statement (no backend, no telemetry, zero runtime deps, GoatCounter disclosed)
- README.md: 4 new badges (CodeQL, Scorecard, Dependabot, No Telemetry) and a Security section linking to SECURITY.md

Repo settings (configured separately via API): branch protection on main with required e2e-tests check, secret scanning + push protection, Dependabot security updates and alerts.
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Deploying xsltdebugx with  Cloudflare Pages  Cloudflare Pages

Latest commit: d7d18cc
Status: ✅  Deploy successful!
Preview URL: https://71921dbb.xsltdebugx.pages.dev
Branch Preview URL: https://dev.xsltdebugx.pages.dev

View logs

@github-advanced-security

Copy link
Copy Markdown

You are seeing this message because GitHub Code Scanning has recently been set up for this repository, or this pull request contains the workflow file for the Code Scanning tool.

What Enabling Code Scanning Means:

  • The 'Security' tab will display more code scanning analysis results (e.g., for the default branch).
  • Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results.
  • You will be able to see the analysis results for the pull request's branch on this overview once the scans have completed and the checks have passed.

For more information about GitHub Code Scanning, check out the documentation.

Resolves two Dependabot alerts:
- GHSA-fx2h-pf6j-xcff (high): vite server.fs.deny bypass on Windows alternate paths
- GHSA-v6wh-96g9-6wx3 (medium): launch-editor NTLMv2 hash disclosure via UNC paths on Windows

Both CVEs affect Vite's dev server on Windows only. This project uses Vite
for the production build (`npm run build`), not as a live dev server
(`npm run serve` runs http-server), so practical exposure is nil. Bumping
anyway to clear the alerts and live up to the SECURITY.md "continuous
scanning" claim.

Lockfile-only change; declared range `^6.0.0` already permits 6.4.3.
Verified: `npm run build` passes.
@linusdevx linusdevx enabled auto-merge June 22, 2026 18:28
@linusdevx linusdevx merged commit 93bdda2 into main Jun 22, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants