From dbfd24a49676d3ab2fb6056d44daed0b309e21c7 Mon Sep 17 00:00:00 2001 From: Yogish Baliga Date: Fri, 5 Jun 2026 09:53:41 -0700 Subject: [PATCH] adding option to show raw request --- web/app/routes/_index.tsx | 84 +++++++++++++++++++++++++++++++++++---- 1 file changed, 77 insertions(+), 7 deletions(-) diff --git a/web/app/routes/_index.tsx b/web/app/routes/_index.tsx index 99086071..39463ab4 100644 --- a/web/app/routes/_index.tsx +++ b/web/app/routes/_index.tsx @@ -147,6 +147,7 @@ export default function Index() { const [viewMode, setViewMode] = useState<"requests" | "conversations">("requests"); const [isModalOpen, setIsModalOpen] = useState(false); const [isConversationModalOpen, setIsConversationModalOpen] = useState(false); + const [rawView, setRawView] = useState(false); const [modelFilter, setModelFilter] = useState("all"); const [isFetching, setIsFetching] = useState(false); const [isPending, startTransition] = useTransition(); @@ -346,6 +347,7 @@ export default function Index() { const request = requests.find(r => r.id === requestId); if (request) { setSelectedRequest(request); + setRawView(false); setIsModalOpen(true); } }; @@ -353,6 +355,7 @@ export default function Index() { const closeModal = () => { setIsModalOpen(false); setSelectedRequest(null); + setRawView(false); }; const getToolStats = () => { @@ -844,16 +847,40 @@ export default function Index() {

Request Details

- +
+
+ + +
+ +
- gradeRequest(selectedRequest.id)} /> + {rawView ? ( + + ) : ( + gradeRequest(selectedRequest.id)} /> + )}
@@ -912,3 +939,46 @@ export default function Index() { ); } + +function RawRequestView({ request }: { request: Request }) { + const [copied, setCopied] = useState(false); + const raw = JSON.stringify(request, null, 2); + + const handleCopy = async () => { + try { + await navigator.clipboard.writeText(raw); + setCopied(true); + setTimeout(() => setCopied(false), 2000); + } catch (error) { + console.error('Failed to copy:', error); + } + }; + + return ( +
+
+ Raw Request JSON + +
+
+        {raw}
+      
+
+ ); +}