# RetrieX Patch 20n - Deterministic Standalone Shop Query Fix

## Purpose
Fixes the persistent context leak where a new standalone shop query such as:

`zeige mir Anschlusskabel für pH/Redox`

was incorrectly sent to the shop as:

`testomat 808 indikator`

## Root cause
The issue was not the shop router itself. The route was already commerce/shop. The unsafe part was that standalone shop queries could still pass through the LLM shop-query optimizer. If the optimizer or later query handling revived previous conversation context, an old Testomat/Indikator topic could become the sent Shopware query even though the current prompt had no overlap with it.

## Fix
For non-referential standalone shop queries with no allowed shop-query history context:

- Skip the LLM shop-query optimizer.
- Use the normalized/current prompt deterministically as the shop search source.
- Let `ShopSearchService` / `CommerceQueryParser` build the final Store API search text from the current prompt only.
- Keep LLM/history optimization enabled for referential follow-ups such as `die tabelle mit preisen` or `was kostet der indikator`.

## Changed file

- `src/Agent/AgentRunner.php`

## Expected behavior

### Standalone shop query
Input:

`zeige mir Anschlusskabel für pH/Redox`

Expected sent query:

`anschlusskabel ph redox` or equivalent current-prompt-only query.

Must not become:

`testomat 808 indikator`

### Explicit product query
Input:

`shop testomat 808`

Expected sent query:

`testomat 808`

### Referential follow-up
Input after a Testomat 808 indicator table:

`die tabelle mit preisen`

Expected behavior:

History is still allowed and may resolve to `testomat 808 indikator`.

## Checks to run after applying

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

If OPcache/PHP-FPM is active, reload PHP-FPM or the container after applying.
