Skip to content

Commit 428144c

Browse files
authored
fix: move keyword routing tests to e2e framework and validate matched_keywords (#694)
* Change the test localtion to e2e/testcase and remove not needed code that was for other tests cases that not done yet. Signed-off-by: Senan Zedan <[email protected]> * Update keyword routing tests to match reference implementation Simplified from 31 to 13 tests covering core OR/AND/NOR operators. Aligned configuration with documented keyword.yaml behavior. Signed-off-by: Senan Zedan <[email protected]> * Remove accidentally committed test report files Signed-off-by: Senan Zedan <[email protected]> * Fix keyword routing: change yaml field from 'category' to 'name' CRITICAL BUG FIX: The KeywordRule struct expects yaml field 'name', but the config was using 'category'. This caused all keyword rules to be silently ignored, resulting in "no decision matched" errors. Changes: - keyword_rules: changed all instances of 'category:' to 'name:' - This allows keyword classifier to properly load and match rules Root cause: YAML unmarshaling failed silently because field names didn't match the struct tags (yaml:"name" vs category in config) Signed-off-by: Senan Zedan <[email protected]> * Fix keyword routing in values.yaml: field names and decision types CRITICAL BUG FIX: The values.yaml file is what actually gets deployed to Kubernetes via Helm, not config.yaml. Fixed both issues: 1. keyword_rules: changed 'category:' to 'name:' (3 rules) - urgent_request, sensitive_data, exclude_spam 2. decision conditions: changed type from 'domain' to 'keyword' (3 decisions) - urgent_request_decision, sensitive_data_decision, exclude_spam_decision Root cause: The config.yaml was just a reference file. The actual deployment uses values.yaml which had the same bugs - keyword rules were not being loaded at all. Signed-off-by: Senan Zedan <[email protected]> * Fix model references: change qwen3 to base-model The vllm simulator backend only provides 'base-model', not 'qwen3'. All decision modelRefs and default_model now use 'base-model' to match the available backend model. This fixes HTTP 404 errors: 'The model qwen3 does not exist' Signed-off-by: Senan Zedan <[email protected]> --------- Signed-off-by: Senan Zedan <[email protected]>
1 parent a7e8c11 commit 428144c

File tree

19 files changed

+1817
-1502
lines changed

19 files changed

+1817
-1502
lines changed

.github/workflows/integration-test-k8s.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ jobs:
2222
strategy:
2323
fail-fast: false # Continue testing other profiles even if one fails
2424
matrix:
25-
profile: [ai-gateway, aibrix]
25+
profile: [ai-gateway, aibrix, routing-strategies]
2626

2727
steps:
2828
- name: Check out the repo

.github/workflows/unit-test-e2e-testcases.yml

Lines changed: 0 additions & 322 deletions
This file was deleted.

0 commit comments

Comments
 (0)