Remove ci_pipeline_otlp_trace_correlation feature flag

What does this MR do and why?

Removes the ci_pipeline_otlp_trace_correlation feature flag (gitlab_com_derisk, introduced in 19.2 by !241952 (merged)). It is fully enabled on GitLab.com (feature-flag-log gitlab-com/gl-infra/feature-flag-log#62225).

Related to the rollout issue #603896.

Behavior now always on

  • Pipeline webhook payloads always include:
    • object_attributes.root_pipeline_id
    • top-level bridges collection (lazy, same shape as builds without artifacts_file, plus "bridge": true)
    • source_pipeline.bridge_id when source_pipeline is present
  • CI pipeline observability OTLP export always links child pipeline spans to their parent bridge span.

This also enables these payload additions for self-managed and Dedicated. They are additive, not breaking.

Changes

  • Delete config/feature_flags/gitlab_com_derisk/ci_pipeline_otlp_trace_correlation.yml.
  • lib/gitlab/data_builder/pipeline.rb: drop the flag check; always add root_pipeline_id, bridges, preload source_bridge, and set bridge_id.
  • app/services/ci/observability/export_service.rb: drop the internal trace_correlation_enabled key.
  • lib/gitlab/observability/pipeline_to_traces.rb: drop the trace_correlation_enabled guard.
  • lib/gitlab/observability/tracing_helpers.rb: warn whenever source_pipeline is present but root_pipeline_id is missing (fallback to pipeline[:id] kept).
  • Specs updated to remove flag stubs and disabled-flag contexts.

trace_correlation_enabled was only produced by Ci::Observability::ExportService and consumed by the PipelineTo* converters, so it is removed entirely.

Docs for the new webhook fields are handled in a separate follow-up MR.

How to set up and validate locally

bin/rspec spec/lib/gitlab/data_builder/pipeline_spec.rb \
  spec/services/ci/observability/export_service_spec.rb \
  spec/lib/gitlab/observability/pipeline_to_traces_spec.rb \
  spec/lib/gitlab/observability/tracing_helpers_spec.rb \
  spec/lib/gitlab/observability/pipeline_to_logs_spec.rb \
  spec/lib/gitlab/observability/pipeline_to_metrics_spec.rb

Post-merge

  • /chatops gitlab run release check <this MR URL> 19.5
  • After deploy to gprd: /chatops gitlab run feature delete ci_pipeline_otlp_trace_correlation --dev --pre --staging --staging-ref --production
  • Close #603896

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist.

Merge request reports

Loading
Loading