v0.2.1 — Regression Fixes for Policy Profiles & Trust Status
Fixed - v0.2.0 Regression Bugs
This release fixes 5 critical bugs found in v0.2.0 testing.
-
verify status inconsistency - Fixed verify returning
status:"fail"whenallow:trueand no violations- Bug: verify checked violation count instead of
PolicyResult.Allowfield after profile filtering - Fix: Use
PolicyResult.Allowas source of truth for status determination - Impact: Profiles now correctly set status to "pass" when all violations are filtered
- Bug: verify checked violation count instead of
-
sbomPresent false after build - Fixed SBOM detection after
acc build- Bug: checkSBOMExists() required exact filename match, failed on name/format mismatches
- Fix: Added fallback to detect ANY .json file in .acc/sbom/ directory
- Impact: More robust SBOM detection across different configurations
-
Profile loading broken - Fixed profile name resolution and error messages
- Bug: .acc/profiles/ directory not created by
acc init, unclear error messages - Fix:
acc initnow creates .acc/profiles/, improved error messages with remediation - Impact: Better user experience when loading profiles by name
- Bug: .acc/profiles/ directory not created by
-
trust status image leakage - Fixed digest resolution to prevent state leakage across images
- Bug: resolveImageDigest() was simplistic, couldn't query container runtimes
- Fix: Properly query Docker/Podman/nerdctl for image digest
- Impact:
acc trust statusnow shows correct per-image state, not global state
-
trust status exit codes wrong - Fixed exit codes when no state found
- Bug: Returned exit 1 (error) instead of exit 2 (no state) when verification state missing
- Fix: Return StatusResult with status:"unknown" and exit code 2
- Impact: Correct exit code behavior: 0=pass, 1=fail, 2=no state
Regression Tests Added:
TestVerify_StatusFromAllow- Verifies status derives from allow fieldTestCheckSBOMExists_Fallback- Verifies SBOM fallback detection
Files Changed:
internal/verify/verify.go- Fixed status logic, improved SBOM detectioninternal/profile/profile.go- Improved error messagesinternal/config/init.go- Create .acc/profiles/ directoryinternal/trust/status.go- Fixed digest resolution and exit codesinternal/verify/verify_test.go- Added regression tests
Installation
Download the appropriate binary for your platform and verify the checksum:
Linux (AMD64):
curl -LO "https://github.com/cloudcwfranck/acc/releases/download/v0.2.1/acc_0.2.1_linux_amd64.tar.gz"
curl -LO "https://github.com/cloudcwfranck/acc/releases/download/v0.2.1/checksums.txt"
sha256sum -c checksums.txt --ignore-missing
tar -xzf acc_0.2.1_linux_amd64.tar.gz
sudo mv acc-linux-amd64 /usr/local/bin/acc
chmod +x /usr/local/bin/acc
acc versionmacOS (Apple Silicon):
curl -LO "https://github.com/cloudcwfranck/acc/releases/download/v0.2.1/acc_0.2.1_darwin_arm64.tar.gz"
curl -LO "https://github.com/cloudcwfranck/acc/releases/download/v0.2.1/checksums.txt"
shasum -a 256 -c checksums.txt --ignore-missing
tar -xzf acc_0.2.1_darwin_arm64.tar.gz
sudo mv acc-darwin-arm64 /usr/local/bin/acc
chmod +x /usr/local/bin/acc
acc versionSee README.md for complete installation instructions.