unstale

npm / cypress-fail-fast

cypress-fail-fast

What changed in cypress-fail-fast 8, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-21.

17 breaking1 new APIs and options4 behavior and defaults

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.2.1 on npm

cypress-fail-fast 822 changes

Breaking changes 17

  • The plugin now requires Cypress 15.10.0 or newer and no longer supports older versions.

    8.0.0release notes

  • The plugin no longer uses Cypress.env() for configuration; options must be provided via Cypress.expose().

    8.0.0release notes

  • Plugin options must now be provided via Cypress.expose() in the Cypress configuration file.

    8.0.0release notes

  • The environment-based key is replaced by failFastBail.

    8.0.0release notes

  • The environment-based key is replaced by failFastEnabled.

    8.0.0release notes

  • This option is removed; use failFastEnabled and failFastIgnorePerTestConfig instead.

    8.0.0release notes

  • The environment-based key is replaced by failFastStrategy.

    8.0.0release notes

  • The renamed camelCase option replaces FAIL_FAST_BAIL in the Cypress.expose() configuration model.

    8.0.0release notes

  • The renamed option controls whether fail-fast is enabled globally.

    8.0.0release notes

  • Controls whether per-test configuration is honored and combines with failFastEnabled to replace FAIL_FAST_PLUGIN behavior.

    8.0.0release notes

  • The renamed camelCase option replaces FAIL_FAST_STRATEGY in the Cypress.expose() configuration model.

    8.0.0release notes

  • Replaces parallelCallbacks with an object containing optional onFailFastTriggered and shouldTriggerFailFast callbacks.

    8.0.0release notes

  • This optional callback runs once when fail-fast mode is triggered and receives the strategy and triggering test information.

    8.0.0release notes

  • This optional callback runs before each test and can return true to enter fail-fast mode based on external state.

    8.0.0release notes

  • The parallel strategy is removed; users implementing parallel-run coordination must provide their own coordination mechanism using hooks.

    8.0.0release notes

  • The plugin option was renamed to hooks, and its structure changed.

    8.0.0release notes

  • Fail-fast now uses Mocha this.skip(), so affected tests appear as pending rather than skipped.

    8.0.0release notes

New APIs and options 1

  • Adds the describe strategy, which skips only remaining tests in the failed test’s immediate parent describe, regardless of per-suite configuration. TypeScript consumers switching exhaustively over FailFastStrategy or the onFailFastTriggered hook’s strategy may need to handle the new member.

    8.2.0release notes

Behavior and default changes 4

  • With the describe strategy, failures are counted separately for each describe block, and a block is skipped after it accumulates the configured number of failures. The spec and run strategies continue counting failures globally.

    8.2.0release notes

  • The hook can return a Promise; hook errors are handled with warnings.

    8.1.0release notes

  • The hook can return a Promise; hook errors are handled with warnings.

    8.1.0release notes

  • The plugin no longer uses Cypress.stop() to implement fail-fast behavior; it uses Mocha this.skip() instead.

    8.0.0release notes