Prereleases now pack as Velopack app id gclo-dev while stable stays gclo, so a dev build installs beside the stable app: separate install folder, Start menu entry, update feed and data root (%LOCALAPPDATA%\KofTwentyTwo\gclo-dev), with (dev) in the window title.
Program.cs reads the installed app id from VelopackLocator.Current and sets GcloPaths.Edition; GcloPaths.DefaultDataRoot follows it (pure mapping unit-tested). Local and CLI runs stay on the stable paths.
release.yml: app-id derived from the tag (prerelease → gclo-dev); verify-signatures downloads the matching asset names (gclo-dev-dev-Setup.exe …).
docs/RELEASING.md: the split, the asset names, and that dev installs made before the split (app id gclo, up to 1.0.2-beta.3) must be uninstalled or replaced by the stable app.
Tested: build 0 warnings, format clean, actionlint clean, Engine tests 480/480 with 100% coverage on Engine and ViewModels (the real-Credential-Manager round-trip test flaked once in a parallel run and passes on its own and on re-run).
Prereleases now pack as Velopack app id **gclo-dev** while stable stays **gclo**, so a dev build installs beside the stable app: separate install folder, Start menu entry, update feed and data root (`%LOCALAPPDATA%\KofTwentyTwo\gclo-dev`), with `(dev)` in the window title.
- `Program.cs` reads the installed app id from `VelopackLocator.Current` and sets `GcloPaths.Edition`; `GcloPaths.DefaultDataRoot` follows it (pure mapping unit-tested). Local and CLI runs stay on the stable paths.
- `release.yml`: `app-id` derived from the tag (prerelease → `gclo-dev`); `verify-signatures` downloads the matching asset names (`gclo-dev-dev-Setup.exe` …).
- `docs/RELEASING.md`: the split, the asset names, and that dev installs made before the split (app id `gclo`, up to 1.0.2-beta.3) must be uninstalled or replaced by the stable app.
Closes #114 (part of #62).
Tested: build 0 warnings, format clean, actionlint clean, Engine tests 480/480 with 100% coverage on Engine and ViewModels (the real-Credential-Manager round-trip test flaked once in a parallel run and passes on its own and on re-run).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Prereleases now pack as Velopack app id gclo-dev while stable stays gclo, so a dev build installs beside the stable app: separate install folder, Start menu entry, update feed and data root (
%LOCALAPPDATA%\KofTwentyTwo\gclo-dev), with(dev)in the window title.Program.csreads the installed app id fromVelopackLocator.Currentand setsGcloPaths.Edition;GcloPaths.DefaultDataRootfollows it (pure mapping unit-tested). Local and CLI runs stay on the stable paths.release.yml:app-idderived from the tag (prerelease →gclo-dev);verify-signaturesdownloads the matching asset names (gclo-dev-dev-Setup.exe…).docs/RELEASING.md: the split, the asset names, and that dev installs made before the split (app idgclo, up to 1.0.2-beta.3) must be uninstalled or replaced by the stable app.Closes #114 (part of #62).
Tested: build 0 warnings, format clean, actionlint clean, Engine tests 480/480 with 100% coverage on Engine and ViewModels (the real-Credential-Manager round-trip test flaked once in a parallel run and passes on its own and on re-run).
🤖 Generated with Claude Code