Skip to content

release: v0.8.1 - #96

Merged
kmadan merged 1 commit into
mainfrom
release/v0.8.1
Aug 31, 2026
Merged

release: v0.8.1#96
kmadan merged 1 commit into
mainfrom
release/v0.8.1

Conversation

@kmadan

@kmadan kmadan commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

Version bump only. No functional change over the PRs already merged.

Why 0.8.1 and not 0.8.0

v0.8.0 was tagged and released on GitHub on 28 August but never reached PyPI, and that tag points at e107a81 — code predating release.yaml, the golden tests and the CI fix. Moving a published tag would put different code under a name people may already have fetched, so this releases as 0.8.1.

PyPI goes 0.7.3 → 0.8.1. 0.8.0 simply never ships, which is normal.

What 0.8.1 carries over the published 0.7.3

  • Policy evaluation works under CI. CI=true left opa_path as None, so every evaluation raised a TypeError on argv[0], and the path that checks for None returned mock verdicts instead. The tool is offered for "Local or CI", so this was broken wherever it is most advertised to run.
  • Every advertised framework delivers the verdicts it declares, asserted for all fourteen and enforced at release by a clean-install smoke test.
  • Three education policies that reached no verdict now do, via the gopal bump past fix(counts): one manifest for every published figure, and the education package that delivered nothing gopal#96.
  • A tag publishes, through PyPI Trusted Publishing, gated on the tag matching the version, the wheel carrying the policy library, and that wheel producing real verdicts from a clean install.

Scope of the bump

pyproject.toml, aicertify/__init__.py, CITATION.cff, and the beta statement in the five READMEs.

Deliberately unchanged: the langfair>=0.8.0 dependency pin, and the references to v0.8.0 in the golden tests and smoke script, which are historical and describe the defect that release fixed.

Verification

The built 0.8.1 wheel carries 198 .rego files and coverage.json, installs into a clean virtualenv, and under CI=true delivers every verdict all eight smoke frameworks declare:

framework    declared delivered  floor   result
eu_ai_act          29        29     23   ok
uk                  6         6      4   ok
nist                5         5      4   ok
bfs                 4         4      3   ok
legal               3         3      2   ok
global              5         5      4   ok
healthcare          2         2      1   ok
education           5         5      4   ok

education at 5 of 5 is the defect that would otherwise have shipped.

On merge, tag v0.8.1 to publish.

v0.8.0 was tagged and released on GitHub on 28 August but never reached PyPI,
and that tag points at code predating the release workflow, the golden tests and
the CI fix. Moving a published tag would put different code under a name people
may already have fetched, so this releases as 0.8.1 instead. 0.8.0 does not ship
to PyPI, which takes it from 0.7.3 to 0.8.1.

What this carries over 0.7.3:

- Policy evaluation works under CI. CI=true left opa_path as None, so every
  evaluation raised a TypeError on argv[0], and the path that checks for None
  returned mock verdicts instead. The tool is offered for "Local or CI", so this
  was broken wherever it is most advertised to run.
- Every advertised framework delivers the verdicts it declares, asserted for all
  fourteen and enforced at release by a clean-install smoke test.
- Three education policies that reached no verdict now do, via the gopal bump.
- A tag publishes, through PyPI Trusted Publishing, gated on the tag matching
  this version, the wheel carrying the policy library, and that wheel producing
  real verdicts from a clean install.

Version references bumped in pyproject.toml, aicertify/__init__.py, CITATION.cff
and the beta statement in the five READMEs. The langfair>=0.8.0 pin is a
dependency and unchanged; the references to v0.8.0 in the golden tests and the
smoke script are historical, describing the defect that release fixed.

Verification: the built 0.8.1 wheel carries 198 .rego files and coverage.json,
installs into a clean virtualenv, and under CI=true delivers every verdict all
eight smoke frameworks declare, education included at 5 of 5.
@github-actions github-actions Bot added 📝 documentation Improvements or additions to documentation 🚀 enhancement New feature or request labels Aug 31, 2026
@kmadan
kmadan merged commit 7bb3ddb into main Aug 31, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📝 documentation Improvements or additions to documentation 🚀 enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant