diff --git a/internal/cloud/server.mjs b/internal/cloud/server.mjs index a6240bbc..a2c2233b 100644 --- a/internal/cloud/server.mjs +++ b/internal/cloud/server.mjs @@ -91,6 +91,11 @@ const LIVE_BUILD_EXTERNAL_COMPONENTS = Object.freeze([ }) ]); +function runtimeEnvironment(env = process.env) { + const value = env.HWLAB_GITOPS_PROFILE || env.HWLAB_ENVIRONMENT || ENVIRONMENT_DEV; + return typeof value === "string" && value.trim() ? value.trim() : ENVIRONMENT_DEV; +} + export function createCloudApiServer(options = {}) { const env = options.env ?? process.env; ensureCodeAgentRuntimeBase(env); @@ -176,7 +181,7 @@ export async function buildHealthPayload(options = {}) { return { serviceId, - environment: ENVIRONMENT_DEV, + environment: runtimeEnvironment(env), status: readiness.status, ready: readiness.ready, revision: metadata.revision, @@ -414,7 +419,7 @@ async function handleRestAdapter(request, response, url, options) { traceId: getHeader(request, "x-trace-id") || `trc_${randomUUID()}`, actorId: getHeader(request, "x-actor-id"), serviceId: getHeader(request, "x-source-service-id") || CLOUD_API_SERVICE_ID, - environment: ENVIRONMENT_DEV + environment: runtimeEnvironment(options.env ?? process.env) } }, { @@ -444,7 +449,7 @@ async function buildLiveBuildsPayload(options = {}) { return { serviceId: CLOUD_API_SERVICE_ID, - environment: ENVIRONMENT_DEV, + environment: runtimeEnvironment(env), status: "ok", contractVersion: "live-builds-v1", observedAt: new Date().toISOString(), @@ -1179,7 +1184,7 @@ async function persistGatewayDemoSession({ runtimeStore, session, request, env = traceId: getHeader(request, "x-trace-id") || `trc_gateway_poll_${randomUUID()}`, actorId: `svc_${session.serviceId}`, serviceId: CLOUD_API_SERVICE_ID, - environment: ENVIRONMENT_DEV + environment: runtimeEnvironment(env) }; try { @@ -2038,7 +2043,7 @@ function sendRestError(request, response, statusCode, code, message, context = { }, source: { serviceId: CLOUD_API_SERVICE_ID, - environment: ENVIRONMENT_DEV, + environment: runtimeEnvironment(options.env ?? process.env), traceId: getHeader(request, "x-trace-id"), adapter: "rest" },