Skip to content

ci: run the unit tests, which nothing was running - #257

Merged
shenxianpeng merged 1 commit into
mainfrom
claude/refresh-sample-output-602anc
Aug 6, 2026
Merged

ci: run the unit tests, which nothing was running#257
shenxianpeng merged 1 commit into
mainfrom
claude/refresh-sample-output-602anc

Conversation

@shenxianpeng

Copy link
Copy Markdown
Member

main_test.py has 99 tests and CI has never executed one of them.

The four existing workflows are commit-check (the action self-testing),
pre-commit (black, mypy, codespell, yaml/toml checks), release and
used-by. None invokes pytest. Every release so far shipped with the suite
unrun anywhere except a contributor's machine — including the v2.13.0 draft
sitting ready now.

The matrix

The floor and the newest, across the three OSes the action supports — 6 jobs.

3.10 is the real floor, not a guess:

  • main.py annotates with str | None and has no
    from __future__ import annotations, so the annotation is evaluated at
    def time — PEP 604 at runtime is 3.10+.
  • main_test.py uses parenthesized context managers in 34 places — 3.10+.

The in-between versions earn less here than they do in commit-check: that
is a published package installed into whatever interpreter a user has, while
this action runs on whatever python3 its runner ships.

fail-fast: false so a failure on one OS doesn't mask the others — worth
having on a suite CI has never run before.

Why requirements.txt and not bare deps

It pins the same commit-check the action ships, which is also the version
the golden tests read back out of importlib.metadata. Installing anything
else would make PINNED_VERSION in the test file and the shipped version
drift apart silently.

Verified

The exact install and pytest invocation this workflow runs, from a clean venv:

commit-check       2.13.1
PyGithub           2.9.1
pytest             9.1.1
99 passed, 2 subtests passed in 0.19s

Actions are SHA-pinned with version comments, matching the convention in
commit-check/.github/workflows/main.yml.


Generated by Claude Code

main_test.py has 99 tests and CI never executed a single one. The repo's
workflows are commit-check (self test), pre-commit (black, mypy,
codespell, yaml/toml), release and used-by — none of them invoke pytest.
Every release so far shipped with the suite unrun outside contributors'
machines.

Matrix is the floor and the newest across the three OSes the action
supports. 3.10 is the real floor: main.py annotates with `str | None`
without `from __future__ import annotations`, so the annotation is
evaluated at def time, and main_test.py uses parenthesized context
managers — both 3.10+.

Installs requirements.txt rather than the bare deps, so the commit-check
version under test is the one the action ships, which is also the version
the golden tests read back out of importlib.metadata.

Verified from a clean venv: the exact install and pytest invocation this
workflow runs gives 99 passed, 2 subtests passed.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01U9zFxq8V4qxG4aMzJhGBFn
@shenxianpeng
shenxianpeng requested a review from a team as a code owner August 6, 2026 08:46
@coderabbitai

coderabbitai Bot commented Aug 6, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@shenxianpeng, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 39 minutes

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 908a6f66-9739-4544-a047-aef79502db2c

📥 Commits

Reviewing files that changed from the base of the PR and between 3773edb and b12affc.

📒 Files selected for processing (1)
  • .github/workflows/test.yml

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Commit Check

All 5 checks passed

Show all 5 checks
Commit message
  ✔ PR title (ci: run the unit tests, which nothing was running)
  ✔ Commit 1/1 (ci: run the unit tests, which nothing was running)
Branch
  ✔ Branch (claude/refresh-sample-output-602anc)
Author
  ✔ Author name (Xianpeng Shen)
  ✔ Author email (xianpeng.shen@gmail.com)

commit-check 2.13.1 · Rules reference

@shenxianpeng shenxianpeng added the chore Choses update label Aug 6, 2026
@shenxianpeng
shenxianpeng merged commit 124de73 into main Aug 6, 2026
16 checks passed
@shenxianpeng
shenxianpeng deleted the claude/refresh-sample-output-602anc branch August 6, 2026 08:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

chore Choses update

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant