Skip to content

Fail closed on legacy cache provenance - #19

Closed
farach wants to merge 1 commit into
farach-harden-release-gatesfrom
farach-fix-legacy-cache-provenance
Closed

Fail closed on legacy cache provenance#19
farach wants to merge 1 commit into
farach-harden-release-gatesfrom
farach-fix-legacy-cache-provenance

Conversation

@farach

@farach farach commented Jul 10, 2026

Copy link
Copy Markdown
Owner

Summary

  • fail closed when receiptless or legacy-unverified archive and adapter caches receive URL, version, as-of, or SHA-256 constraints
  • preserve warning-only fully unconstrained legacy reuse without asserting unknown provenance
  • redact URL credentials and query values while retaining an opaque URL identity for mismatch detection
  • keep force refresh atomic and update installed showcase fixtures to seed explicit verified receipts

Validation

  • devtools::test(): 715 passed
  • rcmdcheck::rcmdcheck(args = "--as-cran"): 0 errors, 0 warnings, 1 expected new-submission note
  • Rscript tools\validate-clean-install.R --rounds=2: passed both rounds
  • installed-package tests with network blocked: 708 passed, 6 CRAN skips
  • pkgdown::check_pkgdown() and full site build: passed; 87 HTML files checked for broken O*NET rendering
  • both workflow YAML files parsed successfully

Stacked from 9c179af9b17163ba7eee7bec972a732b6b56b0b0 and targets farach-harden-release-gates.

Reject receiptless and legacy-unverified cache reuse whenever callers provide URL, version, as-of, or digest constraints. Preserve warning-only unconstrained reuse, redact URL secrets, and cover atomic refresh paths.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@farach

farach commented Jul 10, 2026

Copy link
Copy Markdown
Owner Author

Superseded by the reviewed fixes already integrated into parent PR #18 (abb694b/a20e32b/522b092). No branch deleted.

@farach farach closed this Jul 10, 2026
@farach
farach deleted the farach-fix-legacy-cache-provenance branch July 13, 2026 10:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant