Skip to content

Enable Block Editor 2.0 by default #36254

Description

@rjvelazco

Description

Turn on the Block Editor 2.0 feature flag so the new editor is the default experience, instead of being gated behind an opt-in flag.

Today the flag is shipped off:

# dotCMS/src/main/resources/dotmarketing-config.properties:871
FEATURE_FLAG_NEW_BLOCK_EDITOR=false

Action: make FEATURE_FLAG_NEW_BLOCK_EDITOR resolve to on by default — i.e. remove the =false override line in dotmarketing-config.properties (and/or set it so the unset/default value is true). The flag is already exposed to the admin UI via the ConfigurationResource whitelist (lines 93 and 108), so no extra wiring is required — flipping the default is sufficient for the new editor to render in the content edit form, the EMA sidebar, and content compare.

⚠️ Confirm the default-when-unset behavior before merging. Simply deleting the property can leave the flag resolving to false if the underlying Config.getBooleanProperty(...) default is false. Verify the new editor actually loads with the property absent; if it doesn't, set the default to true explicitly rather than relying on removal.

Rollback remains trivial: set FEATURE_FLAG_NEW_BLOCK_EDITOR=false again. The stored JSON data model is identical between the two editors, so no migration or content change is involved.

Acceptance Criteria

  • With no per-instance override, the Block Editor field renders the new editor (<dot-block-editor>) by default across all three flag consumers: content edit form, EMA block-editor sidebar, and content compare.
  • Setting FEATURE_FLAG_NEW_BLOCK_EDITOR=false on an instance still falls back to the legacy editor (rollback path intact).
  • The default-when-unset behavior is verified (see warning above) — the editor loads ON with the property removed, or the default is set to true explicitly.
  • No regression for existing Block Editor content — stored JSON loads and renders unchanged under the new editor.
  • CI is green and the OpenAPI / config whitelist is unaffected.

Priority

Medium

Additional Context

Metadata

Metadata

Assignees

Type

No fields configured for Task.

Projects

Status
In Progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions