Repository navigation
ci: smoke-test the published package on a schedule - #4
Merged
Merged
Conversation
The mcp 2.0.0 breakage (#2) was not caught by CI, by a release check, or by the maintainer. It was caught by a user, 25 days after it started, because nothing anywhere installed the published package and tried to start it. This does that daily: pip install from PyPI, import, assert every registered tool has a handler and vice versa, then run the entry point and require a clean exit. It deliberately does not check out the repo. The artifact under test is the one on PyPI, resolved against whatever its declared dependencies pull today — a checkout would put src/ on sys.path and could pass while the release is broken. Verified both directions before landing: passes against 0.4.2 (85 tools, mcp 1.29.0), and fails with exit 1 against 0.4.1 + mcp 2.0.0, reproducing the AttributeError from #2. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #2 / #3.
Why
The mcp 2.0.0 breakage was not caught by CI, by a release check, or by me. It was caught by a user, 25 days after it started, because nothing anywhere installed the published package and tried to start it.
The fix in #3 stops that specific bug. This stops the class of it.
What it does
Daily (plus manual dispatch), on Python 3.10 / 3.12 / 3.13:
pip install --no-cache-dir seleniumboot-mcp— from PyPI, as a user wouldseleniumboot-mcpentry point and require a clean exitOne deliberate design decision
The job does not check out the repo. The artifact under test is the one on PyPI, resolved against whatever its declared dependencies pull today. A checkout would put
src/onsys.path, and the test could pass green while the published release was broken — which is exactly the failure mode this is meant to catch.It also means the test is sensitive to upstream releases, not just to our commits. That is the point: nothing we did broke on 2026-07-28.
mcpdid.Verified in both directions
A smoke test that cannot detect the original bug is worthless, so this was checked against both:
AttributeErrorfrom #2Note on notification
Scheduled-workflow failures email the repo owner by default. Given that #2 sat unanswered for two days, that is worth confirming is actually reaching an inbox you read — otherwise this detects the outage and tells nobody.
🤖 Generated with Claude Code