Skip to content

chore(release): prepare 0.2.2 - #19

Merged
sathariels merged 5 commits into
mainfrom
release/0.2.2
Oct 13, 2026
Merged

sathariels merged 5 commits into
mainfrom
release/0.2.2

Conversation

@sathariels

Copy link
Copy Markdown
Owner

Prepares jevcheck 0.2.2 from main 694da05 (v0.2.1, already on PyPI). This pull request does not tag, open a GitHub Release, or upload to PyPI.

This supersedes Dependabot #10, #12, and #18.

Summary

  • Lock typesafe-sdk at 0.7.4. The pyproject.toml floor stays typesafe-sdk>=0.7.0. Changelog and diff for 0.7.1–0.7.4 are bug fixes, an optional http2 extra, stricter request validation, and non-finite JSON serialization. Successful System One calls and response adaptation are unchanged, including integer score-map keys.
  • Fold in the Action bumps, still pinned by commit SHA the way the workflows already pin them:
  • Checkout v5+ and setup-python v6+ run on Node 24 and need Actions runner v2.327.1 or newer (ubuntu-latest qualifies). Checkout v7 refuses fork-PR checkouts only for pull_request_target and workflow_run; these workflows do not use those events. persist-credentials: false is unchanged. setup-python v7 removes pip-install, which nothing here sets. python-version is unchanged. The scanner bump is a patch; plugin_dir, min_score, and fail_on_severity are unchanged.
  • Each P1/P2 finding in docs/release-readiness-audit-v0.1-recheck.md is marked Resolved in be58041 (v0.2.0) after checking that commit against the current tree. The README no longer points at the recheck as open.
  • Eval tests cover tolerance edges, multiple expectations, error paths, and boundaries. pytest-cov is on the dev extra. CI prints a coverage report and does not fail on a threshold.
  • Version 0.2.2 is set in pyproject.toml, jevcheck.__version__, and the Action jevcheck-version default. .github/workflows/jevcheck-example.yml still installs published jevcheck==0.2.1 so that PyPI install stays green until the post-merge upload.

Bug found

evaluate() called require_pinned and ignored the stripped pin. A concrete candidate such as jev-1.14 passed the pin check and then failed identity against response model jev-1.14. It now identity-checks the stripped value, matching the CLI.

Local checks

python3 -m compileall -q src tests
# exit 0

python3 -m ruff check tests
# All checks passed

python3 -m pytest --cov=jevcheck --cov-report=term-missing -ra --override-ini='addopts='
# 147 passed, 1 skipped in 0.67s
# TOTAL 909 statements, 80 missed, 91%
# src/jevcheck/eval.py 183 statements, 2 missed, 99%

The skipped test is tests/test_live.py (TYPESAFE_API_KEY unset). The project has no configured linter. python3 -m ruff check src tests reports 13 pre-existing findings outside this change.

Python 3.12.3, pytest 9.1.1, pytest-cov 7.1.0, coverage 7.16.2.

Open in Web Open in Cursor 

Lock typesafe-sdk at 0.7.4. The pyproject floor stays >=0.7.0:
0.7.1 through 0.7.4 are bug fixes, an optional http2 extra, stricter
request checks, and non-finite JSON serialization, with no change to
successful System One calls or response adaptation.

Pin actions/checkout 7.0.1, actions/setup-python 7.0.0, and
hashgraph-online/ai-plugin-scanner-action 1.2.777 by commit SHA.
Checkout v5+ and setup-python v6+ run on Node 24. Checkout v7 only
changes fork-PR checkout for pull_request_target and workflow_run.
setup-python v7 drops the unused pip-install input. The scanner bump
keeps plugin_dir, min_score, and fail_on_severity.
Verify the four remaining recheck findings against be58041 and the
current tree, then record Resolved in be58041 (v0.2.0) on each.
Point the README at that recheck as historical rather than open.
require_pinned returns the stripped model, and the CLI uses that value.
evaluate() discarded it, so a concrete candidate with surrounding
whitespace passed the pin check and then failed equality against the
same id.
Add cases for inclusive tolerance edges, several expects on one case,
wrong-type and missing answers, identity failures, and alias resolution.
Put pytest-cov on the dev extra and print a coverage report in CI
without a fail threshold.
Bump the package, module, and Action default to 0.2.2. Document @v0.2.2
refs and the changelog. Keep the in-repo example workflow on published
jevcheck 0.2.1 until the post-merge PyPI upload.
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