fix: #3563139 Strip JSON Schema draft-04 id keyword from prop schemas to prevent Ajv strict-mode crash on blur

[Description of changes]

AI-Generated: Yes (Used Claude Code (Anthropic Claude Opus 4.7) to trace the Ajv "NOT SUPPORTED: keyword id" crash to GeneratedFieldExplicitInputUxComponentSourceBase::stripNonStandardJsonSchemaKeys() in the Drupal Canvas module, write the one-line patch adding 'id' to $keys_to_remove, and verify the fix by compiling every SDC component prop schema exposed by Drupal Canvas through Ajv 8 in the same configuration the Canvas UI uses, plus
driving the Canvas editor with Playwright to confirm the blur crash no longer occurs. All output reviewed and tested by a human maintainer before submission.).

Strip JSON Schema draft-04 id keyword before sending schemas to client.

Ajv strict mode rejects id ("NOT SUPPORTED: keyword id, use $id for schema ID"), which crashes the Canvas editor on field blur when a component prop schema was expanded from a $ref (the JSON Schema resolver injects id).

Testing instructions

  • First step for someone to test the changes in this MR
Edited by Rajab Natshah

Merge request reports

Loading