From d8623daf1750e983ecc1585f1dcad3f57aac261a Mon Sep 17 00:00:00 2001 From: "gpt-engineer-app[bot]" <159125892+gpt-engineer-app[bot]@users.noreply.github.com> Date: Thu, 23 Apr 2026 19:10:05 +0000 Subject: [PATCH] Changes Co-authored-by: domfelipe <53182096+domfelipe@users.noreply.github.com> --- supabase/functions/resume-agent/index.ts | 12 +++++++----- supabase/functions/suspend-agent/index.ts | 12 +++++++----- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/supabase/functions/resume-agent/index.ts b/supabase/functions/resume-agent/index.ts index 3dca052..0af0053 100644 --- a/supabase/functions/resume-agent/index.ts +++ b/supabase/functions/resume-agent/index.ts @@ -5,7 +5,7 @@ import { createClient } from "https://esm.sh/@supabase/supabase-js@2.45.4"; import { corsHeaders } from "../_shared/cors.ts"; -import { setHermesSuspended, getServiceEnvironmentId } from "../_shared/railway.ts"; +import { setHermesSuspended, getServiceContext } from "../_shared/railway.ts"; const SUPABASE_URL = Deno.env.get("SUPABASE_URL")!; const SUPABASE_SERVICE_ROLE_KEY = Deno.env.get("SUPABASE_SERVICE_ROLE_KEY")!; @@ -67,14 +67,16 @@ Deno.serve(async (req) => { environmentId = pool?.railway_environment_id ?? null; projectId = pool?.railway_project_id ?? undefined; } - if (!environmentId) { - environmentId = await getServiceEnvironmentId({ + if (!environmentId || !projectId) { + const ctx = await getServiceContext({ token: RAILWAY_API_TOKEN, serviceId: agent.railway_service_id, }); + environmentId = environmentId ?? ctx.environmentId; + projectId = projectId ?? ctx.projectId ?? undefined; } - if (!environmentId) { - return jsonResponse(500, { error: "could not resolve railway environmentId" }); + if (!environmentId || !projectId) { + return jsonResponse(500, { error: "could not resolve railway environmentId/projectId" }); } try { diff --git a/supabase/functions/suspend-agent/index.ts b/supabase/functions/suspend-agent/index.ts index 0ea7f1c..8bf9910 100644 --- a/supabase/functions/suspend-agent/index.ts +++ b/supabase/functions/suspend-agent/index.ts @@ -6,7 +6,7 @@ import { createClient } from "https://esm.sh/@supabase/supabase-js@2.45.4"; import { corsHeaders } from "../_shared/cors.ts"; -import { setHermesSuspended, getServiceEnvironmentId } from "../_shared/railway.ts"; +import { setHermesSuspended, getServiceContext } from "../_shared/railway.ts"; const SUPABASE_URL = Deno.env.get("SUPABASE_URL")!; const SUPABASE_SERVICE_ROLE_KEY = Deno.env.get("SUPABASE_SERVICE_ROLE_KEY")!; @@ -69,14 +69,16 @@ Deno.serve(async (req) => { environmentId = pool?.railway_environment_id ?? null; projectId = pool?.railway_project_id ?? undefined; } - if (!environmentId) { - environmentId = await getServiceEnvironmentId({ + if (!environmentId || !projectId) { + const ctx = await getServiceContext({ token: RAILWAY_API_TOKEN, serviceId: agent.railway_service_id, }); + environmentId = environmentId ?? ctx.environmentId; + projectId = projectId ?? ctx.projectId ?? undefined; } - if (!environmentId) { - return jsonResponse(500, { error: "could not resolve railway environmentId" }); + if (!environmentId || !projectId) { + return jsonResponse(500, { error: "could not resolve railway environmentId/projectId" }); } try {