name: CodeQL # Static application security testing for all TS/JS. Uses build-mode: none — no # compile needed, which sidesteps the monorepo/native-module build entirely. # Default (code-scanning) query suite; security-extended is deferred (triage tax). # CodeQL uploads alerts to the Security tab but does NOT fail the PR by itself — # blocking is a repo setting (code-scanning merge protection), documented in the # maintainer checklist in docs/systems/security-scanning.md. on: push: branches: [main] pull_request: branches: [main] schedule: - cron: '27 3 * * 1' # weekly Monday 03:27 UTC permissions: contents: read concurrency: group: codeql-${{ github.ref }} cancel-in-progress: true jobs: analyze: name: Analyze (javascript-typescript) runs-on: ubuntu-latest permissions: contents: read security-events: write # upload SARIF to code scanning actions: read steps: - name: Harden the runner uses: step-security/harden-runner@bf7454d06d71f1098171f2acdf0cd4708d7b5920 # v2.20.0 with: egress-policy: audit - name: Checkout uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5.0.1 - name: Initialize CodeQL uses: github/codeql-action/init@02c5e83432fe5497fd85b873b6c9f16a8578e1d9 # v3.37.0 with: languages: javascript-typescript build-mode: none - name: Perform CodeQL analysis uses: github/codeql-action/analyze@02c5e83432fe5497fd85b873b6c9f16a8578e1d9 # v3.37.0 with: category: "/language:javascript-typescript"