RocketChat / RocketChat/Rocket.Chat
Registration bricks the instance
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 46.1k
- Forks
- 13.9k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 130
Description
Description:
I have an empty test instance. The setup wizard starts as usual, I make an online registration. At the end of the process it asks me for my password, I enter it, but get errors regarding 2FA (I was able to login into the instance before this mess, it was just not registered and I had the setup wizard successfully disabled. I enabled it just for this test). On cloud.rocket.chat the instance is registered (with starter license although I have disable this subscription and am running community license!).
However, the instance itself is not usable from this point on. The setup wizard stays there, whatever I do:
- env var
OVERWRITE_SETTING_Show_Setup_Wizardis set tocompleted - mongo db settings var
Show_Setup_Wizardis set tocompletedas well.
So, the instance is bricked, I cannot use it anymore. Thanks goodness this didn't happen with our prod instance.
Steps to reproduce:
I followed your online registration process.
Expected behavior:
Be able to login into the instance after registration.
Actual behavior:
Persisting setup wizard loop.
These are the 2fa errors I get:
(nothing more, there's nothing in the logs, even though I have debug logging enabled).
Server Setup Information:
- Version of Rocket.Chat Server: 8.8.1
- License Type: brick
- Number of Users: 1
- Operating System: ubunt latest
- Deployment Method: kubernetes helm chart
- Number of Running Instances: 1
- MongoDB Version: 8.0.26-ubi8
Client Setup Information
- Desktop App or Browser Version: Chromium
- Operating System: Ubuntu
Additional context
I tried the offline registration as well (by denying outbound access to cloud.rocket.chat) with the same result.
Relevant logs:
rocketchat-fitstest-rocketchat-79879d95bb-wpknn rocketchat {"level":50,"time":"2026-09-15T07:29:46.847Z","pid":1,"hostname":"rocketchat-fitstest-rocketchat-79879d95bb-wpknn","name":"System","msg":"Failed to register workspace pre-intent with Rocket.Chat Cloud","url":"/api/v2/register/workspace/pre-intent","err":{"type":"AbortError","message":"The user aborted a request.","stack":"AbortError: The user aborted a request.\n at abort (/app/bundle/programs/server/npm/node_modules/node-fetch/lib/index.js:1458:16)\n at AbortSignal.abortAndFinalize (/app/bundle/programs/server/npm/node_modules/node-fetch/lib/index.js:1473:4)\n at AbortSignal.dispatchEvent (/app/bundle/programs/server/npm/node_modules/event-target-shim/dist/event-target-shim.js:818:35)\n at abortSignal (/app/bundle/programs/server/npm/node_modules/abort-controller/dist/abort-controller.js:52:12)\n at AbortController.abort (/app/bundle/programs/server/npm/node_modules/abort-controller/dist/abort-controller.js:91:9)\n at Timeout.<anonymous> (/app/bundle/programs/server/npm/node_modules/@rocket.chat/server-fetch/dist/index.js:109:51)\n at listOnTimeout (node:internal/timers:585:17)\n at processTimers (node:internal/timers:521:7)","name":"AbortError"}}
rocketchat-fitstest-rocketchat-79879d95bb-wpknn rocketchat {"level":50,"time":"2026-09-15T07:31:45.029Z","pid":1,"hostname":"rocketchat-fitstest-rocketchat-79879d95bb-wpknn","name":"System","msg":"Failed to register workspace pre-intent with Rocket.Chat Cloud","url":"/api/v2/register/workspace/pre-intent","err":{"type":"AbortError","message":"The user aborted a request.","stack":"AbortError: The user aborted a request.\n at abort (/app/bundle/programs/server/npm/node_modules/node-fetch/lib/index.js:1458:16)\n at AbortSignal.abortAndFinalize (/app/bundle/programs/server/npm/node_modules/node-fetch/lib/index.js:1473:4)\n at AbortSignal.dispatchEvent (/app/bundle/programs/server/npm/node_modules/event-target-shim/dist/event-target-shim.js:818:35)\n at abortSignal (/app/bundle/programs/server/npm/node_modules/abort-controller/dist/abort-controller.js:52:12)\n at AbortController.abort (/app/bundle/programs/server/npm/node_modules/abort-controller/dist/abort-controller.js:91:9)\n at Timeout.<anonymous> (/app/bundle/programs/server/npm/node_modules/@rocket.chat/server-fetch/dist/index.js:109:51)\n at listOnTimeout (node:internal/timers:585:17)\n at processTimers (node:internal/timers:521:7)","name":"AbortError"}}
rocketchat-fitstest-rocketchat-79879d95bb-wpknn rocketchat {"level":50,"time":"2026-09-15T07:32:40.901Z","pid":1,"hostname":"rocketchat-fitstest-rocketchat-79879d95bb-wpknn","name":"System","msg":"Failed to register workspace pre-intent with Rocket.Chat Cloud","url":"/api/v2/register/workspace/pre-intent","err":{"type":"AbortError","message":"The user aborted a request.","stack":"AbortError: The user aborted a request.\n at abort (/app/bundle/programs/server/npm/node_modules/node-fetch/lib/index.js:1458:16)\n at AbortSignal.abortAndFinalize (/app/bundle/programs/server/npm/node_modules/node-fetch/lib/index.js:1473:4)\n at AbortSignal.dispatchEvent (/app/bundle/programs/server/npm/node_modules/event-target-shim/dist/event-target-shim.js:818:35)\n at abortSignal (/app/bundle/programs/server/npm/node_modules/abort-controller/dist/abort-controller.js:52:12)\n at AbortController.abort (/app/bundle/programs/server/npm/node_modules/abort-controller/dist/abort-controller.js:91:9)\n at Timeout.<anonymous> (/app/bundle/programs/server/npm/node_modules/@rocket.chat/server-fetch/dist/index.js:109:51)\n at listOnTimeout (node:internal/timers:585:17)\n at processTimers (node:internal/timers:521:7)","name":"AbortError"}}
rocketchat-fitstest-rocketchat-79879d95bb-wpknn rocketchat {"level":50,"time":"2026-09-15T07:36:58.101Z","pid":1,"hostname":"rocketchat-fitstest-rocketchat-79879d95bb-wpknn","name":"System","msg":"Failed to get confirmation poll from Rocket.Chat Cloud","url":"/api/v2/register/workspace/poll","err":{"type":"Error","message":"Failed to retrieve registration confirmation poll data: Not Found","stack":"Error: Failed to retrieve registration confirmation poll data: Not Found\n at getConfirmationPoll (server/lib/cloud/getConfirmationPoll.ts:26:10)\n at processTicksAndRejections (node:internal/process/task_queues:103:5)\n at Object.action (server/api/v1/cloud.ts:180:20)\n at Object._internalRouteActionHandler (server/api/ApiClass.ts:923:18)\n at /app/bundle/programs/server/npm/node_modules/@rocket.chat/http-router/dist/Router.js:164:30\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at server/api/v1/middlewares/logger.ts:31:3\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at server/api/v1/middlewares/cors.ts:22:4\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at server/api/v1/middlewares/tracer.ts:20:4"}}
rocketchat-fitstest-rocketchat-79879d95bb-wpknn rocketchat {"level":50,"time":"2026-09-15T07:37:02.828Z","pid":1,"hostname":"rocketchat-fitstest-rocketchat-79879d95bb-wpknn","name":"System","msg":"Failed to get confirmation poll from Rocket.Chat Cloud","url":"/api/v2/register/workspace/poll","err":{"type":"Error","message":"Failed to retrieve registration confirmation poll data: Not Found","stack":"Error: Failed to retrieve registration confirmation poll data: Not Found\n at getConfirmationPoll (server/lib/cloud/getConfirmationPoll.ts:26:10)\n at processTicksAndRejections (node:internal/process/task_queues:103:5)\n at Object.action (server/api/v1/cloud.ts:180:20)\n at Object._internalRouteActionHandler (server/api/ApiClass.ts:923:18)\n at /app/bundle/programs/server/npm/node_modules/@rocket.chat/http-router/dist/Router.js:164:30\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at server/api/v1/middlewares/logger.ts:31:3\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at server/api/v1/middlewares/cors.ts:22:4\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at dispatch (/app/bundle/programs/server/npm/node_modules/hono/dist/cjs/compose.js:43:17)\n at server/api/v1/middlewares/tracer.ts:20:4"}}
rocketchat-fitstest-rocketchat-79879d95bb-wpknn rocketchat {"level":51,"time":"2026-09-15T07:37:09.520Z","pid":1,"hostname":"rocketchat-fitstest-rocketchat-79879d95bb-wpknn","name":"License","msg":"License installed","version":"3.0","hash":"KRgC4X30"}
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the online and offline registration flow on the described Kubernetes deployment, then start with server/lib/cloud/getConfirmationPoll.ts and the registration route in server/api/v1/cloud.ts. Use the reported 2FA errors and registration logs to trace the setup-wizard state. Done means registration completes without the loop and the user can log in to the instance.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- helm, kubernetes, mongodb, typescript
- Domain
- api, authentication, backend, cloud
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100