Skip to content

[Nitro CLI] Refine output further#9563

Merged
tobias-tengler merged 3 commits intomainfrom
tte/more-cli-refinements
Apr 16, 2026
Merged

[Nitro CLI] Refine output further#9563
tobias-tengler merged 3 commits intomainfrom
tte/more-cli-refinements

Conversation

@tobias-tengler
Copy link
Copy Markdown
Member

No description provided.

Copilot AI review requested due to automatic review settings April 16, 2026 19:23
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR refines Nitro CLI console output and failure propagation, aiming to reduce redundant “terminator” lines and improve messaging consistency across interactive/non-interactive activity rendering and Fusion publish/validate flows.

Changes:

  • Renames/reshapes the “silent fail” sink operation (FailSilentFail) and extends FailAllAsync to optionally carry details while cascading failures.
  • Adjusts ActivityTree rendering to suppress redundant failure terminators and adds/updates activity snapshots to match the refined output.
  • Standardizes several command behaviors to throw ExitException on validation failures (driving consistent stderr + exit codes) and updates Fusion publish/validate progress messages.

Reviewed changes

Copilot reviewed 33 out of 33 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
src/Nitro/CommandLine/test/CommandLine.Tests/Console/SnapshotActivitySink.cs Updates test sink to match IActivitySink.Fail rename.
src/Nitro/CommandLine/test/CommandLine.Tests/Console/NitroConsoleActivityTests.cs Updates non-interactive activity tests for FailAllAsync and revised failure output.
src/Nitro/CommandLine/test/CommandLine.Tests/Console/InteractiveNitroConsoleActivityTests.cs Adds/updates interactive rendering tests for collapse/suppression behavior and FailAllAsync.
src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Session/SessionCommandTestBase.cs Removes unused ExitException-specific logout setup helper.
src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Session/LogoutCommandTests.cs Consolidates logout error test to unexpected-exception path and updates snapshots.
src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionValidateCommandTests.cs Updates snapshots for revised “Validating …” title phrasing.
src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionPublishCommandTests.cs Updates publish output snapshots (new title, progress lines, and revised failure wording).
src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionConfigurationPublishValidateCommandTests.cs Aligns validate command tests with new success output and stderr behavior on failure.
src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionConfigurationPublishStartCommandTests.cs Renames tests for clearer “ReturnsSuccess” naming.
src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionConfigurationPublishCommitCommandTests.cs Renames/merges tests and updates naming to match revised expectations.
src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionConfigurationPublishCancelCommandTests.cs Renames tests for clearer “ReturnsSuccess” naming.
src/Nitro/CommandLine/test/CommandLine.Tests/Commands/Fusion/FusionConfigurationPublishBeginCommandTests.cs Updates begin output snapshots to include “Publication request created” + “Deployment slot ready”.
src/Nitro/CommandLine/src/CommandLine/Services/Console/StreamingActivitySink.cs Implements IActivitySink.Fail rename (streaming terminator emission on fail).
src/Nitro/CommandLine/src/CommandLine/Services/Console/NitroConsoleActivity.cs Refactors failure APIs (FailAllAsync optional details) and failure cascade behavior.
src/Nitro/CommandLine/src/CommandLine/Services/Console/LiveActivitySink.cs Implements IActivitySink.Fail rename (live tree state-only fail).
src/Nitro/CommandLine/src/CommandLine/Services/Console/INitroConsoleActivity.cs Updates FailAllAsync signature to accept optional details.
src/Nitro/CommandLine/src/CommandLine/Services/Console/IActivitySink.cs Renames FailSilentFail in sink contract.
src/Nitro/CommandLine/src/CommandLine/Services/Console/ActivityTree.cs Adds rendering-time suppression of redundant failure terminators (child visibility logic).
src/Nitro/CommandLine/src/CommandLine/Commands/Stages/EditStagesCommand.cs Uses FailAllAsync(errorTree) for consistent failure rendering + cascade.
src/Nitro/CommandLine/src/CommandLine/Commands/Schemas/ValidateSchemaCommand.cs Throws ExitException on invalid schema to standardize error handling.
src/Nitro/CommandLine/src/CommandLine/Commands/Schemas/SchemaHelpers.cs Consolidates schema validation failure reporting into FailAllAsync(errorTree) without extra stderr writes.
src/Nitro/CommandLine/src/CommandLine/Commands/Schemas/PublishSchemaCommand.cs Uses FailAllAsync(errorTree) when publish validation fails.
src/Nitro/CommandLine/src/CommandLine/Commands/OpenApi/ValidateOpenApiCollectionCommand.cs Uses FailAllAsync(errorTree) for consistent failure rendering + cascade.
src/Nitro/CommandLine/src/CommandLine/Commands/OpenApi/PublishOpenApiCollectionCommand.cs Uses FailAllAsync(errorTree) for consistent failure rendering + cascade.
src/Nitro/CommandLine/src/CommandLine/Commands/Mcp/ValidateMcpFeatureCollectionCommand.cs Uses FailAllAsync(errorTree) for consistent failure rendering + cascade.
src/Nitro/CommandLine/src/CommandLine/Commands/Mcp/PublishMcpFeatureCollectionCommand.cs Uses FailAllAsync(errorTree) for consistent failure rendering + cascade.
src/Nitro/CommandLine/src/CommandLine/Commands/Fusion/PublishCommand/FusionConfigurationPublishValidateCommand.cs Throws ExitException on validation failure and emits success terminator on success.
src/Nitro/CommandLine/src/CommandLine/Commands/Fusion/PublishCommand/FusionConfigurationPublishBeginCommand.cs Completes activity with explicit “Deployment slot ready.” success line.
src/Nitro/CommandLine/src/CommandLine/Commands/Fusion/FusionValidateCommand.cs Throws ExitException on invalid schema and updates the activity title wording.
src/Nitro/CommandLine/src/CommandLine/Commands/Fusion/FusionPublishHelpers.cs Improves publish progress output, switches to FailAllAsync(errorTree) in some paths, and fixes punctuation/grammar in exit messages.
src/Nitro/CommandLine/src/CommandLine/Commands/Fusion/FusionPublishCommand.cs Updates publish root title/failure message, adds validation stderr messaging, and avoids triggering release-slot fallback on local validation failure.
src/Nitro/CommandLine/src/CommandLine/Commands/Clients/ValidateClientCommand.cs Uses FailAllAsync(errorTree) for consistent failure rendering + cascade.
src/Nitro/CommandLine/src/CommandLine/Commands/Clients/PublishClientCommand.cs Uses FailAllAsync(errorTree) for consistent failure rendering + cascade.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/Nitro/CommandLine/src/CommandLine/Services/Console/ActivityTree.cs Outdated
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.

2 participants