function fail(message) { console.error(`D3RO admin startup refused: ${message}`) process.exit(1) } const sessionSecret = process.env.ADMIN_SESSION_SECRET?.trim() ?? '' if (new TextEncoder().encode(sessionSecret).byteLength < 32) { fail('ADMIN_SESSION_SECRET must contain at least 32 bytes') } const apiServerUrl = process.env.API_SERVER_URL?.trim() ?? '' let parsedApiServerUrl try { parsedApiServerUrl = new URL(apiServerUrl) } catch { fail('API_SERVER_URL must be an absolute URL') } if (process.env.NODE_ENV === 'production' && parsedApiServerUrl.protocol !== 'https:') { fail('API_SERVER_URL must use HTTPS in production') } await import('./server.js')