The SubagentManager.spawn() method was returning a human-readable status message, but tests (and wait_for()) expected it to return the task ID directly. This PR fixes both the implementation and the tests.
Changes
Implementation fixes:
✅spawn() now returns the task_id (string) instead of a status message
✅ Updated docstring to reflect the correct return value
✅ Status message is still logged for debugging
Test fixes:
✅ Updated spawn() calls to use new parameter structure:
Changed to: origin_channel="x", origin_chat_id="y"
Benefits
Returning the task_id makes spawn() more useful programmatically - callers can use the returned task_id with wait_for() without parsing a message.
Test Results
✅ All 3 SubagentManager tests now pass
Type
Bug fix (spawn return value)
Test fixes (parameter structure)
🤖 Generated with Claude Code
## Summary
The `SubagentManager.spawn()` method was returning a human-readable status message, but tests (and `wait_for()`) expected it to return the task ID directly. This PR fixes both the implementation and the tests.
## Changes
**Implementation fixes:**
- ✅ `spawn()` now returns the `task_id` (string) instead of a status message
- ✅ Updated docstring to reflect the correct return value
- ✅ Status message is still logged for debugging
**Test fixes:**
- ✅ Updated `spawn()` calls to use new parameter structure:
- Changed from: `origin={"channel": "x", "chat_id": "y"}`
- Changed to: `origin_channel="x"`, `origin_chat_id="y"`
## Benefits
Returning the task_id makes `spawn()` more useful programmatically - callers can use the returned task_id with `wait_for()` without parsing a message.
## Test Results
✅ All 3 SubagentManager tests now pass
## Type
- [x] Bug fix (spawn return value)
- [x] Test fixes (parameter structure)
🤖 Generated with Claude Code
The SubagentManager.spawn() method was returning a human-readable status
message, but tests (and wait_for()) expected it to return the task ID
directly. This commit fixes both the implementation and the tests:
Implementation changes:
- spawn() now returns the task_id (string) instead of a status message
- Updated docstring to reflect the correct return value
- Status message is still logged for debugging
Test changes:
- Updated spawn() calls to use new parameter structure:
* Changed from: origin={"channel": "x", "chat_id": "y"}
* Changed to: origin_channel="x", origin_chat_id="y"
This makes spawn() more useful programmatically - callers can use the
returned task_id with wait_for() without parsing a message.
All 3 SubagentManager tests now pass.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
The
SubagentManager.spawn()method was returning a human-readable status message, but tests (andwait_for()) expected it to return the task ID directly. This PR fixes both the implementation and the tests.Changes
Implementation fixes:
spawn()now returns thetask_id(string) instead of a status messageTest fixes:
spawn()calls to use new parameter structure:origin={"channel": "x", "chat_id": "y"}origin_channel="x",origin_chat_id="y"Benefits
Returning the task_id makes
spawn()more useful programmatically - callers can use the returned task_id withwait_for()without parsing a message.Test Results
✅ All 3 SubagentManager tests now pass
Type
🤖 Generated with Claude Code
The SubagentManager.spawn() method was returning a human-readable status message, but tests (and wait_for()) expected it to return the task ID directly. This commit fixes both the implementation and the tests: Implementation changes: - spawn() now returns the task_id (string) instead of a status message - Updated docstring to reflect the correct return value - Status message is still logged for debugging Test changes: - Updated spawn() calls to use new parameter structure: * Changed from: origin={"channel": "x", "chat_id": "y"} * Changed to: origin_channel="x", origin_chat_id="y" This makes spawn() more useful programmatically - callers can use the returned task_id with wait_for() without parsing a message. All 3 SubagentManager tests now pass. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>