Companion to 0.3.32's --updated /S --force-run flag fix. Closes the
download-side of the same "browser vanished after auto-update" class:
The in-app updater's DownloadItem `done` handler marked
updateDownloadState="ready" on any completed state, no hash check
against the manifest. If the download completed short (bad
Content-Length, CDN cache truncation, mid-stream TLS reset the
runtime swallowed as "completed"), install-update-now spawned half
a setup binary — NSIS integrity check failed silently, uninstaller
had already wiped the app, and Theseus was gone.
Now the completion handler streams the saved file through
crypto.createHash("sha256"), compares to updateAvailable.setupHash
from the manifest (already captured in checkForUpdate), refuses to
arm install on mismatch, deletes the corrupt file, and marks the
fetch failed so the next check picks up a fresh copy. Same paranoid
pattern the Ariadne addon updater has used all along.
Installer: fa51ccdfee0cdd0356eae356a16d07213781d2a660d12ac10117b5c9b7e023b5
Portable: 1b44ac282b4b3313ceb0e1d898d596999cf4b04368d501573510d1a7236a68d9
51 lines
3.6 KiB
JSON
51 lines
3.6 KiB
JSON
{
|
|
"schema": "silentmode-releases/2",
|
|
"updated": "2026-09-08",
|
|
"mirrors": [
|
|
"https://dl.silentmode.st/"
|
|
],
|
|
"releases": [
|
|
{
|
|
"id": "ariadne-resolver",
|
|
"product": "Ariadne Resolver (Windows)",
|
|
"version": "0.1.1",
|
|
"date": "2026-09-08",
|
|
"platform": "win-x64",
|
|
"signed": false,
|
|
"signingAuthority": null,
|
|
"changes": "NRPT rules and CA constraints now driven by silentmode.st /api/tlds (HTTPS) with electrum/config fallback -- silent installs no longer break when WSS fails. install.ps1 writes a persistent transcript to C:\\ProgramData\\Ariadne\\install.log and a separate install-error.log on any uncaught exception, so /VERYSILENT failures leave forensics. Inno's own log is copied there too. Fixes the class of bug where the resolver appeared installed but the BNS Resolver Daemon scheduled task was never registered.",
|
|
"files": {
|
|
"AriadneResolver-Setup-0.1.1.exe": "be1fa8841919b321841d90f8147abe1b1d7604fe7fff6c2e271dc47c4c24a2b6"
|
|
}
|
|
},
|
|
{
|
|
"id": "ariadne-android",
|
|
"product": "Ariadne for Android",
|
|
"version": "0.11",
|
|
"date": "2026-08-30",
|
|
"platform": "android",
|
|
"minSdk": 21,
|
|
"signed": true,
|
|
"signingAuthority": null,
|
|
"signingCertSha256": "46ebbbe5dc73148d66410fd0337b1e6683472128c983e8e2578200b9e3ca548c",
|
|
"changes": "Adds a Sia-mirror pull path alongside the APK-bundled starter (0.10). On boot the app fires a background HTTP GET for dl.silentmode.st/bns-name-index.json — the operator's latest published BNS snapshot in the interpreted-index format Bns.saveDisk reads. On any subsequent cold start after a release, the browser converges on the current chain state with one HTTP call instead of a full electrum walk. Multi-source: bundled + CDN + on-device electrum + optional Argus indexer, all racing in parallel; whichever gives a fresh answer first wins.",
|
|
"files": {
|
|
"ariadne-v0.11.apk": "03c95832c16cc4763acaadbf328caa7d4bd05fc7c2994f6997a79cc6890bca44"
|
|
}
|
|
},
|
|
{
|
|
"id": "theseus-navigator",
|
|
"product": "Theseus Navigator",
|
|
"version": "0.3.33",
|
|
"date": "2026-09-08",
|
|
"platform": "win-x64",
|
|
"signed": false,
|
|
"signingAuthority": null,
|
|
"changes": "Companion fix to 0.3.32's auto-updater flags: the in-app updater now verifies the downloaded setup .exe against the manifest's SHA-256 before arming Install. The old completion handler treated any Electron DownloadItem 'done' + 'completed' as ready-to-run, but Electron has been observed to swallow mid-stream truncations (a wrong Content-Length, a CDN cache truncation, an interrupted TLS session, a corrupted mirror) as 'completed', which handed install-update-now a half-file to spawn — NSIS integrity check failed silently after the uninstaller had already wiped the app. Now the download handler streams the saved file through crypto.createHash('sha256'), compares to updateAvailable.setupHash (already captured from the manifest by checkForUpdate), refuses to arm install on mismatch, deletes the corrupt file, and marks the fetch failed so the next check picks up a fresh copy. 0.3.32 closed the spawn-side of this class of failure; 0.3.33 closes the download-side. Users stuck on 0.3.31 still need to manually download 0.3.33 from dl.silentmode.st — %APPDATA%\\theseus-navigator\\ (vault, addons, settings) survived the uninstall untouched.",
|
|
"files": {
|
|
"TheseusNavigator-Setup-0.3.33.exe": "fa51ccdfee0cdd0356eae356a16d07213781d2a660d12ac10117b5c9b7e023b5",
|
|
"TheseusNavigator-0.3.33-portable.exe": "1b44ac282b4b3313ceb0e1d898d596999cf4b04368d501573510d1a7236a68d9"
|
|
}
|
|
}
|
|
]
|
|
}
|