Backport the Orbit GA changes to 19.5

What does this MR do and why?

Backports to 19.5 the 46 Orbit and related MRs merged to master after the 19.5 cutoff (2026-10-12 13:08 UTC). One cherry-pick commit per MR, in table order, plus one conflict fix for !263077 (merged) and one commit for the changelog entry. Most are features: needs a release manager exception.

MRs

# MR Area Change Author Approved Merged
1 !260940 (merged) Monetization Use the Orbit promo gate for billing namespace candidates jgdoyon1 2026-10-12 2026-10-12
2 !261364 (merged) UI Replace the Orbit empty state with the Off page jgdoyon1 2026-10-12 2026-10-12
3 !261396 (merged) Query Report unsupported resource types in Orbit redaction michaelangeloio 2026-10-12 2026-10-12
4 !255038 (merged) Monetization Block Orbit queries when no billing namespace can be resolved snachnolkar 2026-10-12 2026-10-12
5 !261557 (merged) UI List only Orbit groups the user can query on the dashboard jgdoyon1 2026-10-12 2026-10-12
6 !261394 (merged) UI Add the Group status tab to the Orbit dashboard jgdoyon1 2026-10-12 2026-10-12
7 !261635 (merged) Monetization Resolve the Orbit access state for 10 groups and check the admin turn on jgdoyon1 2026-10-12 2026-10-12
8 !261783 (merged) Monetization Change orbit_promo_access_gate flag type to gitlab_com_derisk dgruzd 2026-10-13 2026-10-13
9 !261883 (merged) UI Stop the Orbit Overview waiting on groups that never index jgdoyon1 2026-10-13 2026-10-13
10 !261892 (merged) UI Show the Orbit counts of the groups that answer jgdoyon1 2026-10-13 2026-10-13
11 !261894 (merged) Platform Move the Orbit GraphQL API under one orbit object jgdoyon1 2026-10-13 2026-10-14
12 !261927 (merged) Query Update dependency gitlab-orbit-proto to v0.137.1 gitlab-dependency-update-bot 2026-10-14 2026-10-14
13 !262136 (merged) Monetization Add the Orbit billing account for top-level groups jgdoyon1 2026-10-14 2026-10-14
14 !262214 (merged) UI Keep the Orbit overview globe while new projects index jgdoyon1 2026-10-14 2026-10-14
15 !262193 (merged) UI Point Orbit "Leave feedback" link to open master feedback epic mvanremmerden 2026-10-14 2026-10-14
16 !262267 (merged) UI Update the Orbit Quickstart, overview card, and group status billing link jgdoyon1 2026-10-14 2026-10-14
17 !261207 (merged) MCP Register Orbit tools in the main MCP server michaelangeloio 2026-10-15 2026-10-15
18 !261155 (merged) Monetization Disable beta Orbit enrollments on GitLab.com at GA dgruzd 2026-10-15 2026-10-15
19 !262469 (merged) MCP Cover non-object JSON query string in Orbit command tool spec dgruzd 2026-10-15 2026-10-15
20 !260931 (merged) MCP Answer Orbit MCP notifications with 202 Accepted jmrp 2026-10-15 2026-10-15
21 !261678 (merged) Monetization Add the self-managed Orbit instance trial jgdoyon1 2026-10-15 2026-10-15
22 !262502 (merged) UI Show the Orbit node sidebar below the indexing button jgdoyon1 2026-10-15 2026-10-15
23 !262545 (merged) Monetization Declare the external dependency of the Orbit trial cron jgdoyon1 2026-10-15 2026-10-15
24 !262544 (merged) UI Remove Beta badges from the Orbit UI jgdoyon1 2026-10-15 2026-10-15
25 !262603 (merged) Monetization Allow Orbit indexing without a trial on GitLab Self-Managed jgdoyon1 2026-10-15 2026-10-15
26 !262325 (merged) UI List the groups of the Orbit token on the Orbit dashboard jgdoyon1 2026-10-15 2026-10-16
27 !262749 (merged) Monetization Record direct Orbit enrollments on self-managed dgruzd 2026-10-16 2026-10-16
28 !262337 (merged) Monetization Show the Orbit access rule on every Orbit page and index instances without a trial jgdoyon1 2026-10-16 2026-10-16
29 !262992 (merged) UI Remove the unused Orbit schema type validators jgdoyon1 2026-10-16 2026-10-17
30 !263010 (merged) UI Redesign the Orbit Schema tab as a clustered graph jgdoyon1 2026-10-17 2026-10-17
31 !263038 (merged) Query Stream Orbit query results through Rails in chunks michaelangeloio 2026-10-18 2026-10-18
32 !263080 (merged) Monetization Apply the Orbit GA indexing billing rules jgdoyon1 2026-10-18 2026-10-18
33 !263091 (merged) Monetization Ask CustomersDot-ineligible groups to purchase Orbit jgdoyon1 2026-10-19 2026-10-19
34 !263083 (merged) UI Serve the Orbit schema through GraphQL michaelangeloio 2026-10-19 2026-10-19
35 !263099 (merged) Monetization Move the Orbit trial end to the group billing account jgdoyon1 2026-10-19 2026-10-19
36 !263063 (merged) Monetization Change orbit_trial flag type to beta dgruzd 2026-10-19 2026-10-19
37 !263232 (merged) Query Enable orbit_query_in_rails by default dgruzd 2026-10-19 2026-10-19
38 !262486 (merged) UI Point Duo Chat Orbit "Leave feedback" link to master epic mvanremmerden 2026-10-19 2026-10-19
39 !262737 (merged) Indexing Add repository_storage to Knowledge Graph code indexing tasks dgruzd 2026-10-19 2026-10-19
40 !263077 (merged) Query Remove the orbit_query_in_rails feature flag michaelangeloio 2026-10-19 2026-10-19
41 !263371 (merged) Monetization Fix Orbit settings and dashboard issues from the monetization E2E run jgdoyon1 2026-10-20 2026-10-20
42 !260668 (merged) MCP Add a WWW-Authenticate challenge to insufficient scope errors jmrp 2026-10-12 2026-10-12
43 !261813 (merged) MCP Answer refused tokens on the MCP endpoints with their challenge jmrp 2026-10-17 2026-10-17
44 !263719 (merged) Query Add SKIP and OFFSET to the Orbit query editor aalgutifan 2026-10-20 2026-10-20
45 !263611 (merged) UI Make the Orbit UI copy correct and consistent before GA jgdoyon1 2026-10-21 2026-10-21
46 !263777 (merged) Monetization Say that indexing continues on the Orbit settings after the trial jgdoyon1 2026-10-21 2026-10-21
Selection

MRs merged to master after the cutoff, queried on 2026-10-21 14:30 UTC:

  1. Label groupcontext-systems.
  2. Orbit authors: jgdoyon1, michaelangeloio, dgruzd, snachnolkar, jmrp, mvanremmerden, aalgutifan, michaelusa, bohdanpk.
  3. Diff lines that mention orbit or knowledge_graph, any author.

All Orbit results are in the table. Related: !260668 (merged) and !261813 (merged) fix the OAuth challenge on /api/v4/orbit/mcp. Already on 19-5-stable-ee: !262112 (merged), !262513 (merged), !262140 (merged).

Excluded:

Dependencies: a cherry-pick dry run on 19-5-stable-ee applies all picks in order. Conflicts:

  • !263077 (merged): keep 19.5 labkit and gopb in workhorse/go.mod, the other rows of doc/auth/tokens/fine_grained_access_tokens_rest.md, and one test name in mcp_test.go.
  • !261813 (merged): keep 19.5 doc/user/model_context_protocol/mcp_server.md (no matching section in 19.5).

Verification

Points for reviewers

Local tests

Dry run of the first 41 picks: Jest 1,461, Go 644, RSpec 5,467, ESLint and GraphQL docs clean. 6 RSpec failures pass on re-run (test order, shared test DB; same on master). !260668 (merged) and !261813 (merged): syntax and RuboCop clean. !263719 (merged), !263611 (merged), !263777 (merged): 918 Jest examples pass.

MR acceptance checklist

  • This MR is backporting a bug fix, documentation update, or spec fix, previously merged in the default branch. Not the case for most MRs: release manager exception requested.
  • The MRs on the default branch have been deployed to GitLab.com.
  • The MR title is descriptive.
  • 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 the e2e:test-on-omnibus-ee job) has succeeded.

Note to the merge request author and maintainer

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

References

Edited by Jean-Gabriel Doyon

Merge request reports

Loading
Loading