remove refs to global memory key snippets (dead code/obsolete)

This commit is contained in:
AI Christianson 2025-03-03 07:54:37 -05:00
parent 539af1d537
commit bc9d11e6e2
6 changed files with 30 additions and 29 deletions

View File

@ -43,7 +43,9 @@ from ra_aid.config import (
VALID_PROVIDERS, VALID_PROVIDERS,
) )
from ra_aid.database.repositories.key_fact_repository import KeyFactRepository from ra_aid.database.repositories.key_fact_repository import KeyFactRepository
from ra_aid.database.repositories.key_snippet_repository import KeySnippetRepository
from ra_aid.model_formatters import format_key_facts_dict from ra_aid.model_formatters import format_key_facts_dict
from ra_aid.model_formatters.key_snippets_formatter import format_key_snippets_dict
from ra_aid.console.output import cpm from ra_aid.console.output import cpm
from ra_aid.database import ( from ra_aid.database import (
DatabaseManager, DatabaseManager,
@ -526,7 +528,7 @@ def main():
working_directory=working_directory, working_directory=working_directory,
current_date=current_date, current_date=current_date,
key_facts=format_key_facts_dict(KeyFactRepository().get_facts_dict()), key_facts=format_key_facts_dict(KeyFactRepository().get_facts_dict()),
key_snippets=get_memory_value("key_snippets"), key_snippets=format_key_snippets_dict(KeySnippetRepository().get_snippets_dict()),
project_info=formatted_project_info, project_info=formatted_project_info,
), ),
config, config,

View File

@ -85,8 +85,10 @@ from ra_aid.tool_configs import (
) )
from ra_aid.tools.handle_user_defined_test_cmd_execution import execute_test_command from ra_aid.tools.handle_user_defined_test_cmd_execution import execute_test_command
from ra_aid.database.repositories.key_fact_repository import KeyFactRepository from ra_aid.database.repositories.key_fact_repository import KeyFactRepository
from ra_aid.database.repositories.key_snippet_repository import KeySnippetRepository
from ra_aid.database.repositories.human_input_repository import HumanInputRepository from ra_aid.database.repositories.human_input_repository import HumanInputRepository
from ra_aid.model_formatters import format_key_facts_dict from ra_aid.model_formatters import format_key_facts_dict
from ra_aid.model_formatters.key_snippets_formatter import format_key_snippets_dict
from ra_aid.tools.memory import ( from ra_aid.tools.memory import (
_global_memory, _global_memory,
get_memory_value, get_memory_value,
@ -98,8 +100,9 @@ console = Console()
logger = get_logger(__name__) logger = get_logger(__name__)
# Initialize key fact repository # Initialize repositories
key_fact_repository = KeyFactRepository() key_fact_repository = KeyFactRepository()
key_snippet_repository = KeySnippetRepository()
human_input_repository = HumanInputRepository() human_input_repository = HumanInputRepository()
@ -655,7 +658,7 @@ def run_planning_agent(
research_notes=get_memory_value("research_notes"), research_notes=get_memory_value("research_notes"),
related_files="\n".join(get_related_files()), related_files="\n".join(get_related_files()),
key_facts=format_key_facts_dict(key_fact_repository.get_facts_dict()), key_facts=format_key_facts_dict(key_fact_repository.get_facts_dict()),
key_snippets=get_memory_value("key_snippets"), key_snippets=format_key_snippets_dict(key_snippet_repository.get_snippets_dict()),
work_log=get_memory_value("work_log"), work_log=get_memory_value("work_log"),
research_only_note=( research_only_note=(
"" ""
@ -757,7 +760,7 @@ def run_task_implementation_agent(
plan=plan, plan=plan,
related_files=related_files, related_files=related_files,
key_facts=format_key_facts_dict(key_fact_repository.get_facts_dict()), key_facts=format_key_facts_dict(key_fact_repository.get_facts_dict()),
key_snippets=get_memory_value("key_snippets"), key_snippets=format_key_snippets_dict(key_snippet_repository.get_snippets_dict()),
research_notes=get_memory_value("research_notes"), research_notes=get_memory_value("research_notes"),
work_log=get_memory_value("work_log"), work_log=get_memory_value("work_log"),
expert_section=EXPERT_PROMPT_SECTION_IMPLEMENTATION if expert_enabled else "", expert_section=EXPERT_PROMPT_SECTION_IMPLEMENTATION if expert_enabled else "",

View File

@ -13,8 +13,10 @@ from ra_aid.agent_context import (
) )
from ra_aid.console.formatting import print_error from ra_aid.console.formatting import print_error
from ra_aid.database.repositories.key_fact_repository import KeyFactRepository from ra_aid.database.repositories.key_fact_repository import KeyFactRepository
from ra_aid.database.repositories.key_snippet_repository import KeySnippetRepository
from ra_aid.exceptions import AgentInterrupt from ra_aid.exceptions import AgentInterrupt
from ra_aid.model_formatters import format_key_facts_dict from ra_aid.model_formatters import format_key_facts_dict
from ra_aid.model_formatters.key_snippets_formatter import format_key_snippets_dict
from ra_aid.tools.memory import _global_memory from ra_aid.tools.memory import _global_memory
from ..console import print_task_header from ..console import print_task_header
@ -30,6 +32,7 @@ RESEARCH_AGENT_RECURSION_LIMIT = 3
console = Console() console = Console()
key_fact_repository = KeyFactRepository() key_fact_repository = KeyFactRepository()
key_snippet_repository = KeySnippetRepository()
@tool("request_research") @tool("request_research")
@ -59,7 +62,7 @@ def request_research(query: str) -> ResearchResult:
"key_facts": format_key_facts_dict(key_fact_repository.get_facts_dict()), "key_facts": format_key_facts_dict(key_fact_repository.get_facts_dict()),
"related_files": get_related_files(), "related_files": get_related_files(),
"research_notes": get_memory_value("research_notes"), "research_notes": get_memory_value("research_notes"),
"key_snippets": get_memory_value("key_snippets"), "key_snippets": format_key_snippets_dict(key_snippet_repository.get_snippets_dict()),
"success": False, "success": False,
"reason": "max_depth_exceeded", "reason": "max_depth_exceeded",
} }
@ -107,7 +110,7 @@ def request_research(query: str) -> ResearchResult:
"key_facts": format_key_facts_dict(key_fact_repository.get_facts_dict()), "key_facts": format_key_facts_dict(key_fact_repository.get_facts_dict()),
"related_files": get_related_files(), "related_files": get_related_files(),
"research_notes": get_memory_value("research_notes"), "research_notes": get_memory_value("research_notes"),
"key_snippets": get_memory_value("key_snippets"), "key_snippets": format_key_snippets_dict(key_snippet_repository.get_snippets_dict()),
"success": success, "success": success,
"reason": reason, "reason": reason,
} }
@ -170,7 +173,7 @@ def request_web_research(query: str) -> ResearchResult:
response_data = { response_data = {
"completion_message": completion_message, "completion_message": completion_message,
"key_snippets": get_memory_value("key_snippets"), "key_snippets": format_key_snippets_dict(key_snippet_repository.get_snippets_dict()),
"research_notes": get_memory_value("research_notes"), "research_notes": get_memory_value("research_notes"),
"success": success, "success": success,
"reason": reason, "reason": reason,
@ -241,7 +244,7 @@ def request_research_and_implementation(query: str) -> Dict[str, Any]:
"key_facts": format_key_facts_dict(key_fact_repository.get_facts_dict()), "key_facts": format_key_facts_dict(key_fact_repository.get_facts_dict()),
"related_files": get_related_files(), "related_files": get_related_files(),
"research_notes": get_memory_value("research_notes"), "research_notes": get_memory_value("research_notes"),
"key_snippets": get_memory_value("key_snippets"), "key_snippets": format_key_snippets_dict(key_snippet_repository.get_snippets_dict()),
"success": success, "success": success,
"reason": reason, "reason": reason,
} }
@ -324,7 +327,7 @@ def request_task_implementation(task_spec: str) -> str:
response_data = { response_data = {
"key_facts": format_key_facts_dict(key_fact_repository.get_facts_dict()), "key_facts": format_key_facts_dict(key_fact_repository.get_facts_dict()),
"related_files": get_related_files(), "related_files": get_related_files(),
"key_snippets": get_memory_value("key_snippets"), "key_snippets": format_key_snippets_dict(key_snippet_repository.get_snippets_dict()),
"completion_message": completion_message, "completion_message": completion_message,
"success": success and not agent_crashed, "success": success and not agent_crashed,
"reason": reason, "reason": reason,
@ -445,7 +448,7 @@ def request_implementation(task_spec: str) -> str:
"completion_message": completion_message, "completion_message": completion_message,
"key_facts": format_key_facts_dict(key_fact_repository.get_facts_dict()), "key_facts": format_key_facts_dict(key_fact_repository.get_facts_dict()),
"related_files": get_related_files(), "related_files": get_related_files(),
"key_snippets": get_memory_value("key_snippets"), "key_snippets": format_key_snippets_dict(key_snippet_repository.get_snippets_dict()),
"success": success and not agent_crashed, "success": success and not agent_crashed,
"reason": reason, "reason": reason,
"agent_crashed": agent_crashed, "agent_crashed": agent_crashed,

View File

@ -7,13 +7,16 @@ from rich.markdown import Markdown
from rich.panel import Panel from rich.panel import Panel
from ..database.repositories.key_fact_repository import KeyFactRepository from ..database.repositories.key_fact_repository import KeyFactRepository
from ..database.repositories.key_snippet_repository import KeySnippetRepository
from ..llm import initialize_expert_llm from ..llm import initialize_expert_llm
from ..model_formatters import format_key_facts_dict from ..model_formatters import format_key_facts_dict
from ..model_formatters.key_snippets_formatter import format_key_snippets_dict
from .memory import _global_memory, get_memory_value from .memory import _global_memory, get_memory_value
console = Console() console = Console()
_model = None _model = None
key_fact_repository = KeyFactRepository() key_fact_repository = KeyFactRepository()
key_snippet_repository = KeySnippetRepository()
def get_model(): def get_model():
@ -150,7 +153,8 @@ def ask_expert(question: str) -> str:
# Get all content first # Get all content first
file_paths = list(_global_memory["related_files"].values()) file_paths = list(_global_memory["related_files"].values())
related_contents = read_related_files(file_paths) related_contents = read_related_files(file_paths)
key_snippets = get_memory_value("key_snippets") # Get key snippets directly from repository and format using the formatter
key_snippets = format_key_snippets_dict(key_snippet_repository.get_snippets_dict())
# Get key facts directly from repository and format using the formatter # Get key facts directly from repository and format using the formatter
facts_dict = key_fact_repository.get_facts_dict() facts_dict = key_fact_repository.get_facts_dict()
key_facts = format_key_facts_dict(facts_dict) key_facts = format_key_facts_dict(facts_dict)

View File

@ -599,30 +599,19 @@ def get_memory_value(key: str) -> str:
""" """
Get a value from global memory. Get a value from global memory.
Note: Key facts and key snippets are handled by their respective repositories Note: Key facts and key snippets are handled by their respective repository and formatter modules,
and formatter modules. and should be accessed directly using those instead of through this function.
Different memory types return different formats: Different memory types return different formats:
- key_snippets: Returns formatted snippets with file path, line number and content - For work_log: Returns formatted markdown with timestamps and events
- All other types: Returns newline-separated list of values - For other types: Returns newline-separated list of values
Args: Args:
key: The key to get from memory key: The key to get from memory
Returns: Returns:
String representation of the memory values: String representation of the memory values
- For key_snippets: Formatted snippet blocks
- For other types: One value per line
""" """
if key == "key_snippets":
try:
# Get snippets from repository
snippets_dict = key_snippet_repository.get_snippets_dict()
return key_snippets_formatter.format_key_snippets_dict(snippets_dict)
except Exception as e:
logger.error(f"Error retrieving key snippets: {str(e)}")
return ""
if key == "work_log": if key == "work_log":
values = _global_memory.get(key, []) values = _global_memory.get(key, [])
if not values: if not values:

View File

@ -42,8 +42,8 @@ def mock_functions():
"""Mock functions used in agent.py""" """Mock functions used in agent.py"""
with patch('ra_aid.tools.agent.key_fact_repository') as mock_fact_repo, \ with patch('ra_aid.tools.agent.key_fact_repository') as mock_fact_repo, \
patch('ra_aid.tools.agent.format_key_facts_dict') as mock_fact_formatter, \ patch('ra_aid.tools.agent.format_key_facts_dict') as mock_fact_formatter, \
patch('ra_aid.tools.memory.key_snippet_repository') as mock_snippet_repo, \ patch('ra_aid.tools.agent.key_snippet_repository') as mock_snippet_repo, \
patch('ra_aid.tools.memory.key_snippets_formatter.format_key_snippets_dict') as mock_snippet_formatter, \ patch('ra_aid.tools.agent.format_key_snippets_dict') as mock_snippet_formatter, \
patch('ra_aid.tools.agent.initialize_llm') as mock_llm, \ patch('ra_aid.tools.agent.initialize_llm') as mock_llm, \
patch('ra_aid.tools.agent.get_related_files') as mock_get_files, \ patch('ra_aid.tools.agent.get_related_files') as mock_get_files, \
patch('ra_aid.tools.agent.get_memory_value') as mock_get_memory, \ patch('ra_aid.tools.agent.get_memory_value') as mock_get_memory, \