Conversation
…itor Betraying a traitor (or disconnected) ally breaks the alliance but does not mark you a traitor (GameImpl.breakAlliance), yet the nuke preview showed the same solid-red warning either way — you couldn't tell whether clipping someone's pixels was a real betrayal or a safe strike. The ghost preview now excludes traitor allies from the alliance-break check, and the range circle flashes red<->white (~2 Hz) iff the blast would hit a non-traitor ally and mark you a traitor. Nuking a traitor safely shows the normal white circle. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (3)
Included review availability: Your plan provides up to 8 included reviews per hour; 7 remain after this review. WalkthroughThe build preview now warns only when a nuke would break an alliance and mark the player as a traitor. Disconnected and traitor allies do not trigger this warning. Warning circles now flash between red and white. ChangesAlliance warning preview
Priority: ⬇️ Low Estimated code review effort: 2 (Simple) | ~10 minutes Change: Bug fix Sequence Diagram(s)sequenceDiagram
participant BuildPreviewController
participant GhostPreviewData
participant RangeCirclePass
BuildPreviewController->>BuildPreviewController: Filter connected non-traitor allies
BuildPreviewController->>GhostPreviewData: Set rangeWarning from allyWarning
GhostPreviewData->>RangeCirclePass: Provide warning state
RangeCirclePass->>RangeCirclePass: Animate warning color over time
Suggested reviewers: Merge Risk: ⚪ Minimal · up to The preview now distinguishes traitor-marking strikes and animates the warning as intended; no actionable merge-blocking risk remains. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
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. A warning flag now tells the truth Comment |
🤖 Claude Code ReviewVerdict: ✅ No issues found. Findings: 0 critical, 0 major, 0 minor. Reviewed the traitor-warning logic fix in
No blocking issues. One non-blocking UX note for the author's awareness (not a defect, since it matches the PR's stated intent): nuking a traitor-marked ally still breaks the alliance and applies the relation penalty, but will now show no warning circle at all — the circle previously doubled as a general "this will break an alliance" signal and now only signals "this will mark you a traitor specifically." Worth a quick sanity check that this narrower scope is the desired UX. 🤖 Generated with Claude Code |
Summary
GameImpl.breakAlliance), so the preview now excludes traitor allies from the alliance-break check — nuking a traitor shows the normal white circle.Test plan
npx vitest tests/client/controllers/BuildPreviewController.test.ts --run(11 passed)npx tsc --noEmit,npm run lint, Prettier check — all clean🤖 Generated with Claude Code