From 01f425cb9ffaeb059b2b06b4a3f830eba4f01c0b Mon Sep 17 00:00:00 2001 From: Ruben van der Linde Date: Sun, 16 Aug 2026 11:05:16 +0200 Subject: [PATCH] fix(register): point three x-relation-filter tokens at the renamed provider property MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit gate-54 relation-dialect, check (d): three `x-relation-filter` tokens still name `@object.aanbieder`, a property that no longer exists. Commit aab66d52 ("translate Dutch vocabulary to English", #506, 2026-08-14) renamed the property key `aanbieder` -> `provider` everywhere, including the filter KEY side (`{ "aanbieder": ... }` -> `{ "provider": ... }`), but its value-side rule never matched the compound token `"@object.aanbieder"`. So these three findings are INTRODUCED, not legacy debt — they are two days old. Effect of the defect: ADR-062 rule 6 drops an unresolved token rather than filtering on nothing, so the three pickers (service.contactPerson, service.modules, module.contactPerson) have been rendering UNSCOPED since the rename — every contact person in the instance, not just the provider's. This is NOT a data migration. `x-relation-filter` is picker-scoping metadata naming a property of the same schema; no property and no stored value changes. RenameDutchCatalogColumns already migrated the stored data (lib/Repair/ RenameDutchCatalogColumns.php:179 `'aanbieder' => 'provider'`). Both sides of each token verified by hand (the gate only checks the value side): service.contactPerson {organization: @object.provider} -> contactPerson.organization OK, service.provider OK service.modules {provider: @object.provider} -> module.provider OK, service.provider OK module.contactPerson {organization: @object.provider} -> contactPerson.organization OK, module.provider OK gate-54, the gate's own vendored helper (check_relation_dialect.py, blob 3d4c81ca == ConductionNL/.github@main), over its own enumeration (git ls-files lib/Settings, register*.json + register.d/*.json): BEFORE: 3 findings over 3 files AFTER: 0 findings over 3 files --- lib/Settings/softwarecatalogus_register.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/Settings/softwarecatalogus_register.json b/lib/Settings/softwarecatalogus_register.json index bb1f4336..59ef03f4 100644 --- a/lib/Settings/softwarecatalogus_register.json +++ b/lib/Settings/softwarecatalogus_register.json @@ -1414,7 +1414,7 @@ "handling": "related-object" }, "$ref": "#/components/schemas/contactPerson", - "x-relation-filter": { "organization": "@object.aanbieder" } + "x-relation-filter": { "organization": "@object.provider" } }, "modules": { "description": "Zoek de applicaties op waar deze dienst van toepassing is.", @@ -1424,7 +1424,7 @@ "facetable": false, "title": "Application", "$ref": "#/components/schemas/module", - "x-relation-filter": { "provider": "@object.aanbieder" }, + "x-relation-filter": { "provider": "@object.provider" }, "items": { "type": "object", "objectConfiguration": { @@ -6824,7 +6824,7 @@ "handling": "related-object" }, "$ref": "#/components/schemas/contactPerson", - "x-relation-filter": { "organization": "@object.aanbieder" } + "x-relation-filter": { "organization": "@object.provider" } }, "cloudDienstverleningsmodel": { "description": "Kies één of meerdere hosting typen waarmee de applicatie wordt aangeboden.",