refactor PushEvaluatedOutput, PushBuildOutput into PushOutput#541
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (4)
📝 WalkthroughWalkthroughThis PR consolidates two separate push-output step types, PushEvaluatedOutput and PushBuildOutput, into a single PushOutput struct with a PushOutputHandle enum discriminating evaluation vs build sources. The Step enum, Display implementations, and planner emission logic are updated accordingly, along with test expectations. Separately, SwitchToConfiguration's display string changes to "Activation". ChangesUnified push output step
Estimated code review effort: 3 (Moderate) | ~20 minutes Sequence Diagram(s)sequenceDiagram
participant Planner as plan.rs (apply_plan)
participant Step as Step::PushOutput
participant Executor as PushOutput::execute
participant Backend as Daemon/CLI Push
Planner->>Step: Emit PushOutput{path: PushOutputHandle::Evaluation(...)}
Planner->>Step: Emit PushOutput{path: PushOutputHandle::Build(...)}
Step->>Executor: execute()
Executor->>Executor: Resolve handle based on path variant
alt experimental_nix_client enabled
Executor->>Backend: push_with_daemon(Push node)
else
Executor->>Backend: commands::common::push(Push node)
end
Backend-->>Executor: push result
Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ 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 by CodeRabbit
New Features
Bug Fixes