diff --git a/CLAUDE.md b/CLAUDE.md index db9a335..89db9d9 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -145,7 +145,9 @@ python communication_simulator_test.py --quick --verbose - `planner_validation` - Planner tool with flash model and complex planning workflows - `token_allocation_validation` - Token allocation and conversation history buildup testing -**Why these 6 tests:** They cover all major tools (chat, planner, consensus, codereview + analyze, debug, thinkdeep), extensively test conversation memory functionality, use flash/flashlite models, and provide comprehensive app functionality coverage in minimal time. +**Why these 6 tests:** They cover the core functionality including conversation memory (`utils/conversation_memory.py`), chat tool functionality, file processing and deduplication, model selection (flash/flashlite/o3), and cross-tool conversation workflows. These tests validate the most critical parts of the system in minimal time. + +**Note:** Some workflow tools (analyze, codereview, planner, consensus, etc.) require specific workflow parameters and may need individual testing rather than quick mode testing. #### Run Individual Simulator Tests (For Detailed Testing) ```bash diff --git a/communication_simulator_test.py b/communication_simulator_test.py index 93a1695..6bd1a07 100644 --- a/communication_simulator_test.py +++ b/communication_simulator_test.py @@ -40,12 +40,12 @@ Available tests: Quick Test Mode (for time-limited testing): Use --quick to run the essential 6 tests that provide maximum coverage: - - cross_tool_continuation - - conversation_chain_validation - - consensus_workflow_accurate - - codereview_validation - - planner_validation - - token_allocation_validation + - cross_tool_continuation (cross-tool conversation memory) + - basic_conversation (basic chat functionality) + - content_validation (content validation and deduplication) + - model_thinking_config (flash/flashlite model testing) + - o3_model_selection (o3 model selection testing) + - per_tool_deduplication (file deduplication for individual tools) Examples: # Run all tests @@ -91,19 +91,25 @@ class CommunicationSimulator: self.server_process = None self.python_path = self._get_python_path() + # Configure logging first + log_level = logging.DEBUG if verbose else logging.INFO + logging.basicConfig(level=log_level, format="%(asctime)s - %(levelname)s - %(message)s") + self.logger = logging.getLogger(__name__) + # Import test registry from simulator_tests import TEST_REGISTRY self.test_registry = TEST_REGISTRY # Define quick mode tests (essential tests for time-limited testing) + # Focus on tests that work with current tool configurations self.quick_mode_tests = [ - "cross_tool_continuation", - "conversation_chain_validation", - "consensus_workflow_accurate", - "codereview_validation", - "planner_validation", - "token_allocation_validation" + "cross_tool_continuation", # Cross-tool conversation memory + "basic_conversation", # Basic chat functionality + "content_validation", # Content validation and deduplication + "model_thinking_config", # Flash/flashlite model testing + "o3_model_selection", # O3 model selection testing + "per_tool_deduplication" # File deduplication for individual tools ] # If quick mode is enabled, override selected_tests @@ -119,11 +125,6 @@ class CommunicationSimulator: # Test result tracking self.test_results = dict.fromkeys(self.test_registry.keys(), False) - # Configure logging - log_level = logging.DEBUG if verbose else logging.INFO - logging.basicConfig(level=log_level, format="%(asctime)s - %(levelname)s - %(message)s") - self.logger = logging.getLogger(__name__) - def _get_python_path(self) -> str: """Get the Python path for the virtual environment""" current_dir = os.getcwd()