Repository navigation
[codex] normalize pipeline completed text value - #1415
Conversation
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
📝 WalkthroughWalkthroughTwo internal helpers ( ChangesBlank-aware result value normalization
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary
result.valueis populated from finalized text blocks when accumulated streaming text is unavailable.result.valuepath instead of teaching context consumers to inspect block internals.Root Cause
Online callback handling can finalize visible assistant output into
result.blockswhileresult.valueremains empty, especially across callback/streaming state boundaries. Pipeline auto-advance then correctly creates the next user handoff message, but the handoff text is blank because the completed result was not normalized at the lifecycle boundary.Block Handling
textblocks may be used to populateresult.valueonly when the standard text value is blank.thinkingblocks remain inresult.blocksfor UI display and are not sent as pipeline handoff text.toolblocks remain inresult.blocksfor UI/tool state and are not sent as pipeline handoff text.Validation
uv run pytest tests/services/chat/trigger/test_lifecycle_completed_result.py tests/services/chat/storage/test_pipeline_context_passing.py tests/services/adapters/test_collaboration_strategy.py tests/services/chat/storage/test_pipeline_auto_advance_intent.py tests/services/chat/storage/test_task_manager.py tests/services/execution/test_status_updating_emitter.py -quv run black --check app/services/chat/trigger/lifecycle.py tests/services/chat/trigger/test_lifecycle_completed_result.pyuv run isort --check-only --diff app/services/chat/trigger/lifecycle.py tests/services/chat/trigger/test_lifecycle_completed_result.pygit diff --checkuv run pytest -q(2900 passed, 1 skipped)Summary by CodeRabbit