RocketChat / RocketChat/Rocket.Chat

Incorrect redirection URL after installing a Private App

Open
#38,215 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
46.1k
Forks
13.9k
Avg merge
3d 3h
Merged PRs (30d)
130

Description

Description:

When checking for a private app and installing it, the application redirects the user to the app details page. However, the generated URL is incomplete as it misses the version segment. This causes the router to misinterpret subsequent navigation; for example, clicking on the "Settings" tab appends "settings" in place of the version parameter, breaking the UI state and preventing the settings tab from opening.

Steps to reproduce:
  1. Start as an Admin.
  2. Go to Marketplace.
  3. Click on Private Apps.
  4. Upload any private app (.zip) created using the app engine and install it.
  5. Observe the URL after redirection.
  6. Click on the Settings tab.
Expected behavior:

The user should be redirected to a complete URL including the version (e.g., /marketplace/private/info/<APP_ID>/<VERSION>/details). Clicking on tabs like "Settings" should correctly navigate to /marketplace/private/info/<APP_ID>/<VERSION>/settings and display the settings form.

Actual behavior:

The user is redirected to /marketplace/private/info/<APP_ID>.
When clicking "Settings", the URL changes to /marketplace/private/info/<APP_ID>/settings, treating "settings" as the version parameter. The UI remains on the details view or fails to load the settings context.

Server Setup Information:
  • Version of Rocket.Chat Server: Latest develop
  • License Type: All
  • Number of Users: 1
  • Operating System: Fedora Linux 43
  • Deployment Method: local
  • Number of Running Instances: 1
  • DB Replicaset Oplog: Enabled
  • NodeJS Version: v22.16.0
  • MongoDB Version: 4.4+
Client Setup Information
  • Desktop App or Browser Version: Chrome
  • Operating System: Fedora Linux 43
Additional context

The issue lies in the useInstallApp hook, where the router navigation event in the onSuccess callback does not include the version parameter from the installed app data.

Relevant logs:

N/A

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in apps/meteor/client/views/marketplace/hooks/useInstallApp.tsx, focusing on the onSuccess callback and its router navigation. Reproduce the private-app installation flow from Marketplace, then verify that the redirected URL includes the app version and that the Details and Settings tabs navigate to the correct paths.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.