# RetrieX Patch p55b - Genre Config Values Validation Hotfix ## Purpose Small follow-up hotfix for p55 Single-Genre Config Values. p55 correctly added `configuration_values` to `config/retriex/genre.yaml`, but the effective config output used by `mto:agent:config:validate` did not expose this block. As a result, validation reported: ```text Config validation failed: genre.configuration_values must be a non-empty map. ``` The patch also corrects two stale `adaptation_surface.product_roles` path references for the `no_llm_fallback` product role vocabulary-view indirection. ## Scope Changed files: - `config/retriex/genre.yaml` - `src/Config/RetriexEffectiveConfigProvider.php` ## Changes ### Effective config exposure `RetriexEffectiveConfigProvider::genreConfig()` now includes: ```php 'configuration_values' => $this->genreConfig->getConfigurationValues(), ``` This makes the p55 value surface visible to the existing config validation path. ### Path reference cleanup The stale paths: ```text agent.no_llm_fallback.product_roles.main_device_request_keywords agent.no_llm_fallback.product_roles.accessory_product_keywords ``` were replaced with the current vocabulary-view config paths: ```text agent.no_llm_fallback.product_roles.vocabulary_views.main_device_request_keywords agent.no_llm_fallback.product_roles.vocabulary_views.accessory_product_keywords ``` The same path spelling was corrected in the corresponding `configuration_values.product_roles.no_llm_fallback_terms.source_paths` metadata. ## Non-goals This patch does not: - wire runtime behavior to `genre.yaml` - introduce multi-genre or tenant logic - add new product terms - add new defaults - change ranking, retrieval, Shopware criteria or LLM behavior - move legacy values out of their existing files ## Local checks Performed locally in the extracted project without `vendor/`: ```bash php -l src/Config/GenreConfig.php php -l src/Config/RetriexEffectiveConfigProvider.php php -l src/Config/ConfigSourceAuditProvider.php ``` YAML parsing was also checked for all files under `config/retriex/*.yaml`. A lightweight path check verified that the two corrected `no_llm_fallback` paths now point to existing raw config locations. Full Symfony console checks could not be executed locally because the ZIP does not contain `vendor/`. ## Recommended project checks After applying the patch in the full project, run: ```bash bin/console cache:clear bin/console mto:agent:config:validate bin/console mto:agent:regression:test bin/console mto:agent:config:audit-source --details bin/console mto:agent:config:audit-patterns --details ```