Repository navigation
Support managed MySQL in Apps commands - #28
Merged
nathan-thillairajah merged 3 commits intoOct 22, 2026
Merged
Conversation
nathan-thillairajah
previously approved these changes
Oct 21, 2026
nathan-thillairajah
left a comment
Contributor
There was a problem hiding this comment.
🤖 Looks good overall. All 82 Apps tests pass locally; just the README wording below.
nathan-thillairajah
previously approved these changes
Oct 22, 2026
nathan-thillairajah
approved these changes
Oct 22, 2026
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.
Why
Apps creation rejects MySQL persistence and drops the planned runtime profile before initialization. A partially initialized app also lacks a supported repair command.
What
Accept
--persistence mysqlfor explicitfetch-jsandprocessapps. Addbl apps initialize APP_IDto plan and repair an existing app without another reservation.How
Preserve the planned runtime and persistence through reserve and initialize. Require MySQL plans to preserve the requested runtime and engine, and initialization responses to confirm MySQL. Retain server errors without falling back to SQLite. Recovery guidance names the selected runtime. Initialization rejects missing, deleted, or substituted identities.
Risk
Initialization can provision persistence or repair an existing stack, so it is an explicit command. Existing server admission still controls engine changes and availability.
Testing
A local build accepted MySQL creation and reserved the exact app. After a server connectivity fix,
apps initializerecovered that same app and confirmedinitialized: trueandinitialize.persistence: mysql. After the server mesh fix reached staging, an identical retry recovered the pending first deployment, and a notes app reached exact-version readiness. Its live POST returned 201 after a real MySQL INSERT and SELECT. Persistence across a later redeployment remains unverified. No new hosted fetch-js database test was run for this update; the release binary help was checked for both supported runtimes.Generated with Codex