last step

This commit is contained in:
team2
2026-04-29 22:22:57 +02:00
parent 8ece67b461
commit d618265044
12 changed files with 918 additions and 656 deletions

View File

@@ -0,0 +1,96 @@
# RetrieX Patch 4: Query Enrichment and Search Repair YAML-only
This patch continues the YAML-as-source-of-truth migration.
## Scope
Changed areas only:
- `src/Config/QueryEnricherConfig.php`
- `src/Config/SearchRepairConfig.php`
- `config/retriex/query_enrichment.yaml`
- `config/retriex/search_repair.yaml`
- `config/retriex/vocabulary.yaml`
- `config/services.yaml`
No retrieval scoring, PromptBuilder, ShopService matching, AgentRunner, SSE, or answer-generation behavior was intentionally changed.
## QueryEnricherConfig
Removed the PHP fallback mapping `DEFAULT_ENRICH_QUERY_LIST`.
The existing values are now required in:
```yaml
config/retriex/query_enrichment.yaml
parameters:
retriex.query_enrichment.config:
max_expansions: 4
rules: ...
```
Missing, invalid, or empty YAML now fails closed via `InvalidArgumentException` instead of silently falling back to PHP defaults.
## SearchRepairConfig
Removed PHP fallback constants and hardcoded fallback values for:
- generic candidate tokens
- accessory candidate terms
- accessory/bundle terms
- specificity boost terms
- requested accessory-code behavior
- model-candidate patterns
- search-repair scoring values
- normalization patterns
- trim character set
- product-key separator
- top-product log limit
The active search-repair settings now live in:
```yaml
config/retriex/search_repair.yaml
```
Vocabulary-backed search-repair term views remain in:
```yaml
config/retriex/vocabulary.yaml
parameters:
retriex.vocabulary.config:
views:
search_repair: ...
```
`SearchRepairConfig` now resolves term lists from explicit per-service YAML keys first, otherwise from the configured vocabulary view. If neither exists, it fails closed.
## Validation performed in the artifact workspace
PHP syntax checks passed for:
```bash
php -l src/Config/QueryEnricherConfig.php
php -l src/Config/SearchRepairConfig.php
php -l src/Config/RetriexEffectiveConfigProvider.php
```
Full Symfony commands were not executed in this ZIP workspace because `vendor/` is not included.
Recommended runtime checks after applying the patch:
```bash
php bin/console mto:agent:config:validate
php bin/console mto:agent:config:dump-effective --json
php bin/console mto:agent:config:audit-source --details
php bin/console mto:agent:regression:test
```
Regression focus:
- Testomat 808 / 0,02 °dH
- Indikatortyp 300 follow-up
- Indikator price follow-up
- `welcher pockettester ist für Redox messung gut``suche im shop`
- product-selection shop fallback for free chlorine
- SSE completion watchdog behavior