mirror of
https://github.com/catlog22/Claude-Code-Workflow.git
synced 2026-02-13 02:41:50 +08:00
Wire FlowExecutor into orchestrator routes for actual flow execution with
pause/resume/stop lifecycle management. Add CLI session audit system with
audit-routes backend and Observability tab in IssueHub frontend. Introduce
cli-session-mux for cross-workspace session routing and QueueSendToOrchestrator
UI component. Normalize frontend API response handling for { data: ... }
wrapper format and propagate projectPath through flow hooks.
In codex-lens, add per-server opened-document cache in StandaloneLspManager
to avoid redundant didOpen notifications (using didChange for updates), and
skip warmup delay for already-warmed LSP server instances in ChainSearchEngine.
467 lines
20 KiB
JSON
467 lines
20 KiB
JSON
{
|
|
"summary": {
|
|
"timestamp": "2026-02-11 15:16:08",
|
|
"source": "codex-lens\\src",
|
|
"k": 10,
|
|
"coarse_k": 100,
|
|
"query_count": 7,
|
|
"avg_jaccard_topk": 0.11350467619264612,
|
|
"avg_rbo_topk": 0.09062624799510204,
|
|
"staged": {
|
|
"success": 7,
|
|
"avg_latency_ms": 4507.475014303412
|
|
},
|
|
"dense_rerank": {
|
|
"success": 7,
|
|
"avg_latency_ms": 2537.8563000304357
|
|
}
|
|
},
|
|
"comparisons": [
|
|
{
|
|
"query": "class Config",
|
|
"staged": {
|
|
"strategy": "staged",
|
|
"query": "class Config",
|
|
"latency_ms": 2474.800100028515,
|
|
"num_results": 10,
|
|
"topk_paths": [
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\path_mapper.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\api\\references.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\index_tree.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\api\\semantic.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\lsp\\server.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\parsers\\factory.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\__init__.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\cli\\commands.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\chain_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\watcher\\file_watcher.py"
|
|
],
|
|
"stage_stats": {
|
|
"stage_times": {
|
|
"stage1_binary_ms": 91.76826477050781,
|
|
"stage1_fallback_search_ms": 162.45269775390625,
|
|
"stage2_expand_ms": 14.957904815673828,
|
|
"stage3_cluster_ms": 0.8461475372314453,
|
|
"stage4_rerank_ms": 2129.7342777252197
|
|
},
|
|
"stage_counts": {
|
|
"stage1_candidates": 37,
|
|
"stage1_fallback_used": 1,
|
|
"stage2_expanded": 86,
|
|
"stage2_unique_paths": 53,
|
|
"stage2_duplicate_paths": 33,
|
|
"stage3_clustered": 20,
|
|
"stage3_strategy": "dir_rr",
|
|
"stage4_reranked": 20
|
|
}
|
|
},
|
|
"error": null
|
|
},
|
|
"dense_rerank": {
|
|
"strategy": "dense_rerank",
|
|
"query": "class Config",
|
|
"latency_ms": 2425.3046000003815,
|
|
"num_results": 10,
|
|
"topk_paths": [
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\cli\\commands.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\dir_index.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\chunker.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\vector_store.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\query_parser.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\code_extractor.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\cli\\embedding_manager.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\migration_manager.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\registry.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\sqlite_store.py"
|
|
],
|
|
"stage_stats": null,
|
|
"error": null
|
|
},
|
|
"jaccard_topk": 0.05263157894736842,
|
|
"rbo_topk": 0.014635885139999999,
|
|
"staged_unique_files_topk": 10,
|
|
"dense_unique_files_topk": 10,
|
|
"staged_unique_dirs_topk": 8,
|
|
"dense_unique_dirs_topk": 4
|
|
},
|
|
{
|
|
"query": "def search",
|
|
"staged": {
|
|
"strategy": "staged",
|
|
"query": "def search",
|
|
"latency_ms": 5389.070900022984,
|
|
"num_results": 3,
|
|
"topk_paths": [
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\cli\\commands.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\entities.py"
|
|
],
|
|
"stage_stats": {
|
|
"stage_times": {
|
|
"stage1_binary_ms": 63.6446475982666,
|
|
"stage2_expand_ms": 3202.108144760132,
|
|
"stage3_cluster_ms": 0.0007152557373046875,
|
|
"stage4_rerank_ms": 2011.8708610534668
|
|
},
|
|
"stage_counts": {
|
|
"stage1_candidates": 3,
|
|
"stage2_expanded": 4,
|
|
"stage2_unique_paths": 3,
|
|
"stage2_duplicate_paths": 1,
|
|
"stage3_clustered": 4,
|
|
"stage3_strategy": "dir_rr",
|
|
"stage4_reranked": 4
|
|
}
|
|
},
|
|
"error": null
|
|
},
|
|
"dense_rerank": {
|
|
"strategy": "dense_rerank",
|
|
"query": "def search",
|
|
"latency_ms": 2465.9148000478745,
|
|
"num_results": 10,
|
|
"topk_paths": [
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\cli\\commands.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\query_parser.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\vector_store.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\hybrid_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\index_tree.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\registry.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\dir_index.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\code_extractor.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\chain_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\chunker.py"
|
|
],
|
|
"stage_stats": null,
|
|
"error": null
|
|
},
|
|
"jaccard_topk": 0.09090909090909091,
|
|
"rbo_topk": 0.23541639942571424,
|
|
"staged_unique_files_topk": 2,
|
|
"dense_unique_files_topk": 10,
|
|
"staged_unique_dirs_topk": 2,
|
|
"dense_unique_dirs_topk": 4
|
|
},
|
|
{
|
|
"query": "LspBridge",
|
|
"staged": {
|
|
"strategy": "staged",
|
|
"query": "LspBridge",
|
|
"latency_ms": 4989.407700002193,
|
|
"num_results": 7,
|
|
"topk_paths": [
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\hybrid_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\lsp\\keepalive_bridge.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\chain_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\lsp\\lsp_bridge.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\lsp\\lsp_graph_builder.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\lsp\\__init__.py"
|
|
],
|
|
"stage_stats": {
|
|
"stage_times": {
|
|
"stage1_binary_ms": 88.54341506958008,
|
|
"stage1_fallback_search_ms": 125.9164810180664,
|
|
"stage2_expand_ms": 2063.6398792266846,
|
|
"stage3_cluster_ms": 0.3476142883300781,
|
|
"stage4_rerank_ms": 2633.7506771087646
|
|
},
|
|
"stage_counts": {
|
|
"stage1_candidates": 5,
|
|
"stage1_fallback_used": 1,
|
|
"stage2_expanded": 31,
|
|
"stage2_unique_paths": 11,
|
|
"stage2_duplicate_paths": 20,
|
|
"stage3_clustered": 20,
|
|
"stage3_strategy": "dir_rr",
|
|
"stage4_reranked": 20
|
|
}
|
|
},
|
|
"error": null
|
|
},
|
|
"dense_rerank": {
|
|
"strategy": "dense_rerank",
|
|
"query": "LspBridge",
|
|
"latency_ms": 2424.8579000234604,
|
|
"num_results": 10,
|
|
"topk_paths": [
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\cli\\commands.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\vector_meta_store.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\graph_expander.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\registry.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\hybrid_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\dir_index.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\index_tree.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\sqlite_store.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\code_extractor.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\chunker.py"
|
|
],
|
|
"stage_stats": null,
|
|
"error": null
|
|
},
|
|
"jaccard_topk": 0.06666666666666667,
|
|
"rbo_topk": 0.045191399425714276,
|
|
"staged_unique_files_topk": 6,
|
|
"dense_unique_files_topk": 10,
|
|
"staged_unique_dirs_topk": 2,
|
|
"dense_unique_dirs_topk": 4
|
|
},
|
|
{
|
|
"query": "graph expansion",
|
|
"staged": {
|
|
"strategy": "staged",
|
|
"query": "graph expansion",
|
|
"latency_ms": 4771.1614000201225,
|
|
"num_results": 10,
|
|
"topk_paths": [
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\migrations\\migration_007_add_graph_neighbors.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\dir_index.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\lsp\\lsp_graph_builder.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\ann_index.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\config.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\cli\\commands.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\graph_expander.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\hybrid_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\enrichment.py"
|
|
],
|
|
"stage_stats": {
|
|
"stage_times": {
|
|
"stage1_binary_ms": 61.426401138305664,
|
|
"stage1_fallback_search_ms": 152.01711654663086,
|
|
"stage2_expand_ms": 2078.4833431243896,
|
|
"stage3_cluster_ms": 0.0007152557373046875,
|
|
"stage4_rerank_ms": 2376.2998580932617
|
|
},
|
|
"stage_counts": {
|
|
"stage1_candidates": 11,
|
|
"stage1_fallback_used": 1,
|
|
"stage2_expanded": 16,
|
|
"stage2_unique_paths": 13,
|
|
"stage2_duplicate_paths": 3,
|
|
"stage3_clustered": 16,
|
|
"stage3_strategy": "dir_rr",
|
|
"stage4_reranked": 16
|
|
}
|
|
},
|
|
"error": null
|
|
},
|
|
"dense_rerank": {
|
|
"strategy": "dense_rerank",
|
|
"query": "graph expansion",
|
|
"latency_ms": 2418.981700003147,
|
|
"num_results": 10,
|
|
"topk_paths": [
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\index_tree.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\migration_manager.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\hybrid_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\chain_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\global_index.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\dir_index.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\registry.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\cli\\commands.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\sqlite_store.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\vector_store.py"
|
|
],
|
|
"stage_stats": null,
|
|
"error": null
|
|
},
|
|
"jaccard_topk": 0.1875,
|
|
"rbo_topk": 0.06134116970571428,
|
|
"staged_unique_files_topk": 9,
|
|
"dense_unique_files_topk": 10,
|
|
"staged_unique_dirs_topk": 7,
|
|
"dense_unique_dirs_topk": 4
|
|
},
|
|
{
|
|
"query": "clustering strategy",
|
|
"staged": {
|
|
"strategy": "staged",
|
|
"query": "clustering strategy",
|
|
"latency_ms": 4559.269900023937,
|
|
"num_results": 10,
|
|
"topk_paths": [
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\config.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\__init__.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\chain_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\clustering\\noop_strategy.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\clustering\\dbscan_strategy.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\clustering\\base.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\clustering\\hdbscan_strategy.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\clustering\\frequency_strategy.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\clustering\\factory.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\clustering\\__init__.py"
|
|
],
|
|
"stage_stats": {
|
|
"stage_times": {
|
|
"stage1_binary_ms": 60.93573570251465,
|
|
"stage1_fallback_search_ms": 141.4163112640381,
|
|
"stage2_expand_ms": 2032.2721004486084,
|
|
"stage3_cluster_ms": 0.0007152557373046875,
|
|
"stage4_rerank_ms": 2217.2317504882812
|
|
},
|
|
"stage_counts": {
|
|
"stage1_candidates": 10,
|
|
"stage1_fallback_used": 1,
|
|
"stage2_expanded": 10,
|
|
"stage2_unique_paths": 10,
|
|
"stage2_duplicate_paths": 0,
|
|
"stage3_clustered": 10,
|
|
"stage3_strategy": "dir_rr",
|
|
"stage4_reranked": 10
|
|
}
|
|
},
|
|
"error": null
|
|
},
|
|
"dense_rerank": {
|
|
"strategy": "dense_rerank",
|
|
"query": "clustering strategy",
|
|
"latency_ms": 2443.3700000047684,
|
|
"num_results": 10,
|
|
"topk_paths": [
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\cli\\commands.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\index_tree.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\hybrid_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\code_extractor.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\vector_store.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\__init__.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\gpu_support.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\chain_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\enrichment.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\chunker.py"
|
|
],
|
|
"stage_stats": null,
|
|
"error": null
|
|
},
|
|
"jaccard_topk": 0.1111111111111111,
|
|
"rbo_topk": 0.04670528456571428,
|
|
"staged_unique_files_topk": 10,
|
|
"dense_unique_files_topk": 10,
|
|
"staged_unique_dirs_topk": 3,
|
|
"dense_unique_dirs_topk": 4
|
|
},
|
|
{
|
|
"query": "error handling",
|
|
"staged": {
|
|
"strategy": "staged",
|
|
"query": "error handling",
|
|
"latency_ms": 4757.269500017166,
|
|
"num_results": 6,
|
|
"topk_paths": [
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\lsp\\lsp_bridge.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\gpu_support.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\rotational_embedder.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\watcher\\manager.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\cli\\commands.py"
|
|
],
|
|
"stage_stats": {
|
|
"stage_times": {
|
|
"stage1_binary_ms": 89.56503868103027,
|
|
"stage1_fallback_search_ms": 143.58854293823242,
|
|
"stage2_expand_ms": 2119.623899459839,
|
|
"stage3_cluster_ms": 0.0007152557373046875,
|
|
"stage4_rerank_ms": 2303.9650917053223
|
|
},
|
|
"stage_counts": {
|
|
"stage1_candidates": 5,
|
|
"stage1_fallback_used": 1,
|
|
"stage2_expanded": 13,
|
|
"stage2_unique_paths": 6,
|
|
"stage2_duplicate_paths": 7,
|
|
"stage3_clustered": 13,
|
|
"stage3_strategy": "dir_rr",
|
|
"stage4_reranked": 13
|
|
}
|
|
},
|
|
"error": null
|
|
},
|
|
"dense_rerank": {
|
|
"strategy": "dense_rerank",
|
|
"query": "error handling",
|
|
"latency_ms": 2431.0521000623703,
|
|
"num_results": 10,
|
|
"topk_paths": [
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\__init__.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\registry.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\hybrid_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\cli\\commands.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\index_tree.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\dir_index.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\chain_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\chunker.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\code_extractor.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\cli\\embedding_manager.py"
|
|
],
|
|
"stage_stats": null,
|
|
"error": null
|
|
},
|
|
"jaccard_topk": 0.07142857142857142,
|
|
"rbo_topk": 0.045191399425714276,
|
|
"staged_unique_files_topk": 5,
|
|
"dense_unique_files_topk": 10,
|
|
"staged_unique_dirs_topk": 4,
|
|
"dense_unique_dirs_topk": 4
|
|
},
|
|
{
|
|
"query": "how to parse json",
|
|
"staged": {
|
|
"strategy": "staged",
|
|
"query": "how to parse json",
|
|
"latency_ms": 4611.3456000089645,
|
|
"num_results": 7,
|
|
"topk_paths": [
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\lsp\\standalone_manager.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\hybrid_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\chain_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\cli\\commands.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\parsers\\factory.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\indexing\\symbol_extractor.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\parsers\\treesitter_parser.py"
|
|
],
|
|
"stage_stats": {
|
|
"stage_times": {
|
|
"stage1_binary_ms": 74.86128807067871,
|
|
"stage1_fallback_search_ms": 137.465238571167,
|
|
"stage2_expand_ms": 2086.426019668579,
|
|
"stage3_cluster_ms": 0.00095367431640625,
|
|
"stage4_rerank_ms": 2218.2157039642334
|
|
},
|
|
"stage_counts": {
|
|
"stage1_candidates": 4,
|
|
"stage1_fallback_used": 1,
|
|
"stage2_expanded": 9,
|
|
"stage2_unique_paths": 7,
|
|
"stage2_duplicate_paths": 2,
|
|
"stage3_clustered": 9,
|
|
"stage3_strategy": "dir_rr",
|
|
"stage4_reranked": 9
|
|
}
|
|
},
|
|
"error": null
|
|
},
|
|
"dense_rerank": {
|
|
"strategy": "dense_rerank",
|
|
"query": "how to parse json",
|
|
"latency_ms": 3155.5130000710487,
|
|
"num_results": 10,
|
|
"topk_paths": [
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\cli\\commands.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\chain_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\index_tree.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\code_extractor.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\dir_index.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\hybrid_search.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\search\\ranking.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\chunker.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\storage\\sqlite_store.py",
|
|
"d:\\claude_dms3\\codex-lens\\src\\codexlens\\semantic\\ann_index.py"
|
|
],
|
|
"stage_stats": null,
|
|
"error": null
|
|
},
|
|
"jaccard_topk": 0.21428571428571427,
|
|
"rbo_topk": 0.18590219827714285,
|
|
"staged_unique_files_topk": 7,
|
|
"dense_unique_files_topk": 10,
|
|
"staged_unique_dirs_topk": 5,
|
|
"dense_unique_dirs_topk": 4
|
|
}
|
|
]
|
|
} |