From e1195182fcf0f57945947466e5cc9b9ece4b4aab Mon Sep 17 00:00:00 2001 From: Andrew Blakeslee Moore Date: Mon, 6 Jul 2026 21:32:13 -0700 Subject: [PATCH] Push Notification Live Activity Redundancy Nucleic-Session: 73687ED9-C11C-438C-832B-979332B73893 Co-authored-by: Nucleic --- NucleicRemote/NucleicRemote/LiveActivityManager.swift | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/NucleicRemote/NucleicRemote/LiveActivityManager.swift b/NucleicRemote/NucleicRemote/LiveActivityManager.swift index 44b1de3..b57ecae 100644 --- a/NucleicRemote/NucleicRemote/LiveActivityManager.swift +++ b/NucleicRemote/NucleicRemote/LiveActivityManager.swift @@ -307,13 +307,19 @@ final class LiveActivityManager { /// Project a wire summary into the widget's self-contained row model. private static func line(for s: WireSessionSummary) -> NucleicSessionAttributes.SessionLine { - NucleicSessionAttributes.SessionLine( + // Carry the approval id/risk only for a session actually awaiting approval — that's the row + // the glance renders inline Allow/Deny on (`ApproveFromActivityIntent`). Other states leave + // it nil so the row stays a plain deep-link tap. + let approvalID = s.status == .awaitingApproval ? s.firstApprovalID?.rawValue : nil + return NucleicSessionAttributes.SessionLine( id: s.sessionID.rawValue, title: s.title.isEmpty ? s.projectName : s.title, project: s.projectName, backend: backend(s.backend), kind: kind(for: s), - detail: detail(for: s)) + detail: detail(for: s), + approvalID: approvalID, + approvalIsHighRisk: approvalID == nil ? nil : s.firstApprovalIsHighRisk) } private static func kind(for s: WireSessionSummary) -> NucleicSessionAttributes.Kind {