# RetrieX Patch 13 – Agent/Commerce Pattern Externalization ## Ziel Patch 13 setzt die Developer Policies aus v1.5.1 weiter um und entfernt weitere fachliche Patterns, Signal-Listen und Produkt-/Fokuslisten aus PHP-Core-Klassen. Die Änderung ist bewusst klein gehalten und soll das Laufzeitverhalten nicht fachlich verändern: Die bisherigen Werte wurden 1:1 nach YAML verschoben und die PHP-Klassen lesen sie nur noch aus der Konfiguration. ## Geänderte Bereiche ### AgentRunner Dateien: - `src/Agent/AgentRunner.php` - `src/Config/AgentRunnerConfig.php` - `config/retriex/agent.yaml` Externalisiert wurden: - starke Follow-up-Referenzpatterns, z. B. „der Wert“, „womit“, „welcher Indikator“ - explizite Commerce-Follow-up-Signale, z. B. „shop“, „preis“, „kostet“, „sku“ - History-/Follow-up-Strukturpatterns für `Question:`-Parsing - Referenzanker-Patterns für Testomat-Modellanker und Härtewerte in °dH ### CommerceQueryParser Dateien: - `src/Commerce/CommerceQueryParser.php` - `src/Config/CommerceQueryParserConfig.php` - `config/retriex/commerce.yaml` Externalisiert wurden: - Search-Control-Tokens wie `shop`, `store`, `produkt`, `artikel`, `kaufen`, `bestellen`, `online` ### CommerceReferenceResolver Dateien: - `src/Commerce/CommerceReferenceResolver.php` - `src/Config/CommerceReferenceResolverConfig.php` - `config/services.yaml` - `config/retriex/commerce.yaml` Externalisiert wurden: - Conversation-Produktpatterns für Testomat-Modelle - Fokus-Term-Patterns für Zubehör-/Reagenz-/Ersatzteilbegriffe ## Bewusst nicht geändert Nicht alle technischen Normalisierungsregexe im `AgentRunner` wurden in diesem Patch angefasst. Bewusst unverändert bleiben zunächst rein technische Parser-/Sanitizer-Patterns wie Whitespace-Normalisierung, Tokenisierung oder HTML-/Output-Formatierung. Diese können später in einem separaten, kleineren Follow-up-Patch geprüft werden, falls der Audit weiterhin zu viel Pattern-Logik im Core meldet. ## Prüfungen In der Patch-Arbeitsumgebung wurde geprüft: ```bash php -l src/Config/AgentRunnerConfig.php php -l src/Agent/AgentRunner.php php -l src/Config/CommerceQueryParserConfig.php php -l src/Commerce/CommerceQueryParser.php php -l src/Config/CommerceReferenceResolverConfig.php php -l src/Commerce/CommerceReferenceResolver.php ``` Alle geprüften PHP-Dateien waren syntaktisch valide. Zusätzlich wurden die geänderten YAML-Dateien parserseitig geprüft: - `config/retriex/agent.yaml` - `config/retriex/commerce.yaml` - `config/services.yaml` ## Nach dem Einspielen lokal ausführen ```bash bin/console mto:agent:config:validate bin/console mto:agent:regression:test bin/console mto:agent:config:audit-source --details ``` Falls die Umgebung `vendor/` nicht enthält, vorher wie üblich Abhängigkeiten installieren. ## Erwartetes Ergebnis - Keine fachliche Verhaltensänderung. - Keine neue Strict-Validation. - Weniger fachliche Pattern-/Keyword-Logik im PHP-Core. - Weitere Annäherung an die Developer Policies aus v1.5.1.