build(deps-dev): bump fast-check from 4.6.0 to 4.7.0#2649
build(deps-dev): bump fast-check from 4.6.0 to 4.7.0#2649dependabot[bot] wants to merge 4 commits into
Conversation
Bumps [fast-check](https://github.com/dubzzz/fast-check/tree/HEAD/packages/fast-check) from 4.6.0 to 4.7.0. - [Release notes](https://github.com/dubzzz/fast-check/releases) - [Changelog](https://github.com/dubzzz/fast-check/blob/main/packages/fast-check/CHANGELOG.md) - [Commits](https://github.com/dubzzz/fast-check/commits/v4.7.0/packages/fast-check) --- updated-dependencies: - dependency-name: fast-check dependency-version: 4.7.0 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com>
|
Suggested comment for Cursor review (copy and paste as a new comment): Note: GitHub Actions bot cannot trigger Cursor agent directly. Please copy the above comment to invoke the review. |
Build Branch
Static preview entry points
QR codes (mobile preview)
Integration commandsnpm (Android / Extension): Swift Package Manager (Apple): .package(url: "https://github.com/duckduckgo/content-scope-scripts.git", branch: "pr-releases/dependabot/npm_and_yarn/main/fast-check-4.7.0")git submodule (Windows): git -C submodules/content-scope-scripts fetch origin pr-releases/dependabot/npm_and_yarn/main/fast-check-4.7.0
git -C submodules/content-scope-scripts checkout origin/pr-releases/dependabot/npm_and_yarn/main/fast-check-4.7.0Pin to exact commitnpm (Android / Extension): Swift Package Manager (Apple): .package(url: "https://github.com/duckduckgo/content-scope-scripts.git", revision: "d1264a86f0b7058c78fe1618c0bfa91c38270aca")git submodule (Windows): git -C submodules/content-scope-scripts fetch origin pr-releases/dependabot/npm_and_yarn/main/fast-check-4.7.0
git -C submodules/content-scope-scripts checkout d1264a86f0b7058c78fe1618c0bfa91c38270aca |
There was a problem hiding this comment.
Stale comment
Web Compatibility Assessment
injected/package.json(devDependenciesfast-check),special-pages/package.json(devDependenciesfast-check),package-lock.json(lockfile resolution updates) — severity: info
Change scope is dependency metadata only (fast-check4.6.0→4.7.0) with no edits to injected runtime feature code, wrapper/shim utilities, API overrides, platform entry points, or DOM interaction paths. No observed risk to API surface fidelity, prototype-chain behavior, or third-party script compatibility from changed lines.Security Assessment
injected/package.json,special-pages/package.json,package-lock.json— severity: info
This PR does not modify hostile-page trust-boundary code (captured globals, message bridge, transport validation, exemption logic, or iframe/origin handling).fast-checkremains a dev-only dependency here, so there is no direct production-path expansion of attack surface from the diff itself.Risk Level
Low Risk — Dependency-only dev-tooling bump with lockfile refresh; no runtime JavaScript injection or security-control-path modifications.
Recommendations
- Keep CI coverage for property-based tests enabled in both
injectedandspecial-pagesto catch generator/arb behavior shifts introduced byfast-checkupdates.- If determinism becomes an issue after the bump, standardize seeded runs in affected tests to reduce flake sensitivity.
- Alternative hardening option: consider exact pinning (or workspace-level override) for
fast-checkin CI-critical lanes if reproducibility is prioritized over automatic minor uptake.Sent by Cursor Automation: Web compat and sec
There was a problem hiding this comment.
Stale comment
Dependency Risk Review:
fast-check4.6.0 → 4.7.0Confirmed findings
No blocking issues found.
Evidence:
- PR diff is limited to version metadata in
injected/package.json,special-pages/package.json, andpackage-lock.json.- Lockfile shows only
node_modules/fast-checktarball/version changed (4.6.0→4.7.0); no additional transitive churn in this diff.- Upstream changelog for
4.7.0lists feature additions mainly aroundstringMatchingunicode property parsing (\\p{}/\\P{}) plus reversiblejsonarbitrary, with no breaking-change notes.Test coverage check
fast-checkis actively used in property tests in both affected workspaces (injected/unit-test/*properties*,injected/unit-test/timer-utils.js,special-pages/unit-test/color.spec.mjs,special-pages/unit-test/translations.mjs).- Executed test validation:
npm run test-unit --workspace injected→ pass (889 specs, 0 failures)npm run test-unit --workspace special-pages→ pass (104 tests, 0 failures)Uncertain / low-confidence concerns (non-blocking)
Generator behavior drift risk (low):
fast-checkminor updates can shift generated-case distributions/shrinking behavior. This can subtly change fuzzing signal over time even when tests pass in a single run.
- Assumption: this repo does not rely on deterministic
fast-checkfailure shrinking output as a contract.- Validation if desired: run CI with multiple seeds for the few property suites using
fc.stringMatching.Scope of new unicode regex support not directly exercised: repo usages of
fc.stringMatchingare ASCII regexes, so new unicode-property support paths in4.7.0are not directly covered here.
- This is acceptable for current usage; just noting coverage boundary.
Is dependency still needed?
Yes.
fast-checkis still justified: it is used by multiple property-based test suites acrossinjectedandspecial-pages, and remains a dev-only dependency (not shipped in runtime bundles).Separate fix PR
No follow-up fix PR is needed from this review.
Sent by Cursor Automation: Review dependabot
[Beta] Generated file diffTime updated: Fri, 22 May 2026 10:35:00 GMT |
There was a problem hiding this comment.
Stale comment
Web Compatibility Assessment
injected/package.json(around53-57) — info:fast-checkdev dependency bumped from^4.6.0to^4.7.0. This does not modify injected feature code, wrapper utilities, platform entry points, or any browser API shim surface, so no direct site compatibility regression vector is introduced.special-pages/package.json(around31-35) — info: same dev dependency bump in special-pages workspace only; no runtime JS/CSS behavior change on embedded pages from this diff alone.package-lock.json(around55-57,4726-4734,10891-10895) — info: lockfile refresh consistent with manifest updates; no additional runtime dependency tree changes beyondfast-checkpackage metadata/version.Security Assessment
injected/package.json/special-pages/package.json/package-lock.json(lines above) — info: change is limited to test tooling (devDependencies) and lockfile integrity hashes; no modifications to captured globals, message bridge, transports, wrapper/shim logic, exemption logic, or any runtime code executing in hostile page contexts.package-lock.json(node_modules/fast-checkentry) — info: integrity hash updated as expected for new tarball; no suspicious transitive additions in this diff segment.Risk Level
Low Risk — dependency-only dev-tooling bump with no production injected-script code changes and no touched security-sensitive subsystems.
Recommendations
- Run
npm run test-unit(or targeted workspace unit suites using property-based tests) to catch any behavioral differences in arbitraries/shrinking introduced byfast-check4.7.0.- If deterministic CI reproducibility is prioritized over automatic patch/minor pickup, consider pinning exact
fast-checkversions instead of caret ranges in workspace manifests.- Keep Dependabot lockfile-only updates isolated (as here) to preserve rollback simplicity if test flakiness appears.
Sent by Cursor Automation: Web compat and sec
There was a problem hiding this comment.
Dependency review for fast-check 4.6.0 -> 4.7.0:
Confirmed Findings
No blocking security or behavior regressions found in this PR diff.
Evidence:
- Diff only updates manifests/lockfile:
injected/package.json,special-pages/package.json,package-lock.json. fast-checkis a dev-only dependency in both workspaces (test-time only).- Repository callsites are limited to property-based unit tests in
injected/unit-test/*andspecial-pages/unit-test/*. - Targeted validation passed after install:
npm run test-unit -w injected(889specs passed,0failures)npm run test-unit -w special-pages(104tests passed,0failures)
Changelog Impact Assessment (4.7.0)
Upstream 4.7.0 changes are mainly:
- reversible
jsonarbitrary stringMatchingsupport for Unicode property escapes (\p{}/\P{})
Impact on this repo appears low:
- We use
fc.stringMatching(...), but current patterns are ASCII-focused and do not use Unicode property escapes. - No production/runtime code imports
fast-check; usage remains test-only.
Uncertain / Residual Risk
Non-blocking: stringMatching parser updates can still subtly alter generated case distribution and shrinking behavior, potentially changing deterministic seeds or exposing latent flaky assertions over time. Current unit runs did not reproduce issues, but CI history should be watched for new test flake patterns.
Dependency Necessity / Alternatives
fast-check is still actively used and provides broad negative-input coverage that would be expensive to replace with ad-hoc loops.
- Alternative if we want to reduce third-party surface: replace selected properties with deterministic fixture tests in high-value paths only.
- Tradeoff: reduced fuzz coverage and less ability to discover edge cases.
No follow-up fix PR is needed based on current evidence.
Sent by Cursor Automation: Review dependabot
|
A newer version of fast-check exists, but since this PR has been edited by someone other than Dependabot I haven't updated it. You'll get a PR for the updated version as normal once this PR is merged. |
There was a problem hiding this comment.
Web Compatibility Assessment
- File:
injected/package.json; lines 53-57; severity: info
fast-checkis bumped only indevDependencies. This does not change injected runtime feature code, wrapper utilities, browser API shims, platform entry points, DOM manipulation, or third-party script-visible behavior. - File:
special-pages/package.json; lines 31-35; severity: info
Same dev-only property-testing dependency bump. No embedded page runtime code, CSS, messaging contract, or browser API interaction is modified by this diff. - File:
package-lock.json; relevant package and workspace dependency entries; severity: info
Lockfile update is consistent withfast-check4.6.0->4.7.0; transitive dependency remainspure-randonly, with no additional dependency-tree expansion observed.
Security Assessment
- File:
injected/package.json; lines 53-57; severity: info
No change to hostile-page trust-boundary code: captured globals, wrapper/shim primitives, message bridge, origin validation, stack-trace exemptions, iframe access, or load-time injected behavior are untouched. - File:
special-pages/package.json; lines 31-35; severity: info
fast-checkremains test tooling only; it is not part of production special-page bundles from this diff. - File:
package-lock.json; relevantnode_modules/fast-checkentry; severity: info
Tarball metadata/integrity changed as expected for the version bump, with no new runtime package surface introduced.
Risk Level
Low Risk — dependency-only dev-tooling bump with no production injected-script or security-control-path changes.
Recommendations
- No blocking changes needed.
- Keep property-based unit suites in CI for both affected workspaces to catch future arbitrary/shrinking behavior drift.
- If deterministic CI output becomes important, consider exact pinning for
fast-check; otherwise the current caret range is consistent with normal Dependabot minor updates.
Validation performed:
npm cinpm run build --workspace injectednpm run test-unit --workspace injected(929specs,0failures)npm run test-unit --workspace special-pages(104tests,0failures)
Sent by Cursor Automation: Web compat and sec
There was a problem hiding this comment.
Dependency risk review for fast-check 4.6.0 -> 4.7.0:
No confirmed concerns found.
Evidence checked:
- Diff only updates
fast-checkininjected/package.json,special-pages/package.json, andpackage-lock.json; the lockfile entry remainsdev: true. - Upstream 4.7.0 changelog lists new
fc.stringMatchingsupport for Unicode property escapes (\p{}/\P{}) and reversiblefc.json()shrinking. Current repo usage importsfast-checkonly from unit/property tests; there is nofc.json()usage, and existingfc.stringMatchingregexes use ASCII character classes rather than Unicode-property escapes. - Package metadata did not show a dependency/engine/maintainer/license change relevant to this bump: still
pure-rand@^8.0.0, Node>=12.17.0, MIT, same npm maintainer, 11 package files. npm audit --package-lock-onlydid not attribute any advisory tofast-checkorpure-rand. It still reports unrelated pre-existing advisories elsewhere in the tree.
Validation run:
npm run build --workspace injectednpm run test-unit --workspace injectedpassed: 929 specs, 0 failures, 16 pendingnpm run test-unit --workspace special-pagespassed: 104 tests, 0 failures
I did not draft a separate fix PR because I did not identify a required fix for this dependency update.
Sent by Cursor Automation: Review dependabot
There was a problem hiding this comment.
No blocking dependency-update concerns found.
Reviewed fast-check 4.6.0 -> 4.7.0 against the upstream release notes. The release adds reversible json arbitrary behavior and Unicode property support in stringMatching; I did not find breaking changes called out. In this repo fast-check is only a devDependency used by unit/property tests, so there is no production runtime/privacy surface change. The current stringMatching usages are simple ASCII regexes, and I found no fc.json usage.
Validation performed:
npm cinpm ls fast-check --allconfirmsfast-check@4.7.0forinjectedandspecial-pagesnpm run test-unit -w injected -- unit-test/utils-properties.spec.js unit-test/timer-utils.js unit-test/cookie-properties.spec.js unit-test/config-feature-properties.spec.js unit-test/broker-protection.js unit-test/broker-protection-extractors.jspassed, 140 specsnpm run test-unit -w special-pagespassednpm auditreport has no advisories involvingfast-checkorpure-rand- GitHub CI gate is green, including unit and integration jobs
No separate fix PR drafted because I did not find changes needed.
Sent by Cursor Automation: Review dependabot


Bumps fast-check from 4.6.0 to 4.7.0.
Release notes
Sourced from fast-check's releases.
Changelog
Sourced from fast-check's changelog.
Commits
fd1a184🔖 Update CHANGELOG.md for fast-check@4.7.0 (#6873)6661a31✨ Support negated unicode properties instringMatching(#6871)332f905✨ Support for\p{UnicodeProperty}instringMatching(#6870)285ed56✨ Parse\p{}and\P{}instringMatching(#6868)1e5d774✨ Reversiblejsonarbitrary (#6866)f16e672📝 Integrate API reference natively into our doc (#6855)e82af33🔨 Migrate from ESLint to oxlint (#6835)a82f7a1⬆️ Update dependency typedoc to ^0.28.19 (#6847)104640c⬆️ Update dependency@microsoft/api-extractorto ^7.58.2 (#6828)b3c86c2⬆️ Update typescript-eslint monorepo to ^8.58.1 (#6826)You can trigger a rebase of this PR by commenting
@dependabot rebase.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)Note
Low Risk
Low risk devDependency bump only, but it may change property-based test generation behavior and impact test stability/coverage.
Overview
Updates the
fast-checkdevDependency from4.6.0to4.7.0across the root/injected andspecial-pagespackages, and refreshespackage-lock.jsonto the new resolved tarball and integrity hash.Reviewed by Cursor Bugbot for commit d2101de. Bugbot is set up for automated code reviews on this repo. Configure here.