mirror of
https://github.com/sotashimozono/obsidian-remote-ssh.git
synced 2026-07-22 06:52:07 +00:00
Addresses /review-pr findings on #447 and the E2E smoke failure they caused. - F1 (code-reviewer + silent-failure): the connect fast-path trusted existsSync alone, re-opening the "deploy an unverified binary" gap one layer above DaemonDownloader's fixed sha-check. Now records `daemonBinarySha` and re-hashes the cached file on the fast path; a post-write-corrupted binary fails the check and is re-fetched (network-free). Version + sha must both match to reuse. - F2 (silent-failure): a saveSettings() failure after a successful download was caught by the generic "download failed -> SFTP" handler and misreported. Marker persistence is now its own non-fatal try — the verified binary is still returned; a persist failure just re-verifies next connect. - F3 (comment-analyzer): corrected the dev-install marker comment (a stale binary is refreshed only when its sha differs, not "always on a bump"). - F4/F5 (pr-test): new ensureDaemonBinary.test.ts covers the locateDaemonBinary .dev-daemon gate and the fast-path reuse/skip (sha match, sha mismatch, version mismatch). E2E fix: the new locateDaemonBinary `.dev-daemon` gate broke the Obsidian smoke run — E2E stages the daemon via `build:server` (no dev-install), so the staged binary was unmarked -> gated out -> no RPC -> the live-reflect specs failed. build-server.mjs now writes the `.dev-daemon` marker; the E2E vault-scaffold copies server-bin/ verbatim so it rides along. (Release daemons are built via the Makefile, never marked — correct: users' downloads stay subject to the sha refresh.) tsc/lint/vitest green (1193). Still beta.14 (same PR #447). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| perf | ||
| build-server.mjs | ||
| bump-stable.mjs | ||
| bump-version.mjs | ||
| cdp-tail.mjs | ||
| dev-install.mjs | ||
| replay-prev-tests.mjs | ||
| start-test-sshd.mjs | ||
| stop-test-sshd.mjs | ||