Skip to content

DEBUG: cancel test traceback capture (do not merge) - #280

Closed
cpsievert wants to merge 3 commits into
mainfrom
debug/cancel-tests-ci
Closed

DEBUG: cancel test traceback capture (do not merge)#280
cpsievert wants to merge 3 commits into
mainfrom
debug/cancel-tests-ci

Conversation

@cpsievert

Copy link
Copy Markdown
Contributor

Temporary diagnostic PR to capture tracebacks for cancel-test failures seen on #279.

Demonstrates that shinychat main alone breaks the Shiny sidebar E2E
tests (test_03_sidebar_apps.py title tests) due to a timing regression
introduced in posit-dev/shinychat#280 interacting with the in-process
app servers used by the Playwright fixtures.
…_fixture

The threaded in-process uvicorn fixtures shared Shiny's process-global,
loop-bound reactive lock across apps. When two apps on different event
loops contended for the lock, the session's message handler crashed
with 'bound to a different event loop' and the chat message was dropped,
hanging the sidebar title tests. shinychat main (posit-dev/shinychat#280)
widened that race window enough to fail CI reliably.

create_app_fixture runs each app in its own subprocess (as Shiny's own
test suite does), giving each app its own loop and lock. This matches
how the Streamlit fixtures already work.
@cpsievert cpsievert closed this Aug 26, 2026
@cpsievert
cpsievert deleted the debug/cancel-tests-ci branch August 26, 2026 19:11
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