-
Couldn't load subscription status.
- Fork 284
Description
Checklist
- I've searched the issue queue to verify this is not a duplicate feature request.
- I've pasted the output of
kargo version, if applicable. - I've pasted logs, if applicable.
Proposed Feature
Add the ability to hide/disable manual approval flows in the UI based on user permissions or configuration.
Specific Capabilities
- Prevent drag-and-drop of ineligible (unverified/unpromoted upstream) freight to ineligible stages
- Disable manual freight selection for ineligible freight (those displaying a warning icon)
Implementation Approach
Recommended approach: Tie these restrictions to the freights/status permission. Users without this permission would have no access to manual approval workflows in the UI.
Alternative approaches:
- Configuration toggles at the Stage level
- Configuration toggles at the Warehouse/Freight level
- Configuration toggles at the Project level
Note: Configuration-based approaches may be more complex to implement or less practical, as few admins would want to fully disable manual approvals (for all users).
Motivation
Current Behavior
As of version 1.8.0, two new UI features allow users to initiate promotions of ineligible freight:
- Drag-and-drop: Users can drag ineligible freight to ineligible stages with no visual indication that the freight is ineligible during the drag operation
- Manual freight selection: Users can click "Select" on freight objects marked with a warning icon
Both actions trigger a manual approval dialog:
Currently, the system properly enforces permissions—users without freights/status permissions receive an error when clicking "Approve" in the dialog, preventing unauthorized manual approvals.
The Problem
While the permission enforcement works correctly, the UI allows users to initiate workflows they can never complete, leading to:
- User confusion: Users without approval permissions can drag freight and open the manual promotion dialog, only to be denied when they click "Approve"
- UI clutter: During manual freight selection, ineligible freight objects (with warning icons) are visible and clickable even when the user will never be able to approve them
- Poor user experience: There's no indication during drag-and-drop that freight is ineligible for the target stage
Use Case
In many production environments, the majority of users should never be allowed to bypass verifications or perform manual approvals. For these users, the current UI presents options they cannot use, creating unnecessary confusion and friction.
Desired Outcome
Users without manual approval permissions should have a cleaner, more intuitive experience:
- Cannot drag ineligible freight to ineligible stages
- Cannot click "Promote" on freight objects with warning indicators, or even see this option

