From 3dac5514f4dcb8e554eacadeaa4c70272ec4d762 Mon Sep 17 00:00:00 2001 From: Nathan Walston Date: Thu, 13 Aug 2026 12:42:32 -0700 Subject: [PATCH 1/2] fix(studio): point agent Open traces button to Intake traces The agent detail page Open traces button navigated to the Monitor tab and was gated behind MONITOR_ENABLED. Retarget it to the Intake traces route and gate on INTAKE_ENABLED so it renders and links to Traces. Fixes ASTD-402 Signed-off-by: Nathan Walston --- .../agents/AgentDetailRoute/index.test.tsx | 16 ++++++++++++++-- .../src/routes/agents/AgentDetailRoute/index.tsx | 8 ++++---- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/web/packages/studio/src/routes/agents/AgentDetailRoute/index.test.tsx b/web/packages/studio/src/routes/agents/AgentDetailRoute/index.test.tsx index c44959fbfb..1f42807aa9 100644 --- a/web/packages/studio/src/routes/agents/AgentDetailRoute/index.test.tsx +++ b/web/packages/studio/src/routes/agents/AgentDetailRoute/index.test.tsx @@ -2,7 +2,7 @@ // SPDX-License-Identifier: Apache-2.0 vi.hoisted(() => { - vi.stubEnv('VITE_FF_MONITOR_ENABLED', 'true'); + vi.stubEnv('VITE_FF_INTAKE_ENABLED', 'true'); }); import { ROUTES } from '@studio/constants/routes'; @@ -18,7 +18,10 @@ const workspace = workspace1.workspace; const renderDetail = () => renderRoute(undefined, { history: getAgentDetailRoute(workspace, agentName), - routes: [{ path: ROUTES.workspace.agentDetail, element: }], + routes: [ + { path: ROUTES.workspace.agentDetail, element: }, + { path: ROUTES.workspace.intakeTraces, element:
intake-traces-page
}, + ], }); describe('AgentDetailRoute', () => { @@ -42,6 +45,15 @@ describe('AgentDetailRoute', () => { expect(screen.queryByRole('dialog')).not.toBeInTheDocument(); }); + it('navigates to intake traces when Open traces is clicked', async () => { + const user = userEvent.setup(); + renderDetail(); + + await user.click(await screen.findByRole('button', { name: 'Open traces' })); + + expect(await screen.findByText('intake-traces-page')).toBeInTheDocument(); + }); + it('switches to the chat tab', async () => { const user = userEvent.setup(); renderDetail(); diff --git a/web/packages/studio/src/routes/agents/AgentDetailRoute/index.tsx b/web/packages/studio/src/routes/agents/AgentDetailRoute/index.tsx index 9c4ab8ca64..033abfb6e1 100644 --- a/web/packages/studio/src/routes/agents/AgentDetailRoute/index.tsx +++ b/web/packages/studio/src/routes/agents/AgentDetailRoute/index.tsx @@ -18,7 +18,7 @@ import { } from '@nvidia/foundations-react-core'; import { getAgentModelNames } from '@studio/components/dataViews/AgentsDataView/utils'; import { SubmitEvaluationModal } from '@studio/components/evaluation/SubmitEvaluationModal'; -import { MONITOR_ENABLED } from '@studio/constants/environment'; +import { INTAKE_ENABLED } from '@studio/constants/environment'; import { ROUTE_PARAMS } from '@studio/constants/routes'; import { useWorkspaceFromPath } from '@studio/hooks/useWorkspaceFromPath'; import { useBreadcrumbs } from '@studio/providers/breadcrumbs/useBreadcrumbs'; @@ -35,7 +35,7 @@ import { clearAgentWalkthroughPending, isAgentWalkthroughPending, } from '@studio/routes/agents/AgentDetailRoute/walkthroughStorage'; -import { getAgentMonitorRoute, getAgentsListRoute } from '@studio/routes/utils'; +import { getAgentsListRoute, getIntakeTracesRoute } from '@studio/routes/utils'; import { Activity, ClipboardCheck, Dot, Rocket } from 'lucide-react'; import { type FC, useEffect, useRef, useState } from 'react'; import { useNavigate, useParams, useSearchParams } from 'react-router'; @@ -164,8 +164,8 @@ export const AgentDetailRoute: FC = () => { } slotActions={ - {MONITOR_ENABLED && ( - From f373a306c868031aa7026e7fb403088721b15856 Mon Sep 17 00:00:00 2001 From: Nathan Walston Date: Fri, 14 Aug 2026 08:14:13 -0700 Subject: [PATCH 2/2] fix(studio): use Traces (ListTree) icon on Open traces button Match the AppBar Traces nav icon instead of Activity. Signed-off-by: Nathan Walston --- .../studio/src/routes/agents/AgentDetailRoute/index.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web/packages/studio/src/routes/agents/AgentDetailRoute/index.tsx b/web/packages/studio/src/routes/agents/AgentDetailRoute/index.tsx index 033abfb6e1..dbdc88b0d1 100644 --- a/web/packages/studio/src/routes/agents/AgentDetailRoute/index.tsx +++ b/web/packages/studio/src/routes/agents/AgentDetailRoute/index.tsx @@ -36,7 +36,7 @@ import { isAgentWalkthroughPending, } from '@studio/routes/agents/AgentDetailRoute/walkthroughStorage'; import { getAgentsListRoute, getIntakeTracesRoute } from '@studio/routes/utils'; -import { Activity, ClipboardCheck, Dot, Rocket } from 'lucide-react'; +import { ClipboardCheck, Dot, ListTree, Rocket } from 'lucide-react'; import { type FC, useEffect, useRef, useState } from 'react'; import { useNavigate, useParams, useSearchParams } from 'react-router'; @@ -166,7 +166,7 @@ export const AgentDetailRoute: FC = () => { {INTAKE_ENABLED && ( )}