Skip to content

Comments

🎨 Palette: Add aggregated TOTALS row to CLI recap summary#784

Open
adolago wants to merge 1 commit intomainfrom
palette-recap-totals-1045480775319034013
Open

🎨 Palette: Add aggregated TOTALS row to CLI recap summary#784
adolago wants to merge 1 commit intomainfrom
palette-recap-totals-1045480775319034013

Conversation

@adolago
Copy link
Owner

@adolago adolago commented Feb 22, 2026

This PR enhances the CLI execution summary (recap) by adding an aggregated "TOTALS" row when running playbooks against multiple hosts. This allows users to quickly assess the overall success or failure of a deployment without manually summing up individual host results. Additionally, non-zero statistic values are now bolded to improve scannability.

Changes

  • src/cli/output.rs:
    • Added total_ok, total_unreachable, total_failed_tasks, total_skipped, total_rescued, total_ignored methods to RecapStats.
    • Updated recap to print a separator and a "TOTALS" row if stats.hosts.len() > 1.
    • Updated fmt_stat helper to apply bold styling to non-zero values.
    • Added test_recap_stats_totals unit test.
  • .Jules/palette.md: Added a learning entry about aggregated summaries.

Verification

  • Ran cargo test output which passed, including the new test case.
  • Manually verified the logic aligns with existing output formatting.

PR created automatically by Jules for task 1045480775319034013 started by @dolagoartur

- Updated `RecapStats` in `src/cli/output.rs` to include methods for calculating total counts across all hosts for each status type (ok, changed, failed, etc.).
- Enhanced `recap` output to display a visually distinct "TOTALS" row at the bottom when multiple hosts are present.
- Improved readability by bolding non-zero values in the stats columns.
- Added unit test `test_recap_stats_totals` to verify total calculation logic.
- Updated `.Jules/palette.md` with UX learnings about aggregated summaries.

Co-authored-by: dolagoartur <146357947+dolagoartur@users.noreply.github.com>
@google-labs-jules
Copy link
Contributor

👋 Jules, reporting for duty! I'm here to lend a hand with this pull request.

When you start a review, I'll add a 👀 emoji to each comment to let you know I've read it. I'll focus on feedback directed at me and will do my best to stay out of conversations between you and other bots or reviewers to keep the noise down.

I'll push a commit with your requested changes shortly after. Please note there might be a delay between these steps, but rest assured I'm on the job!

For more direct control, you can switch me to Reactive Mode. When this mode is on, I will only act on comments where you specifically mention me with @jules. You can find this option in the Pull Request section of your global Jules UI settings. You can always switch back!

New to Jules? Learn more at jules.google/docs.


For security, I will only act on instructions from the user who triggered this task.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant