fix p49
This commit is contained in:
@@ -0,0 +1,112 @@
|
|||||||
|
# RetrieX Patch p49 - Direct Product Compound Guard
|
||||||
|
|
||||||
|
## Ziel
|
||||||
|
|
||||||
|
Behebt einen Regressionsfall nach p45/p48 bei direkten Shop-Produktsuchen mit zusammengesetzten Produktnamen.
|
||||||
|
|
||||||
|
Beispiel:
|
||||||
|
|
||||||
|
```text
|
||||||
|
welche neomeris puffer gibt es für Kalibrierung von pH-Messgeräten
|
||||||
|
```
|
||||||
|
|
||||||
|
Die erzeugte Shopquery ist sinnvoll:
|
||||||
|
|
||||||
|
```text
|
||||||
|
neomeris puffer kalibrierung ph messgeräten
|
||||||
|
```
|
||||||
|
|
||||||
|
Trotzdem konnte RetrieX nach der Shop-Suche `Shop-Treffer: 0` anzeigen, obwohl der Shop mit identischer Query passende Pufferprodukte liefert.
|
||||||
|
|
||||||
|
## Ursache
|
||||||
|
|
||||||
|
Der direkte p45-Produktguard filtert Shop-Ergebnisse nach angefragten Produkttypen. Bei `puffer` verlangt der Guard bisher einen exakten Token-Treffer im Produkttext.
|
||||||
|
|
||||||
|
Shopware-Produkte heißen aber typischerweise z. B.:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Neomeris pH-Pufferlösung pH 7.00
|
||||||
|
```
|
||||||
|
|
||||||
|
Nach Tokenisierung wird daraus u. a.:
|
||||||
|
|
||||||
|
```text
|
||||||
|
pufferlösung
|
||||||
|
```
|
||||||
|
|
||||||
|
Das ist kein exakter Token `puffer`. Dadurch konnten fachlich passende Pufferprodukte nach erfolgreicher Shop-Suche vom Guard vollständig entfernt werden.
|
||||||
|
|
||||||
|
## Änderung
|
||||||
|
|
||||||
|
- Der direkte Produktguard behält seine exakte Tokenprüfung als Standard.
|
||||||
|
- Zusätzlich gibt es eine kleine, YAML-konfigurierte Compound-Prefix-Erlaubnis für ausgewählte Produkttypen.
|
||||||
|
- Aktuell erlaubt:
|
||||||
|
- `puffer`
|
||||||
|
- `kalibrierpuffer`
|
||||||
|
- Damit matcht `puffer` auch Produkt-Tokens wie `pufferlösung`, ohne eine breite PHP-Sonderlogik einzubauen.
|
||||||
|
|
||||||
|
## Wichtig
|
||||||
|
|
||||||
|
- Keine Änderung an der Shopquery-Erzeugung.
|
||||||
|
- Keine Änderung an Shopware-Kriterien.
|
||||||
|
- Keine Änderung am LLM-Prompting.
|
||||||
|
- Keine produkt- oder markenspezifische Sonderlogik.
|
||||||
|
- Der Guard bleibt defensiv und nur für explizit konfigurierte Compound-Prefix-Terme erweitert.
|
||||||
|
|
||||||
|
## Geänderte Dateien
|
||||||
|
|
||||||
|
```text
|
||||||
|
config/retriex/agent.yaml
|
||||||
|
src/Agent/AgentRunner.php
|
||||||
|
src/Config/AgentRunnerConfig.php
|
||||||
|
patch_history/RETRIEX_PATCH_49_DIRECT_PRODUCT_COMPOUND_GUARD_README.md
|
||||||
|
```
|
||||||
|
|
||||||
|
## Lokale Checks
|
||||||
|
|
||||||
|
Ausgeführt:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
php -l src/Agent/AgentRunner.php
|
||||||
|
php -l src/Config/AgentRunnerConfig.php
|
||||||
|
python3 - <<'PY'
|
||||||
|
import yaml
|
||||||
|
with open('config/retriex/agent.yaml', 'r', encoding='utf-8') as fh:
|
||||||
|
yaml.safe_load(fh)
|
||||||
|
print('YAML ok')
|
||||||
|
PY
|
||||||
|
```
|
||||||
|
|
||||||
|
`bin/console` wurde lokal nicht ausgeführt, da im entpackten ZIP kein `vendor/` enthalten ist.
|
||||||
|
|
||||||
|
## Nach dem Einspielen prüfen
|
||||||
|
|
||||||
|
```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
|
||||||
|
```
|
||||||
|
|
||||||
|
## Erwartete Regressionstests
|
||||||
|
|
||||||
|
```text
|
||||||
|
welche neomeris puffer gibt es für Kalibrierung von pH-Messgeräten
|
||||||
|
```
|
||||||
|
|
||||||
|
Erwartung:
|
||||||
|
- Shopquery bleibt produktnah.
|
||||||
|
- Shop-Treffer werden nicht durch den direkten Produktguard auf 0 weggefiltert.
|
||||||
|
- Pufferlösung-/Kalibrierpuffer-Produkte dürfen als passende Treffer erscheinen.
|
||||||
|
|
||||||
|
Weiterhin prüfen:
|
||||||
|
|
||||||
|
```text
|
||||||
|
zeige mir Anschlusskabel für pH/Redox
|
||||||
|
zeige mir Anschlusskabel für pH/Redox . ordne die liste nach metern
|
||||||
|
zeige mir Anschlusskabel für pH/Redox ab 20m
|
||||||
|
```
|
||||||
|
|
||||||
|
Erwartung:
|
||||||
|
- p45/p46-Verhalten bleibt erhalten.
|
||||||
Reference in New Issue
Block a user