Pick a file in Files to edit it here.
● The whole pipeline is now written. Here's what that gets you:
The one-time migration (your next hub-open does this automatically):
migrate.ps1 becomes the box-side dashboard-app.ps1. Since your stable launcher cats that file every time you open the hub, opening it once will: download +
checksum-verify the new app → uninstall the old crap (the .NET ReactorSync service, ReactorSyncTray, the Pull/Push/Run scheduled tasks, the WPF hub, the old
launcher dir) → install the WinUI app with fresh shortcuts + Add/Remove Programs entry → launch it. It keeps your ssh key + config, and it
downloads-then-verifies before removing anything, so a failed download leaves your current hub intact.
Self-update forever after: UpdateService.cs — on launch the app checks latest.json on the box; if there's a newer version it shows a "Restart & update" bar,
pulls the zip over scp, verifies the SHA-256, swaps itself, and relaunches. No reinstall, ever again. Every future change (including the real sync data, which
is next) ships by just bumping <Version> and pushing.
What I validated: publish-to-box.sh passes bash -n; the migrator matches your existing working PS scripts. I cannot compile the C#/XAML here (Linux) — CI is
the compiler, and the first run may need a version-pin nudge, which I'll fix.
Three live steps remain, and they need your go because they touch your real repo + laptop:
1. Push to main → triggers CI to build/zip the app. (Safe, reversible — just a build.)
2. publish-to-box.sh 11 on the box → stages the artifact into your control plane.
3. Flip dashboard-app.ps1 → this is the switch that makes your next hub-open migrate. Rollback is one command on my side (re-seed the old WPF hub), so it's not
a trap.
Say "go" and I'll push, watch CI, fix anything red, then stage + flip — and tell you to open your hub.
Or, if you'd rather eyeball the actual .exe before I flip your live hub, say so — I'll push + build, hand you the CI artifact to run once, and only flip after
you confirm it opens. Which way?
✻ Baked for 11m 4s
❯
⏵⏵ bypass permissions on (shift+tab to cycle) · ← for agents