Skip to content

Commit f79bd0c

Browse files
authored
Merge pull request #22 from royisme/copilot/sub-pr-21
Fix import paths for reorganized services subpackage structure
2 parents 3465013 + f94e642 commit f79bd0c

15 files changed

Lines changed: 34 additions & 115 deletions

File tree

src/codebase_rag/api/memory_routes.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,7 @@
1111
from pydantic import BaseModel, Field
1212
from typing import Optional, List, Dict, Any, Literal
1313

14-
from codebase_rag.services.memory_store import memory_store
15-
from codebase_rag.services.memory_extractor import memory_extractor
14+
from codebase_rag.services.memory import memory_store, memory_extractor
1615
from loguru import logger
1716

1817

src/codebase_rag/api/neo4j_routes.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import tempfile
99
import os
1010

11-
from codebase_rag.services.neo4j_knowledge_service import neo4j_knowledge_service
11+
from codebase_rag.services.knowledge import neo4j_knowledge_service
1212

1313
router = APIRouter(prefix="/neo4j-knowledge", tags=["Neo4j Knowledge Graph"])
1414

src/codebase_rag/api/routes.py

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,11 @@
55
import uuid
66
from datetime import datetime
77

8-
from codebase_rag.services.sql_parser import sql_analyzer
9-
from codebase_rag.services.graph_service import graph_service
10-
from codebase_rag.services.neo4j_knowledge_service import Neo4jKnowledgeService
11-
from codebase_rag.services.universal_sql_schema_parser import parse_sql_schema_smart
12-
from codebase_rag.services.task_queue import task_queue
13-
from codebase_rag.services.code_ingestor import get_code_ingestor
14-
from codebase_rag.services.git_utils import git_utils
15-
from codebase_rag.services.ranker import ranker
16-
from codebase_rag.services.pack_builder import pack_builder
17-
from codebase_rag.services.metrics import metrics_service
8+
from codebase_rag.services.sql import sql_analyzer, parse_sql_schema_smart
9+
from codebase_rag.services.code import graph_service, get_code_ingestor, pack_builder
10+
from codebase_rag.services.knowledge import Neo4jKnowledgeService
11+
from codebase_rag.services.tasks import task_queue
12+
from codebase_rag.services.utils import git_utils, ranker, metrics_service
1813
from codebase_rag.config import settings
1914
from loguru import logger
2015

src/codebase_rag/api/sse_routes.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
from fastapi.responses import StreamingResponse
1010
from loguru import logger
1111

12-
from codebase_rag.services.task_queue import task_queue, TaskStatus
12+
from codebase_rag.services.tasks import task_queue, TaskStatus
1313

1414
router = APIRouter(prefix="/sse", tags=["SSE"])
1515

src/codebase_rag/api/task_routes.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@
99
from pydantic import BaseModel
1010
from datetime import datetime
1111

12-
from codebase_rag.services.task_queue import task_queue, TaskStatus
13-
from codebase_rag.services.task_storage import TaskType
12+
from codebase_rag.services.tasks import task_queue, TaskStatus, TaskType
1413
from loguru import logger
1514
from codebase_rag.config import settings
1615

src/codebase_rag/api/websocket_routes.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
import json
1010
from loguru import logger
1111

12-
from codebase_rag.services.task_queue import task_queue
12+
from codebase_rag.services.tasks import task_queue
1313

1414
router = APIRouter()
1515

src/codebase_rag/core/lifespan.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,9 @@
66
from fastapi import FastAPI
77
from loguru import logger
88

9-
from codebase_rag.services.neo4j_knowledge_service import neo4j_knowledge_service
10-
from codebase_rag.services.task_queue import task_queue
11-
from codebase_rag.services.task_processors import processor_registry
12-
from codebase_rag.services.memory_store import memory_store
9+
from codebase_rag.services.knowledge import neo4j_knowledge_service
10+
from codebase_rag.services.tasks import task_queue, processor_registry
11+
from codebase_rag.services.memory import memory_store
1312

1413

1514
@asynccontextmanager

src/codebase_rag/mcp/server.py

Lines changed: 1 addition & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -366,84 +366,9 @@ async def main():
366366
notification_options=None,
367367
experimental_capabilities={}
368368
)
369-
370-
if search_results:
371-
ranked = ranker.rank_files(
372-
files=search_results,
373-
query=keyword,
374-
limit=10
375-
)
376-
377-
for file in ranked:
378-
all_nodes.append({
379-
"type": "file",
380-
"path": file["path"],
381-
"lang": file["lang"],
382-
"score": file["score"],
383-
"ref": ranker.generate_ref_handle(path=file["path"])
384-
})
385-
386-
# Add focus files with high priority
387-
if focus_list:
388-
for focus_path in focus_list:
389-
all_nodes.append({
390-
"type": "file",
391-
"path": focus_path,
392-
"lang": "unknown",
393-
"score": 10.0, # High priority
394-
"ref": ranker.generate_ref_handle(path=focus_path)
395-
})
396-
397-
# Build context pack
398-
if ctx:
399-
await ctx.info(f"Packing {len(all_nodes)} candidate files into context...")
400-
401-
context_result = pack_builder.build_context_pack(
402-
nodes=all_nodes,
403-
budget=budget,
404-
stage=stage,
405-
repo_id=repo_id,
406-
file_limit=8,
407-
symbol_limit=12,
408-
enable_deduplication=True
369+
)
409370
)
410371

411-
# Format items
412-
items = []
413-
for item in context_result.get("items", []):
414-
items.append({
415-
"kind": item.get("kind", "file"),
416-
"title": item.get("title", "Unknown"),
417-
"summary": item.get("summary", ""),
418-
"ref": item.get("ref", ""),
419-
"extra": {
420-
"lang": item.get("extra", {}).get("lang"),
421-
"score": item.get("extra", {}).get("score", 0.0)
422-
}
423-
})
424-
425-
if ctx:
426-
await ctx.info(f"Context pack built: {len(items)} items, {context_result.get('budget_used', 0)} tokens")
427-
428-
return {
429-
"success": True,
430-
"items": items,
431-
"budget_used": context_result.get("budget_used", 0),
432-
"budget_limit": budget,
433-
"stage": stage,
434-
"repo_id": repo_id,
435-
"category_counts": context_result.get("category_counts", {})
436-
}
437-
438-
except Exception as e:
439-
error_msg = f"Context pack generation failed: {str(e)}"
440-
logger.error(error_msg)
441-
if ctx:
442-
await ctx.error(error_msg)
443-
return {
444-
"success": False,
445-
"error": error_msg
446-
}
447372

448373
# ===================================
449374
# MCP Resources
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
"""Code analysis and ingestion services."""
22

33
from codebase_rag.services.code.code_ingestor import CodeIngestor, get_code_ingestor
4-
from codebase_rag.services.code.graph_service import Neo4jGraphService
5-
from codebase_rag.services.code.pack_builder import PackBuilder
4+
from codebase_rag.services.code.graph_service import Neo4jGraphService, graph_service
5+
from codebase_rag.services.code.pack_builder import PackBuilder, pack_builder
66

7-
__all__ = ["CodeIngestor", "get_code_ingestor", "Neo4jGraphService", "PackBuilder"]
7+
__all__ = ["CodeIngestor", "get_code_ingestor", "Neo4jGraphService", "PackBuilder", "graph_service", "pack_builder"]

src/codebase_rag/services/knowledge/__init__.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
from codebase_rag.services.knowledge.neo4j_knowledge_service import (
44
Neo4jKnowledgeService,
5+
neo4j_knowledge_service,
56
)
67

7-
__all__ = ["Neo4jKnowledgeService"]
8+
__all__ = ["Neo4jKnowledgeService", "neo4j_knowledge_service"]

0 commit comments

Comments
 (0)