• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

kubernetes-sigs / lws / 41336172432
88%

Build:
DEFAULT BRANCH: main
Ran 01 Nov 2026 06:25PM UTC
Jobs 1
Files 37
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

01 Nov 2026 06:21PM UTC coverage: 88.454% (+0.1%) from 88.349%
41336172432

push

github

web-flow
DisaggregatedSet: report availability floors separately from rollout completion (#1233)

* DisaggregatedSet: report availability floors separately from rollout completion

Available is a completion signal and goes False on every rollout and
scale-up, even when no role drops below what maxUnavailable permits.
Publish the rollout planner's view of availability so health checks and
parent controllers do not have to reimplement it.

- RoleStatus/SubRoleStatus.minAvailableReplicas: per slice,
  max(0, desired - maxUnavailable), totalled across slices. Unset while
  the target is unknown.
- RoleStatus/SubRoleStatus.availableReplicas: Ready groups in a revision
  of a slice where every role that revision requires has a Ready group,
  matching the planner's usable capacity.
- MinimumReplicasAvailable condition: True while every role and sub-role
  meets its floor, False naming those below it, Unknown while a floor is
  unknown. Available and Progressing are unchanged.

Updates KEP-766 and the DisaggregatedSet docs.

* DisaggregatedSet: judge availability from targets and recorded layouts

The current revision required only roles that had a workload, so a Ready
role stayed available while a peer's workload was missing. It now requires
every role with a positive target in each slice.

Workloads the spec does not partition counted as one role even when they
carry an old child layout, so an old revision with an unready child still
counted as serving. Requirements now come from the recorded layout, for
parents that dropped their sub-roles and for removed roles alike.

A known shortfall now reports False even while another floor is unknown.
Role lists in condition messages are capped, because an overlong message
made the API reject the whole status update.

* DisaggregatedSet: test that available replicas never exceed ready replicas

* DisaggregatedSet: require targets, not recorded layouts, on the current revision

Sub-roles do not change the revision, so they cha... (continued)

187 of 197 new or added lines in 1 file covered. (94.92%)

2 existing lines in 1 file now uncovered.

9530 of 10774 relevant lines covered (88.45%)

36015.66 hits per line

Uncovered Changes

Lines Coverage ∆ File
10
96.04
-0.3% pkg/controllers/disaggregatedset/status.go

Coverage Regressions

Lines Coverage ∆ File
2
95.35
-0.3% pkg/controllers/disaggregatedset/lws_manager.go
Jobs
ID Job ID Ran Files Coverage
1 41336172432.1 01 Nov 2026 06:25PM UTC 37
88.45
GitHub Action Run
Source Files on build 41336172432
  • Tree
  • List 37
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • f78c2fff on github
  • Prev Build on main (#41309524015)
  • Next Build on main (#41410973221)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc