multica/server/internal/daemon
LinYushen 606930725a
feat(daemon): support direct download update for non-Homebrew installs (#334)
* feat(daemon): support direct download update for non-Homebrew installs

Previously, CLI auto-update only worked for Homebrew installations. Non-brew
binaries would fail with "not installed via Homebrew". Now the daemon and
`multica update` fall back to downloading the release binary directly from
GitHub Releases when Homebrew is not detected.

Also fixes:
- Daemon restart now uses the current executable's absolute path instead of
  searching PATH, ensuring the updated binary is used
- Brew installs preserve the symlink path so the new Cellar version is picked up
- Daemon startup logs now include the CLI version
- Update UI auto-clears "restarting" status after 5s to show the new version

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(cli): remove dead DetectNewBinaryPath and guard against nil latest version

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 15:38:06 +08:00
..
execenv feat(mentions): support @mentioning issues + server-side auto-expansion (#242) 2026-04-02 13:48:53 +08:00
repocache feat(daemon): agent-driven repo checkout with bare clone cache 2026-03-29 19:37:48 +08:00
usage fix(daemon): fix Codex token usage parsing from session logs 2026-03-28 00:03:47 +08:00
client.go feat(runtime): support CLI update from web runtime page (#331) 2026-04-02 14:12:49 +08:00
config.go fix(runtime): display multica CLI version instead of agent CLI version (#332) 2026-04-02 14:40:35 +08:00
daemon.go feat(daemon): support direct download update for non-Homebrew installs (#334) 2026-04-02 15:38:06 +08:00
daemon_test.go refactor: decouple task lifecycle from issue status (#151) 2026-03-27 18:30:21 +08:00
health.go feat(daemon): agent-driven repo checkout with bare clone cache 2026-03-29 19:37:48 +08:00
helpers.go fix(daemon): prevent stuck tasks from blocking queue and add concurrent execution 2026-03-30 03:08:52 +08:00
prompt.go refactor: decouple task lifecycle from issue status (#151) 2026-03-27 18:30:21 +08:00
types.go feat(agents): reply as thread instead of top-level comment (#205) 2026-03-31 13:48:39 +08:00