# RetrieX Patch 11.0a - Strict YAML Default Cleanup

This patch removes the remaining model-generation constructor defaults and cleans up two CommerceQueryParser audit false positives.

## Scope

Changed files:

- `src/Config/ModelGenerationDefaultsConfig.php`
- `src/Config/CommerceQueryParserConfig.php`

## What changed

### ModelGenerationDefaultsConfig

The constructor no longer contains PHP fallback values for model defaults. All values must now come from the existing Symfony service parameters, which are backed by `config/retriex/model.yaml`:

- `retriex.model.default_name`
- `retriex.model.default_stream`
- `retriex.model.default_temperature`
- `retriex.model.default_top_k`
- `retriex.model.default_top_p`
- `retriex.model.default_repeat_penalty`
- `retriex.model.default_num_ctx`
- `retriex.model.default_retrieval_max_chunks`
- `retriex.model.default_retrieval_vector_top_k`

### CommerceQueryParserConfig

The whitespace-preserving normalization lists now use a dedicated helper instead of passing `true` as a second argument to `stringList()`. This keeps behavior unchanged, but prevents the source audit from interpreting the boolean argument as a PHP fallback.

## Intentional non-changes

No retrieval, prompt, shop, agent, SSE, or runtime behavior was changed.

## Recommended validation

```bash
php bin/console cache:clear
php bin/console mto:agent:config:validate
php bin/console mto:agent:config:audit-source --details
php bin/console mto:agent:regression:test
```
