deploy(installer): publish the verified Assay installer path - #7
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (2)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📝 WalkthroughWalkthroughThe installer now resolves relative paths, validates downloaded archives with SHA-256 sidecars, optionally verifies GitHub attestations, cleans up on interruption, and atomically replaces installed binaries. Provenance metadata pins the installer source commit and checksum. ChangesInstaller integrity flow
Estimated code review effort: 4 (Complex) | ~45 minutes Merge Risk: 🔵 Low · up to This PR publishes the verified installer bytes and updates their immutable provenance pin. It is mergeable with owner awareness that concurrent installations may be last-writer-wins and replacement behavior is not established on every supported Windows filesystem. Sequence Diagram(s)sequenceDiagram
participant Installer
participant ReleaseServer
participant HashTool
participant GitHubAPI
participant gh
participant InstallDirectory
Installer->>ReleaseServer: Download archive and checksum sidecar
Installer->>HashTool: Compute archive SHA-256
HashTool-->>Installer: Return archive digest
Installer->>Installer: Validate checksum record
opt ASSAY_REQUIRE_PROVENANCE=1
Installer->>GitHubAPI: Resolve release tag to commit
Installer->>gh: Verify archive attestation
gh-->>Installer: Return verification result
end
Installer->>InstallDirectory: Write temporary binary candidate
Installer->>InstallDirectory: Atomically move candidate into place
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Linked Issues checkExplanation The PR addresses the coding requirements in issue Full details: Docstring CoverageExplanation Docstring coverage is 25.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 8 functions across 1 files. (1 skipped: 1 unsupported.)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
🟢 Approval recommended
The installer script and provenance pin move together consistently, and no correctness issues were identified in the updated installer flow.
Pull request overview
This PR updates the published install.sh on getassay.dev to a byte-identical copy of the upstream Assay installer at a pinned immutable commit, and updates the site’s provenance pin (commit + SHA-256) to match those exact bytes.
Changes:
- Update
install.shto the upstream Assay installer version that adds checksum verification and opt-in provenance verification viagh attestation verify. - Move the provenance pin in
install.provenance.jsonto Assay commit125b036c...and the independently recomputed installer SHA-256. - Preserve existing site deployment/live-drift contract flow while making the source+digest pin consistent.
File summaries
| File | Description |
|---|---|
| install.sh | Refreshes the published installer script to the pinned upstream version (adds checksum + optional provenance verification and safer temp/install handling). |
| install.provenance.json | Updates the pinned upstream commit and SHA-256 digest to match the new installer bytes. |
Review details
- Files reviewed: 2/2 changed files
- Comments generated: 0
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
READY at exact head Independent read-only review from fresh temporary clones. I did not write or edit this change, its issue contract, or its implementation plan. Findings: none. Evidence:
Non-claims: this review does not establish production deployment or live |
Summary
scripts/install.shbyte-for-byte from merged Assay commit125b036c5dfe7d81bd611bc148375292ae48a666Closes the source-copy and provenance half of #6. Do not close #6 on this PR alone: production deployment plus live default/strict installation proofs remain post-merge.
Provenance
125b036c5dfe7d81bd611bc148375292ae48a666dc0043311b12d5fca2d1cc8be4d5c8e333c8acd375491d9786c30f89da8e31510d4208215e7ce99e55ab10206c1b054f404aac96RED -> GREEN
RED after copying the reviewed bytes while retaining the stale pin:
GREEN after moving source commit and digest together:
bash scripts/test-installer-provenance-contract.shbash scripts/check-installer-provenance.shpython3 scripts/test-site-headers-contract.pypython3 scripts/test-site-contract-workflow.pypython3 scripts/test-installer-live-drift-workflow.pysh -n install.shshellcheck install.shgit diff --checkcmpagainstgit show 125b036c...:scripts/install.shPost-merge proof
Installer live driftand bind its output to that site commit;v5.5.2through the live URL in default mode and requirechecksum_verifiedplusprovenance_not_requested;ASSAY_REQUIRE_PROVENANCE=1and require both checksum and upstream-defined attestation identity verification;Non-claims
Summary by CodeRabbit
New Features
Bug Fixes