fix(steering): skip phantom zero-turn result on --resume; guard empty replies
On --resume, a background task stopped by the previous restart is replayed as its own zero-turn turn with an empty result, before the real turn. consume_stream took it as the answer -> empty Discord message (400) -> "Sorry, something went wrong", while the real turn ran orphaned. - stream_json: skip result with num_turns=0, empty, non-error - router: empty Claude response becomes a visible notice, not an adapter crash Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014y1sJNe6mkWwFMwkWmCg8J
This commit is contained in:
@@ -349,3 +349,8 @@ def test_max_live_non_positive_logs_and_always_degrades(caplog):
|
||||
registry = claude_runner.RunnerRegistry(max_live=0, idle_minutes=20)
|
||||
assert any("max_live" in rec.message for rec in caplog.records)
|
||||
assert registry.get("any-channel") is None
|
||||
|
||||
|
||||
def test_stream_json_self_check_skips_phantom_resume_result():
|
||||
from src import stream_json
|
||||
stream_json.demo()
|
||||
|
||||
Reference in New Issue
Block a user