Display lifecycle indicator on Tests and Test Analysis pages - #3875
Conversation
|
Pipeline controller notification For optional jobs, comment This repository is configured in: automatic mode |
|
@mstaeble: No Jira issue with key TRT-3870 exists in the tracker at https://redhat.atlassian.net. DetailsIn response to this:
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. |
|
Skipping CI for Draft Pull Request. |
|
Warning Review limit reached
Next review available in: 33 minutes You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. How can I continue?After more reviews become available, a review can be triggered using the 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 configurationConfiguration used: Repository YAML (base), Central YAML (inherited) Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (7)
WalkthroughTest report APIs and queries now expose aggregated lifecycle metadata. Integration tests cover collapsed and uncollapsed reports. Test views display informing lifecycle indicators. ChangesLifecycle reporting
Estimated code review effort: 3 (Moderate) | ~20 minutes Sequence Diagram(s)sequenceDiagram
participant ReportQuery
participant TestReportAPI
participant TestTable
ReportQuery->>ReportQuery: Aggregate distinct lifecycle values
ReportQuery->>TestReportAPI: Return lifecycles in test metadata
TestReportAPI->>TestTable: Provide lifecycle arrays
TestTable->>TestTable: Render informing lifecycle indicator
Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 19 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (19 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
|
@mstaeble: No Jira issue with key TRT-3870 exists in the tracker at https://redhat.atlassian.net. DetailsIn response to this:
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. |
There was a problem hiding this comment.
Actionable comments posted: 2
🧹 Nitpick comments (1)
sippy-ng/src/tests/TestTable.jsx (1)
499-545: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winAdd frontend coverage for lifecycle indicators.
Add tests for absent, exclusively informing, and mixed lifecycle arrays. Verify the table icon and analysis chip labels and variants.
sippy-ng/src/tests/TestTable.jsx#L499-L545: test no icon,Informing, andContains informing.sippy-ng/src/tests/TestAnalysis.jsx#L252-L274: test chip visibility, label, and filled or outlined variant.As per coding guidelines, “New or modified functionality should include test coverage.”
🤖 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 `@sippy-ng/src/tests/TestTable.jsx` around lines 499 - 545, Add frontend tests in sippy-ng/src/tests/TestTable.jsx covering absent lifecycles, exclusively informing lifecycles, and mixed lifecycles, verifying no icon plus the “Informing” and “Contains informing” labels. In sippy-ng/src/tests/TestAnalysis.jsx, add coverage for lifecycle analysis chip visibility, labels, and filled versus outlined variants. Use the existing table and analysis test setup and lifecycle indicator symbols at the referenced ranges.Source: Coding guidelines
🤖 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 `@pkg/apis/api/types.go`:
- Around line 526-527: Add a "lifecycles" case to both Test.GetArrayValue and
TestBQ.GetArrayValue in pkg/apis/api/types.go, returning test.Lifecycles so the
field works with in-memory array filtering; update the anchor site at lines
526-527 and the sibling site at lines 683-684.
- Around line 626-631: Update buildTestsResultsBQGenerator to handle lifecycle
filters consistently with the PostgreSQL path: filter against the lifecycle
field in the BigQuery test summaries and aggregate distinct returned lifecycles
at the lifecycle scope. If BigQuery cannot support this behavior, reject
lifecycle filters before selecting the BigQuery source while preserving
acceptance for supported sources.
---
Nitpick comments:
In `@sippy-ng/src/tests/TestTable.jsx`:
- Around line 499-545: Add frontend tests in sippy-ng/src/tests/TestTable.jsx
covering absent lifecycles, exclusively informing lifecycles, and mixed
lifecycles, verifying no icon plus the “Informing” and “Contains informing”
labels. In sippy-ng/src/tests/TestAnalysis.jsx, add coverage for lifecycle
analysis chip visibility, labels, and filled versus outlined variants. Use the
existing table and analysis test setup and lifecycle indicator symbols at the
referenced ranges.
🪄 Autofix
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: Repository YAML (base), Central YAML (inherited)
Review profile: CHILL
Plan: Pro Plus
Run ID: f97713e0-b13a-4917-bd79-0c3a96eb0903
📒 Files selected for processing (7)
pkg/api/tests.gopkg/apis/api/types.gopkg/db/query/cumulative_query.gopkg/db/query/test_queries.gosippy-ng/src/tests/TestAnalysis.jsxsippy-ng/src/tests/TestTable.jsxtest/integration/tests_report_test.go
|
@mstaeble: No Jira issue with key TRT-3870 exists in the tracker at https://redhat.atlassian.net. DetailsIn response to this:
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. |
Add a lifecycles field to the test API response using array_agg(DISTINCT lifecycle) in both collapsed and uncollapsed queries. The frontend displays an informing indicator: a filled icon for fully-informing tests, an outlined icon for mixed-lifecycle tests, and a chip with matching label/variant on the Test Analysis page. Integration tests cover the new field for both query paths. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
726aa58 to
cce8e9a
Compare
|
Scheduling required tests: |
|
/lgtm |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: dgoodwin, mstaeble The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
@mstaeble: all tests passed! Full PR test history. Your PR dashboard. DetailsInstructions 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. |





Summary
lifecyclesfield to the test API response usingarray_agg(DISTINCT lifecycle)in both collapsed and uncollapsed queriesScreenshots
Test with all runs informing
Test with some but not all runs informing
Test Analysis for test with all runs informing
Test Analysis for test with some but not all runs informing
Badge in table in Test Analysis page
🤖 Generated with Claude Code
Summary by CodeRabbit
New Features
Bug Fixes