Skip to content

OLS-0000 Fix spec staleness: clarify Agent status.conditions - #362

Open
xrajesh wants to merge 1 commit into
openshift:mainfrom
xrajesh:spec/OLS-0000-clarify-agent-status
Open

OLS-0000 Fix spec staleness: clarify Agent status.conditions#362
xrajesh wants to merge 1 commit into
openshift:mainfrom
xrajesh:spec/OLS-0000-clarify-agent-status

Conversation

@xrajesh

@xrajesh xrajesh commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Removed [PLANNED] marker from Agent status.conditions rule. Clarified that the field is reserved for future health reporting but not currently populated by any reconciler.

@xrajesh xrajesh added the kind/design Categorizes issue or PR as related to design. label Jul 22, 2026
@coderabbitai

coderabbitai Bot commented Jul 22, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: e193f288-3861-4190-a926-643af156a306

📥 Commits

Reviewing files that changed from the base of the PR and between fadf24f and 29471a5.

📒 Files selected for processing (1)
  • .ai/spec/what/crd-api.md
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

  • openshift/lightspeed-agentic-sandbox (manual)
🚧 Files skipped from review as they are similar to previous changes (1)
  • .ai/spec/what/crd-api.md

📝 Walkthrough

Summary by CodeRabbit

  • Documentation
    • Clarified that the Agent status Ready condition is reserved for future health reporting.
    • Confirmed that these conditions are not currently set by the operator.

Walkthrough

The Agent CRD documentation now describes Ready as reserved for future health reporting and confirms that the operator does not currently set the condition.

Changes

Agent CRD status documentation

Layer / File(s) Summary
Ready condition documentation
.ai/spec/what/crd-api.md
Updates the Ready condition text, removing the [PLANNED] marker and clarifying its future health-reporting purpose while preserving the current unset behavior.
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly matches the change to Agent status.conditions and the spec staleness fix.
Description check ✅ Passed The description directly matches the documentation change and explains the removed PLANNED marker.
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.

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

@openshift-ci
openshift-ci Bot requested review from harche and raptorsun July 22, 2026 20:16

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

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 current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.ai/spec/what/crd-api.md:
- Line 25: Update the `Agent — status.conditions` specification entry to define
the `Ready` condition as indicating whether the referenced LLMProvider and
credential Secret resources are present, matching the contract in `Agent` status
definitions; remove the broader “accessible” wording and preserve the note that
the operator does not currently set these conditions.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: fc2a5d60-c97d-4b84-b627-9594d8c03b8d

📥 Commits

Reviewing files that changed from the base of the PR and between 500d663 and fadf24f.

📒 Files selected for processing (2)
  • .ai/spec/health-report.md
  • .ai/spec/what/crd-api.md
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

  • openshift/lightspeed-agentic-sandbox (manual)

Comment thread .ai/spec/what/crd-api.md
17. **Agent — `spec.maxTurns`**: Optional bound on tool-use turns per invocation.
18. **Agent — `spec.reasoningConfig`**: Optional freeform map (`map[string]interface{}`, JSON key `reasoningConfig`). When present, the operator MUST serialize it as `LIGHTSPEED_REASONING_CONFIG` JSON env var on the sandbox pod (see `sandbox-execution.md` rule 16a). When absent, the env var MUST be omitted and the sandbox uses SDK defaults. Contents are provider- and model-specific (e.g., Claude `thinking`/`effort`, Gemini `thinking_budget`/`thinking_level`, OpenAI `reasoning.effort`/`verbosity`); the operator passes the map as-is without validation — the sandbox and upstream SDK/API validate at invocation time. This field is aligned with the classic OLS operator's `ModelParametersSpec.ReasoningConfig` ([OLS-3452]).
19. **Agent — `status.conditions`**: [PLANNED] Observed readiness; `Ready` condition is defined on the API but no controller currently reconciles Agent status. When implemented, it SHOULD document whether referenced provider resources are accessible.
19. **Agent — `status.conditions`**: Observed readiness; `Ready` condition documents whether referenced LLMProvider resources (credentials secrets) are accessible. The operator does not currently set these conditions, but the field is reserved for future health reporting.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🗄️ Data Integrity & Integration | 🟡 Minor | ⚡ Quick win

Align Ready semantics with the API contract.

The specification says the referenced resources are “accessible,” while api/v1alpha1/agent_types.go:177-189 defines Ready as indicating whether the LLMProvider and credential Secret resources are present. “Accessible” could imply permission or credential validation that this contract does not establish.

-19. **Agent — `status.conditions`**: Observed readiness; `Ready` condition documents whether referenced LLMProvider resources (credentials secrets) are accessible. The operator does not currently set these conditions, but the field is reserved for future health reporting.
+19. **Agent — `status.conditions`**: Observed readiness; the `Ready` condition documents whether referenced LLMProvider and credential Secret resources are present. The operator does not currently set these conditions, but the field is reserved for future health reporting.
📝 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
19. **Agent — `status.conditions`**: Observed readiness; `Ready` condition documents whether referenced LLMProvider resources (credentials secrets) are accessible. The operator does not currently set these conditions, but the field is reserved for future health reporting.
19. **Agent — `status.conditions`**: Observed readiness; the `Ready` condition documents whether referenced LLMProvider and credential Secret resources are present. The operator does not currently set these conditions, but the field is reserved for future health reporting.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.ai/spec/what/crd-api.md at line 25, Update the `Agent — status.conditions`
specification entry to define the `Ready` condition as indicating whether the
referenced LLMProvider and credential Secret resources are present, matching the
contract in `Agent` status definitions; remove the broader “accessible” wording
and preserve the note that the operator does not currently set these conditions.

- Removed [PLANNED] marker from Agent status.conditions rule (field is reserved, not currently populated)
- Console integration correctly documented in how/reconciler.md

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
@xrajesh
xrajesh force-pushed the spec/OLS-0000-clarify-agent-status branch from fadf24f to 29471a5 Compare July 22, 2026 21:00
@xrajesh

xrajesh commented Jul 22, 2026

Copy link
Copy Markdown
Contributor Author

/lgtm
/approve

@openshift-ci

openshift-ci Bot commented Jul 22, 2026

Copy link
Copy Markdown

@xrajesh: you cannot LGTM your own PR.

Details

In response to this:

/lgtm
/approve

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 22, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: xrajesh

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 approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 22, 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. kind/design Categorizes issue or PR as related to design.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant