Skip to content

Commit a1ac269

Browse files
authored
docs: add binary integrity verification section (P0-4)
* docs: add binary integrity verification section (P0-4) Document the checksum verification behavior, CAPISCIO_SKIP_CHECKSUM env var, and add troubleshooting entry for checksum failures. Ref: DOCS_REMEDIATION_PLAN P0-4 Part B * docs: clarify checksum bypass vs mismatch failure modes Address review comment: CAPISCIO_SKIP_CHECKSUM only bypasses when checksums.txt is unavailable/missing entry. Actual checksum mismatches are hard failures that cannot be bypassed.
1 parent 06d8cd4 commit a1ac269

1 file changed

Lines changed: 30 additions & 0 deletions

File tree

README.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,26 @@ The Python wrapper includes specific commands to manage the binary:
5959
- **Linux**: AMD64, ARM64
6060
- **Windows**: AMD64
6161

62+
## Binary Integrity Verification
63+
64+
On first run, the wrapper downloads the capiscio-core binary and verifies its SHA-256 checksum
65+
against the published `checksums.txt` from the GitHub release.
66+
67+
Two failure modes exist:
68+
69+
1. **Checksum mismatch** ("Binary integrity check failed"): The downloaded file does not match
70+
the published checksum. This indicates tampering or corruption and **cannot be bypassed**.
71+
Delete the cached binary and retry.
72+
73+
2. **Checksums unavailable** ("checksums.txt could not be fetched" or "no entry for …"):
74+
The checksums file could not be downloaded or does not contain an entry for the platform
75+
binary. This can happen with pre-release versions or network issues. To bypass:
76+
77+
```bash
78+
# Bypass only when checksums.txt is unavailable (not for mismatches)
79+
export CAPISCIO_SKIP_CHECKSUM=true
80+
```
81+
6282
## Troubleshooting
6383

6484
**"Permission denied" errors:**
@@ -70,6 +90,16 @@ capiscio --wrapper-clean
7090
**"Binary not found" or download errors:**
7191
If you are behind a corporate firewall, ensure you can access `github.com`.
7292

93+
**"Binary integrity check failed":**
94+
The downloaded binary does not match the published checksum — this may indicate a corrupted
95+
or tampered download. Delete the cached binary (`capiscio --wrapper-clean`) and retry.
96+
This error **cannot** be bypassed with `CAPISCIO_SKIP_CHECKSUM`.
97+
98+
**"Checksum verification failed: checksums.txt could not be fetched":**
99+
The checksums file is unavailable (network issue or pre-release version). You can set
100+
`CAPISCIO_SKIP_CHECKSUM=true` to proceed without verification, but only do this in
101+
development environments.
102+
73103
## License
74104

75105
Apache-2.0

0 commit comments

Comments
 (0)