500 Internal Server Error when viewing pipeline details page
Summary
Accessing the details page for a specific pipeline results in a 500 Internal Server Error. The production logs indicate a NoMethodError for a nil object (undefined method 'validity_checks_enabled' for nil:NilClass) within an Enterprise Edition view helper (pipeline_helper.rb).
Steps to reproduce
- Navigate to a project in GitLab.
- Go to
CI/CD>Pipelines. - Click on any pipeline in the list to view its details page.
- The server returns a 500 error page.
Example Project
Due to the nature of our private installation, we cannot provide a public example project.
What is the current bug behavior?
When a user attempts to view the details page of a specific CI/CD pipeline, the application crashes and displays a "500 - Whoops, something went wrong on our end" page.
What is the expected correct behavior?
The pipeline details page should load correctly, showing the various tabs such as Jobs, Tests, DAG, etc.
Relevant logs and/or screenshots
Here is the relevant excerpt from the production_json.log. Sensitive information has been anonymized.
{
"component": "gitlab",
"subcomponent": "production_json",
"method": "GET",
"path": "/my-group/my-project/-/pipelines/146021",
"format": "html",
"controller": "Projects::PipelinesController",
"action": "show",
"status": 500,
"time": "2025-09-22T15:16:12.288Z",
"params": [
{
"key": "namespace_id",
"value": "my-group"
},
{
"key": "project_id",
"value": "my-project"
},
{
"key": "id",
"value": "146021"
}
],
"correlation_id": "01K5RZYAH7N7XAGTVHK6ZFJ6KC",
"meta.caller_id": "Projects::PipelinesController#show",
"meta.feature_category": "continuous_integration",
"meta.user": "[USERNAME]",
"meta.user_id": 239,
"meta.project": "my-group/my-project",
"remote_ip": "10.25.60.95",
"user_id": 239,
"username": "[USERNAME]",
"ua": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36",
"exception.class": "ActionView::Template::Error",
"exception.message": "undefined method `validity_checks_enabled' for nil:NilClass",
"exception.backtrace": [
"ee/app/helpers/ee/projects/pipeline_helper.rb:25:in `js_pipeline_tabs_data'",
"app/views/projects/pipelines/show.html.haml:28",
"app/controllers/application_controller.rb:153:in `render'",
"app/controllers/projects/pipelines_controller.rb:242:in `block (2 levels) in render_show'",
"app/controllers/projects/pipelines_controller.rb:240:in `render_show'",
"app/controllers/projects/pipelines_controller.rb:119:in `block (2 levels) in show'",
"app/controllers/projects/pipelines_controller.rb:118:in `show'",
"app/controllers/application_controller.rb:534:in `block in allow_gitaly_ref_name_caching'",
"lib/gitlab/gitaly_client.rb:479:in `allow_ref_name_caching'",
"app/controllers/application_controller.rb:533:in `allow_gitaly_ref_name_caching'"
],
"exception.cause_class": "NoMethodError",
"duration_s": 0.2902
}
Output of checks
Results of GitLab environment info
Expand for output related to GitLab environment info
Results of GitLab application Check
Expand for output related to the GitLab application check
Possible fixes
The backtrace points to an error in ee/app/helpers/ee/projects/pipeline_helper.rb on line 25, within the js_pipeline_tabs_data method. It appears an object is nil when the method validity_checks_enabled is called on it. This could be due to an issue with loading associated pipeline data before rendering the view.