Files
MtoRagSystem/RETRIEX_PATCH_59_COMPLETE_GENRE_WIRING_README.md
2026-05-07 07:52:52 +02:00

5.1 KiB

RetrieX Patch p59 - Complete Genre Wiring

Ziel

Dieser Patch schliesst die Genre-Verdrahtung weiter ab: noch nicht oder nur indirekt verdrahtete fachliche Parameter lesen nun bevorzugt aus config/retriex/genre.yaml.

Wichtig: p59 loescht keine Werte aus Legacy-YAMLs. Die alten Pfade bleiben als Fallback aktiv. Damit ist der Patch bewusst ein reiner Wiring-Schritt und bereitet p60 vor.

Warum dieser Schritt

p55 bis p58 haben die zentrale Single-Genre-Pflegeflaeche aufgebaut, erste Runtime-Flows an genre.yaml angeschlossen und bereits verdrahtete Legacy-Werte kontrolliert reduziert.

p59 erweitert diese bevorzugte Genre-Leselogik auf die verbliebenen fachlichen Oberflaechen, insbesondere:

  • vocabulary.yaml Include-/View-/Map-Ketten
  • prompt.yaml fachliche Antwort-, Format- und Grounding-Regeln
  • search_repair.yaml fachliche Suchreparatur-Patterns und Candidate-Terms
  • retrieval.yaml Exact-Selection- und fachliche Retrieval-Begriffe
  • language.yaml protected_terms
  • governance.yaml fachliche Regression-/Guardrail-Erwartungen
  • fachliche Intent-/Routing-Restwerte fuer Commerce/Sales
  • Commercial-Table-Follow-up-Anker in agent.yaml

Was geaendert wurde

Genre-Konfiguration

config/retriex/genre.yaml wurde um fehlende, bereits bestehende fachliche Werte ergaenzt. Die Werte wurden aus den bisherigen Legacy-Pfaden uebernommen, nicht neu erfunden.

Ergaenzt wurden insbesondere:

  • Shop-Semantic-Search-Tokens aus vocabulary.views.shop.semantic_search_tokens
  • technische Prompt-Keywords aus vocabulary.views.prompt.technical_product_keywords
  • Measurement-Evidence-Maps aus vocabulary.maps.prompt.measurement_evidence_guard
  • Safety-Doc-/Safety-Word-Retrieval-Views aus vocabulary.views.retrieval.*

Runtime-/Config-Facades

Folgende Config-Klassen lesen neue fachliche Werte bevorzugt aus GenreConfig und fallen sonst auf die bestehenden Legacy-Pfade zurueck:

  • DomainVocabularyConfig
  • PromptBuilderConfig
  • SearchRepairConfig
  • NdjsonHybridRetrieverConfig
  • LanguageCleanupConfig
  • GovernanceConfig
  • SalesIntentConfig
  • CommerceIntentConfig
  • AgentRunnerConfig

Dependency Injection

config/services.yaml injiziert GenreConfig nun auch in die neu verdrahteten Config-Facades.

Nicht geaendert

  • Keine Legacy-Wertloeschung.
  • Keine Reduktion von vocabulary.yaml, prompt.yaml, search_repair.yaml, retrieval.yaml, language.yaml oder governance.yaml.
  • Keine neuen fachlichen Defaults im PHP-Core.
  • Keine neuen harten Token-/Stringlisten im PHP-Core.
  • Keine Multi-Genre-/Tenant-Umschaltung.
  • Keine Aenderung an model.yaml, vector.yaml, index.yaml, runtime.yaml, Cache-/Pfad-Konfiguration, LLM-Timeouts, Embedding-Modellen, Chunk-Groessen, technischen Stream Guards oder allgemeinem final_answer_guard.
  • Keine Shopware-Kriterien-, Ranking-, Retrieval-Scoring- oder LLM-Logik-Aenderung.

Erwartetes Verhalten

Das fachliche Antwortverhalten soll unveraendert bleiben. Fuer die verdrahteten Werte gilt nun:

  1. genre.yaml ist bevorzugte Quelle.
  2. Die bisherigen Legacy-Pfade bleiben Fallback.
  3. p60 kann danach die verbleibenden doppelten Legacy-Werte sicher reduzieren.

Damit bleibt das Zielbild sauber getrennt:

  • genre.yaml sagt, was fachlich relevant ist.
  • Agent/Commerce/Prompt/Retrieval/Search-Repair/Language/Governance sagen, wie diese Werte verarbeitet, validiert oder auditiert werden.

Lokale Pruefung

Durchgefuehrt:

php -l src/Config/DomainVocabularyConfig.php
php -l src/Config/PromptBuilderConfig.php
php -l src/Config/SearchRepairConfig.php
php -l src/Config/NdjsonHybridRetrieverConfig.php
php -l src/Config/LanguageCleanupConfig.php
php -l src/Config/GovernanceConfig.php
php -l src/Config/SalesIntentConfig.php
php -l src/Config/CommerceIntentConfig.php
php -l src/Config/AgentRunnerConfig.php

Alle PHP-Syntaxchecks waren gruen.

python3 - <<'PY'
# YAML-Parsing fuer alle Dateien unter config/retriex/*.yaml
PY

Alle config/retriex/*.yaml Dateien konnten geparst werden.

Zusaetzlich wurde skriptbasiert geprueft, dass die neu verdrahteten Genre-Werte den bisherigen Legacy-Werten entsprechen. Geprueft wurden unter anderem:

  • Vocabulary-Views und Vocabulary-Maps
  • Prompt-Regeln und technische Keywords
  • Search-Repair-Patterns und Candidate-Terms
  • Retrieval-Safety-Views und Language-Protected-Terms
  • Governance-/Regression-Guardrail-Werte
  • Sales-/Commerce-Intent-Restwerte
  • Commercial-Table-Follow-up-Anker

Ergebnis: RESULT PASS.

bin/console konnte lokal nicht ausgefuehrt werden, weil im ZIP kein vendor/ enthalten ist:

Dependencies are missing. Try running "composer install".

Projektchecks nach dem Einspielen

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

Naechster Schritt

Wenn p59 gruen ist, kann p60 folgen: Legacy Value Reduction Final. Erst dort werden die verbleibenden doppelten fachlichen Werte aus den Legacy-YAMLs entfernt oder auf leere Fallback-Platzhalter reduziert.