Skip to content

Commit c3b6efc

Browse files
committed
docs: point downloads to Hex 2.1.17 and record release verification
1 parent 5825a84 commit c3b6efc

4 files changed

Lines changed: 46 additions & 4 deletions

File tree

‎README.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ Or install manually:
6161
HEX checks for signed updates automatically. Use **HEX > Check for Updates...**
6262
to check immediately.
6363

64-
**Download blocked?** [Alternative download: GitHub — Hex 2.1.16](https://github.com/anomalyco/hex/releases/download/app-v2.1.16/HEX-2.1.16-arm64.dmg)
64+
**Download blocked?** [Alternative download: GitHub — Hex 2.1.17](https://github.com/anomalyco/hex/releases/download/app-v2.1.17/HEX-2.1.17-arm64.dmg)
6565
contains the identical signed DMG for Apple silicon and macOS 15+. App releases
6666
use `app-v…` tags; the repository also publishes separate TypeScript SDK releases.
6767
If an older installation cannot check for updates on your network, install the

‎docs/downloads.md‎

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,11 @@ App and model downloads have different hosts. Managed networks may need to allow
4646
- `huggingface.co` and its model download CDN for dictation-model setup.
4747
- `download.moonshine.ai` for optional Voice Commands.
4848

49+
On September 11, 2026, a HEAD request for the pinned default Parakeet Unified
50+
English artifact followed `huggingface.co` to `us.aws.cdn.hf.co` and returned
51+
HTTP 200. This is an observed delivery host, not a permanent exhaustive CDN list.
52+
No model body was downloaded for that check.
53+
4954
If the old update endpoint is blocked, install the new signed DMG manually.
5055
After restoring model-host access, retry preparation in Settings or choose
5156
Retry for Commands. Transfer failures preserve partial downloads. App download
@@ -74,3 +79,40 @@ not establish access from a particular enterprise network.
7479
- No signed Linux feed has been published yet. Linux installer/updater source
7580
defaults were migrated; no Linux native install or enterprise-network test
7681
was performed as part of these hosting checks.
82+
83+
## Observed 2.1.17 Publication — September 11, 2026
84+
85+
Published macOS build 20117 from `5825a84`, including the new built-in Sparkle
86+
feed URL and model-download recovery copy. Both the app and DMG were accepted by
87+
Apple's notarization service and stapled. Bundle identity, signing team, Sparkle
88+
key, archive layout, and both packaged app copies passed the release validator.
89+
The packaged executable reported 2.1.17 without launching the GUI; its dynamic
90+
library list contained no Homebrew or `/usr/local` dependency.
91+
92+
- DMG SHA-256: `b8b9d0abecd86a73169ded8941b7c1979bd22d7fc838cc7b9e8696f15570bcc8`.
93+
- Sparkle ZIP SHA-256: `b773685fba2fb105c91eb30a4a8434003bcba300bece837149b3f42a5fcf17ce`.
94+
- The ZIP's Ed25519 signature was independently verified against the public key
95+
inside its app. The custom-domain DMG, ZIP, and latest-DMG pointer matched the
96+
prepared files byte-for-byte after publication. Both feed endpoints returned
97+
the identical 2.1.17 appcast using a Sparkle user agent.
98+
- The GitHub `app-v2.1.17` release is public and its DMG has the same SHA-256.
99+
Homebrew's cask is pinned to that version and checksum; its style check passed.
100+
- A clean headless Chromium session blocked all `*.r2.dev` requests, clicked the
101+
live site's primary download, and verified the complete DMG's checksum. With
102+
the custom download host also blocked, clicking the GitHub alternative still
103+
downloaded the identical DMG. This proves independent browser download paths,
104+
not a particular enterprise's gateway behavior.
105+
- Live desktop and mobile renders showed 2.1.17, requirements, and the alternate
106+
link without horizontal overflow. Curl, Homebrew, Sparkle, Python, and browser
107+
user-agent probes received direct 206 responses for ranged downloads during
108+
the hostname migration.
109+
- The mirror helper was also run against an intentionally different local DMG
110+
for an existing release. It rejected the mismatch before publishing or
111+
replacing the GitHub asset.
112+
- Final debug and release suites each passed 457 tests with 10 opt-in tests
113+
ignored, plus all 12 keyboard-layout child processes per profile. Strict
114+
all-target/all-feature Clippy passed in both profiles. Formatting, app identity
115+
guards, shell syntax, diff checks, and the site's production build passed.
116+
117+
No native in-place Sparkle installation, new model download, microphone capture,
118+
or Linux binary publication was performed in this release verification.

‎docs/features/README.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ This maps existing behavior. [ROADMAP.md](../../ROADMAP.md) owns future work;
55
[AGENTS.md](../../AGENTS.md) owns implementation invariants.
66

77
Initial source baseline: September 1, 2026, `9e9da53aa9ed`. Public macOS release:
8-
[2.1.16](../releases/2.1.16.md), with the long-form Cohere correction and menu-bar
9-
model switching. The initial map was source-only. Listed checks are
8+
[2.1.17](../releases/2.1.17.md), with custom-domain downloads, a GitHub DMG mirror,
9+
and model-download recovery guidance. The initial map was source-only. Listed checks are
1010
locators unless an executed result is explicitly recorded, as in the
1111
[keyboard-layout verification](recovery.md#keyboard-layout-resolution).
1212

‎site/src/App.tsx‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import * as m from "motion/react-m"
22
import ChatteringTeeth from "./ChatteringTeeth"
33

4-
const MAC_VERSION = "2.1.16"
4+
const MAC_VERSION = "2.1.17"
55
const DOWNLOAD_URL =
66
`https://downloads.hex.kitlangton.dev/releases/HEX-${MAC_VERSION}-arm64.dmg`
77
const GITHUB_DOWNLOAD_URL =

0 commit comments

Comments
 (0)