Skip to content

test(e2e): check the RouteStuck event instead of the transient status - #22

Merged
aceforeverd merged 1 commit into
modelsphere:mainfrom
huskcass:fix/e2e-routestuck-event
Oct 24, 2026
Merged

aceforeverd merged 1 commit into
modelsphere:mainfrom
huskcass:fix/e2e-routestuck-event

Conversation

@huskcass

Copy link
Copy Markdown
Collaborator

The main-branch E2E run 40069498015 failed "reaches RouteStuck when the route finalizer is never cleared".

The controller behaved correctly: it set status.deletion.outcome=RouteStuck and emitted a Warning RouteStuck event, then, in the same second, uninstalled the release, released the service and dropped its finalizer (the chart has no pods to wait on). The spec polled status.deletion.outcome with kubectl every 200ms, missed the sub-second window in which the object still existed, and timed out.

Fix: assert on the RouteStuck event instead, the same way the force-delete spec checks PodForceDeleted. Events outlive the object (default TTL 1h), so the check no longer races the release. The follow-up checks (service gone, ModelRoute finalizer still present) are unchanged.

Also:

  • eventsContain now filters on involvedObject.kind=LLMService as well as the name; both callers look for events on the LLMService.
  • deletionOutcome is removed, as it has no remaining callers.

@huskcass huskcass left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

No blockers at 5810ca9.

Verdict: test-only fix for a test-timing race (RouteStuck -> Released happens in one reconcile pass when no pods remain); the event assertion is sound for CI.
— Review Golden

@aceforeverd
aceforeverd merged commit 1748087 into modelsphere:main Oct 24, 2026
5 checks passed
@huskcass
huskcass deleted the fix/e2e-routestuck-event branch October 24, 2026 08:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants