diff --git a/src/app/(dashboard)/dashboard/tools/traffic-inspector/TrafficInspectorPageClient.tsx b/src/app/(dashboard)/dashboard/tools/traffic-inspector/TrafficInspectorPageClient.tsx index 9e7bd8aa25..a1537f236d 100644 --- a/src/app/(dashboard)/dashboard/tools/traffic-inspector/TrafficInspectorPageClient.tsx +++ b/src/app/(dashboard)/dashboard/tools/traffic-inspector/TrafficInspectorPageClient.tsx @@ -19,8 +19,16 @@ export function TrafficInspectorPageClient() { const [containerHeight, setContainerHeight] = useState(600); const listContainerRef = useRef(null); const [selectedRequest, setSelectedRequest] = useState(null); - const { filters, setProfile, setHost, setAgent, setStatus, setSessionId, setSameContext } = - useTrafficFilters(); + const { + filters, + setProfile, + setHost, + setAgent, + setStatus, + setSessionId, + setSameContext, + toggleLive, + } = useTrafficFilters(); const [{ listWidth, collapsed }, { startDrag, toggleCollapse }] = useResizablePanels(); const [streamState, streamActions] = useTrafficStream(filters); const recorder = useSessionRecorder(); @@ -108,6 +116,8 @@ export function TrafficInspectorPageClient() { onHostChange={setHost} onAgentChange={setAgent} onStatusChange={setStatus} + liveOnly={filters.liveOnly ?? false} + onToggleLive={toggleLive} paused={streamState.paused} onPause={streamActions.pause} onResume={streamActions.resume} diff --git a/src/app/(dashboard)/dashboard/tools/traffic-inspector/components/TopBarControls.tsx b/src/app/(dashboard)/dashboard/tools/traffic-inspector/components/TopBarControls.tsx index 03ff373ee4..50ac648e58 100644 --- a/src/app/(dashboard)/dashboard/tools/traffic-inspector/components/TopBarControls.tsx +++ b/src/app/(dashboard)/dashboard/tools/traffic-inspector/components/TopBarControls.tsx @@ -19,6 +19,8 @@ interface TopBarControlsProps { onHostChange: (h: string | undefined) => void; onAgentChange: (a: AgentId | undefined) => void; onStatusChange: (s: ListFilters["status"]) => void; + liveOnly: boolean; + onToggleLive: () => void; paused: boolean; onPause: () => void; onResume: () => void; @@ -46,6 +48,8 @@ export function TopBarControls({ onHostChange, onAgentChange, onStatusChange, + liveOnly, + onToggleLive, paused, onPause, onResume, @@ -125,6 +129,25 @@ export function TopBarControls({ + {/* Live (in-flight) toggle — Gap 5 */} + + {/* Action buttons */}