Skip to content

chore(ci): fix security scan failures blocking all PRs - #506

Closed
srozen wants to merge 1 commit into
mainfrom
fix/security-audit-failures
Closed

srozen wants to merge 1 commit into
mainfrom
fix/security-audit-failures

Conversation

@srozen

@srozen srozen commented Oct 14, 2026

Copy link
Copy Markdown
Contributor

Why

The Security Check (django, bff) and Dependencies Audit (vue) jobs fail on main right now. vue.yml and django.yml have no path filter, so every open PR inherits the failures. This currently blocks Dependabot PRs #504, #503, #500, #495 and #487.

Changes

django/ (uv.lock only): pyjwt 2.13.0 → 2.15.1, urllib3 2.7.0 → 2.8.0, django 6.1 → 6.1.2. pysentry: 0 vulnerabilities.

bff/ (uv.lock only): urllib3 2.7.0 → 2.8.0, werkzeug 3.1.6 → 3.1.9. pysentry: 0 vulnerabilities.

vue/

  • npm audit fix (no --force): clears undici, shell-quote, proxy-addr, axios, vue/server-renderer, etc.
  • overrides["@parcel/watcher"] = "^2.6.0": @tailwindcss/cli@4.3.3 pins 2.5.1, which pulls micromatch → braces. 2.6.0 switched to picomatch.
  • CI gate: npm audit --audit-level high → npx audit-ci@7.1.0 --config audit-ci.jsonc. The only remaining high is braces GHSA-vfj7-8cjw-p6xm. Every braces release is affected (3.0.3 is the latest), and it is only reachable through dev-only lint tooling (@vue/eslint-config-typescript → fast-glob → micromatch). npm audit can't ignore a single advisory, so audit-ci allowlists exactly that GHSA, with a TODO. This mirrors the pysentry while_no_fix lists. The threshold is still high, and running without the allowlist fails as expected.

Validation

  • django: pytest 325 passed; mypy clean; pysentry clean
  • bff: pytest 37 passed; OpenAPI --check up to date; pysentry clean
  • vue: type-check, lint-check, format-check, knip (CI flags), build and test:package-types all pass. Unit project: 376 passed. Storybook project: 93 passed on chromium and webkit. Local Firefox could not start a browser session (environment issue), so CI covers it.

After merge

Rebase the Dependabot PRs (@dependabot rebase) so they pick up the fixes.

🤖 Generated with Claude Code

All three security scans fail on main, so every open PR (Dependabot
included) inherits red Security Check / Dependencies Audit jobs.

- django: pysentry flags pyjwt 2.13.0, urllib3 2.7.0 and django 6.1.
  Bumped to pyjwt 2.15.1, urllib3 2.8.0, django 6.1.2 via
  `uv lock --upgrade-package`.
- bff: pysentry flags urllib3 2.7.0 and werkzeug 3.1.6. Bumped to
  urllib3 2.8.0, werkzeug 3.1.9.
- vue: `npm audit fix` clears undici, shell-quote, proxy-addr and the
  other fixable highs/criticals (lockfile only). @tailwindcss/cli pins
  @parcel/watcher 2.5.1 (micromatch -> braces); override to ^2.6.0,
  which uses picomatch instead.
- vue: braces GHSA-vfj7-8cjw-p6xm affects every published release
  (3.0.3 is latest) and is only reachable through dev-only lint tooling
  (@vue/eslint-config-typescript -> fast-glob -> micromatch). `npm audit`
  cannot ignore a single advisory, so the CI gate now runs audit-ci
  with an allowlist in vue/audit-ci.jsonc, mirroring the pysentry
  `while_no_fix` lists. Threshold stays at high.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 14, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-14T08:47:20.387646Z 03e2bd6 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@srozen

srozen commented Oct 14, 2026

Copy link
Copy Markdown
Contributor Author

Superseded: these changes were applied on #504 (d86f556).

🤖 Generated with Claude Code

@srozen srozen closed this Oct 14, 2026
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.

1 participant