# RetrieX Patch p43H - RAG Evidence Synonym Vocabulary Map

## Ziel

p43H reduziert weitere lokale Config-Duplikate, ohne fachliche Runtime-Logik, Prompt-Regeln, Retrieval oder Scoring zu ändern.

Der Patch verschiebt die Synonym-Map für `rag_evidence_guard` aus `agent.yaml` in die zentrale `vocabulary.yaml` und referenziert sie über einen konfigurierbaren Vocabulary-Map-Pfad.

## Änderungen

- `config/retriex/agent.yaml`
  - lokale `rag_evidence_guard.synonyms` entfernt
  - neue Referenz `rag_evidence_guard.vocabulary_maps.synonyms: agent.rag_evidence_guard.synonyms` ergänzt

- `config/retriex/vocabulary.yaml`
  - neue zentrale Map `maps.agent.rag_evidence_guard.synonyms` ergänzt
  - Werte entsprechen 1:1 der vorherigen lokalen Agent-Konfiguration

- `src/Config/AgentRunnerConfig.php`
  - `getRagEvidenceSynonyms()` löst weiterhin lokale Overrides auf, falls `rag_evidence_guard.synonyms` vorhanden ist
  - fehlt der lokale Override, wird die konfigurierte Vocabulary-Map verwendet
  - neuer Helper `getConfiguredStringListMapOrVocabularyMap()` analog zu bestehenden Vocabulary-View-Fallbacks

## Nicht geändert

- keine neue Fachlogik
- keine Prompt-Regeländerung
- keine Retrievaländerung
- keine Scoringänderung
- keine Admin-UI
- keine neuen harten Listen im PHP-Core

## Kompatibilität

Lokale Overrides bleiben möglich: Wird `rag_evidence_guard.synonyms` in `agent.yaml` oder einer Tenant-/Override-Konfiguration gesetzt, bevorzugt `AgentRunnerConfig` weiterhin diese lokale Map.

## Effektive Werte

Die effektive Synonym-Map ist gegenüber p43G identisch geblieben:

- `salinität`
- `salinitaet`
- `salinity`
- `redox`
- `orp`
- `ph`
- `chlor`

Alle zugehörigen Synonymlisten wurden 1:1 übernommen.

## Lokal ausgeführte Checks

```bash
php -l src/Config/AgentRunnerConfig.php
php -l src/Config/SearchRepairConfig.php
php -l src/Config/PromptBuilderConfig.php
python3 YAML parse check for config/retriex/agent.yaml and config/retriex/vocabulary.yaml
python3 effective rag_evidence_guard.synonyms p43G vs p43H comparison
```

Ergebnis: grün.

## Nicht lokal ausführbare Checks

Die folgenden Checks konnten in dieser Umgebung nicht ausgeführt werden, weil der ZIP-Stand kein `vendor/` enthält und `bin/console` mit `Dependencies are missing. Try running "composer install".` abbricht:

```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
```

Bitte nach Einspielen des Patch-ZIPs in der vollständigen Projektumgebung ausführen.
