Add comprehensive tests for query parsing and Reciprocal Rank Fusion

- Implemented tests for the QueryParser class, covering various identifier splitting methods (CamelCase, snake_case, kebab-case), OR expansion, and FTS5 operator preservation.
- Added parameterized tests to validate expected token outputs for different query formats.
- Created edge case tests to ensure robustness against unusual input scenarios.
- Developed tests for the Reciprocal Rank Fusion (RRF) algorithm, including score computation, weight handling, and result ranking across multiple sources.
- Included tests for normalization of BM25 scores and tagging search results with source metadata.
This commit is contained in:
catlog22
2025-12-16 10:20:19 +08:00
parent 35485bbbb1
commit 3da0ef2adb
39 changed files with 6171 additions and 240 deletions

View File

@@ -187,7 +187,7 @@ Task(subagent_type="ui-design-agent",
CONTEXT: @**/*.css @**/*.scss @**/*.js @**/*.ts
EXPECTED: JSON report listing conflicts with file:line, values, semantic context
RULES: Focus on core tokens | Report ALL variants | analysis=READ-ONLY
\" --tool gemini --cd ${source}
\" --tool gemini --mode analysis --cd ${source}
\`\`\`
**Step 1: Load file list**
@@ -302,7 +302,7 @@ Task(subagent_type="ui-design-agent",
CONTEXT: @**/*.css @**/*.scss @**/*.js @**/*.ts
EXPECTED: JSON report listing frameworks, animation types, file locations
RULES: Focus on framework consistency | Map all animations | analysis=READ-ONLY
\" --tool gemini --cd ${source}
\" --tool gemini --mode analysis --cd ${source}
\`\`\`
**Step 1: Load file list**
@@ -381,7 +381,7 @@ Task(subagent_type="ui-design-agent",
CONTEXT: @**/*.css @**/*.scss @**/*.js @**/*.ts @**/*.html
EXPECTED: JSON report categorizing components, layout patterns, naming conventions
RULES: Focus on component reusability | Identify layout systems | analysis=READ-ONLY
\" --tool gemini --cd ${source}
\" --tool gemini --mode analysis --cd ${source}
\`\`\`
**Step 1: Load file list**