# RetrieX Patch p53 - Config Layout Cleanup / Shop Runtime Grouping ## Ziel Dieser Patch gruppiert bestehende Shop-Runtime-Konfiguration in `config/retriex/agent.yaml` unter `shop_runtime`, ohne fachliche Logik zu ändern. Der Patch ist rein mechanisch: - keine neue Profil-/Layer-Architektur - keine neuen Defaults - keine neuen Token-/Stringlisten - keine Ranking-, Retrieval- oder Shopware-Kriterienänderung - keine LLM-Verhaltensänderung ## Geänderte Dateien - `config/retriex/agent.yaml` - `config/retriex/vocabulary.yaml` - `src/Config/AgentRunnerConfig.php` - `src/Config/RetriexEffectiveConfigProvider.php` ## Neue Gruppierung Die bisherigen Runtime-Blöcke wurden wie folgt verschoben: | Alter Pfad | Neuer Pfad | | --- | --- | | `direct_shop_result_answer` | `shop_runtime.direct_answer` | | `shop_prompt.current_input_preservation` | `shop_runtime.query_cleanup.current_input_preservation` | | `shop_prompt.query_stopword_cleanup` | `shop_runtime.query_cleanup.stopword_cleanup` | | `shop_prompt.product_attribute_query_cleanup` | `shop_runtime.attribute_cleanup` | | `shop_prompt.context_usage` | `shop_runtime.context_resolution.context_usage` | | `shop_prompt.context_anchor_enrichment` | `shop_runtime.context_resolution.history_anchor_enrichment` | | `shop_prompt.meta_query_guard` | `shop_runtime.context_resolution.meta_query_guard` | | `shop_prompt.rag_anchor_enrichment` | `shop_runtime.context_resolution.rag_anchor_enrichment` | | `shop_prompt.direct_result_guard` | `shop_runtime.result_identity` | | `shop_prompt.length_sort` | `shop_runtime.answer_constraints.length_sort` | | `shop_prompt.length_filter` | `shop_runtime.answer_constraints.length_filter` | `final_answer_guard` bleibt bewusst außerhalb von `shop_runtime`, weil er allgemeiner Runtime-/LLM-Ausgabeschutz ist. `shop_prompt` enthält nach dem Cleanup nur noch den eigentlichen Shop-Query-Optimizer-Prompt und dessen Sprach-/Prompt-Regeln. ## Vocabulary Views Die Vocabulary-View-Pfade wurden passend zur neuen Layout-Struktur umbenannt, ohne die zugrunde liegenden Listen zu verändern: - `agent.shop_prompt.current_input_preservation_terms` -> `agent.shop_runtime.query_cleanup.current_input_preservation_terms` - `agent.shop_prompt.context_anchor_enrichment.trigger_terms` -> `agent.shop_runtime.context_resolution.history_anchor_enrichment.trigger_terms` Die referenzierten Term-Gruppen bleiben unverändert. ## Lokale Prüfungen Ausgeführt im entpackten Patch-Arbeitsstand: ```bash php -l src/Config/AgentRunnerConfig.php php -l src/Config/RetriexEffectiveConfigProvider.php python3 - <<'PY' import yaml for f in ['config/retriex/agent.yaml', 'config/retriex/vocabulary.yaml']: yaml.safe_load(open(f, encoding='utf-8')) PY ``` Zusätzlich wurde per YAML-Strukturvergleich geprüft, dass die verschobenen Runtime-Blöcke ihre bisherigen Werte behalten. Nur die zwei Vocabulary-View-Pfadnamen wurden mechanisch an das neue Layout angepasst. ## Nicht lokal ausführbar Die Symfony-Console-Checks konnten in dieser Umgebung nicht vollständig ausgeführt werden, weil der ZIP-Stand kein `vendor/` enthält. ## Empfohlene Projektchecks nach Einspielen ```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 ```