This commit is contained in:
team 1
2026-05-05 14:17:54 +02:00
parent 913616a3df
commit 10a3a09a63
5 changed files with 469 additions and 120 deletions

View File

@@ -0,0 +1,53 @@
# RetrieX Patch 43C - Generic Reference Anchor Extractor
## Goal
Continue the p43 reduction work with a small, low-risk PHP cleanup:
- move follow-up reference anchor extraction out of `AgentRunner`
- keep the behavior generic (`product_model` + `measurement_value`) instead of Testomat/hardness-specific naming
- remove legacy fallback accessors for `testomat_model_pattern` and `hardness_value_pattern`
- keep the current configured regex values unchanged
## Changed files
- `src/Agent/ReferenceAnchorExtractor.php` added
- `src/Agent/AgentRunner.php` delegates reference anchor extraction to the new extractor
- `src/Config/AgentRunnerConfig.php` now requires the generic keys directly:
- `follow_up_context.reference_anchor.product_model_pattern`
- `follow_up_context.reference_anchor.measurement_value_pattern`
## Not changed
- no YAML values changed
- no ranking logic changed
- no prompt rules changed
- no shop search scoring changed
- no new hardcoded product or phrase lists in PHP
- no admin UI
## Expected effect
Runtime behavior should remain the same. The patch only reduces responsibility inside `AgentRunner` and removes old Testomat/hardness-specific compatibility naming now that the generic YAML keys are already present and p43A2 is green.
## Required checks 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
```
## Local checks performed while building this patch
```bash
php -l src/Agent/ReferenceAnchorExtractor.php
php -l src/Agent/AgentRunner.php
php -l src/Config/AgentRunnerConfig.php
php -l src/Commerce/ProductRoleResolver.php
php -l src/Commerce/ShopSearchService.php
php -l src/Agent/PromptBuilder.php
```
YAML parse check for all files in `config/retriex/*.yaml` also passed.