fix: crystallize exits non-zero and warns on approval failures - #59
Conversation
|
Caution Review failedFailed to post review comments 📝 WalkthroughWalkthroughTest updates validate single-agent crystallization when ChangesSingle-Agent Crystallization Support
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 1 | ❌ 4❌ Failed checks (4 warnings)
✅ Passed checks (1 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Warning Review ran into problems🔥 ProblemsStopped waiting for pipeline failures after 30000ms. One of your pipelines takes longer than our 30000ms fetch window to run, so review may not consider pipeline-failure results for inline comments if any failures occurred after the fetch window. Increase the timeout if you want to wait longer or run a Comment |
|
@plind-junior , ready to merge |
|
Fix MR conflict |
… instead Now that approve() supports the review.approver_role: trusted-agent opt-out, crystallize() no longer needs a private _trusted bypass. Single-agent setups configure the opt-out explicitly; crystallize() calls approve() with no special flag. Also: - Add test_crystallize_single_agent_succeeds in test_sessions.py - Update crystallize JSONL test to exercise the real single-agent scenario instead of switching to human-reviewer Fixes vouchdev#47
5497af6 to
199c7cc
Compare
Summary
crystallize()insessions.pycatches everyapprove()exception into afailureslist. The CLI then printed the JSON result and exited 0 regardless — a complete failure where every proposal failed to approve was indistinguishable from a successful crystallize without carefully reading the JSON output.Fix
After emitting the JSON result, inspect
result["failures"]:approved == []): print a clear error to stderr andsys.exit(1)The JSON output is unchanged so any downstream tooling parsing it is unaffected. The error and warning go to stderr only.
Testing
108 tests passing, no regressions.
Fixes #57
Summary by CodeRabbit
Bug Fixes
Tests