Repository navigation
fix(*): mitigate glob parsing and update vulnerable dependencies - #32
Merged
Merged
Conversation
omermorad
marked this pull request as ready for review
October 8, 2026 05:49
omermorad
added a commit
that referenced
this pull request
Oct 8, 2026
## Scope - Keep `release-preview.yml`, `release-packages.yml`, `publish-packages.yml`, and `tag-global.yml`; no replacement workflows or new test files. - Use matching beta versioning inputs/commands in preview and preparation, refresh the lockfile, and create scoped Conventional Commit release PRs targeting `next`. - Keep preparation, publishing, and tagging separate. Require manual dispatch, the existing `release` environment approval, and reviewed commit verification for release operations. - Publish only beta package versions to the `beta` dist-tag. Validate immutable tags and registry commit metadata; never move exact-version tags. - Update dependency overrides and the lockfile to available patched versions. No package release versions changed. - Integrate #32's CLI glob hardening, existing E2E regression cases, and approved time-limited CI audit exceptions without rewriting branch history. Review #32 first; this PR retains the separate beta-workflow changes. ## Validation - Workflow linting and `git diff --check` pass. - Combined dependency and CLI changes pass existing build, lint, unit tests (8), and E2E tests (358 passed, 1 existing skip). - Live CI audit gate and 17 ephemeral failure/expiry probes pass. No new test files or test infrastructure were added. The Node 22/24/26 matrix and Lerna configuration are unchanged. - Clean-worktree audit passes with a frozen, scripts-disabled install. The audit workflow now performs that install so pnpm can report the dependency paths required by the exception checks. ## Remaining blockers This is a draft, not approval to merge or release. The underlying audit still reports two high-severity advisories with no patched versions listed. Omer approved temporary CI-only risk exceptions on 2026-10-08, expiring at **2026-10-22 05:37:00 UTC**: - [braces: GHSA-vfj7-8cjw-p6xm](GHSA-vfj7-8cjw-p6xm), only version 3.0.3. CLI length/depth guards mitigate the reviewed glob-input path; tooling consumers remain affected. - [http-cache-semantics: GHSA-ch52-4w7c-c8xp](GHSA-ch52-4w7c-c8xp), only version 4.2.0 through the reviewed root Lerna 9.0.7 paths, whose callers use private caches on fresh runners. The existing dependency-audit workflow enforces this fixed expiry and reports warnings/job summaries. All other findings remain blocking, including low severity; registry and malformed-report errors fail closed. At expiry, either remaining advisory blocks again. Exceptions should be removed when patched, and no security alert is dismissed. **Publishing remains blocked:** `publish-packages.yml` keeps its strict `pnpm audit --audit-level low` gate. Applying these exceptions to publishing was blocked by the approval safeguard and requires separate explicit approval. The manual release/environment approvals remain intact regardless. The Action still needs a separately approved Contractual publication and dependency/bundle update to receive the CLI mitigation. No workflows have been dispatched, and no tags, packages, or releases have been published. Existing history and version tags are unchanged. Omer must explicitly approve any future tagging or publishing operation.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Mitigate the reachable glob-parsing stack-exhaustion path identified in the separate risk review for GHSA-vfj7-8cjw-p6xm.
fast-glob: maximum length 1,024 JavaScript string code units and maximum brace/parenthesis nesting 32.ConfigErrorwithout logging the supplied pattern. Literal paths and ordinary glob matching retain their existing behavior.Verification
pnpm build: passed.pnpm lint: passed.pnpm test: 8 passed.pnpm test:e2e: 358 passed, 1 existing skip.git diff --check: passed.node_modules; the gate deliberately rejects incomplete paths.Scope and remaining risk
next. Security changes are also integrated into fix(*): align beta workflows and update vulnerable dependencies #31 without rewriting either branch's existing commits. Review this security PR first; fix(*): align beta workflows and update vulnerable dependencies #31 retains the separate beta-workflow changes.bracesconsumer.