v0.10.11 Sep 15, 2026
Healthy deploys stay succeeded when cleanup never starts
-
Fixed
Deploys that pass health are no longer marked failed if the worker dies before cleanup.
-
Improved
Stale-deploy cleanup resumes unfinished post-health runs so symlink and cleanup can finish.
v0.10.10 Sep 15, 2026
Remove leftover cloud servers even when the VM is already gone
-
Fixed
You can remove a cloud server even if the machine no longer exists at the provider.
-
Fixed
Server removal no longer fails because of leftover route-migration history.
v0.10.9 Sep 14, 2026
Keep the control plane up when a server check gets stuck
-
Fixed
A stuck check against a dead or moved server can no longer take the whole product offline.
-
Improved
The site stays reachable while the control plane is starting, even if database cleanup is waiting.
-
Improved
Servers you have already moved off no longer send metrics that slow the control plane.
v0.10.8 Sep 14, 2026
Stop retrying dead servers, and remove unused Postgres after a move
-
Fixed
Unreachable servers are checked once then backed off, so deploys and moves are not stuck behind failed SSH.
-
New
You can remove an unused Postgres host with no databases left, even if the old machine is offline.
-
Improved
After you move workloads off a server, background checks stop until diagnostics succeed.
v0.10.7 Sep 9, 2026
Evacuate retry still ships remaining apps instead of only switching DNS
-
Fixed
If a move deploy fails, starting again now deploys the other apps instead of finishing with sites still down.
v0.10.6 Sep 9, 2026
Evacuate finishes after DNS cutover instead of getting stuck
-
Fixed
After DNS cutover, Move workloads now marks the evacuate complete instead of sitting on Soak forever.
v0.10.5 Sep 8, 2026
Complete cutover no longer fails because the old apps were stopped for the move
-
Fixed
Complete cutover no longer stops with an unhealthy-route error after freeze. A-record moves finish even if leftover traffic-shift settings are on the route.
v0.10.4 Sep 8, 2026
Complete cutover no longer crashes after you confirm
-
Fixed
Complete cutover no longer crashes with an internal error after you confirm.
v0.10.3 Sep 8, 2026
Complete cutover no longer waits for public DNS, and Cloudflare proxy IPv6 is not treated as a zone AAAA
-
Fixed
Complete cutover finishes the move after you confirm, even while public DNS still points at the old server.
-
Fixed
Cloudflare orange-cloud IPv6 is no longer shown as AAAA records you need to delete — those addresses are not in your DNS zone.
v0.10.2 Sep 8, 2026
Evacuate can retry after failure and no longer health-checks the old public hostname
-
Fixed
Evacuate no longer fails because it probed the old public URL while DNS still pointed at the source server.
-
Fixed
After a failed evacuate you can start again from Move workloads, restore source apps when nothing copied, or see that workloads already landed on the target.
-
Improved
Auto-deploy is turned back on when DNS cutover finishes, and source apps restart if freeze failed mid-stop.
v0.10.1 Sep 8, 2026
Move workloads page loads again during an active evacuate
-
Fixed
Fixed an internal error on the Move workloads page when an evacuate run was in progress (Jinja treated move_live.items as a dict method, not the item list).
-
Fixed
Fixed a crash when stale databases were listed during evacuate planning.
v0.10.0 Sep 8, 2026
Server evacuate is production-ready with clear failures
-
New
Whole-server evacuate copies databases, volumes, and apps to another VPS, runs backups automatically, and walks you through DNS cutover.
-
Fixed
Evacuate no longer blocks at server quota when you pick an existing target, and shared Postgres dumps bypass row-level security policies.
-
Improved
When evacuate fails, the wizard shows the failed deploy step, error details, and links to the deploy log instead of a generic Deploy failed message.
v0.9.4 Sep 8, 2026
Failed evacuate runs explain what broke
-
Fixed
Evacuate no longer stops with a useless Deploy failed message — it surfaces the failed deploy step, error text, and links to the deploy log.
-
Improved
Move workloads shows failed items, failed step name, and live error details while a run is in progress.
v0.9.3 Sep 8, 2026
Evacuate survives Postgres row-level security on shared databases
-
Fixed
Database backup and move dumps on shared Postgres hosts now use the host admin role so tables with row-level security (for example agent_actions) no longer block evacuate.
-
Improved
Failed server evacuate runs show the error message and live log on the Move workloads page.
v0.9.2 Sep 8, 2026
Evacuate backs up databases for you instead of stopping you
-
Fixed
Move workloads no longer blocks when a database has no recent backup on file.
-
Improved
Whole-server evacuate runs a backup automatically at the start if one is missing, before apps are frozen.
v0.9.1 Sep 8, 2026
Evacuate no longer blocks when you already have a target server
-
Fixed
Move workloads no longer shows a false server-quota blocker when you are at your limit but can pick an existing server as the target.
-
Improved
Selecting a target server on the evacuate wizard now clears blockers and enables Start move.
v0.9.0 Sep 8, 2026
Move an entire server to a new VPS in one guided evacuate
-
New
Whole-server evacuate copies databases, app volumes, and deployments to a ready target server, then walks you through DNS cutover with an honest downtime clock.
-
New
Server detail has a Move workloads wizard; decommission no longer supports metadata-only moves, and delete blocks while databases remain.
-
Improved
Per-database Move still works on its own; sslip test routes get new URLs on the target when the server IP changes.
v0.8.12 Sep 3, 2026
Deploys start even when background jobs pile up
-
Fixed
Deploys were waiting for hours because background health checks flooded the job queue until it crashed. That loop is stopped, so queued deploys can start.
-
Improved
The control plane now applies Redis memory settings on the next deploy instead of leaving a crash-looping job broker in place.
v0.8.11 Aug 20, 2026
Fix invited teammate login and password sharing
-
Fixed
Invited teammates can finish first sign-in. The one-time password change after a workspace invite no longer fails.
-
New
Workspace admins can reset a member password and copy a message to send (sign-in URL, email, and temporary password). Credentials are no longer placed in the page URL.
-
Improved
The sign-in page tells invited teammates to use the email and temporary password they were sent, instead of sending them to create an account.
v0.8.10 Aug 10, 2026
Fix false Never scheduler jobs and reduce worker starvation
-
Fixed
Operator Scheduler job types now use aligned enqueue/worker IDs so paired runs show correctly instead of false Never.
-
Improved
Security, disk reclaim, and stale-cleanup jobs appear in the catalog with Run now actions.
-
Improved
Scheduler boots stagger first ticks for route health and signal engine; route health SSH probes fail fast so concurrency-1 workers are not blocked for minutes.
v0.8.9 Aug 10, 2026
Clearer orphan queue cleanup on Scheduler
-
Improved
When misrouted Celery tasks pile up on the unused celery queue, Operator Scheduler shows a top-of-page purge banner with a clear explanation and button.
-
Improved
Alert sweep results explain when nothing was closed, and clarify that sweep does not clear Celery queues.
-
Improved
Worker queues show plain-language labels, what the worker is doing now, and separate Close recovered alerts from queue purge.
v0.8.8 Aug 10, 2026
Scheduler recovers from database connection drops
-
Improved
Background jobs recover automatically when the hosted database briefly drops connections, such as during a managed database reboot.
v0.8.7 Aug 7, 2026
Scheduler page loads again
-
Fixed
Operator Scheduler page no longer crashes when the latest reliability job is still only queued.
v0.8.6 Aug 6, 2026
In-flight work visibility and stuck database backup alerts
-
New
Operator Scheduler lists queued and running deploys, migrations, database moves, and proxy reconciles by workspace and project.
-
Fixed
Database backups stuck as Running are marked failed after 30 minutes, stop stacking new runs, and open a backup alert for the workspace.
-
Improved
Operator Scheduler shows a Backups health panel for databases whose scheduled backups never succeeded, with tenant and project context.
v0.8.5 Aug 6, 2026
Security scanner freshness on operator console
-
New
Operator Security page now shows installed scanner CLI versions and flags stale Grype DB or missing tools.
-
Improved
Daily security job inventories OSV, GuardDog, and other scanner versions even when Grype DB update fails.
-
New
Monthly pin-check script compares Dockerfile.security scanner versions against latest upstream releases.
v0.8.4 Aug 4, 2026
Faster dashboard loads and Postgres database moves
-
New
Move a managed Postgres database to another server in the workspace or to external hosted Postgres (BYO credentials) from the Database Move tab, API, or MCP.
-
Improved
Dashboard health content is cached briefly and metrics lookups only fetch the latest sample, so repeat loads hit the database far less.
-
Improved
Production API runs two workers so one slow page no longer freezes the whole control plane.
-
Improved
Old server and database metrics snapshots are pruned more aggressively so history tables stay bounded.
-
Fixed
Platform unhealthy on the dashboard now matches real red badges (unhealthy servers, routes, apps, or databases) instead of overdue probes or a failed deploy alone.
-
Fixed
Switching workspaces no longer leaves you on another workspace's application or resource page — you return to the dashboard instead.
-
Improved
Slow request logs now include the top slow SQL snippets so production lag is easier to diagnose.
v0.8.3 Aug 4, 2026
Clearer loading feedback while pages finish loading
-
Improved
Deferred sidebar and dashboard sections now show animated skeleton placeholders instead of blank space while data loads.
-
Improved
The top progress bar and Working indicator stay visible until all lazy-loaded sections have finished.
v0.8.2 Aug 4, 2026
Faster workspace switching across the product
-
Improved
Switching workspaces keeps you on the same page instead of always reloading the dashboard.
-
Improved
The sidebar and dashboard load in stages by default so workspace changes feel much snappier.
-
Improved
Workspace lists are cached briefly so the switcher does not re-query every tenant on each page load.
v0.8.1 Aug 4, 2026
More responsive control plane on modest VPS hosts
-
Improved
Control-plane deploys cap memory per container and run background workers with lower concurrency so the API stays responsive under load.
-
Improved
Scheduler background jobs now share the main worker process, reducing container overhead and faster recovery after a reboot.
v0.8.0 Aug 2, 2026
Faster dashboards, alerts, and routes across the product
-
Improved
Alerts and Routes load about 25–33% faster with fewer database round-trips on every visit.
-
Improved
Alert filter chips stay snappy on repeat visits thanks to short-lived server-side caching.
-
Improved
Production logs now include query counts and database time on slow requests so performance issues are easier to spot.
-
Improved
Server memory pressure diagnostics show a real percentage instead of unknown when host metrics are available.