Skip to content

Fix flaky stu376 demo-window catch: budget must cover page init + the 5.2s hold - #110

Merged
sgardoll merged 1 commit into
milestone/stu-implement-updated-ui-uxfrom
devin/stu445-demo-catch-flake
Sep 28, 2026
Merged

sgardoll merged 1 commit into
milestone/stu-implement-updated-ui-uxfrom
devin/stu445-demo-catch-flake

Conversation

@devin-ai-integration

@devin-ai-integration devin-ai-integration Bot commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor

Summary

e2e/stu376-composer.spec.js's STU-445 demo-window catches raced the hero demo's real-time clock — the same harness-race class PR #105 fixed for stu385.

Each catch waits on waitForFunction(is-demo-typing && 0 < prefix < N) with a fixed 8s deadline, but the demo holds HERO_DEMO_HOLD_MS (~5.2s) before its first character lands. That leaves under ~3s of slack for page init on a loaded worker; when init is slow the typing window opens after the deadline and the catch times out. Observed locally: a live reduced-motion flip mid-demo stops the typing and restores the prompt failed its initial attempt with page.waitForFunction: Timeout 8000ms exceeded, then passed on retry.

Fix: one shared DEMO_CATCH_TIMEOUT_MS = 20000 replaces the seven identical { timeout: 8000 } catch options. The budget now covers page init plus the hold while still ending before the demo could finish; no assertion was loosened — the flip-restore check keeps its own 1s toHaveValue deadline, and the prefix-window predicates are unchanged.

Verified: CI=1 CCC_TEST_PORT=3105 npx playwright test e2e/stu376-composer.spec.js → 28 passed (previously 27 passed / 1 flaky).

Link to Devin session: https://app.devin.ai/sessions/90257fc9a4564d719aaf06102f872441
Open in Devin Desktop: https://app.devin.ai/desktop/session/90257fc9a4564d719aaf06102f872441?variant=devin
Requested by: @sgardoll


Devin Review

…init

The demo-window catches raced the demo's real-time clock: an 8s deadline
against a ~5.2s hold left <3s for page init on a loaded worker, so the
'a live reduced-motion flip mid-demo' spec timed out before the typing
window opened. Raise the shared catch budget to 20s — it covers init
plus the hold while still ending before the demo could finish, and
leaves every assertion unchanged.

Co-Authored-By: Stuart Gardoll <sgardoll@gmail.com>
@devin-ai-integration

Copy link
Copy Markdown
Contributor Author

I'll fix CI failures and address comments from users with write access that start with 'Devin'.

  • Disable automatic comment, CI, and merge conflict monitoring

@greptile-apps

greptile-apps Bot commented Sep 28, 2026

Copy link
Copy Markdown
Contributor

This PR does not match any of the 1 configured review trigger rule.

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Devin Review

@sgardoll
sgardoll merged commit 3ed7dd8 into milestone/stu-implement-updated-ui-ux Sep 28, 2026
1 of 2 checks passed
@sgardoll
sgardoll deleted the devin/stu445-demo-catch-flake branch September 28, 2026 18:34
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.

1 participant