963 B
Versioning & self-update
VERSION at the repo root is the release source of truth.
Releases
On pushes to main, the release workflow runs formatting, static analysis, race
tests, and build. If all gates pass, it creates tag vVERSION when that tag
does not already exist.
Binaries receive their version at build time through linker flags. Builds
without that flag report 0.0.0-dev and skip passive update hints.
Update checks
Release builds check the public Gitea tags API in two places: sherlock version
and just before agent handoff. The check is bounded, best-effort, uncached, and
disabled by SHERLOCK_NO_UPDATE_CHECK.
Updating
sherlock update installs the latest release through the shared installer.
--force reinstalls even when already current. Updates rebuild binaries and
completions but leave config untouched.
Overrides: SHERLOCK_UPDATE_TAGS_URL for tag lookup and
SHERLOCK_UPDATE_REPO_URL for clone/update source.