Release Notes
Released 2026-05-21
Major update:
https://codecept.io/blog/codeceptjs-4/
4.0.0-rc.26 (pre-release)
Section titled “4.0.0-rc.26 (pre-release)”Released 2026-05-20
pre release check
4.0.0-rc.25 (pre-release)
Section titled “4.0.0-rc.25 (pre-release)”Released 2026-05-20
Pre release check
Full Changelog: https://github.com/codeceptjs/CodeceptJS/compare/4.0.0-rc.24…4.0.0-rc.25
4.0.0-rc.24 (pre-release)
Section titled “4.0.0-rc.24 (pre-release)”Released 2026-05-19
What’s Changed
Section titled “What’s Changed”- fix(analyze): use AI SDK ImagePart format for vision screenshots by @gololdf1sh in https://github.com/codeceptjs/CodeceptJS/pull/5566
- Remove deprecated I.retry() and I.limitTime() by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5567
- Chore/remove react by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5568
- Fix recorder: stop mutating shared defaultRetryOptions by @gololdf1sh in https://github.com/codeceptjs/CodeceptJS/pull/5572
- upd dock by @DenysKuchma in https://github.com/codeceptjs/CodeceptJS/pull/5573
- Fix retryFailedStep config: own retry timing, stop mutating shared defaults by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5574
Full Changelog: https://github.com/codeceptjs/CodeceptJS/compare/4.0.0-rc.23…4.0.0-rc.24
4.0.0-rc.23 (pre-release)
Section titled “4.0.0-rc.23 (pre-release)”Released 2026-05-14
What’s Changed
Section titled “What’s Changed”- refactor(step): rename Step.name to Step.title for consistency by @gololdf1sh in https://github.com/codeceptjs/CodeceptJS/pull/5564
Full Changelog: https://github.com/codeceptjs/CodeceptJS/compare/4.0.0-rc.22…4.0.0-rc.23
4.0.0-rc.22 (pre-release)
Section titled “4.0.0-rc.22 (pre-release)”Released 2026-05-13
What’s Changed
Section titled “What’s Changed”- fix(playwright): replace constructor.name checks with stable public API (#5559) by @mirao in https://github.com/codeceptjs/CodeceptJS/pull/5560
- fix(workers): do not exit worker on unhandled rejections by @gololdf1sh in https://github.com/codeceptjs/CodeceptJS/pull/5561
- feat(plugin): JUnit XML reporter plugin with steps & meta by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5558
Full Changelog: https://github.com/codeceptjs/CodeceptJS/compare/4.0.0-rc.21…4.0.0-rc.22
4.0.0-rc.21 (pre-release)
Section titled “4.0.0-rc.21 (pre-release)”Released 2026-05-11
What’s Changed
Section titled “What’s Changed”- fix(playwright): reset cleanup state at start of _afterSuite to prevent worker crashes by @gololdf1sh in https://github.com/codeceptjs/CodeceptJS/pull/5552
- Fix/refactor autoexit by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5556
- fix(mcp): kill zombie Mocha state when timeout fires before pause() by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5555
- Fix/pr 5554 rebased by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5557
Full Changelog: https://github.com/codeceptjs/CodeceptJS/compare/4.0.0-rc.20…4.0.0-rc.21
4.0.0-rc.20 (pre-release)
Section titled “4.0.0-rc.20 (pre-release)”Released 2026-05-06
What’s Changed
Section titled “What’s Changed”- fix(mcp): timeout aborts Mocha runner so next run_test isn’t blocked by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5551
Full Changelog: https://github.com/codeceptjs/CodeceptJS/compare/4.0.0-rc.19…4.0.0-rc.20
4.0.0-rc.19 (pre-release)
Section titled “4.0.0-rc.19 (pre-release)”Released 2026-05-05
What’s Changed
Section titled “What’s Changed”- Fix/mcp fixes by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5548
- feat(plugins): add
exposeplugin for direct helper-internals injection by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5549 - feat(codeceptq): CLI to query HTML with CodeceptJS locators by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5550
Full Changelog: https://github.com/codeceptjs/CodeceptJS/compare/4.0.0-rc.18…4.0.0-rc.19
4.0.0-rc.18 (pre-release)
Section titled “4.0.0-rc.18 (pre-release)”Released 2026-05-01
What’s Changed
Section titled “What’s Changed”- docs: 4.x migration guide and ESM-only code samples by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5538
- feat(list): add -c, —docs, and —action flags by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5541
- feat(plugins): unify screenshot/pause/aiTrace/heal under shared on= parameter by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5542
- feat(mcp): snapshot tool + run_code return/console capture + storage state + HTML cleanup by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5537
- feat(plugins): add screencast plugin (replaces subtitles) by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5543
- feat(mcp): pause_session tool + MCP-aware pause() yield mode by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5544
- feat(dry-run): step numbering + —no-ansi flag by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5546
- feat(mcp): per-test plugin overrides + shell session lifecycle by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5547
Full Changelog: https://github.com/codeceptjs/CodeceptJS/compare/4.0.0-rc.17…4.0.0-rc.18
4.0.0-rc.17 (pre-release)
Section titled “4.0.0-rc.17 (pre-release)”Released 2026-04-23
What’s Changed
Section titled “What’s Changed”- fix(locator): prevent click(text, container) from matching the container itself by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5532
Full Changelog: https://github.com/codeceptjs/CodeceptJS/compare/4.0.0-rc.16…4.0.0-rc.17
Released 2026-04-23
What’s Changed
Section titled “What’s Changed”- Fix critical security issue in axios by @thomashohn in https://github.com/codeceptjs/CodeceptJS/pull/5517
- Align docker playwrigth version with composer by @thomashohn in https://github.com/codeceptjs/CodeceptJS/pull/5521
- Update outdated packages and security fixes by @thomashohn in https://github.com/codeceptjs/CodeceptJS/pull/5523
- Fix securit issue in axios and updated deps by @thomashohn in https://github.com/codeceptjs/CodeceptJS/pull/5530
- Fix all occurences of @xmldom/xmldom to 0.9.10 and removed override by @thomashohn in https://github.com/codeceptjs/CodeceptJS/pull/5534
- release 3.7.9 by @kobenguyent in https://github.com/codeceptjs/CodeceptJS/pull/5535
Full Changelog: https://github.com/codeceptjs/CodeceptJS/compare/3.7.8…3.7.9
4.0.0-rc.16 (pre-release)
Section titled “4.0.0-rc.16 (pre-release)”Released 2026-04-22
What’s Changed
Section titled “What’s Changed”- fix(fillField): prevent rich-editor keystroke leak to sibling inputs by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5531
Full Changelog: https://github.com/codeceptjs/CodeceptJS/compare/4.0.0-rc.15…4.0.0-rc.16
4.0.0-rc.15 (pre-release)
Section titled “4.0.0-rc.15 (pre-release)”Released 2026-04-21
No release notes.
4.0.0-rc.14 (pre-release)
Section titled “4.0.0-rc.14 (pre-release)”Released 2026-04-21
What’s Changed
Section titled “What’s Changed”- add yaml version upd by @DenysKuchma in https://github.com/codeceptjs/CodeceptJS/pull/5513
- fix: process hangs when _beforeSuite helper hook throws by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5515
- feat: page object lifecycle hooks and Data Objects by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5512
- 4.x docs update by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5519
- feat: add codeceptjs/assertions subpath and hopeThat.noErrors() by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5526
- feat(locator): add withClass, negation, and raw-predicate helpers by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5524
- feat: fillField supports rich text editors by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5527
- feat: pauseOn plugin with debug modes and CLI plugin arguments by @DavertMik in https://github.com/codeceptjs/CodeceptJS/pull/5520
Full Changelog: https://github.com/codeceptjs/CodeceptJS/compare/4.0.0-rc.12…4.0.0-rc.14