Backport Orbit grep and context changes and turn on monetization in 19.5

What does this MR do and why?

Backport of the two Orbit endpoint changes that merged to master and are not on 19-5-stable-ee yet, plus a stable-only change that turns on the Orbit monetization flags by default. Each MR is one git cherry-pick -m 1 -x with the same added and removed lines as the original MR. There were no conflicts and no adaptations. The branch is squashed into one commit.

# MR Change Author Merged Type
1 Add state and project references to Orbit grep ... (!264905 - merged) Add state and project references to Orbit grep results aalgutifan 2026-10-26 18:19 UTC typefeature
2 Resolve pipelines, branches, and commits in Orb... (!265236 - merged) Resolve pipelines, branches, and commits in Orbit context and grep aalgutifan 2026-10-26 23:30 UTC typefeature

Stable-only change: Orbit monetization flags on by default

This change has no master original. It is a release decision for GitLab Self-Managed and GitLab Dedicated on 19-5-stable-ee (first patch: 19.5.2).

Flag Before After
orbit_trial beta, default_enabled: false beta, default_enabled: true
orbit_promo_access_gate gitlab_com_derisk, default_enabled: false beta, default_enabled: true
  • The type of orbit_promo_access_gate changes to beta, because the gitlab_com_derisk type cannot have default_enabled: true (lib/feature/shared.rb). The definition moves from ee/config/feature_flags/gitlab_com_derisk/ to ee/config/feature_flags/beta/, and its description now covers instances.
  • doc/integration/orbit.md gets a history entry.
  • master keeps both defaults false. GitLab.com runs master, so this MR does not change GitLab.com.

Effect on an instance without an explicit flag state:

  • Orbit query access needs the orbit_promo add-on or an active instance trial, not the Premium or Ultimate plan (InstanceAccount#promo_gate? reads the flag for :instance).
  • An administrator can start the instance trial when the instance has an online cloud license and CustomersDot says it is eligible.
  • An instance with an offline or legacy license has no trial path. It needs the orbit_promo add-on.
  • If CustomersDot is unreachable, the trial status is unavailable, and Orbit queries stay locked until it answers.
  • No enrollment is deleted: DisableBetaEnrollmentsWorker and ScheduleDisableEndedTrialsWorker return early when the instance is not GitLab.com.
  • An administrator can restore plan-based access with Feature.disable(:orbit_promo_access_gate).

Readiness review for GitLab Dedicated, with the preconditions and risks: gitlab-org/orbit/knowledge-graph$6072088

How the MRs were selected
Verification
  • git patch-id --stable of each pick is the same as the one of the original merge commit. The flag commit has no original.
  • Feature::Definition loads both flags as beta with default_enabled: true (rails runner, test environment).
  • Local, on the 19-5-stable-ee dependencies: RSpec, Jest, ESLint, and RuboCop on the changed files (results in a comment).
  • MR pipeline at pipeline::tier-3.

Points for reviewers:

  • The types are mixed. The MR has type::maintenance for the stable_branch.rb Danger rule, as the GA backports had. It needs a release manager exception (ask in #releases).
  • No migrations.
  • The last commit is a stable-only change with no master original. See the section on the Orbit monetization flags.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

  • This MR is backporting a bug fix, documentation update, or spec fix, previously merged in the default branch. (Release manager exception requested.)
  • The MR that fixed the bug on the default branch has been deployed to GitLab.com (not applicable for documentation or spec changes).
  • The MR title is descriptive (e.g. "Backport of 'title of default branch MR'"). This is important, since the title will be copied to the patch blog post.
  • Required labels have been applied to this merge request
  • This MR has been approved by a maintainer (only one approval is required).
  • Ensure the E2E Omnibus GitLab EE pipeline (triggered by thee2e:test-on-omnibus-ee job) has succeeded. If it has failed (or shows warnings), investigate the failures. If you determine the failures are unrelated, you may proceed. If you need assistance investigating, request help in the #s_developer_experience Slack channel to confirm the failures are unrelated to the merge request.

Note to the merge request author and maintainer

If you have questions about the patch release process, please:

Merge request reports

Loading
Loading