Skip to content

AVP

v0.4.2 Bugfix

This release fixes issues for SREs watching stability and regressions.

✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

agentic-ai vaultwarden

Summary

AI summary

Fixed pypi-smoke negative assertion to accept "type":"deny" audit events and relaxed TEST_SECRET env handling in docker-compose.yml.

Full changelog

Release-tooling-only patch on top of v0.4.1. No proxy code changes — v0.4.1's substitution and audit guarantees are unchanged. v0.4.1 was correctly published to PyPI and the core wire-format behavior was verified by the smoke harness's positive test on the published wheel. The release.yml pypi-install-smoke gate did its job: it caught a real signal mismatch and held back the GitHub Release until investigation was complete. The investigation found the proxy was behaving correctly; the harness's negative-assertion grep needed updating.

Fixed (release tooling)

  • tests/pypi-smoke/run.sh NEGATIVE assertion now accepts the "type":"deny" audit event in addition to the "decision":"denied" / "decision":"forwarded_unmodified" shapes. The addon has two distinct deny paths for an unbound destination: (1) the unmatched_destination_policy: deny policy gate fires BEFORE placeholder analysis when the request's host is in no binding at all and emits {"type":"deny","reason":"unmatched_destination",...}; (2) the destination_not_in_binding check inside the inject path fires when a placeholder IS present but the matched secret's bindings don't cover the request host and emits {"type":"inject_decision","decision":"denied",...}. The pypi-smoke negative test aims at example.invalid (in no binding at all), so the policy gate fires first. The previous grep only knew path (2) and the smoke went red despite the proxy correctly returning 403 + auditing the deny. tests/docker-e2e/run.sh:236 already greps the "type":"deny" shape, so this was a pypi-smoke-only regression introduced when the pypi-smoke harness was first added in v0.4.1.
  • tests/pypi-smoke/docker-compose.yml uses ${TEST_SECRET:-} instead of the strict ${TEST_SECRET:?...} for the avp-init env reference. The strict form blocked docker compose down -v teardown when TEST_SECRET wasn't exported, because compose interpolates all referenced vars at parse time even for down. The empty default unblocks teardown without weakening the test: run.sh still exports the real value before compose up, and a manual compose up without TEST_SECRET produces a broken secrets.yml that fails the positive assertion at run time rather than at compose time.

Changed

  • README.md and tests/pypi-smoke/README.md version pointers bumped from 0.4.1 to 0.4.2. The "Status" prose now leads with the v0.4.2 framing (release-tooling patch only; v0.4.1 guarantees unchanged) before recapping v0.4.1 and v0.4.0.

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track AVP

Get notified when new releases ship.

Sign up free

Related context

Beta — feedback welcome: [email protected]