cmarteepants opened a new issue, #54961:
URL: https://github.com/apache/airflow/issues/54961

   ### Description
   
   We need to make “Needs Review” clearer, more actionable, and consistent 
across the UI. Right now, open and resolved reviews are lumped together under 
“Required Actions,” and signals are subtle or inconsistent (purple vs. amber, 
icons that don’t match, buried tabs).
   
   This issue explores two approaches for how users interact with reviews 
(separate tabs vs. modal), and also outlines improvements that should be 
implemented in either case:
   - **DAG graph nodes** 
     - For open reviews: show an amber dashed border around the purple node 
plus a ✋ badge icon.
     - For ApprovalOperator in older DAG runs: show 👤✔️ if approved or 👤❌ if 
rejected.
   - **Home page:**
     - Use the ✋ badge icon instead of the stopwatch icon since that is too 
similar to deferred tasks
     - Pull Required Actions (rename to Needs Review) out of “Stats” and into 
its own callout bar.
   - **DAG list page:** Add a Needs Review (n) badge with icon inline, so 
stalled DAGs are immediately visible.
   
   These visibility changes ensure users can see human-blocked tasks without 
needing to drill into tabs.
   
   ### Use case/motivation
   
   <img width="1237" height="622" alt="Image" 
src="https://github.com/user-attachments/assets/6c14a2ee-81c2-4ed7-b8c0-85e165fb9a20";
 />
   
   ### Option A: Separate Tabs (clearer, inbox-like)
   - **DAG Run & DAG Overview views**
     - Show **Needs Review (n)**
     -  as the default tab when n > 0 (else hidden)
     - Always show a second tab: **Review History**
   - **Needs Review rows*
     - Subject (click -> modal)
     - Run After
     - Approver / Assignee (@Lee-W to confirm if that's a thing)
     - Task ID
   
   **Pros**
   - Clear mental model: inbox vs archive
   - Easy to scan counts (`Needs Review (n)`)
   - Audit trail cleanly separated
   
   **Cons**
   - Adds one more tab to already crowded UI
   
   ### Option B: Review (n) button in the header with modal 
   
   (Leaning towards this after writing it out)
   - Add a **Review (n)** button in the DAG and Task Instance Headers (next to 
"Add a note")
   - Opens a modal with accordion list of open items
   - Include secondary *History* tab for resolved items with the same 
information as above
   - Apply the same pattern should be used for global option under Browse
   <img width="1234" height="497" alt="Image" 
src="https://github.com/user-attachments/assets/1687a467-0aef-4bae-a1aa-cda2c264bc94";
 />
   
   **Pros:**
   - Avoids increasing tab count
   - Modal pattern emphasizes "take action now"
   - History still accessible just less prominent
   
   **Cons:**
   - Mixing open and resolved in one place could dilute clarity, even with 
separate tabs
   - More clicks if a user wants to audit history frequently
   
   ### Applies to both options
   - **Graph nodes**
     - For open reviews: Show an **amber dashed border** around the purple node 
and a ✋ badge icon.
     - For Approval Operator specifically: For graphs nodes of dags that have 
already run, if approved show :bust_in_silhouette::heavy_check_mark: if 
rejected :bust_in_silhouette::heavy_multiplication_x: 
   - **Home page**: Use the ✋ badge icon and pull "Required Actions" (rename to 
"Needs Review") out of Stats to its own callout bar. 
   - **DAG list page**: Add "Needs Review (n)" badge with icon inline, so 
stalled DAGs are immediately visible
   
   This issue is primarily about choosing between Option A and Option B, but we 
should move forward with the graph node, homepage, and DAG list improvements 
regardless.
   
   
   ### Related issues
   
   _No response_
   
   ### Are you willing to submit a PR?
   
   - [ ] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [x] I agree to follow this project's [Code of 
Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to