Forge Staging Review and Testing for Anton
# Forge App Staging Test Report ## Installation Install via the `forge install` command was straightforward ✅ ```shell ❯ forge install -e staging ? Select an Atlassian app or platform tool: Jira ? Enter the site URL: antons-gitlab-sandbox.atlassian.net Your app will be installed with the following scopes: - read:connect-jira - write:connect-jira - delete:connect-jira Your app will exchange data with the following urls: - gitlab.com ? Do you want to continue? Yes ✔ Install in Jira complete! ``` > **Note:** During uninstall testing, another developer's forge app (Ben King's) was visible in the app list. This is presumably a staging environment behaviour. ```shell ❯ forge uninstall -e staging ? Select where to uninstall the app: ┌─────────────┬─────────────────────────────────────┬───────────────┐ │ Environment │ Site │ Atlassian app │ ├─────────────┼─────────────────────────────────────┼───────────────┤ │ ❯ staging │ antons-gitlab-sandbox.atlassian.net │ Jira │ ├─────────────┼─────────────────────────────────────┼───────────────┤ │ ◯ staging │ bking-gitlab.atlassian.net │ Jira │ └─────────────┴─────────────────────────────────────┴───────────────┘ ``` Installing the app replaced the Connect app of the same app ID as expected ✅ ## Setup Once installed, the app was connected to `gitlab.com` without issue. ## Feature Testing ### gitlab.com (SaaS) | Feature | Status | |---|---| | Login to the app | ✅ | | Add group link | ✅ | | Remove group link | ✅ | | Search for group | ✅ | | Initial backfill (100 branches + latest commit, 100 merge requests) | ✅ | | Create branch and synced to Jira | ✅ | | Create commit and synced to Jira | ✅ | | Create deployment and synced to Jira | ✅ | | Create merge request and synced to Jira | ✅ | | Create pipeline and synced to Jira | ✅ | | Create feature request and synced to Jira | ✅ | | Create branch via development panel | ✅ | ### gitlab.asmith.nz (Self-Managed) | Feature | Status | |---|---| | Login to the app | ✅ | | Add group link | ✅ | | Remove group link | ✅ | | Search for group | ✅ | | Initial backfill (100 branches + latest commit, 100 merge requests) | ✅ | | Create branch and synced to Jira | ✅ | | Create commit and synced to Jira | ✅ | | Create deployment and synced to Jira | ✅ | | Create merge request and synced to Jira | ✅ | | Create pipeline and synced to Jira | ✅ | | Create feature request and synced to Jira | ✅ | ## Recommendations - **App name should include the domain:** Some customers have both the Marketplace app and a manually installed app in the same Jira instance. Without the domain in the app name, these are indistinguishable (eg. in the "Create branch" development panel dropdown). The Connect app [already handles this](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/175353) by appending the hostname for manually installed apps — the Forge app should do the same. ## Notes & Assumptions 1. **Data inheritance:** The app key is `gitlab-jira-connect-gitlab.com`. I assume the Forge app will automatically inherit any development data already synced by the Connect app since they share the same app ID. **This is high priority to confirm** — given how limited our backfill is, data not being preserved would be a significant problem for customers. 2. **Visible forge apps during uninstall:** Ben King's site (`bking-gitlab.atlassian.net`) is visible in the uninstall list, likely because we share the same app key on staging. I assume this won't affect customers but just making a note of that here. 3. **Migration transparency:** Based on the behaviour observed during testing (the Forge app replacing the Connect app of the same app ID), I assume the migration will be transparent to existing users once deployed to production. 4. **Manual installs:** Our test doesn't cover manual installs. I assume the [TESTING.md](https://gitlab.com/gitlab-org/gitlab-jira-forge/-/raw/main/TESTING.md?ref_type=heads) guide would replace the existing [manual installation docs](https://docs.gitlab.com/administration/settings/jira_cloud_app/#set-up-your-instance-for-manual-installation) for this flow but users would need to specify their GitLab self-managed URL somehow. We will need to update the docs accordingly. It's unclear how a user would generate a manifest for a manual install — I assume this hasn't been built yet, but this is a crucial install method that needs to be addressed before the end of March. 6. **Chrome bug:** The existing bug in Chrome that prevents signing into self-managed instances in the Connect app is still present in the Forge app. I'm not sure if this is a "me" issue or something more widespread, but just noting it here. ![Screenshot_2026-03-02_at_9.34.32_AM](/uploads/13e776d1c8ecf5a0679614a186c27210/Screenshot_2026-03-02_at_9.34.32_AM.png){width=900 height=569}
issue