New App Builder Resources Fail

  1. My goal: Test out the new app builder
  2. Issue: I’ve recently updated to 4.34-stable and I am looking to try out the new app builder. I got the app builder itself working, but all of my resources don’t work. They still work on classic apps. All return Internal Server Error.
  3. Retool version & hosting setup (Docker, K8s, cloud provider, etc.): 4.34.2-stable hosted with docker. I know this is not a supported production method anymore, but if its available for testing then I’m expecting it will work still
  4. Error message(s) or screenshots: I get the following error from the js-executor: js-executor-1 | {"dd":{"service":"js_executor_service","span_id":"2875346604596029887","trace_id":"5771764534021445670"},"error":{"name":"BackendStreamError"},"executionId":"7a5a0083-5477-40d1-9537-3d8d66727618","level":"error","message":"JsExecutorTokenSwappingProxy error handling request","orgId":1,"origin":"R2","pid":17,"requestId":"7a5a0083-5477-40d1-9537-3d8d66727618","serverlessFunctionId":"/backend/salesdata/getBulkDataFirstRow.ts","timestamp":"2026-09-10T02:12:59.150Z","userId":55}

Summary

On a self-hosted Retool 4.34.2-stable deployment running via Docker, the new app builder loads but every resource fails with 'Internal Server Error' (js-executor BackendStreamError / JsExecutorTokenSwappingProxy), while the same resources continue to work in classic apps.

AI Response

This is expected when the new app builder's supporting services aren't fully enabled and configured on a self-hosted instance. Per Retool's 4.34 self-hosted architecture docs, classic apps work out of the box, but the new app builder routes resource calls through backend functions executed by the js-executor container, which must be explicitly enabled alongside its prerequisites. Enabling it requires setting rr.enabled: true (which turns on the js-executor, agent-sandbox, and rr.gitServer together), configuring blob storage, having your Retool ingress in place, and applying the required custom Linux seccomp profile on each node for the js-executor. These settings are managed through Helm values, and Kubernetes with Helm is the officially supported deployment method for the new app builder — a Docker Compose setup lacks the service configuration needed for backend function execution, which is why the js-executor is throwing errors while classic app resources (served by the DB_CONNECTOR) still work.

Sources

:bookmark: System architecture of self-hosted Retool deployments | Retool Docs
States that self-hosted classic apps work out of the box, but the new app builder requires enabling the js-executor (via rr.enabled: true), blob storage, ingress, and a seccomp profile through Helm — directly explaining why backend-function-driven resources fail here.
:bookmark: Backend function trigger throws internal runtime error
A related report of the new app builder's backend function execution throwing an internal runtime error, corroborating that resource calls in the new builder run through the backend function/js-executor path.

The Community Team is testing out a new automation. Let us know if it's helpful (or not) by leaving a :heart:, :+1:, or :-1:. Or by marking this post as the "Solution"! Let us know if you have any feedback here. :rocket:

This specific error occurs the JS Executor service can't reach the backend. For the Docker set up, it might mean that the env variable WORKFLOW_BACKEND_HOST isn't configured in a compatible way (e.g., if it's set to localhost:3000, the proxy might forward HTTP requests to itself itself rather than to the backend pod).