Skip to content

Commit 8e97108

Browse files
committed
Various fixes and accepted recommendations by CodeRabbit
1 parent 2c3daba commit 8e97108

18 files changed

+110
-38
lines changed

apps/webapp/app/routes/api.v1.packets.$.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import type { ActionFunctionArgs } from "@remix-run/server-runtime";
22
import { json } from "@remix-run/server-runtime";
33
import { z } from "zod";
44
import { authenticateApiRequest } from "~/services/apiAuth.server";
5-
import { createLoaderApiRoute } from "~/services/routeBuiilders/apiBuilder.server";
5+
import { createLoaderApiRoute } from "~/services/routeBuilders/apiBuilder.server";
66
import { generatePresignedUrl } from "~/v3/r2.server";
77

88
const ParamsSchema = z.object({

apps/webapp/app/routes/api.v1.projects.$projectRef.runs.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {
55
ApiRunListPresenter,
66
ApiRunListSearchParams,
77
} from "~/presenters/v3/ApiRunListPresenter.server";
8-
import { createLoaderPATApiRoute } from "~/services/routeBuiilders/apiBuilder.server";
8+
import { createLoaderPATApiRoute } from "~/services/routeBuilders/apiBuilder.server";
99

1010
const ParamsSchema = z.object({
1111
projectRef: z.string(),

apps/webapp/app/routes/api.v1.runs.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import {
33
ApiRunListPresenter,
44
ApiRunListSearchParams,
55
} from "~/presenters/v3/ApiRunListPresenter.server";
6-
import { createLoaderApiRoute } from "~/services/routeBuiilders/apiBuilder.server";
6+
import { createLoaderApiRoute } from "~/services/routeBuilders/apiBuilder.server";
77

88
export const loader = createLoaderApiRoute(
99
{

apps/webapp/app/routes/api.v1.tasks.$taskId.trigger.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { z } from "zod";
55
import { env } from "~/env.server";
66
import { AuthenticatedEnvironment } from "~/services/apiAuth.server";
77
import { logger } from "~/services/logger.server";
8-
import { createActionApiRoute } from "~/services/routeBuiilders/apiBuilder.server";
8+
import { createActionApiRoute } from "~/services/routeBuilders/apiBuilder.server";
99
import { ServiceValidationError } from "~/v3/services/baseService.server";
1010
import { OutOfEntitlementError, TriggerTaskService } from "~/v3/services/triggerTask.server";
1111

apps/webapp/app/routes/api.v3.runs.$runId.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { json } from "@remix-run/server-runtime";
22
import { z } from "zod";
33
import { ApiRetrieveRunPresenter } from "~/presenters/v3/ApiRetrieveRunPresenter.server";
4-
import { createLoaderApiRoute } from "~/services/routeBuiilders/apiBuilder.server";
4+
import { createLoaderApiRoute } from "~/services/routeBuilders/apiBuilder.server";
55

66
const ParamsSchema = z.object({
77
runId: z.string(),

apps/webapp/app/routes/realtime.v1.batches.$batchId.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { json } from "@remix-run/server-runtime";
22
import { z } from "zod";
33
import { $replica } from "~/db.server";
44
import { realtimeClient } from "~/services/realtimeClientGlobal.server";
5-
import { createLoaderApiRoute } from "~/services/routeBuiilders/apiBuilder.server";
5+
import { createLoaderApiRoute } from "~/services/routeBuilders/apiBuilder.server";
66

77
const ParamsSchema = z.object({
88
batchId: z.string(),

apps/webapp/app/routes/realtime.v1.runs.$runId.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { json } from "@remix-run/server-runtime";
22
import { z } from "zod";
33
import { $replica } from "~/db.server";
44
import { realtimeClient } from "~/services/realtimeClientGlobal.server";
5-
import { createLoaderApiRoute } from "~/services/routeBuiilders/apiBuilder.server";
5+
import { createLoaderApiRoute } from "~/services/routeBuilders/apiBuilder.server";
66

77
const ParamsSchema = z.object({
88
runId: z.string(),

apps/webapp/app/routes/realtime.v1.runs.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { z } from "zod";
22
import { realtimeClient } from "~/services/realtimeClientGlobal.server";
3-
import { createLoaderApiRoute } from "~/services/routeBuiilders/apiBuilder.server";
3+
import { createLoaderApiRoute } from "~/services/routeBuilders/apiBuilder.server";
44

55
const SearchParamsSchema = z.object({
66
tags: z

apps/webapp/app/routes/realtime.v1.streams.$runId.$streamId.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { ActionFunctionArgs } from "@remix-run/server-runtime";
22
import { z } from "zod";
33
import { $replica } from "~/db.server";
44
import { realtimeStreams } from "~/services/realtimeStreamsGlobal.server";
5-
import { createLoaderApiRoute } from "~/services/routeBuiilders/apiBuilder.server";
5+
import { createLoaderApiRoute } from "~/services/routeBuilders/apiBuilder.server";
66

77
const ParamsSchema = z.object({
88
runId: z.string(),

apps/webapp/app/services/routeBuiilders/apiBuilder.server.ts renamed to apps/webapp/app/services/routeBuilders/apiBuilder.server.ts

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import {
1313
authenticateApiRequestWithPersonalAccessToken,
1414
PersonalAccessTokenAuthenticationResult,
1515
} from "../personalAccessToken.server";
16+
import { safeJsonParse } from "~/utils/json";
1617

1718
type ApiKeyRouteBuilderOptions<
1819
TParamsSchema extends z.AnyZodObject | undefined = undefined,
@@ -448,7 +449,17 @@ export function createActionApiRoute<
448449
);
449450
}
450451

451-
const body = bodySchema.safeParse(JSON.parse(rawBody));
452+
const rawParsedJson = safeJsonParse(rawBody);
453+
454+
if (!rawParsedJson) {
455+
return wrapResponse(
456+
request,
457+
json({ error: "Invalid JSON" }, { status: 400 }),
458+
corsStrategy !== "none"
459+
);
460+
}
461+
462+
const body = bodySchema.safeParse(rawParsedJson);
452463
if (!body.success) {
453464
return wrapResponse(
454465
request,

0 commit comments

Comments
 (0)