Skip to content

Finalize archive snapshot and credential redaction contracts - #23

Closed
farach wants to merge 4 commits into
farach-harden-release-gatesfrom
farach-finalize-cache-contract
Closed

Finalize archive snapshot and credential redaction contracts#23
farach wants to merge 4 commits into
farach-harden-release-gatesfrom
farach-finalize-cache-contract

Conversation

@farach

@farach farach commented Jul 10, 2026

Copy link
Copy Markdown
Owner

Summary

  • Keep onet_archive_download() returning its documented shared cache path while internal archive readers parse the exact private verified snapshot acquired with its matching receipt.
  • Serialize the archive cache decision, force download, source-receipt commit, and snapshot creation under one cache lock with a download-safe timeout.
  • Add deterministic forced-refresh coverage for snapshot ownership, lock behavior, receipt and digest consistency, and cleanup on success and error, alongside adapter pathway coverage.
  • Match credential parameter names explicitly after percent decoding, case normalization, separator normalization, and camel-case normalization while preserving benign author, monkey, state, and ordinary parameters.
  • Cover query, fragment, hash-route, malformed, encoded-name, case-variant, warning/error, legacy-receipt, OAuth verifier/consumer, and cloud credential paths without exposing secret values.

Stack

  • Initial feature commit parent: 522b092616149d191a973638402fc55cd18e0ed3.
  • Current base: farach-harden-release-gates at 053a184030713f19095e215ab2081751e867fe9c.
  • Audited candidate PR Finish cache snapshot contract #21 and reproduced only its correct single-lock acquisition design plus missing aliases; its stale history was not cherry-picked and this session did not modify PR Finish cache snapshot contract #21.
  • Parent advances were merged without rebasing, preserving the required initial ancestry and omitted version/as_of constraint semantics.

Validation

  • Full testthat: 875 passed, 2 API-key skips, 0 failures, 0 warnings.
  • Built and installed blocked-network suite: 871 passed, 6 CRAN-context skips, 0 failures.
  • Clean-install validation: 2 of 2 rounds passed.
  • External R CMD check --as-cran: 0 errors, 0 warnings, 2 expected notes for new/development version metadata and unavailable clock verification.
  • Deterministic archive race: 20 of 20 repeated rounds passed.
  • pkgdown::check_pkgdown() and full build: passed; 87 HTML files, 537 valid O*NET matches, 0 broken renderings, and 35 expected inactive @examplesIf warnings.
  • URL check: 0 issues across 6 URLs.
  • Workflow YAML: 2 files parsed successfully.

farach and others added 4 commits July 10, 2026 04:09
Keep cached archive parsing on the private verified acquisition snapshot and replace substring credential matching with explicit normalized parameter names and regression matrices.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Combine the advanced parent documentation and credential-name normalization with the deterministic forced-refresh race and full redaction matrices.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Port the correct single-lock acquisition design from the stale candidate without its history, preserve omitted provenance constraints, and cover additional OAuth and cloud credential aliases.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Retain the vetted single-lock archive acquisition while integrating the current parent OAuth verifier and consumer credential coverage.

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

farach commented Jul 10, 2026

Copy link
Copy Markdown
Owner Author

Superseded. This delayed duplicate does not address the final independent-review blockers now being fixed on authoritative PR #18. Branch retained for audit; do not delete or reopen.

@farach farach closed this Jul 10, 2026
@farach
farach deleted the farach-finalize-cache-contract 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