# RetrieX Patch 17b - Accuracy Prompt Guard Hotfix

## Scope

This patch tightens prompt-side grounding rules for two remaining accuracy issues after p17:

1. Product-specific threshold / indicator transfer
   - A value, indicator, reagent, measuring range, method, accessory code, or application claim must belong to the same explicitly named product or variant.
   - Indicator tables from another Testomat variant must not be transferred to Testomat 2000 CAL.
   - The rule explicitly prevents applying Testomat 808 indicator types such as 300, 300 S, 301, 302, 303, 305, 310, 320, 330, or 350 to Testomat 2000 CAL unless the same source states that mapping.

2. Parameter vs. application evidence
   - A shop result can support the requested measurement parameter, but application suitability such as Schwimmbad / Pool must be stated in the same source record.
   - User wording, generated shop query terms, search ranking, product family, and generic water-treatment wording are not application evidence.

## Files changed

- `config/retriex/prompt.yaml`

## Runtime impact

No PHP runtime code was changed. This is a prompt-governance hotfix only.

## Required checks

Run after applying:

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

## Manual regression cases

- `welche grenzwerte kann der testomat testomat cal messen`
  - Must not answer with Testomat 808 indicator/range mappings.
  - If CAL-specific TH mappings are present in the retrieved sources, use them.
  - If not present, say that the exact CAL mapping is not available in the provided sources.

- `ich würde gern chlor im schwinnbad messen`
  - May use shop results for products that explicitly support chlorine measurement.
  - Must not claim Schwimmbad/Pool suitability unless the same source record explicitly states it.
