Skip to content

refactor(installer): scrub remaining internal identifiers from bootstrap messages (#581) - #602

Merged
shujaatTracebloc merged 3 commits into
developfrom
fix/581-scrub-internal-identifiers
Aug 5, 2026
Merged

refactor(installer): scrub remaining internal identifiers from bootstrap messages (#581)#602
shujaatTracebloc merged 3 commits into
developfrom
fix/581-scrub-internal-identifiers

Conversation

@shujaatTracebloc

@shujaatTraceblocshujaatTracebloc commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

What & why

Closes#581. Follow-up from the #576/#579 review (saadqbal). #579 sanitized the cosign verification-failure message; this sweeps the remaining, lower-signal internal identifiers still present in user-facing bootstrap messages — the manifest.sha256 release-asset filename and the RFC-0001 R8 internal spec code — to plain language, for consistency with #576.

No behaviour change: fail-closed paths, verification logic, and exit codes are untouched — only the wording of echo/throw/Warn strings changes.

Changes

  • install.shmanifest.sha256 → "the installer's integrity checksums" / "the installer's signed checksum list"; .sig/.cert not published / "authenticate the manifest" → "the installer's signature isn't published" / "confirm the download is authentic"; "signed manifests" → "signed releases".
  • install.ps1 — same wording, plus (RFC-0001 R8) removed from every throw (Resolve-InstallRef, Confirm-ManifestSignature, Confirm-ScriptIntegrity, the temp-dir guard).
  • Deliberately left untouched:RFC-0001 in code comments (not user-facing) and the actual manifest.sha256file paths / URLs (the real release assets).
  • Tests: updated the two pinned assertions (install-bootstrap.bats + install.Tests.ps1) from "no entry in manifest" to "isn't in the installer's signed checksum list".

Verification

  • No internal identifiers left in any user-facing message (grep of echo/printf/throw/Warn/Err — clean).
  • Parse clean (bash + PS); install.Tests.ps1 28/0; install-bootstrap.bats green (the one failure is the pre-existing macOS "early bailout" flake); bats-hygiene 18/0; fail-closed + no-entry security tests still pass; check-style clean.
  • install.sh/install.ps1 are the bootstrap trust root (not manifested) — no manifest change.

Note

Completes the #576/#577/#578 installer-robustness log-hygiene tail. Touches the same install.sh/install.ps1 verify messages as #584 (#599); whichever merges second will need a small message-wording merge — I'll resolve it.


Note

Low Risk
Copy-only changes to installer error/warning strings and matching test assertions; no changes to verification logic or security gates.

Overview
Continues the #576 installer log-hygiene work by rewriting user-facing bootstrap errors and warnings in install.sh and install.ps1 so they no longer mention internal artifacts like manifest.sha256 or the RFC-0001 R8 spec code.

Messages now talk about the installer's integrity checksums, signed checksum list, and installer signature instead of manifest filenames and “authenticate the manifest.” PowerShell throws also drop the (RFC-0001 R8) suffix on ref, path-traversal, cosign, and integrity failures. Comments and real release URLs/paths for manifest.sha256 are unchanged.

Tests (install-bootstrap.bats, install.Tests.ps1) only update expected substrings for the new copy. Verification logic, fail-closed behavior, and exit codes are untouched.

Reviewed by Cursor Bugbot for commit 80333ba. Bugbot is set up for automated code reviews on this repo. Configure here.

…rap messages (#581)
Follow-up from the #576/#579 review (saadqbal). The cosign verification-failure message
was sanitized in #579; this sweeps the remaining lower-signal internal identifiers still
in user-facing bootstrap messages — the `manifest.sha256` release-asset filename and the
`RFC-0001 R8` internal spec code — to plain language, for consistency. No behaviour
change: fail-closed paths, verification logic, and exit codes are untouched; only the
wording of echo/throw/Warn strings changes.
- install.sh: "manifest.sha256" -> "the installer's integrity checksums" / "signed
checksum list"; ".sig/.cert not published" / "authenticate the manifest" ->
"the installer's signature isn't published" / "confirm the download is authentic".
- install.ps1: same wording, plus `(RFC-0001 R8)` removed from every throw
(Resolve-InstallRef, Confirm-ManifestSignature, Confirm-ScriptIntegrity, the temp-dir
guard). RFC-0001 stays in code COMMENTS (not user-facing) and the actual
manifest.sha256 file paths/URLs are untouched.
- Tests: updated the two pinned assertions (install-bootstrap.bats + install.Tests.ps1)
from "no entry in manifest" to "isn't in the installer's signed checksum list".
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@shujaatTraceblocshujaatTracebloc self-assigned this Aug 5, 2026
@shujaatTracebloc
shujaatTracebloc marked this pull request as ready for review August 5, 2026 08:12

@cursorcursorBot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit c18c1f0. Configure here.

Comment threadscripts/install.ps1
The unverified-opt-in warn on the sig/cert path still said "manifest signature/cert
not published" while the bash warn and the PS throw on the same path were already
updated to "The installer's signature isn't published". My grep keyed on
"manifest.sha256", so this "manifest signature/cert" variant slipped through. Aligned
it with the rest. (The generic word "manifest" in the cosign-unavailable messages is
descriptive supply-chain English, not the filename/spec-code #581 scopes, so it stays.)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
saadqbal
saadqbal previously approved these changes Aug 5, 2026

@saadqbalsaadqbal left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Clean scrub, tests updated on both sides and the assertions match the emitted strings exactly. One consistency nit inline — non-blocking. 👍

Comment threadscripts/install.ps1 Outdated
…lary
Address saadqbal's consistency nit on #602: the two cosign-unavailable
strings still said "signed manifest" / "manifest signature" while the
sibling sig-not-published messages just below now say "the installer's
signature". Align both the WARN (AllowUnverified) and the fail-closed
throw/echo in install.ps1 and install.sh, and update the matching
install-bootstrap.bats assertion.
No behaviour change: only wording of the echo/throw/Warn strings.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@shujaatTracebloc
shujaatTracebloc merged commit 51c5b84 into developAug 5, 2026
37 checks passed
@shujaatTracebloc
shujaatTracebloc deleted the fix/581-scrub-internal-identifiers branch August 5, 2026 09:01
Sign up for freeto 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.

Sweep remaining internal identifiers (manifest.sha256 / RFC-0001) out of installer messages

3 participants

@shujaatTracebloc@saadqbal@LukasWodka