install.sh resolves the latest tag via a redirect probe (with API and stamped-tag fallbacks), then separately downloads archive/refs/tags/${TAG}.tar.gz and pipes it straight to tar. Two hygiene gaps for a security-minded audience:
- TOCTOU: resolve-then-fetch means the tag can move (or the release be replaced) between the two requests. Pinning the download to the resolved commit SHA closes it.
- No checksum: nothing verifies the tarball. Publishing per-release hashes (even just in the release notes) and checking before extraction would let cautious users verify what they're about to place into their harness config root.
Low severity in practice, cheap to fix, and it matches the trust posture the rest of the release pipeline (the new sanitizer/font/pointer gates) is clearly aiming at. For what it's worth I verified my install out-of-band by diffing the served install.sh and INSTALL.md against the tagged tree before running anything — identical — but users shouldn't need to do that by hand.
Environment: Debian 13 (headless), Claude Code 2.1.220, bun 1.3.14, fresh OS user, installed via https://ourlifeos.ai/install at tag v7.28.3 (36c6f01). All line references are to this tag. One of four reports from the same fresh-install trial.
— Reported by Rob Pratt (@rpriven), co-authored with Kai.
install.shresolves the latest tag via a redirect probe (with API and stamped-tag fallbacks), then separately downloadsarchive/refs/tags/${TAG}.tar.gzand pipes it straight totar. Two hygiene gaps for a security-minded audience:Low severity in practice, cheap to fix, and it matches the trust posture the rest of the release pipeline (the new sanitizer/font/pointer gates) is clearly aiming at. For what it's worth I verified my install out-of-band by diffing the served install.sh and INSTALL.md against the tagged tree before running anything — identical — but users shouldn't need to do that by hand.
Environment: Debian 13 (headless), Claude Code 2.1.220, bun 1.3.14, fresh OS user, installed via
https://ourlifeos.ai/installat tagv7.28.3(36c6f01). All line references are to this tag. One of four reports from the same fresh-install trial.— Reported by Rob Pratt (@rpriven), co-authored with Kai.