Captured error in js-execution-freestyle-failed when sending email on self-hosted Stackauth
Author: khailearntodevCreated Sep 22, 2026Updated Sep 22, 2026
Hello, I'm deploying Stackauth on my Ubuntu server and having an error when sending email through Freestyle. I also use the newest version of StackAuth (c4fe559 - dashboard-v1.0.123) with correct configs (env & smtp):
- STACK_FREESTYLE_API_KEY
- STACK_FREESTYLE_SNAPSHOT_ID
The error logs:
stackauth-1 | Captured error in js-execution-freestyle-failed: HexclaveAssertionError: JS execution freestyle engine failed, falling back to vercel sandbox engine
stackauth-1 | Stack:
stackauth-1 | This is likely an error in Hexclave. Please make sure you are running the newest version and report it.
stackauth-1 | at runWithFallback (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33845:48)
stackauth-1 | at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
stackauth-1 | at async file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33772:11
stackauth-1 | at async file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:1515:11
stackauth-1 | at async traceSpan (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:1512:9)
stackauth-1 | at async executeJavascript (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33762:9)
stackauth-1 | at async bundleAndExecute (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:75133:24)
stackauth-1 | at async renderEmailsForTenancyBatched (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:75282:9)
stackauth-1 | at async renderTenancyEmails (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:119224:27)
stackauth-1 | at async renderEmails (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:119117:3)
stackauth-1 | Extra properties: {
stackauth-1 | "extraData": {
stackauth-1 | "cause": RetryError: Error after 2 attempts.
stackauth-1 | Stack:
stackauth-1 | Attempt 1:
stackauth-1 | HexclaveAssertionError: Freestyle VM JavaScript runner exited with non-zero code
stackauth-1 | Stack:
stackauth-1 | This is likely an error in Hexclave. Please make sure you are running the newest version and report it.
stackauth-1 | at executeJavascriptInFreestyleVm (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33460:29)
stackauth-1 | at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
stackauth-1 | at async Object.execute (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33600:11)
stackauth-1 | at async Result.retry.exponentialDelayBase (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33836:19)
stackauth-1 | at async Object.retry (file:///var/tmp/stack-runtime/apps/backend/dist/promises-BP5s22Qp.mjs:1945:15)
stackauth-1 | at async runWithFallback (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33833:22)
stackauth-1 | at async file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33772:11
stackauth-1 | at async file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:1515:11
stackauth-1 | at async traceSpan (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:1512:9)
stackauth-1 | at async executeJavascript (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33762:9)
stackauth-1 | Extra properties: {
stackauth-1 | "extraData": {
stackauth-1 | "exitCode": 127,
stackauth-1 | "vmId": "vm-2adf16e4eb534787a0981124f98756ee",
stackauth-1 | },
stackauth-1 | }
stackauth-1 | Attempt 2:
stackauth-1 | HexclaveAssertionError: Freestyle VM JavaScript runner exited with non-zero code
stackauth-1 | Stack:
stackauth-1 | This is likely an error in Hexclave. Please make sure you are running the newest version and report it.
stackauth-1 | at executeJavascriptInFreestyleVm (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33460:29)
stackauth-1 | at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
stackauth-1 | at async Object.execute (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33600:11)
stackauth-1 | at async Result.retry.exponentialDelayBase (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33836:19)
stackauth-1 | at async Object.retry (file:///var/tmp/stack-runtime/apps/backend/dist/promises-BP5s22Qp.mjs:1945:15)
stackauth-1 | at async runWithFallback (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33833:22)
stackauth-1 | at async file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33772:11
stackauth-1 | at async file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:1515:11
stackauth-1 | at async traceSpan (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:1512:9)
stackauth-1 | at async executeJavascript (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33762:9)
stackauth-1 | Extra properties: {
stackauth-1 | "extraData": {
stackauth-1 | "exitCode": 127,
stackauth-1 | "vmId": "vm-5d7d380470f9432f9976f6210ce9cb0e",
stackauth-1 | },
stackauth-1 | }
stackauth-1 | at Object.retry (file:///var/tmp/stack-runtime/apps/backend/dist/promises-BP5s22Qp.mjs:1952:36)
stackauth-1 | at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
stackauth-1 | at async runWithFallback (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33833:22)
stackauth-1 | at async file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33772:11
stackauth-1 | at async file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:1515:11
stackauth-1 | at async traceSpan (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:1512:9)
stackauth-1 | at async executeJavascript (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33762:9)
stackauth-1 | at async bundleAndExecute (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:75133:24)
stackauth-1 | at async renderEmailsForTenancyBatched (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:75282:9)
stackauth-1 | at async renderTenancyEmails (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:119224:27)
stackauth-1 | Extra properties: { "name": "RetryError" }
stackauth-1 | Cause:
stackauth-1 | HexclaveAssertionError: Freestyle VM JavaScript runner exited with non-zero code
stackauth-1 | Stack:
stackauth-1 | This is likely an error in Hexclave. Please make sure you are running the newest version and report it.
stackauth-1 | at executeJavascriptInFreestyleVm (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33460:29)
stackauth-1 | at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
stackauth-1 | at async Object.execute (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33600:11)
stackauth-1 | at async Result.retry.exponentialDelayBase (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33836:19)
stackauth-1 | at async Object.retry (file:///var/tmp/stack-runtime/apps/backend/dist/promises-BP5s22Qp.mjs:1945:15)
stackauth-1 | at async runWithFallback (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33833:22)
stackauth-1 | at async file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33772:11
stackauth-1 | at async file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:1515:11
stackauth-1 | at async traceSpan (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:1512:9)
stackauth-1 | at async executeJavascript (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33762:9)
stackauth-1 | Extra properties: {
stackauth-1 | "extraData": {
stackauth-1 | "exitCode": 127,
stackauth-1 | "vmId": "vm-5d7d380470f9432f9976f6210ce9cb0e",
stackauth-1 | },
stackauth-1 | }
stackauth-1 | Errors:
stackauth-1 | [
stackauth-1 | HexclaveAssertionError: Freestyle VM JavaScript runner exited with non-zero code
stackauth-1 | Stack:
stackauth-1 | This is likely an error in Hexclave. Please make sure you are running the newest version and report it.
stackauth-1 | at executeJavascriptInFreestyleVm (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33460:29)
stackauth-1 | at process.processTicksAndRejections (node:internal/process/task_queues:104:5)
stackauth-1 | at async Object.execute (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33600:11)
stackauth-1 | at async Result.retry.exponentialDelayBase (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33836:19)
stackauth-1 | at async Object.retry (file:///var/tmp/stack-runtime/apps/backend/dist/promises-BP5s22Qp.mjs:1945:15)
stackauth-1 | at async runWithFallback (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33833:22)
stackauth-1 | at async file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33772:11
stackauth-1 | at async file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:1515:11
stackauth-1 | at async traceSpan (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:1512:9)
stackauth-1 | at async executeJavascript (file:///var/tmp/stack-runtime/apps/backend/dist/smart-route-handler-D96JAdw9.mjs:33762:9)
stackauth-1 | Extra properties: {
stackauth-1 | "extraData": {
stackauth-1 | "exitCode": 127,
stackauth-1 | "vmId": "vm-2adf16e4eb534787a0981124f98756ee",
stackauth-1 | },
stackauth-1 | },
stackauth-1 | Ref,
stackauth-1 | ],
stackauth-1 | "innerCode": deindent`
stackauth-1 | var __defProp = Object.defineProperty;
stackauth-1 | var __getOwnPropNames = Object.getOwnPropertyNames;
stackauth-1 | var __getOwnPropSymbols = Object.getOwnPropertySymbols;
stackauth-1 | var __hasOwnProp = Object.prototype.hasOwnProperty;
stackauth-1 | var __propIsEnum = Object.prototype.propertyIsEnumerable;
stackauth-1 | var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
stackauth-1 | var __spreadValues = (a, b) => {
stackauth-1 | for (var prop in b || (b = {}))
stackauth-1 | if (__hasOwnProp.call(b, prop))
stackauth-1 | __defNormalProp(a, prop, b[prop]);
stackauth-1 | if (__getOwnPropSymbols)
stackauth-1 | for (var prop of __getOwnPropSymbols(b)) {
stackauth-1 | if (__propIsEnum.call(b, prop))
stackauth-1 | __defNormalProp(a, prop, b[prop]);
stackauth-1 | }
stackauth-1 | return a;
stackauth-1 | };
stackauth-1 | var __esm = (fn, res) => function __init() {
stackauth-1 | return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
stackauth-1 | };
stackauth-1 | var __export = (target, all) => {
stackauth-1 | for (var name in all)
stackauth-1 | __defProp(target, name, { get: all[name], enumerable: true });
stackauth-1 | };
stackauth-1 | var __async = (__this, __arguments, generator) => {
stackauth-1 | return new Promise((resolve, reject) => {
stackauth-1 | var fulfilled = (value) => {
stackauth-1 | try {
stackauth-1 | step(generator.next(value));
stackauth-1 | } catch (e) {
stackauth-1 | reject(e);
stackauth-1 | }
stackauth-1 | };
stackauth-1 | var rejected = (value) => {
stackauth-1 | try {
stackauth-1 | step(generator.throw(value));
stackauth-1 | } catch (e) {
stackauth-1 | reject(e);
stackauth-1 | }
stackauth-1 | };
stackauth-1 | var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
stackauth-1 | step((generator = generator.apply(__this, __arguments)).next());
stackauth-1 | });
stackauth-1 | };
stackauth-1 |
stackauth-1 | // virtual:/utils.tsx
stackauth-1 | import React from "react";
stackauth-1 | function findComponentValue(element, targetStackComponent) {
stackauth-1 | var _a;
stackauth-1 | const matches = [];
stackauth-1 | function traverse(node) {
stackauth-1 | var _a2;
stackauth-1 | if (!React.isValidElement(node))
stackauth-1 | return;
stackauth-1 | const type2 = node.type;
stackauth-1 | const isTarget = type2 && typeof type2 === "function" && "__hexclaveComponent" in type2 && type2.__hexclaveComponent === targetStackComponent;
stackauth-1 | if (isTarget) {
stackauth-1 | matches.push(node);
stackauth-1 | }
stackauth-1 | const children = (_a2 = node.props) == null ? void 0 : _a2.children;
stackauth-1 | if (Array.isArray(children)) {
stackauth-1 | children.forEach(traverse);
stackauth-1 | } else if (children) {
stackauth-1 | traverse(children);
stackauth-1 | }
stackauth-1 | }
stackauth-1 | traverse(element.type(element.props || {}));
stackauth-1 | if (matches.length === 0) {
stackauth-1 | return void 0;
stackauth-1 | }
stackauth-1 | if (matches.length !== 1) {
stackauth-1 | throw new Error(
stackauth-1 | \`Expected exactly one occurrence of component "\${targetStackComponent}", found \${matches.length}.\`
stackauth-1 | );
stackauth-1 | }
stackauth-1 | const matched = matches[0];
stackauth-1 | const value = (_a = matched.props) == null ? void 0 : _a.value;
stackauth-1 | if (typeof value !== "string") {
stackauth-1 | throw new Error(
stackauth-1 | \`The "value" prop of "\${targetStackComponent}" must be a string.\`
stackauth-1 | );
stackauth-1 | }
stackauth-1 | return value;
stackauth-1 | }
stackauth-1 | var init_utils = __esm({
stackauth-1 | "virtual:/utils.tsx"() {
stackauth-1 | }
stackauth-1 | });
stackauth-1 |
stackauth-1 | // virtual:/template-0.tsx
stackauth-1 | var template_0_exports = {};
stackauth-1 | __export(template_0_exports, {
stackauth-1 | EmailTemplate: () => EmailTemplate,
stackauth-1 | variablesSchema: () => variablesSchema
stackauth-1 | });
stackauth-1 | import { Fragment, jsx } from "react/jsx-runtime";
stackauth-1 | function EmailTemplate() {
stackauth-1 | return /* @__PURE__ */ jsx(Fragment, { children: /* @__PURE__ */ jsx("div", { dangerouslySetInnerHTML: { __html: '\\n
\\n
\\n
\\n
\\n
\\n \\n Set Up / Reset Your Password\\n
\\nHello,
\\nAn Administrator from Wareflex-Staging has sent you a request to set up or reset your password for your Wareflex Console account.
\\nPlease click the button below to complete your password setup:
\\n \\n\\n \\n Set / Reset Password\\n \\n
\\n\\n Source: hexclave/hexclave