513c78bfa5
The 0.8.1:0 probe wrapped the entire path (including $HOME) in shlex.quote, which produces single quotes — preventing shell variable expansion. The resulting `[ -d '$HOME/.cache/...' ]` test looked for a literal path starting with the string $HOME and always failed, so every model reported as "not downloaded" and no trash icons rendered. Fix: embed $HOME in a double-quoted shell context (which allows expansion) and validate the cache dirname against a whitelist [A-Za-z0-9._-]+ rather than relying on shlex quoting. The dirname is fully constrained by HF's naming rules + our org--name munging, so the whitelist is tight enough. Verified against Spark 1: probe now correctly reports the 25,075,981,924 bytes (23.4 GB) of Qwen3.6's cache dir. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
14 lines
969 B
TypeScript
14 lines
969 B
TypeScript
import { VersionInfo, IMPOSSIBLE } from '@start9labs/start-sdk'
|
|
|
|
export const v0_1_0 = VersionInfo.of({
|
|
version: '0.8.1:1',
|
|
releaseNotes: {
|
|
en_US:
|
|
'v0.8.1:1 — fix: the disk-status probe shipped in 0.8.1:0 was wrapping $HOME in single quotes via shlex.quote, which prevented shell variable expansion. Result: every model reported as "not downloaded" even when weights were on disk, so no trash icons appeared. Rewritten to embed $HOME in double-quoted shell context and validate the cache dirname against a whitelist. The trash icons now show up correctly. v0.8.1:0 features: per-card disk-presence pills (on disk · GB / not downloaded), trash icon to rm -rf the HF cache directory via SSH with a confirmation dialog. Safety rails unchanged: refuses to delete the currently-loaded model or during an in-flight swap/download; catalog entry persists for re-download.',
|
|
},
|
|
migrations: {
|
|
up: async ({ effects }) => {},
|
|
down: IMPOSSIBLE,
|
|
},
|
|
})
|