Incorrect property paths due to bugs in `BlockComponent::validateComponentInput()` + `ConstraintPropertyPathTranslatorTrait`
>>> [!note] Migrated issue <!-- Drupal.org comment --> <!-- Migrated from issue #3584143. --> Reported by: [wim leers](https://www.drupal.org/user/99777) Related to !899 >>> <h3 id="overview">Overview</h3> <p><span class="drupalorg-gitlab-issue-link drupalorg-gitlab-link-wrapper"><a href="https://git.drupalcode.org/project/canvas/-/work_items/3582478" class="drupalorg-gitlab-link">https://git.drupalcode.org/project/canvas/-/work_items/3582478</a></span> tightens the config schema for config-defined component trees, to pave the path for translatability.</p> <p>In doing so, the config schema for block component instances automatically is transparently reused: no more <code>type: ignore</code>, but instead <code>type: block.settings.&lt;block plugin ID&gt;</code></p> <p>This surfaced a long-hidden bug (AFAICT introduced in <span class="drupalorg-gitlab-issue-link project-issue-status-info project-issue-status-7"><a href="https://www.drupal.org/project/experience_builder/issues/3500997" title="Status: Closed (fixed)">#3500997: Move SDC-specific validation in ValidComponentTreeConstraintValidator and ComponentTreeMeetsRequirementsConstraintValidator into the SDC source plugin</a></span>) that causes root-level violations (at the root of block plugin settings) to generate incorrect property paths.</p> <h3 id="proposed-resolution">Proposed resolution</h3> <p>Fix.</p> <h3 id="ui-changes">User interface changes</h3> <p>None.</p> > Related issue: [Issue #3500997](https://www.drupal.org/node/3500997)
issue