Backport the 2026-10-26 Orbit changes to 19.5

What does this MR do and why?

Daily backport of the GitLab Orbit changes that merged to master and are not on 19-5-stable-ee yet. Each MR is one git cherry-pick -m 1 -x with the same added and removed lines as the original MR. Adaptations (review closely: generated files): !264917 (merged) conflicted in doc/api/openapi/openapi_v3.yaml; the stable file has no x-gitlab-tier on the two schema routes (their route_setting :tier is absent there), so only x-gitlab-lifecycle: beta became experiment. !264923 (merged) conflicted in the generated GraphQL docs; they were regenerated with rake gitlab:graphql:compile_docs (19.5 also gitlab:graphql:docs:compile) in a separate Regenerate GraphQL docs commit that is squashed into the single commit. On 19.5 the experimental docs were stale on the stable base, so the regeneration also adds the Orbit entries they were missing, and refreshes a few stale non-Orbit AI entries (for example AiGovernanceToolCall, AiFoundationalChatAgent) that match the 19.5 code. CI checks only _index.md, not experimental/ (the introspection schema check passes). The branch is squashed into one commit.

# MR Change Author Merged Type
1 Mark non-essential Orbit endpoints as experimental (!264917 - merged) Mark non-essential Orbit endpoints as experimental dgruzd 2026-10-25 17:15 UTC typemaintenance
2 Set charset on Orbit grep llm response (!264873 - merged) Set charset on Orbit grep llm response dgruzd 2026-10-25 17:17 UTC typebug
3 Send the credential type to Orbit in the query JWT (!264924 - merged) Send the credential type to Orbit in the query JWT jgdoyon1 2026-10-25 19:09 UTC typefeature
4 Mark Orbit as introduced in 19.4 and move UI st... (!264923 - merged) Mark Orbit as introduced in 19.4 and move UI status calls to GraphQL jgdoyon1 2026-10-25 19:55 UTC typefeature
5 Enable Orbit GQL queries by default (!265010 - merged) Enable Orbit GQL queries by default dgruzd 2026-10-26 14:40 UTC typefeature
How the MRs were selected
  • Sweep of all into 'master' merges since 2026-10-24 18:00 UTC: label group::context-systems, Orbit authors, and files or diff lines that match orbit|knowledge_graph.
  • Kept: Orbit code, and shared code that Orbit cannot work without.
  • Already on 19-5-stable-ee: none of these originals.
  • Single backport MRs (on request): none.
  • Not needed:
Verification
  • git patch-id --stable of each pick is the same as the one of the original merge commit, except for the adaptations above.
  • 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).
  • Endpoint changes (ee/lib/api/orbit/data.rb, the query JWT in knowledge_graph) are in the daily MR as usual: review them closely.
  • !265010 (merged) moves the orbit_gql_queries flag file from gitlab_com_derisk/ to beta/, changes its type to beta, and sets default_enabled: true. The flag file exists on both branches.
  • Behaviour change for the release manager: after this patch, Orbit queries on Self-Managed and Dedicated switch from JSON to GQL by default. Admins can switch back with Feature.disable(:orbit_gql_queries). A client that sends JSON DSL to POST /api/v4/orbit/query gets GQL parse errors until the flag is off.

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:

Edited by Dmitry Gruzd

Merge request reports

Loading
Loading