🚀 Major Enhancement: Workflow-Based Tool Architecture v5.5.0 (#95)

* WIP: new workflow architecture

* WIP: further improvements and cleanup

* WIP: cleanup and docks, replace old tool with new

* WIP: cleanup and docks, replace old tool with new

* WIP: new planner implementation using workflow

* WIP: precommit tool working as a workflow instead of a basic tool
Support for passing False to use_assistant_model to skip external models completely and use Claude only

* WIP: precommit workflow version swapped with old

* WIP: codereview

* WIP: replaced codereview

* WIP: replaced codereview

* WIP: replaced refactor

* WIP: workflow for thinkdeep

* WIP: ensure files get embedded correctly

* WIP: thinkdeep replaced with workflow version

* WIP: improved messaging when an external model's response is received

* WIP: analyze tool swapped

* WIP: updated tests
* Extract only the content when building history
* Use "relevant_files" for workflow tools only

* WIP: updated tests
* Extract only the content when building history
* Use "relevant_files" for workflow tools only

* WIP: fixed get_completion_next_steps_message missing param

* Fixed tests
Request for files consistently

* Fixed tests
Request for files consistently

* Fixed tests

* New testgen workflow tool
Updated docs

* Swap testgen workflow

* Fix CI test failures by excluding API-dependent tests

- Update GitHub Actions workflow to exclude simulation tests that require API keys
- Fix collaboration tests to properly mock workflow tool expert analysis calls
- Update test assertions to handle new workflow tool response format
- Ensure unit tests run without external API dependencies in CI

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

* WIP - Update tests to match new tools

* WIP - Update tests to match new tools

---------

Co-authored-by: Claude <noreply@anthropic.com>
This commit is contained in:
Beehive Innovations
2025-06-21 00:08:11 +04:00
committed by GitHub
parent 4dae6e457e
commit 69a3121452
76 changed files with 17111 additions and 7725 deletions

View File

@@ -507,7 +507,7 @@ class TestConversationFlow:
mock_storage.return_value = mock_client
# Start conversation with files
thread_id = create_thread("analyze", {"prompt": "Analyze this codebase", "files": ["/project/src/"]})
thread_id = create_thread("analyze", {"prompt": "Analyze this codebase", "relevant_files": ["/project/src/"]})
# Turn 1: Claude provides context with multiple files
initial_context = ThreadContext(
@@ -516,7 +516,7 @@ class TestConversationFlow:
last_updated_at="2023-01-01T00:00:00Z",
tool_name="analyze",
turns=[],
initial_context={"prompt": "Analyze this codebase", "files": ["/project/src/"]},
initial_context={"prompt": "Analyze this codebase", "relevant_files": ["/project/src/"]},
)
mock_client.get.return_value = initial_context.model_dump_json()
@@ -545,7 +545,7 @@ class TestConversationFlow:
tool_name="analyze",
)
],
initial_context={"prompt": "Analyze this codebase", "files": ["/project/src/"]},
initial_context={"prompt": "Analyze this codebase", "relevant_files": ["/project/src/"]},
)
mock_client.get.return_value = context_turn_1.model_dump_json()
@@ -576,7 +576,7 @@ class TestConversationFlow:
files=["/project/tests/", "/project/test_main.py"],
),
],
initial_context={"prompt": "Analyze this codebase", "files": ["/project/src/"]},
initial_context={"prompt": "Analyze this codebase", "relevant_files": ["/project/src/"]},
)
mock_client.get.return_value = context_turn_2.model_dump_json()
@@ -617,7 +617,7 @@ class TestConversationFlow:
tool_name="analyze",
),
],
initial_context={"prompt": "Analyze this codebase", "files": ["/project/src/"]},
initial_context={"prompt": "Analyze this codebase", "relevant_files": ["/project/src/"]},
)
history, tokens = build_conversation_history(final_context)