This commit is contained in:
team 1
2026-05-05 16:37:27 +02:00
parent 7e868be24e
commit 542b527261
7 changed files with 180 additions and 98 deletions

View File

@@ -0,0 +1,84 @@
# RetrieX Patch p43E Direct Attribute Vocabulary View Consolidation
## Ziel
p43E reduziert weitere doppelt gepflegte Direct-Attribute-Begriffe, ohne fachliche Runtime-Logik, Scoring, Prompt-Regeln, Retrieval oder Admin-UI zu verändern.
Der Patch setzt auf dem grünen p43D-Stand auf.
## Änderungen
- `config/retriex/agent.yaml`
- `shop_prompt.product_attribute_query_cleanup.product_type_terms` wird nicht mehr lokal als Liste gepflegt.
- `shop_prompt.product_attribute_query_cleanup.stop_terms` wird nicht mehr lokal als Liste gepflegt.
- Beide Listen werden über `vocabulary_views` aus `config/retriex/vocabulary.yaml` referenziert.
- `config/retriex/search_repair.yaml`
- Lokale `direct_product_attribute_lookup.stop_terms` entfernt.
- SearchRepair nutzt weiterhin lokale Overrides, falls künftig bewusst wieder ein projektspezifischer Override ergänzt wird.
- `config/retriex/vocabulary.yaml`
- Zentrale Klasse `direct_product_attribute_stop_terms` ergänzt.
- Zentrale View `search_repair.direct_product_attribute_stop_terms` ergänzt.
- Bestehende View `search_repair.direct_product_type_terms` bleibt die zentrale Quelle für direkte Produktart-Begriffe.
- `src/Config/AgentRunnerConfig.php`
- `DomainVocabularyConfig` wird optional injiziert.
- Direct-Attribute-Produktart- und Stop-Term-Zugriffe lösen nun lokale Overrides oder Vocabulary-Views auf.
- `src/Config/SearchRepairConfig.php`
- `getDirectProductAttributeLookupStopTerms()` nutzt lokale Overrides oder die neue zentrale Vocabulary-View.
- `config/services.yaml`
- `DomainVocabularyConfig` wird an `AgentRunnerConfig` injiziert.
## Effektive Listen
Die effektiven Listen bleiben gegenüber p43D unverändert:
- AgentRunner Direct-Attribute `product_type_terms`: 12 vorher / 12 nachher, identisch.
- AgentRunner Direct-Attribute `stop_terms`: 40 vorher / 40 nachher, identisch.
- SearchRepair Direct-Attribute `product_type_terms`: 12 vorher / 12 nachher, identisch.
- SearchRepair Direct-Attribute `stop_terms`: 40 vorher / 40 nachher, identisch.
## Bewusst nicht geändert
- Keine neue Fachlogik.
- Keine Scoringänderung.
- Keine Prompt-Regeländerung.
- Keine Retrievaländerung.
- Keine Admin-UI.
- Keine neuen harten Listen im PHP-Core.
## Lokale Checks in dieser Patch-Erstellung
Grün:
```bash
php -l src/Config/AgentRunnerConfig.php
php -l src/Config/SearchRepairConfig.php
```
Zusätzlich wurde per YAML-/Listenvergleich geprüft, dass die effektiven Direct-Attribute-Listen identisch zum p43D-Stand bleiben.
Nicht lokal ausführbar in dieser Umgebung:
```bash
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
```
Grund: Der entpackte ZIP-Stand enthält kein `vendor/`; `bin/console` bricht deshalb mit `Dependencies are missing` ab. Ein lokaler `composer install` war in der Ausführungsumgebung nicht möglich, da PHP-Extensions (`curl`, `dom`, `sqlite3`, `xml`) fehlen und externe Downloads nicht aufgelöst werden konnten.
## Empfohlene Pflichtchecks nach Einspielen
```bash
php -l src/Config/AgentRunnerConfig.php
php -l src/Config/SearchRepairConfig.php
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
```