go install goversioninfo@latest pulled a newer Go toolchain (1.26) that
mismatched setup-go's 1.24 and broke the resource step. Set GOTOOLCHAIN=local and
pin goversioninfo@v1.7.0 so the pinned toolchain builds the pinned tool.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Record InstallDir and Version under HKLM\Software\Grace Solutions\OrchestrAD and
reuse the install directory on upgrade via a RegistrySearch. Upgrades remove the
old product first (stopping the service) then install the new binary and
re-initialize, so only binaries change and the runtime data directory (SQLite
database) is never touched. Verified: v1->v2 upgrade keeps the DB file and a
sentinel intact, service stays healthy.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
A service launched by the SCM inherits the manager's working directory
(C:\Windows\System32 on Windows), which put the default ./data there. When
running non-interactively, chdir to the executable's directory so the database
lands beside the installed binary (Program Files\OrchestrAD\data). Interactive
and container runs are unaffected.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>