Orchestrata Ultimate / RTM / 072-tool-search-tool

RTM: 072-tool-search-tool

Requirement to symbol to test rows for 072-tool-search-tool: ToolSearchTool Specification.

At a glance

Item Value
Requirement IDs 40
Traced from src/ 40 (100.0%)
Untraced 0
Cited from tests/ 0 (0.0%)
Traced in src/ but not cited from tests/ 40

Reading this matrix

This matrix lists each of the 40 requirement IDs of spec 072-tool-search-tool with the src/ symbols that cite it and the tests that cite it. 40 of them (100.0%) have at least one citing symbol and 0 have none.

0 requirements are also cited from tests/, and 40 are traced in code but never named by a test. A test citation is a @traces on a test function; it shows intent to cover, not that the test runs or reaches the symbol.

Every row has at least one citing symbol; the remaining work is on the test column.

Requirement to symbols to tests

Requirement Symbols in src/ Tests citing it
REQ-072-001 The tool SHALL accept a natural language query string and return relevant tools orchestrata_ultimate/tools/search SearchQuery L213
orchestrata_ultimate/tools/search ToolSearchEngine L1196
orchestrata_ultimate/tools/search ToolSearchTool L1475
+3 more
none
REQ-072-005 The tool SHALL return a relevance score (0-1) for each search result orchestrata_ultimate/tools/search MatchScore L319
orchestrata_ultimate/tools/search RelevanceRanker L831
orchestrata_ultimate/tools/search SearchResponse L349
+5 more
none
REQ-072-008 The tool SHALL support semantic similarity matching using embeddings orchestrata_ultimate/tools/search MatchStrategy L580
orchestrata_ultimate/tools/search SemanticMatchStrategy L644
orchestrata_ultimate/tools/search available L660
+2 more
none
REQ-072-009 The tool SHALL support exact keyword matching as fallback orchestrata_ultimate/tools/search KeywordMatchStrategy L680
orchestrata_ultimate/tools/search MatchStrategy L580
orchestrata_ultimate/tools/search ToolSearchEngine L1196
+9 more
none
REQ-072-011 The tool SHALL maintain an in-memory index of all registered tools orchestrata_ultimate/agents/tool_registry build_tool_registry L2035
orchestrata_ultimate/tools/search ToolIndex L916
orchestrata_ultimate/tools/search ToolIndexEntry L267
+2 more
none
REQ-072-012 The tool SHALL support index updates when tools are registered/updated orchestrata_ultimate/tools/search ToolIndex L916
orchestrata_ultimate/tools/search from_metadata L286
orchestrata_ultimate/tools/search remove L1006
+1 more
none
REQ-072-013 The tool SHALL support index rebuild on startup orchestrata_ultimate/tools/search ToolIndex L916
orchestrata_ultimate/tools/search ToolSearchTool L1475
orchestrata_ultimate/tools/search create L1538
+2 more
none
REQ-072-014 The tool SHALL persist index state to disk for fast recovery orchestrata_ultimate/tools/search ToolIndex L916
orchestrata_ultimate/tools/search load L1051
orchestrata_ultimate/tools/search save L1043
none
REQ-072-015 The tool SHALL support incremental index updates orchestrata_ultimate/tools/search ToolIndex L916
orchestrata_ultimate/tools/search sync L960
none
REQ-072-021 Search queries SHALL complete within 100ms for 95th percentile orchestrata_ultimate/tools/search ToolSearchEngine L1196
orchestrata_ultimate/tools/search search L1236
none
REQ-072-022 The tool SHALL support concurrent search requests orchestrata_ultimate/tools/search ToolIndex L916
orchestrata_ultimate/tools/search ToolSearchEngine L1196
orchestrata_ultimate/tools/search entries L1017
+1 more
none
REQ-072-023 Index size SHALL support at least 10,000 tools orchestrata_ultimate/tools/search ToolIndex L916 none
REQ-072-007 The tool SHALL support faceted search with category/tag counts orchestrata_ultimate/tools/search FacetCount L340
orchestrata_ultimate/tools/search SearchResponse L349
orchestrata_ultimate/tools/search ToolSearchEngine L1196
+3 more
none
REQ-072-003 The tool SHALL support filtering by category, tags, return type, and author orchestrata_ultimate/tools/search QueryValidator L460
orchestrata_ultimate/tools/search SearchFilters L189
orchestrata_ultimate/tools/search ToolSearchEngine L1196
+2 more
none
REQ-072-004 The tool SHALL support pagination with limit and offset parameters orchestrata_ultimate/tools/search QueryValidator L460
orchestrata_ultimate/tools/search SearchOptions L201
orchestrata_ultimate/tools/search SearchResponse L349
+4 more
none
REQ-072-101 INVALID_QUERY — query blank or exceeds max length → 400 validation message orchestrata_ultimate/tools/search QueryValidator L460
orchestrata_ultimate/tools/search SearchErrorCode L120
orchestrata_ultimate/tools/search ToolSearchError L160
+3 more
none
REQ-072-102 INVALID_FILTER — filter parameter malformed/invalid → 400 field error orchestrata_ultimate/tools/search QueryValidator L460
orchestrata_ultimate/tools/search SearchErrorCode L120
orchestrata_ultimate/tools/search from_arguments L222
+1 more
none
REQ-072-103 INVALID_PAGINATION — limit/offset out of range → 400 valid range orchestrata_ultimate/tools/search QueryValidator L460
orchestrata_ultimate/tools/search SearchErrorCode L120
orchestrata_ultimate/tools/search validate L487
none
REQ-072-104 INDEX_NOT_READY — search index not initialized → 503 retry-after orchestrata_ultimate/tools/search SearchErrorCode L120
orchestrata_ultimate/tools/search ready L1023
orchestrata_ultimate/tools/search search L1236
none
REQ-072-105 INDEX_CORRUPTED — index data corrupted → 500, trigger rebuild orchestrata_ultimate/tools/search SearchErrorCode L120
orchestrata_ultimate/tools/search load L1051
none
REQ-072-106 TOOL_NOT_FOUND — referenced tool does not exist → 404 orchestrata_ultimate/tools/search SearchErrorCode L120 none
REQ-072-107 CACHE_ERROR — cache operation failed → log, continue without cache orchestrata_ultimate/tools/search SearchErrorCode L120
orchestrata_ultimate/tools/search get L1127
none
REQ-072-108 EMBEDDING_SERVICE_ERROR — embedding service unavailable → fall back to keyword search orchestrata_ultimate/tools/search SearchErrorCode L120
orchestrata_ultimate/tools/search SemanticMatchStrategy L644
orchestrata_ultimate/tools/search available L660
+1 more
none
REQ-072-109 RATE_LIMIT_EXCEEDED — too many search requests → 429 retry-after (governance seam) orchestrata_ultimate/tools/search SearchErrorCode L120 none
REQ-072-110 PERMISSION_DENIED — user lacks search permission → 403 (governance seam) orchestrata_ultimate/tools/search SearchErrorCode L120 none
REQ-072-111 INVALID_SORT_OPTION — sort parameter not recognized → 400 valid options orchestrata_ultimate/tools/search QueryValidator L460
orchestrata_ultimate/tools/search SearchErrorCode L120
orchestrata_ultimate/tools/search ToolSearchError L160
+2 more
none
REQ-072-112 TIMEOUT — search timed out → 504 with partial results if available orchestrata_ultimate/tools/search SearchErrorCode L120
orchestrata_ultimate/tools/search search L1236
none
REQ-072-201 SHALL sanitize all query inputs to prevent injection attacks orchestrata_ultimate/tools/search QueryValidator L460
orchestrata_ultimate/tools/search sanitize L563
none
REQ-072-202 SHALL validate query length (max 500 characters) orchestrata_ultimate/tools/search QueryValidator L460
orchestrata_ultimate/tools/search validate L487
none
REQ-072-203 SHALL escape special characters in search queries orchestrata_ultimate/tools/search QueryValidator L460
orchestrata_ultimate/tools/search sanitize L563
none
REQ-072-204 SHALL validate all filter parameters against allowed values orchestrata_ultimate/tools/search QueryValidator L460
orchestrata_ultimate/tools/search validate L487
none
REQ-072-002 The tool SHALL support fuzzy matching for typos in queries orchestrata_ultimate/tools/search FuzzyMatchStrategy L766
orchestrata_ultimate/tools/search MatchStrategy L580
orchestrata_ultimate/tools/search SearchOptions L201
+4 more
none
REQ-072-010 The tool SHALL support compound queries with AND/OR operators orchestrata_ultimate/tools/search ParsedQuery L400
orchestrata_ultimate/tools/search QueryParser L410
orchestrata_ultimate/tools/search parse L421
+1 more
none
REQ-072-024 Search SHALL support wildcard prefixes (e.g., "http*") orchestrata_ultimate/tools/search KeywordMatchStrategy L680
orchestrata_ultimate/tools/search ParsedQuery L400
orchestrata_ultimate/tools/search QueryParser L410
+8 more
none
REQ-072-006 The tool SHALL provide search suggestions based on partial input orchestrata_ultimate/tools/search SearchResponse L349
orchestrata_ultimate/tools/search ToolSearchEngine L1196
orchestrata_ultimate/tools/search _record_history L1464
+3 more
none
REQ-072-016 The tool SHALL cache search results with configurable TTL orchestrata_ultimate/tools/search SearchCache L1080
orchestrata_ultimate/tools/search key_for L1104
orchestrata_ultimate/tools/search put L1136
none
REQ-072-017 The tool SHALL invalidate cache entries when tools are updated orchestrata_ultimate/tools/search SearchCache L1080
orchestrata_ultimate/tools/search clear L1154
orchestrata_ultimate/tools/search invalidate_tool L1147
none
REQ-072-018 The tool SHALL support cache invalidation by tool_id orchestrata_ultimate/tools/search SearchCache L1080
orchestrata_ultimate/tools/search invalidate_tool L1147
none
REQ-072-019 The tool SHALL support cache warming on startup orchestrata_ultimate/tools/search SearchCache L1080
orchestrata_ultimate/tools/search ToolSearchTool L1475
orchestrata_ultimate/tools/search create L1538
+1 more
none
REQ-072-020 The tool SHALL support cache statistics reporting orchestrata_ultimate/tools/search SearchCache L1080
orchestrata_ultimate/tools/search stats L1187
none