diff --git a/packages/insomnia/src/ui/routes/debug.tsx b/packages/insomnia/src/ui/routes/debug.tsx index 55ad4241d3..bd73f89333 100644 --- a/packages/insomnia/src/ui/routes/debug.tsx +++ b/packages/insomnia/src/ui/routes/debug.tsx @@ -153,7 +153,7 @@ export const loader: LoaderFunction = async ({ params, request }) => { // TODO(george): we should remove this after enabling the sidebar for the runner const startOfQuery = request.url.indexOf('?'); const urlWithoutQuery = startOfQuery > 0 ? request.url.slice(0, startOfQuery) : request.url; - const isDisplayingRunner = urlWithoutQuery.endsWith('/runner'); + const isDisplayingRunner = urlWithoutQuery.includes('/runner'); if (activeRequest && !isDisplayingRunner) { return redirect(`/organization/${organizationId}/project/${projectId}/workspace/${workspaceId}/debug/request/${activeRequestId}`); } diff --git a/packages/insomnia/src/ui/routes/runner.tsx b/packages/insomnia/src/ui/routes/runner.tsx index 7a2263fbd9..26634f3e7a 100644 --- a/packages/insomnia/src/ui/routes/runner.tsx +++ b/packages/insomnia/src/ui/routes/runner.tsx @@ -9,6 +9,7 @@ import { useInterval } from 'react-use'; import { Tooltip } from '../../../src/ui/components/tooltip'; import { JSON_ORDER_PREFIX, JSON_ORDER_SEPARATOR } from '../../common/constants'; +import { debounce } from '../../common/misc'; import type { ResponseTimelineEntry } from '../../main/network/libcurl-promise'; import type { TimingStep } from '../../main/network/request-timing'; import * as models from '../../models'; @@ -21,6 +22,7 @@ import { invariant } from '../../utils/invariant'; import { ErrorBoundary } from '../components/error-boundary'; import { HelpTooltip } from '../components/help-tooltip'; import { Icon } from '../components/icon'; +import { showAlert } from '../components/modals'; import { UploadDataModal, type UploadDataType } from '../components/modals/upload-runner-data-modal'; import { Pane, PaneBody, PaneHeader } from '../components/panes/pane'; import { RunnerResultHistoryPane } from '../components/panes/runner-result-history-pane'; @@ -108,6 +110,18 @@ export const Runner: FC<{}> = () => { } if (searchParams.has('error')) { setErrorMsg(searchParams.get('error')); + // TODO: this should be removed when we are able categorized errors better and display them in different ways. + showAlert({ + title: 'Unexpected Runner Failure', + message: ( +
The runner failed due to an unhandled error:
+
+ {searchParams.get('error')}
+
+