Skip to content

NO-JIRA: Add linked repository and review details to CodeRabbit config to console-operator repo#16089

Open
sg00dwin wants to merge 1 commit intoopenshift:mainfrom
sg00dwin:NO-JIRA-linked-repos-coderabbit
Open

NO-JIRA: Add linked repository and review details to CodeRabbit config to console-operator repo#16089
sg00dwin wants to merge 1 commit intoopenshift:mainfrom
sg00dwin:NO-JIRA-linked-repos-coderabbit

Conversation

@sg00dwin
Copy link
Member

@sg00dwin sg00dwin commented Mar 2, 2026

New Feature: CodeRabbit's new linked repositories feature enables cross-repo review that detects breaking changes, API mismatches, and dependency issues across repository boundaries.

Limitation: Currently only one linked repository is supported (multiple support planned)

Additional changes:

  • Required by org - Added inheritance: true at the top level. This ensures repo-level config inherits from the org-level settings, so organizational safety checks aren't bypassed.
  • Add schema reference
  • Remove unnecessary comments

Remaining required changes for cross-repo enablement

  1. Enabled: Coderabbit is not currently enabled on https://github.com/openshift/console-operator (Request ticket opened)
  2. Linked reference: It's https://github.com/openshift/console-operator/blob/main/.coderabbit.yaml should be updated and cross linked
linked_repositories:
  - repository: "openshift/console-operator"

Summary

  • Link openshift/console-operator as a cross-repo review target so CodeRabbit can detect breaking changes
    across the shared types and CRD lifecycle boundary
  • Enable review_details so cross-repo findings are visible in PR reviews
linked_repositories:
  - repository: "openshift/console-operator"

Test plan

  • Verify CodeRabbit bot has read access to openshift/console-operator
  • Open a test PR touching pkg/serverconfig/types.go and confirm cross-repo context appears under "Review
    details > Additional context used"

Summary by CodeRabbit

  • Chores
    • Updated code review configuration to enhance cross-repository review visibility.
    • Added documentation for repository synchronization requirements and related configuration details.

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Mar 2, 2026
@openshift-ci-robot
Copy link
Contributor

@sg00dwin: This pull request explicitly references no jira issue.

Details

In response to this:

New Feature: CodeRabbit's new linked repositories feature enables cross-repo review that detects breaking changes, API mismatches, and dependency issues across repository boundaries.

Limitation: Currently only one linked repository is supported (multiple support planned)

Remaining required changes for cross-repo enablement

  1. Enabled: Coderabbit is not currently enabled on https://github.com/openshift/console-operator (Request ticket opened)
  2. Linked reference: It's https://github.com/openshift/console-operator/blob/main/.coderabbit.yaml should be updated and cross linked
linked_repositories:
  - repository: "openshift/console-operator"

Summary

  • Link openshift/console-operator as a cross-repo review target so CodeRabbit can detect breaking changes
    across the shared types and CRD lifecycle boundary
  • Enable review_details so cross-repo findings are visible in PR reviews
linked_repositories:
  - repository: "openshift/console-operator"

Test plan

  • Verify CodeRabbit bot has read access to openshift/console-operator
  • Open a test PR touching pkg/serverconfig/types.go and confirm cross-repo context appears under "Review
    details > Additional context used"

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci openshift-ci bot requested review from rhamilto and spadgett March 2, 2026 17:49
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Mar 2, 2026

📝 Walkthrough

Walkthrough

This change modifies the .coderabbit.yaml configuration file to add two new settings. The review_details option under the reviews section is set to true, enabling visibility of cross-repository review details. Additionally, a linked_repositories section is introduced with a configuration entry for openshift/console-operator that includes documentation about synchronizing specific types.go structs and flags affecting ConsolePlugin CRD lifecycle, plugin enablement, routing/ingress, and runtime feature gates. No modifications to existing logic or error handling are present; this is purely a configuration expansion.

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The PR title clearly and specifically describes the main change: adding linked repository configuration and enabling review details for the CodeRabbit config file targeting the console-operator repo.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.coderabbit.yaml:
- Around line 92-93: The linked-repo path in the .coderabbit.yaml comment
incorrectly points to pkg/console/consoleserver/types.go; update the text so the
sync note references the correct console-operator contract path
pkg/console/subresource/consoleserver/types.go (i.e., change the string in the
comment that currently reads "pkg/console/consoleserver/types.go" to
"pkg/console/subresource/consoleserver/types.go" so the sync boundary for
pkg/serverconfig/types.go is accurate).

ℹ️ Review info

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Cache: Disabled due to data retention organization setting

Knowledge base: Disabled due to data retention organization setting

📥 Commits

Reviewing files that changed from the base of the PR and between 4a2ba98 and 11b77ea.

📒 Files selected for processing (1)
  • .coderabbit.yaml
📜 Review details
🧰 Additional context used
🔀 Multi-repo context openshift/console-operator

Linked repositories findings

openshift/console-operator

  • .coderabbit.yaml in the PR links to this repository; relevant consumers and shared contracts found here. [::openshift/console-operator::]

  • Console server config types referenced:

    • pkg/console/subresource/consoleserver/types.go contains a direct reference/comment linking to console/pkg/serverconfig/types.go. This indicates the console-operator expects the console repo's serverconfig types to remain compatible. [::openshift/console-operator::pkg/console/subresource/consoleserver/types.go:1-200]
  • ConsolePlugin CRD and types are heavily used (potentially impacted by console changes):

    • tests and helpers construct and manipulate ConsolePlugin resources:
      • test/e2e/plugins_test.go (getPlugin/createConsolePlugin/deleteConsolePlugin). [::openshift/console-operator::test/e2e/plugins_test.go:1-200]
    • operator and sync logic consume ConsolePlugin:
      • pkg/console/operator/operator.go (listers/informers for ConsolePlugin). [::openshift/console-operator::pkg/console/operator/operator.go:1-200]
      • pkg/console/operator/sync_v400.go (GetAvailablePlugins). [::openshift/console-operator::pkg/console/operator/sync_v400.go:1-200]
      • pkg/console/starter/starter.go (lists ConsolePlugins and reads feature gate ConsolePluginContentSecurityPolicy). [::openshift/console-operator::pkg/console/starter/starter.go:1-200]
    • storage version migration and CRD handling reference the ConsolePlugin CRD name and storedVersions:
      • pkg/console/controllers/storageversionmigration/controller.go (ConsolePlugin CRD storedVersions handling). [::openshift/console-operator::pkg/console/controllers/storageversionmigration/controller.go:1-200]
  • Feature gates and plugin-related gating:

    • FeatureGate access and checks present (ConsolePluginContentSecurityPolicy, ExternalOIDC, etc.). Changes to feature-gate names or semantics in console could affect behavior:
      • pkg/console/starter/starter.go (feature gate initialization and checks). [::openshift/console-operator::pkg/console/starter/starter.go:1-200]
      • pkg/console/operator/sync_v400.go (reads FeatureGate resource). [::openshift/console-operator::pkg/console/operator/sync_v400.go:1-200]
      • test/e2e/framework/console-operator.go (IsFeatureGateSet helper). [::openshift/console-operator::test/e2e/framework/console-operator.go:1-200]
  • CRD manifests and generation:

    • tools import console API CRD manifests and Dockerfiles copy vendor CRD manifests (vendor/github.com/openshift/api/console/v1/zz_generated.crd-manifests). Changes to console API types or CRD group/version in console repo could require synchronized updates here. [::openshift/console-operator::tools/tools.go][::openshift/console-operator::Dockerfile.ocp:1-200]

Summary assessment:

  • The console-operator repo directly consumes console repo types/contracts via serverconfig types and ConsolePlugin CRD/types, and relies on specific feature gate names. Adding the console repo as a linked repository in .coderabbit.yaml is appropriate: changes to pkg/serverconfig/types.go, ConsolePlugin types/CRD, or feature-gate names in the console repo could be breaking and should surface cross-repo review details. [::openshift/console-operator::]
🔇 Additional comments (1)
.coderabbit.yaml (1)

72-73: Good enablement for cross-repo visibility.

review_details: true is the right toggle here and directly supports the PR goal of surfacing linked-repo context in reviews.

.coderabbit.yaml Outdated
Comment on lines +92 to +93
pkg/serverconfig/types.go is synchronized with console-operator's
pkg/console/consoleserver/types.go - these structs MUST remain in sync.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

Correct the console-operator path in linked-repo instructions.

Line 93 references pkg/console/consoleserver/types.go, but the linked repository contract is under pkg/console/subresource/consoleserver/types.go. This mismatch can reduce cross-repo signal quality for the exact sync boundary you want protected.

Suggested fix
-        pkg/serverconfig/types.go is synchronized with console-operator's
-        pkg/console/consoleserver/types.go - these structs MUST remain in sync.
+        pkg/serverconfig/types.go is synchronized with console-operator's
+        pkg/console/subresource/consoleserver/types.go - these structs MUST remain in sync.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
pkg/serverconfig/types.go is synchronized with console-operator's
pkg/console/consoleserver/types.go - these structs MUST remain in sync.
pkg/serverconfig/types.go is synchronized with console-operator's
pkg/console/subresource/consoleserver/types.go - these structs MUST remain in sync.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.coderabbit.yaml around lines 92 - 93, The linked-repo path in the
.coderabbit.yaml comment incorrectly points to
pkg/console/consoleserver/types.go; update the text so the sync note references
the correct console-operator contract path
pkg/console/subresource/consoleserver/types.go (i.e., change the string in the
comment that currently reads "pkg/console/consoleserver/types.go" to
"pkg/console/subresource/consoleserver/types.go" so the sync boundary for
pkg/serverconfig/types.go is accurate).

@sg00dwin
Copy link
Member Author

sg00dwin commented Mar 2, 2026

/label tide/merge-method-squash

@openshift-ci openshift-ci bot added the tide/merge-method-squash Denotes a PR that should be squashed by tide when it merges. label Mar 2, 2026
@sg00dwin sg00dwin force-pushed the NO-JIRA-linked-repos-coderabbit branch from c5c1a35 to 26ab81c Compare March 3, 2026 19:14
Added inheritance: true at the top level. This ensures repo-level config inherits from the org-level settings, so organizational safety checks aren't bypassed.
Add CR schema
Remove comments
@sg00dwin sg00dwin force-pushed the NO-JIRA-linked-repos-coderabbit branch from 26ab81c to aeb4a16 Compare March 4, 2026 00:09
@jhadvig
Copy link
Member

jhadvig commented Mar 4, 2026

/override ci/prow/e2e-gcp-console

@jhadvig
Copy link
Member

jhadvig commented Mar 4, 2026

/lgtm

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Mar 4, 2026
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Mar 4, 2026

@jhadvig: Overrode contexts on behalf of jhadvig: ci/prow/e2e-gcp-console

Details

In response to this:

/override ci/prow/e2e-gcp-console

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Mar 4, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: jhadvig, sg00dwin

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Mar 4, 2026

@sg00dwin: all tests passed!

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Mar 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. lgtm Indicates that a PR is ready to be merged. tide/merge-method-squash Denotes a PR that should be squashed by tide when it merges.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants