Skip to content

OTA-2084: Register agenticrunv1alpha1 in the Runtime client scheme - #1434

Merged
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
jrangelramos:fix-agenticrun-scheme-registration
Jul 28, 2026
Merged

OTA-2084: Register agenticrunv1alpha1 in the Runtime client scheme#1434
openshift-merge-bot[bot] merged 1 commit into
openshift:mainfrom
jrangelramos:fix-agenticrun-scheme-registration

Conversation

@jrangelramos

@jrangelramos jrangelramos commented Jul 27, 2026

Copy link
Copy Markdown
Member

Summary

After #1428, the agenticrun-lifecycle-controller fails to list/get AgenticRun resources because the agenticrunv1alpha1 types are not registered in the local runtime scheme introduced by that PR.

The controller logs the following errors on every sync:

I0727 18:12:05.599862       1 controller.go:189] Started syncing CVO configuration "ClusterVersionOperator/agenticrun-lifecycle-controller"
I0727 18:12:37.717030       1 cvo.go:791] Error handling ClusterVersionOperator/agenticrun-lifecycle-controller: [failed to list agentic runs: no kind is registered for the type v1alpha1.AgenticRunList in scheme "pkg/start/start.go:537", no kind is registered for the type v1alpha1.AgenticRun in scheme "pkg/start/start.go:537"]

Previously, RuntimeControllerClientOrDie used the default global scheme, which already had the agenticrun types registered via internal.AddSchemes(). The switch to a local scheme in #1428 correctly added apiextensions and operator types but missed agenticrunv1alpha1.

Fix

Add agenticrunv1alpha1.AddToScheme(runtimeScheme) alongside the other scheme registrations in RuntimeControllerClientOrDie.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Bug Fixes
    • Improved runtime controller compatibility by enabling recognition of Lightspeed agentic run resources.
    • Prevented issues when working with these resources through the Kubernetes runtime client.

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Jul 27, 2026
@openshift-ci-robot

Copy link
Copy Markdown
Contributor

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

Details

In response to this:

Summary

After #1428, the agenticrun-lifecycle-controller fails to list/get AgenticRun resources because the agenticrunv1alpha1 types are not registered in the local runtime scheme introduced by that PR.

The controller logs the following errors on every sync:

I0727 18:12:05.599862       1 controller.go:189] Started syncing CVO configuration "ClusterVersionOperator/agenticrun-lifecycle-controller"
I0727 18:12:37.717030       1 cvo.go:791] Error handling ClusterVersionOperator/agenticrun-lifecycle-controller: [failed to list agentic runs: no kind is registered for the type v1alpha1.AgenticRunList in scheme "pkg/start/start.go:537", no kind is registered for the type v1alpha1.AgenticRun in scheme "pkg/start/start.go:537"]

Previously, RuntimeControllerClientOrDie used the default global scheme, which already had the agenticrun types registered via internal.AddSchemes(). The switch to a local scheme in #1428 correctly added apiextensions and operator types but missed agenticrunv1alpha1.

Fix

Add agenticrunv1alpha1.AddToScheme(runtimeScheme) alongside the other scheme registrations in RuntimeControllerClientOrDie.

🤖 Generated with Claude Code

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.

@coderabbitai

coderabbitai Bot commented Jul 27, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@jrangelramos, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 44 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: 95fda582-4347-439a-bf05-e9559592a982

📥 Commits

Reviewing files that changed from the base of the PR and between c31c79c and bf48f07.

📒 Files selected for processing (1)
  • pkg/start/start.go

Walkthrough

The runtime controller client scheme now imports and registers Lightspeed agentic run API types, allowing the client to recognize those objects.

Changes

Agentic run scheme registration

Layer / File(s) Summary
Runtime scheme registration
pkg/start/start.go
Imports agenticrunv1alpha1 and adds its API types to the runtime controller client scheme.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Suggested reviewers: wking, hongkailiu

🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed Only pkg/start/start.go changed; no test files or Ginkgo titles were added or modified, so the check is not applicable.
Test Structure And Quality ✅ Passed No test files or Ginkgo specs were changed; this PR only adds a scheme registration in pkg/start/start.go, so the test-quality check is not applicable.
Microshift Test Compatibility ✅ Passed No new Ginkgo e2e tests were added; only scheme registration in pkg/start/start.go changed, so MicroShift compatibility is not implicated.
Single Node Openshift (Sno) Test Compatibility ✅ Passed No new Ginkgo e2e tests were added; the PR only updates pkg/start/start.go scheme registration, so SNO compatibility check is not applicable.
Topology-Aware Scheduling Compatibility ✅ Passed Only runtime scheme registration changed in start.go; no deployment, affinity, nodeSelector, replica, or PDB logic was added.
Ote Binary Stdout Contract ✅ Passed pkg/start/start.go only adds agenticrunv1alpha1 scheme registration; no main/init/TestMain/setup stdout writes are present.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed Only pkg/start/start.go changed; no new Ginkgo e2e tests or network assumptions were added, so the check is not applicable.
No-Weak-Crypto ✅ Passed Only pkg/start/start.go changed, adding an API scheme registration; no weak crypto, custom crypto, or secret comparison code was introduced.
Container-Privileges ✅ Passed Only pkg/start/start.go changed; no Kubernetes manifests or securityContext settings were added, so no privileged container config was introduced.
No-Sensitive-Data-In-Logs ✅ Passed The PR only adds agenticrun scheme registration in RuntimeControllerClientOrDie; no new logging or sensitive data exposure was introduced.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main change: adding agenticrunv1alpha1 to the runtime client scheme.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@wking wking left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

/lgtm

@wking wking changed the title NO-JIRA: Register agenticrunv1alpha1 in the Runtime client scheme OTA-2084: Register agenticrunv1alpha1 in the Runtime client scheme Jul 27, 2026
@openshift-ci-robot

openshift-ci-robot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

@jrangelramos: This pull request references OTA-2084 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

After #1428, the agenticrun-lifecycle-controller fails to list/get AgenticRun resources because the agenticrunv1alpha1 types are not registered in the local runtime scheme introduced by that PR.

The controller logs the following errors on every sync:

I0727 18:12:05.599862       1 controller.go:189] Started syncing CVO configuration "ClusterVersionOperator/agenticrun-lifecycle-controller"
I0727 18:12:37.717030       1 cvo.go:791] Error handling ClusterVersionOperator/agenticrun-lifecycle-controller: [failed to list agentic runs: no kind is registered for the type v1alpha1.AgenticRunList in scheme "pkg/start/start.go:537", no kind is registered for the type v1alpha1.AgenticRun in scheme "pkg/start/start.go:537"]

Previously, RuntimeControllerClientOrDie used the default global scheme, which already had the agenticrun types registered via internal.AddSchemes(). The switch to a local scheme in #1428 correctly added apiextensions and operator types but missed agenticrunv1alpha1.

Fix

Add agenticrunv1alpha1.AddToScheme(runtimeScheme) alongside the other scheme registrations in RuntimeControllerClientOrDie.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Bug Fixes
  • Improved runtime controller compatibility by enabling recognition of Lightspeed agentic run resources.
  • Prevented issues when working with these resources through the Kubernetes runtime client.

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 added lgtm Indicates that a PR is ready to be merged. approved Indicates a PR has been approved by an approver from all required OWNERS files. labels Jul 27, 2026
@jrangelramos

Copy link
Copy Markdown
Member Author

/verified by Jefferson Ramos

@openshift-ci-robot openshift-ci-robot added the verified Signifies that the PR passed pre-merge verification criteria label Jul 27, 2026
@openshift-ci-robot

Copy link
Copy Markdown
Contributor

@jrangelramos: This PR has been marked as verified by Jefferson Ramos.

Details

In response to this:

/verified by Jefferson Ramos

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.

@jrangelramos

Copy link
Copy Markdown
Member Author

Verification summary

$ oc get pod -n openshift-cluster-version                     
NAME                                        READY   STATUS    RESTARTS   AGE
cluster-version-operator-68b44f996c-xsjhv   1/1     Running   0          25m
$ oc logs cluster-version-operator-68b44f996c-xsjhv | grep "failed to list agentic runs"
$ oc logs cluster-version-operator-68b44f996c-xsjhv | grep "agenticrun"                 
I0727 18:23:13.543968       1 controller.go:189] Started syncing CVO configuration "ClusterVersionOperator/agenticrun-lifecycle-controller"
I0727 18:26:43.642579       1 controller.go:189] Started syncing CVO configuration "ClusterVersionOperator/agenticrun-lifecycle-controller"
I0727 18:30:13.624062       1 controller.go:189] Started syncing CVO configuration "ClusterVersionOperator/agenticrun-lifecycle-controller"
I0727 18:33:43.603588       1 controller.go:189] Started syncing CVO configuration "ClusterVersionOperator/agenticrun-lifecycle-controller"
I0727 18:37:13.617753       1 controller.go:189] Started syncing CVO configuration "ClusterVersionOperator/agenticrun-lifecycle-controller"
I0727 18:40:43.615794       1 controller.go:189] Started syncing CVO configuration "ClusterVersionOperator/agenticrun-lifecycle-controller"
$ oc get agenticrun -n openshift-lightspeed
NAME                       AGE
ota-5-0-0-ec-4-to-5-0-1    24m
ota-5-0-0-ec-4-to-5-0-10   24m
ota-5-0-0-ec-4-to-5-0-7    24m
ota-5-0-0-ec-4-to-5-0-8    24m
ota-5-0-0-ec-4-to-5-0-9    24m
ota-5-0-0-ec-4-to-5-1-0    24m
ota-5-0-0-ec-4-to-5-1-1    24m
ota-5-0-0-ec-4-to-5-1-2    24m
ota-5-0-0-ec-4-to-5-1-3    24m
ota-5-0-0-ec-4-to-5-1-4    24m

PR openshift#1428 switched RuntimeControllerClientOrDie from the global scheme to a
local scheme but missed registering agenticrunv1alpha1, breaking the
agenticrun-lifecycle-controller. Add the missing AddToScheme call.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@jrangelramos
jrangelramos force-pushed the fix-agenticrun-scheme-registration branch from c31c79c to bf48f07 Compare July 27, 2026 18:55
@openshift-ci-robot openshift-ci-robot removed the verified Signifies that the PR passed pre-merge verification criteria label Jul 27, 2026
@openshift-ci openshift-ci Bot removed the lgtm Indicates that a PR is ready to be merged. label Jul 27, 2026

@wking wking left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

/lgtm

@openshift-ci

openshift-ci Bot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: jrangelramos, wking

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 openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Jul 27, 2026
@jrangelramos

Copy link
Copy Markdown
Member Author

/verified by Jefferson Ramos
per comments here

@openshift-ci-robot openshift-ci-robot added the verified Signifies that the PR passed pre-merge verification criteria label Jul 27, 2026
@openshift-ci-robot

Copy link
Copy Markdown
Contributor

@jrangelramos: This PR has been marked as verified by Jefferson Ramos.

Details

In response to this:

/verified by Jefferson Ramos
per comments here

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.

@wking

wking commented Jul 27, 2026

Copy link
Copy Markdown
Member

should ensure ipv4 egressrouter cni resources are created unrelated to this pull:

/override ci/prow/e2e-aws-ovn-techpreview

TestUpgradeControlPlane/Main registry.build08.ci.openshift.org 504 is unrelated. And even if that might leave us blind to some of the things HyperShift is expecting to cover. But this change is very narrowly extending a client configuration that only the AgenticRun controller is consuming, so I'm confident we aren't breaking HyperShift or our other CI jobs.

/override ci/prow/e2e-hypershift

@openshift-ci

openshift-ci Bot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

@wking: Overrode contexts on behalf of wking: ci/prow/e2e-aws-ovn-techpreview, ci/prow/e2e-hypershift

Details

In response to this:

should ensure ipv4 egressrouter cni resources are created unrelated to this pull:

/override ci/prow/e2e-aws-ovn-techpreview

TestUpgradeControlPlane/Main registry.build08.ci.openshift.org 504 is unrelated. And even if that might leave us blind to some of the things HyperShift is expecting to cover. But this change is very narrowly extending a client configuration that only the AgenticRun controller is consuming, so I'm confident we aren't breaking HyperShift or our other CI jobs.

/override ci/prow/e2e-hypershift

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.

@wking

wking commented Jul 28, 2026

Copy link
Copy Markdown
Member

TestIntegrationCVO_initializeAndUpgrade unexpected Upgradeable=False removal is unrelated to this change:

/override ci/prow/e2e-agnostic-operator

techpreview-serial-3of3 failed to install, leaving us blind to that job. But a previous run of that job succeeded on this same commit, and I'm still confident this pull's change isn't actually covered by our CI.

/override ci/prow/e2e-agnostic-ovn-techpreview-serial-3of3

@openshift-ci

openshift-ci Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

@wking: Overrode contexts on behalf of wking: ci/prow/e2e-agnostic-operator, ci/prow/e2e-agnostic-ovn-techpreview-serial-3of3

Details

In response to this:

TestIntegrationCVO_initializeAndUpgrade unexpected Upgradeable=False removal is unrelated to this change:

/override ci/prow/e2e-agnostic-operator

techpreview-serial-3of3 failed to install, leaving us blind to that job. But a previous run of that job succeeded on this same commit, and I'm still confident this pull's change isn't actually covered by our CI.

/override ci/prow/e2e-agnostic-ovn-techpreview-serial-3of3

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.

@wking

wking commented Jul 28, 2026

Copy link
Copy Markdown
Member

Two pods mounting a local volume one after the other should be able to write from pod1 and read from pod2 network hiccup is unrelated to this pull:

/override ci/prow/e2e-hypershift-conformance

@openshift-ci

openshift-ci Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

@wking: Overrode contexts on behalf of wking: ci/prow/e2e-hypershift-conformance

Details

In response to this:

Two pods mounting a local volume one after the other should be able to write from pod1 and read from pod2 network hiccup is unrelated to this pull:

/override ci/prow/e2e-hypershift-conformance

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

openshift-ci Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

@jrangelramos: 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-merge-bot
openshift-merge-bot Bot merged commit 72f34cb into openshift:main Jul 28, 2026
19 checks passed
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. verified Signifies that the PR passed pre-merge verification criteria

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants