fix(evidence)!: durable evidence copies move to the pkg bucket #2039
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/evidence-durable-home"
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?
Closes the finding flagged in #2038: durable evidence copies lived under the work bucket's blanket 3-day ilm expiry, so every
durableURIolder than the window was a dead pointer.Evidence now lands at
pkg/evidence/<project>/<package-version>/(no lifecycle rules; project segment prevents cross-project version collisions). The build key gains Get/Put on exactly that prefix — no DeleteObject, evidence is write-once for its writer. The evidence-export reader prefers the new home with a legacy-path fallback for pre-move releases.Guards updated:
provenance-contractnow asserts the copy is in the no-expiry bucket;codeberg-registry-retrypins the new path shape.41 surviving evidence dirs already rescued to the new home (root mc, one-shot pod) — every pipelines release back to 0.1.625, all of seanfarm's, the kernel's 6.18.44, and today's zig trio. The expiry scanner had not yet reaped the backlog; timing was good.
First new-path write proof: the release AFTER this one deploys (this release itself still runs the old template). Its own evidence dir will get a one-object rescue after deploy.