docs(deploy): SQLITE_KEEP_DB precondition, changelog backfill, 5.3.0 stamp - #5832
Merged
norman-abramovitz merged 3 commits intoAug 20, 2026
Conversation
Field-testing the litestream lane surfaced a failure mode the guide did not cover: jetstream deletes the SQLite file at startup unless SQLITE_KEEP_DB=true, so any restore-before-launch scheme is silently destroyed and litestream then replicates the emptied database over the replica's head. Promote SQLITE_KEEP_DB to a hard precondition next to the stable encryption key, harden the wrapper example (reachability preflight, time-boxed restore, restored-size logging - litestream's restore is silent on both success and no-op), and note that the cell-to-replica network path needs verifying from inside a container, not from the target side.
The perf-page/nav-gate/sqlite-docs PR (cloudfoundry#5831) landed without a fragment; add one covering its features and fixes plus the persistence guide. Draft the dependency-updates fragment for the four dependabot groups, leaving the monaco 0.56 and ESLint 10 moves to their own entries.
Features in the notes (perf-page measurement, nav debug gate) make the next release a minor per the v5.1/v5.2 cadence.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Field-testing the SQLite persistence guide's litestream lane on a live CF foundation surfaced a failure mode the guide did not cover, plus some release housekeeping.
Docs: SQLITE_KEEP_DB is a hard precondition
Jetstream deletes the SQLite database file at startup unless
SQLITE_KEEP_DB=true(datastore.go,NewGooseDBConf). Any restore-before-launch scheme silently loses to that delete: the wrapper restores the database, jetstream removes it moments later, and every boot looks like a fresh install. Under litestream it compounds - the replicator then streams the emptied database over the replica's head, so the backup's latest state is overwritten by the mechanism meant to protect it.The guide now names this as a second hard precondition next to the stable encryption key, and the wrapper example gained the guards that made the lane debuggable in practice: a replica reachability preflight (litestream initializes replicas before spawning the -exec child, so an unreachable target otherwise blocks jetstream entirely), a time-boxed restore, and restored-size logging (litestream's restore is silent on both success and no-op).
Verified live: with the precondition set, endpoint registration and connected tokens survive repeated
cf restartcycles with the same endpoint GUID and no reconnect.Changelog: backfill fragments since v5.2.0
#5831 landed without a release-notes fragment; added one covering its features (perf-page measurement split, nav debug gate) and fixes (monaco prefetch deferral, 304 accounting), plus this guide update. Also drafted the dependency-updates fragment for the dependabot groups since v5.2.0, deduped against the monaco 0.56 and ESLint 10 entries.
./build/release-notes.sh assemblevalidates clean.Release: stamp 5.3.0
Features in the assembled notes make the next release a minor, matching the v5.1.0/v5.2.0 cadence.