Delivered across 15 dev betas → stable: parallel org clone/update with failure isolation, Windows-invalid-path validation + recovery, gclo.Engine/ViewModels/Cli split, full UX (selectable filterable table, per-row + overall progress, active strip, activity log, retry, path preview), accounts mode (Credential Manager vault, wizard, Sync All with live sidebar status, CLI parity), accessibility + theming, responsive layout, non-modal live log window, self-update (verified on a real install), true-vector branding (icon, window/taskbar/installer icons, splash, About), 100% enforced line coverage on Engine/ViewModels/Cli + 8 FlaUI e2e tests, and the full CI/CD + release pipeline for both channels.
#30 (all 17 verified UX/perf findings), #39 (update progress bar), #40 (every action logged), #31 (25 engine/XAML/test findings) and #32 (27 of 28 security/CLI/release findings; the 28th is #57) are on main. The CLI grew repos, --include/--exclude/--skip-archived, --dry-run, --json-lines, accounts add/edit/remove, and exit codes 3/4/70 (docs/CLI.md).
2026-10-09 (third wave) — deferred features (PR #59, merged)
#9 Scoop bucket in this repo + Chocolatey package + SHA256SUMS.txt on every release; stable releases update the manifests via a generated PR against main (needs CHOCO_API_KEY to push, see #7).
#8 "Clone in WSL instead" recovery for Windows-invalid paths (token only via the environment, ~/gclo/<org>/<repo>).
#33 WinUI.TableView 1.5.0 table with an accessibility shim (the control's UIA peer hides its header row; AccessibleTableView fixes that) and an offline UI-test fixture; 419 Engine + 129 CLI + 11 FlaUI tests, 100% coverage.
v1.0.1-beta.1 tagged on the merge commit as the #55 rehearsal of the gated release chain.
Open — post-1.0
#55 Record the v1.0.1-beta.1 rehearsal outcome (in progress)
#57 Owner: signing identity (Azure Trusted Signing or a code-signing cert) so release binaries can be Authenticode-signed
#56 Owner: verify self-update on a dev-channel install (Velopack 1.2.161)
#54 Make the UI e2e suite a required check once proven stable (time-gated)
#60 Isolate the Credential Manager vault for UI tests (the suite sees a developer's saved default token)
Manual Narrator + keyboard pass over the new table (from #33)
Single place to see execution order. GitHub Issues is the tracker of record for gclo development.
## 🎉 v1.0.0 shipped (2026-07-05)
First stable release: https://github.com/KofTwentyTwo/gclo/releases/tag/v1.0.0
Delivered across 15 dev betas → stable: parallel org clone/update with failure isolation, Windows-invalid-path validation + recovery, gclo.Engine/ViewModels/Cli split, full UX (selectable filterable table, per-row + overall progress, active strip, activity log, retry, path preview), accounts mode (Credential Manager vault, wizard, Sync All with live sidebar status, CLI parity), accessibility + theming, responsive layout, non-modal live log window, self-update (verified on a real install), true-vector branding (icon, window/taskbar/installer icons, splash, About), **100% enforced line coverage** on Engine/ViewModels/Cli + 8 FlaUI e2e tests, and the full CI/CD + release pipeline for both channels.
## 2026-10-09 — post-1.0 hardening wave (PR #51)
Dependency catch-up (WindowsAppSDK 2.5.1, LibGit2Sharp 0.32 security, Velopack 1.2.161, test tooling), CodeQL on dev (#45), gated release chain (#44), repo-name containment (#47), incomplete-clone recovery (#46), account/vault consistency (#43), Dependabot NuGet replaced by the NuGet updates workflow (#52), license-check exemption for file-licensed packages (#53).
## 2026-10-09 (later) — known-issues sweep (PR #58, merged)
#30 (all 17 verified UX/perf findings), #39 (update progress bar), #40 (every action logged), #31 (25 engine/XAML/test findings) and #32 (27 of 28 security/CLI/release findings; the 28th is #57) are on `main`. The CLI grew `repos`, `--include/--exclude/--skip-archived`, `--dry-run`, `--json-lines`, `accounts add/edit/remove`, and exit codes 3/4/70 (docs/CLI.md).
## 2026-10-09 (third wave) — deferred features (PR #59, merged)
- #9 Scoop bucket in this repo + Chocolatey package + `SHA256SUMS.txt` on every release; stable releases update the manifests via a generated PR against `main` (needs `CHOCO_API_KEY` to push, see #7).
- #8 "Clone in WSL instead" recovery for Windows-invalid paths (token only via the environment, `~/gclo/<org>/<repo>`).
- #33 WinUI.TableView 1.5.0 table with an accessibility shim (the control's UIA peer hides its header row; `AccessibleTableView` fixes that) and an offline UI-test fixture; 419 Engine + 129 CLI + 11 FlaUI tests, 100% coverage.
- `v1.0.1-beta.1` tagged on the merge commit as the #55 rehearsal of the gated release chain.
## Open — post-1.0
- [ ] #55 Record the `v1.0.1-beta.1` rehearsal outcome (in progress)
- [ ] #57 Owner: signing identity (Azure Trusted Signing or a code-signing cert) so release binaries can be Authenticode-signed
- [ ] #56 Owner: verify self-update on a dev-channel install (Velopack 1.2.161)
- [ ] #54 Make the UI e2e suite a required check once proven stable (time-gated)
- [ ] #60 Isolate the Credential Manager vault for UI tests (the suite sees a developer's saved default token)
- [ ] #7 Owner: `WINGET_TOKEN` + first manual winget submission; optional `NUGET_API_KEY`, `CHOCO_API_KEY`, `DEPS_PAT`
- [ ] Manual Narrator + keyboard pass over the new table (from #33)
Roadmap update: #16 (Accounts mode) is fully scoped and queued AFTER all currently-open issues per owner directive. Current execution: #2 phase 2 (path recovery) in progress → #5 (audit + enforcement) → then #16.
Roadmap update: #16 (Accounts mode) is fully scoped and queued AFTER all currently-open issues per owner directive. Current execution: #2 phase 2 (path recovery) in progress → #5 (audit + enforcement) → then #16.
UI/UX review complete → #19 (22 verified findings: 4×P1 accessibility/theming, 12×P2, 6×P3). Suggested slot: P1s before or alongside #16 Accounts mode, since Accounts adds new UI that should be born accessible.
UI/UX review complete → #19 (22 verified findings: 4×P1 accessibility/theming, 12×P2, 6×P3). Suggested slot: P1s before or alongside #16 Accounts mode, since Accounts adds new UI that should be born accessible.
Crash fix: a second ContentDialog.ShowAsync() while one was open killed the process (stowed exception 0xc000027b) — reachable by real users (e.g. F1 while Settings is open, or any command surface driven by assistive tech). All dialogs now open through a DialogGuard chokepoint; App has a last-resort UnhandledException net that logs to the activity log instead of dying.
E2E UI tests: new gclo.UiTests (FlaUI/UIA) drives the real gclo.exe against an isolated data dir — 8 token-free tests including a regression for the crash above. Runs green locally and in a new (not-yet-required) CI job on hosted runners.
Branded startup splash: in-window overlay with the brand gradient, wordmark, version + git hash, and fade-out.
Once the UI end-to-end tests (x64) job proves stable across a few PRs, it should be added to the branch ruleset's required checks.
**beta.10 shipped (PR #29):**
- **Crash fix**: a second `ContentDialog.ShowAsync()` while one was open killed the process (stowed exception `0xc000027b`) — reachable by real users (e.g. F1 while Settings is open, or any command surface driven by assistive tech). All dialogs now open through a `DialogGuard` chokepoint; `App` has a last-resort `UnhandledException` net that logs to the activity log instead of dying.
- **E2E UI tests**: new `gclo.UiTests` (FlaUI/UIA) drives the real `gclo.exe` against an isolated data dir — 8 token-free tests including a regression for the crash above. Runs green locally and in a new (not-yet-required) CI job on hosted runners.
- **Branded startup splash**: in-window overlay with the brand gradient, wordmark, version + git hash, and fade-out.
Once the `UI end-to-end tests (x64)` job proves stable across a few PRs, it should be added to the branch ruleset's required checks.
🤖 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.
Single place to see execution order. GitHub Issues is the tracker of record for gclo development.
🎉 v1.0.0 shipped (2026-07-05)
First stable release: https://github.com/KofTwentyTwo/gclo/releases/tag/v1.0.0
Delivered across 15 dev betas → stable: parallel org clone/update with failure isolation, Windows-invalid-path validation + recovery, gclo.Engine/ViewModels/Cli split, full UX (selectable filterable table, per-row + overall progress, active strip, activity log, retry, path preview), accounts mode (Credential Manager vault, wizard, Sync All with live sidebar status, CLI parity), accessibility + theming, responsive layout, non-modal live log window, self-update (verified on a real install), true-vector branding (icon, window/taskbar/installer icons, splash, About), 100% enforced line coverage on Engine/ViewModels/Cli + 8 FlaUI e2e tests, and the full CI/CD + release pipeline for both channels.
2026-10-09 — post-1.0 hardening wave (PR #51)
Dependency catch-up (WindowsAppSDK 2.5.1, LibGit2Sharp 0.32 security, Velopack 1.2.161, test tooling), CodeQL on dev (#45), gated release chain (#44), repo-name containment (#47), incomplete-clone recovery (#46), account/vault consistency (#43), Dependabot NuGet replaced by the NuGet updates workflow (#52), license-check exemption for file-licensed packages (#53).
2026-10-09 (later) — known-issues sweep (PR #58, merged)
#30 (all 17 verified UX/perf findings), #39 (update progress bar), #40 (every action logged), #31 (25 engine/XAML/test findings) and #32 (27 of 28 security/CLI/release findings; the 28th is #57) are on
main. The CLI grewrepos,--include/--exclude/--skip-archived,--dry-run,--json-lines,accounts add/edit/remove, and exit codes 3/4/70 (docs/CLI.md).2026-10-09 (third wave) — deferred features (PR #59, merged)
SHA256SUMS.txton every release; stable releases update the manifests via a generated PR againstmain(needsCHOCO_API_KEYto push, see #7).~/gclo/<org>/<repo>).AccessibleTableViewfixes that) and an offline UI-test fixture; 419 Engine + 129 CLI + 11 FlaUI tests, 100% coverage.v1.0.1-beta.1tagged on the merge commit as the #55 rehearsal of the gated release chain.Open — post-1.0
v1.0.1-beta.1rehearsal outcome (in progress)WINGET_TOKEN+ first manual winget submission; optionalNUGET_API_KEY,CHOCO_API_KEY,DEPS_PATRoadmap update: #16 (Accounts mode) is fully scoped and queued AFTER all currently-open issues per owner directive. Current execution: #2 phase 2 (path recovery) in progress → #5 (audit + enforcement) → then #16.
UI/UX review complete → #19 (22 verified findings: 4×P1 accessibility/theming, 12×P2, 6×P3). Suggested slot: P1s before or alongside #16 Accounts mode, since Accounts adds new UI that should be born accessible.
beta.10 shipped (PR #29):
ContentDialog.ShowAsync()while one was open killed the process (stowed exception0xc000027b) — reachable by real users (e.g. F1 while Settings is open, or any command surface driven by assistive tech). All dialogs now open through aDialogGuardchokepoint;Apphas a last-resortUnhandledExceptionnet that logs to the activity log instead of dying.gclo.UiTests(FlaUI/UIA) drives the realgclo.exeagainst an isolated data dir — 8 token-free tests including a regression for the crash above. Runs green locally and in a new (not-yet-required) CI job on hosted runners.Once the
UI end-to-end tests (x64)job proves stable across a few PRs, it should be added to the branch ruleset's required checks.🤖 Generated with Claude Code