This commit is contained in:
team 1
2026-05-06 16:58:01 +02:00
parent 9731880cd3
commit 81ae3c3902
6 changed files with 2011 additions and 71 deletions

View File

@@ -0,0 +1,89 @@
# 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
```