build: publish qualified immutable Listmonk0.3.1 artifacts #16
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
waiting-on-julian
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
jlxq0/listmonk-mcp!16
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/immutable-release-20261029"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The release now builds and scans one attested OCI index, independently resolves its Linux/amd64 image configuration, and publishes that same index recursively under an immutable version tag. BuildKit omits its config-digest shortcut for attested indexes; the release gate follows and hashes the actual index, manifest and configuration instead. Conflicting tags, incomplete descriptors, mismatched scan identity, critical or fixable HIGH findings, and secrets are rejected.
This is deployment infrastructure carried by the fork, not an upstream submission. The master-only cache writer and stable-only latest tag behavior remain unchanged. Runtime authentication, provider behavior and the existing no-send policy are unchanged; deployment, Honoka transport credentials and approved publishing capability remain separate gates.
Validation at exact head
3100a306a6c9670dfa51bdac8b13f42e8faee66b: 254 tests, Ruff, Mypy, buildcache guard with 16 deliberate failure controls, and fresh independent Claude review all pass. Forge run38 has actual successful Python and Docker jobs. The image scan reports125packages,44unfixed OS HIGH findings,0critical,0fixable and0secrets; this is not a vulnerability-free claim. Earlier disposable-registry qualification covers recursive OCI/attestation preservation, identical replay, conflict and missing-descendant refusal. The eventual v0.3.1 tag artifact must pass its own qualification before deployment.