Showing the changes to apps/cloud/src/api (1 of 4 files). Show all
Unified · Split
| @@ -1,5 +1,5 @@ | |||
| 1 | import { env } from "cloudflare:workers"; | 1 | import { env } from "cloudflare:workers"; |
| 2 | import { Effect } from "effect"; | 2 | import { Cause, Effect } from "effect"; |
| 3 | import { | 3 | import { |
| 4 | HttpRouter, | 4 | HttpRouter, |
| 5 | HttpServerRequest, | 5 | HttpServerRequest, |
| @@ -30,13 +30,11 @@ const handler = Effect.gen(function* () { · 24 unmodified lines | |||
| 30 | const session = yield* workos.authenticateRequest(webRequest); | 30 | const session = yield* workos.authenticateRequest(webRequest); |
| 31 | 31 | ||
| 32 | if (!session || !session.organizationId) { | 32 | if (!session || !session.organizationId) { |
| 33 | return yield* Effect.fail( | 33 | return yield* new HttpResponseError({ |
| 34 | new HttpResponseError({ | 34 | status: 401, |
| 35 | status: 401, | 35 | code: "unauthorized", |
| 36 | code: "unauthorized", | 36 | message: "Unauthorized", |
| 37 | message: "Unauthorized", | 37 | }); |
| 38 | }), | ||
| 39 | ); | ||
| 40 | } | 38 | } |
| 41 | 39 | ||
| 42 | const url = new URL(webRequest.url); | 40 | const url = new URL(webRequest.url); |
| @@ -74,20 +72,18 @@ const handler = Effect.gen(function* () { · 31 unmodified lines | |||
| 74 | 72 | ||
| 75 | if (statusCode >= 400) { | 73 | if (statusCode >= 400) { |
| 76 | console.error("[autumn] upstream error:", statusCode, response); | 74 | console.error("[autumn] upstream error:", statusCode, response); |
| 77 | return yield* Effect.fail( | 75 | return yield* new HttpResponseError({ |
| 78 | new HttpResponseError({ | 76 | status: statusCode, |
| 79 | status: statusCode, | 77 | code: "billing_request_failed", |
| 80 | code: "billing_request_failed", | 78 | message: "Billing request failed", |
| 81 | message: "Billing request failed", | 79 | }); |
| 82 | }), | ||
| 83 | ); | ||
| 84 | } | 80 | } |
| 85 | 81 | ||
| 86 | return HttpServerResponse.jsonUnsafe(response, { status: statusCode }); | 82 | return HttpServerResponse.jsonUnsafe(response, { status: statusCode }); |
| 87 | }).pipe( | 83 | }).pipe( |
| 88 | Effect.catchCause((err) => { | 84 | Effect.catchCause((err) => { |
| 89 | if (isServerError(err)) { | 85 | if (isServerError(err)) { |
| 90 | console.error("[autumn] request failed:", err instanceof Error ? err.stack : err); | 86 | console.error("[autumn] request failed:", Cause.pretty(err)); |
| 91 | } | 87 | } |
| 92 | return Effect.succeed(toErrorServerResponse(err)); | 88 | return Effect.succeed(toErrorServerResponse(err)); |
| 93 | }), | 89 | }), |