Retarget the changeset from @executor-js/host-selfhost (a private package that publishes nothing and rebuilds no image) at executor, so the release train cuts a product patch, tags it, and republishes the self-host image from main.
Unified · Split
| @@ -0,0 +1,5 @@ | ||
| 1 | +--- | |
| 2 | +"executor": patch | |
| 3 | +--- | |
| 4 | + | |
| 5 | +Self-hosted deployments now persist their data correctly across restarts. | |
| @@ -1,17 +0,0 @@ | ||
| 1 | −--- | |
| 2 | −"@executor-js/host-selfhost": patch | |
| 3 | −--- | |
| 4 | − | |
| 5 | −Fix self-hosted data loss on restart. The auth bootstrap built a throwaway | |
| 6 | −Better Auth instance to run migrations and seed the org before the | |
| 7 | −organization id was known, then discarded it. Its libSQL connection — a | |
| 8 | −different native build than the executor's — was garbage-collected mid-boot, | |
| 9 | −and that close unlinked the shared SQLite WAL out from under the executor's | |
| 10 | −still-open connection. Every executor write (integrations, connections, the | |
| 11 | −generated tools) then landed in a deleted WAL file and vanished on the next | |
| 12 | −restart, surfacing as a reconnected account whose tools had silently | |
| 13 | −disappeared. | |
| 14 | − | |
| 15 | −The bootstrap now uses a single long-lived auth instance with the | |
| 16 | −organization id late-bound, so there is no second connection to be closed | |
| 17 | −mid-boot and no split WAL. | |