v3.86.0
HavocFramework/Havocv3.86.0Jul 10, 2026by denolfe
AI Summary
The update adds new configuration options for bulk delete control and live preview, alongside a translation backport for the form builder and various bug fixes for scheduling, GraphQL, and UI interactions.
Key Highlights
- Added collection-level `disableBulkDelete` configuration
- Added `livePreview.openByDefault` config option
- Backported plugin-form-builder v3 translations support
- Fixed access to files reuploaded on a draft
- Fixed regex metacharacters in URL allow-list
New Features
- Collection-level bulk delete control
- Live preview open by default configuration
- Form builder v3 translation support
Full Release Notes
## [v3.86.0](https://github.com/payloadcms/payload/compare/v3.85.2...v3.86.0) (2026-07-10) ### 🚀 Features * collection-level disableBulkDelete ([#17207](https://github.com/payloadcms/payload/issues/17207)) ([ca02cdc](https://github.com/payloadcms/payload/commit/ca02cdc)) * **plugin-form-builder:** v3 backport to support translations ([#17255](https://github.com/payloadcms/payload/issues/17255)) ([2cde8c8](https://github.com/payloadcms/payload/commit/2cde8c8)) * **ui:** add livePreview.openByDefault config option ([#17213](https://github.com/payloadcms/payload/issues/17213)) ([f23b693](https://github.com/payloadcms/payload/commit/f23b693)) ### 🐛 Bug Fixes * coerce schedulePublish doc.value to collection ID type before update ([#17238](https://github.com/payloadcms/payload/issues/17238)) ([7de11b2](https://github.com/payloadcms/payload/commit/7de11b2)) * escape regex metacharacters in isURLAllowed pathname allow-list ([#17237](https://github.com/payloadcms/payload/issues/17237)) ([2061859](https://github.com/payloadcms/payload/commit/2061859)) * respect disabled GraphQL config, v3 backport ([#17228](https://github.com/payloadcms/payload/issues/17228)) ([9e9c35a](https://github.com/payloadcms/payload/commit/9e9c35a)) * allow access to files reuploaded on a draft ([#17209](https://github.com/payloadcms/payload/issues/17209)) ([f02d22a](https://github.com/payloadcms/payload/commit/f02d22a)) * **plugin-multi-tenant:** run tenant delete cleanup inside the request transaction ([#17175](https://github.com/payloadcms/payload/issues/17175)) ([d128fde](https://github.com/payloadcms/payload/commit/d128fde)) * **sdk:** use qs-esm allowEmptyArrays parameter ([#17208](https://github.com/payloadcms/payload/issues/17208)) ([c7dc68e](https://github.com/payloadcms/payload/commit/c7dc68e)) * **ui:** presentational fields skipped in form state when admin.condition is false ([#17224](https://github.com/payloadcms/payload/issues/17224)) ([f31f26d](https://github.com/payloadcms/payload/commit/f31f26d)) * **ui:** prevent slug field error tooltip from hiding lock button ([#15885](https://github.com/payloadcms/payload/issues/15885)) ([908fba1](https://github.com/payloadcms/payload/commit/908fba1)) ### ⚙️ CI * upgrade pnpm to v11 ([#17169](https://github.com/payloadcms/payload/issues/17169)) ([ca72620](https://github.com/payloadcms/payload/commit/ca72620)) ### 🤝 Contributors - Jessica Rynkar (@JessRynkar) - Ævar Þór Gunnlaugsson (@aevarOrigo) - Sasha (@r1tsuu) - Herman Ciechanowiec (@ciechanowiec) - Vivek Tyagi (@darkspirit2802) - Noah Bachmann (@noahbachmann) - Jake Fletcher (@jacobsfletch) - Amelia (@LimChorngUan) - German Jablonski (@GermanJablo) - Elliot DeNolf (@denolfe) - Jarrod Flesch (@JarrodMFlesch)