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

NVIDIA / nodewright / 27242174545 / 1
82%
main: 82%

Build:
DEFAULT BRANCH: main
Ran 09 Jun 2026 11:39PM UTC
Files 46
Run time 1s
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

09 Jun 2026 11:20PM UTC coverage: 81.667% (+0.03%) from 81.64%
27242174545.1

push

github

web-flow
fix(operator): promote skipped interrupt packages from the reconcile loop (closes #270) (#272)

A package parked at (interrupt, skipped), skipped because a higher-priority interrupt
won the node's single interrupt slot, could be orphaned forever, leaving the node
cordoned and the Skyhook in_progress. This surfaced as the flaky config-skyhook
"update while running" e2e step.

The only skipped-to-complete promotion path was edge-triggered: wrapper.ProgressSkipped
ran solely on an interrupt-pod completion in the pod controller, and it never
re-serialized the nodeState annotation. If that edge was missed (the interrupt pod was
already garbage-collected, or the package was skipped after the pod completed), nothing
else ever promoted it and the main reconcile only waited.

- wrapper.ProgressSkipped now persists via SetState (like Upsert/RemoveState), so a
  promotion actually reaches the nodeState annotation the Node patch carries.
- ProcessInterrupt promotes a skipped package once it is the interrupt winner
  (promoteSkippedWinner). runInterrupt is true only after the preempting interrupt has
  completed and left the runnable set, so the reconcile converges on its own instead of
  depending on a pod event that may never arrive.

Also extracts nil-safe predicate helpers on *PackageStatus (IsInterruptStage, IsActive,
IsSkipped) and dedups the inlined uninstall-cycle check in IsComplete onto the existing
NodeState.IsUninstallCycleInProgress, simplifying ProcessInterrupt's compound conditionals.

New unit specs drive the real reconcile path rather than calling NodeState.ProgressSkipped
directly. make unit-tests, fmt, vet, and lint are green.

Signed-off-by: Brian Lockwood <lockwobr@gmail.com>

8094 of 9911 relevant lines covered (81.67%)

9.31 hits per line

Source Files on job 27242174545.1
  • Tree
  • List 46
  • Changed 4
  • Source Changed 4
  • Coverage Changed 4
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 27242174545
  • a200195e on github
  • Prev Job for on main (#27170830159.1)
  • Next Job for on main (#27426773396.1)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc