Changelog
All notable changes to this project are documented in this file by a CI job that runs on every NPM release. The file follows the Keep a Changelog format.
[v3.1.53] (2026-09-07)
Documentation
- Personal Playground: Let a WordPress page request a site backup. (#4304)
- [Docs] Add GitHub UI documentation contribution guide. (#3724)
- [i18n] Add Bengali (bn) translation for the troubleshooting page. (#4289)
PHP WebAssembly
- Fix external PHP extension ABI exports. (#4108)
Website
- Exclude PHP next from pre-emptive offline loading. (#4294)
- Only render same-origin blob: URLs in the editor iframe's empty.html. (#4308)
Blueprints
- Proxy WebMCP tools registered inside the WordPress iframe. (#4301)
Various
- Add daily/weekly/monthly activity streaks to Personal WP usage stats. (#4305)
- Fold renamed plugin slugs together in the Personal WP stats dashboard. (#4306)
Contributors
The following contributors merged PRs in this release:
@adamziel @akirk @brandonpayton @chubes4 @ekamran @ikamal7
[v3.1.52] (2026-08-31)
Blueprints
- Run
wp db querythrough$wpdbin the wp-cli step. (#4277)
Documentation
- Docs: Replace rewrite-flushing writeFile examples. (#3806)
- [docs] Rename duplicate manifest slugs breaking developer.wordpress.org pages. (#4266)
Website
- [MCP] Update WebMCP registration API. (#3844)
Various
- CI: Slim down the Auto-label PR checkout to the minimum needed. (#4291)
- [CI] Label PRs from git diff instead of the pulls.listFiles API. (#4290)
- [CI] Reduce Actions artifact storage from Playwright and deploy uploads. (#4279)
- [CI] Republish packages missing after a partial NPM release. (#4270)
Contributors
The following contributors merged PRs in this release:
@akirk @bgrgicak @brandonpayton @ekamran @mho22 @obenland
[v3.1.51] (2026-08-24)
Website
- Auto-prepend PHP scripts before snippet execution. (#4262)
- Fix CI end-to-end failures after WP 7.1 / Gutenberg 23.8. (#4274)
- Improve Personal WP loading resilience. (#4275)
Blueprints
- Add Terminal to the Dock. (#3808)
Various
- [personal-wp] Backup reminder follow-ups. (#4276)
- [personal-wp] Review my WordPress UI with impeccable. (#4255)
Contributors
The following contributors merged PRs in this release:
@adamziel @akirk @fellyph
[v3.1.50] (2026-08-17)
Experiments
PHP WebAssembly
- [PHP-WASM] Add shared Base64 helpers. (#3726)
PHP WebAssembly
- Persist pooled PHP writes to saved sites. (#4260)
- [Website] Add captured mail viewer. (#4000)
- [Website] Forward captured sendmail messages. (#4103)
Contributors
The following contributors merged PRs in this release:
@ashfame @bgrgicak
[v3.1.49] (2026-08-10)
Documentation
- [docs] Correct "Open AI" branding to "OpenAI". (#4245)
Website
- Add lightweight saved-site export API. (#4219)
- Configure saved-site export API deployment. (#4220)
- End-to-end Test for api.html site export. (#4231)
- Explain the saved-site export API page. (#4233)
- Hide incomplete autosaves from recovery. (#4244)
- Prevent storage end-to-end retries from canceling CI. (#4249)
Bug Fixes
- Fix doc screenshots skill Markdown. (#4239)
Contributors
The following contributors merged PRs in this release:
@amitraj2203 @ashfame @brandonpayton
[v3.1.48] (2026-08-03)
Documentation
- Support wildcard CORS proxy origins. (#4156)
- [Docs] Document the Playground Dock and persistence workflow. (#4081)
- [docs] Add doc-screenshots agent skill and regenerate documentation screenshots for the new UI. (#4124)
- [docs] Adding WASM PHP modules page. (#4010)
PHP WebAssembly
- [CLI] Fix concurrent SQLite stress fixture length. (#4189)
- [PHP-WASM] Ignore null iframe relay messages. (#4174)
- [PHP-WASM] Include dot entries in mounted directory scans. (#4222)
- [PHP-WASM] Route Window APIs through dedicated MessagePorts. (#4178)
- [Website] Display ZIP import progress. (#4176)
Website
- Hide Blueprint file browser toggle on desktop. (#4197)
- Keep ZIP drop listeners active through rerenders. (#4214)
- Label mobile Blueprint file explorer as Files. (#4181)
- Start a fresh Playground after interrupted OPFS sync. (#4177)
- Center the Dock refresh button between the frame and URL field. (#4225)
- Center the mobile Dock refresh button between the edge and URL field. (#4226)
- Close Site Settings when a submission starts. (#4201)
- Don't delete the Playground you're currently in. (#4187)
- Drop the Dock operation toast to the Dock only when the pane leaves no room. (#4212)
- Keep Blueprint loading status visible during filesystem setup. (#4205)
- Keep Dock focus rings inside tool buttons. (#4182)
- Keep ZIP reimports from reusing stored Playground slugs. (#4199)
- Keep autosaves running after switching Playgrounds. (#4196)
- Keep the ZIP drop overlay active over frames. (#4179)
- Label the current Playground storage state. (#4194)
- Map Playground chrome colors to the WordPress palette. (#4191)
- Match the URL field height to adjacent controls. (#4203)
- Refer to the current Playground in fresh-site settings. (#4198)
- Restore the Dock when a drag loses pointer capture. (#4216)
- Reuse MenuItem descriptions for contextual action hints. (#4193)
- Separate Blueprint warnings and errors and preserve rounded Dock panes. (#4097)
- Separate Playground storage status from save actions. (#4192)
- Show ZIP import notices while autosave continues in background. (#4195)
- Support filtered saved-site ZIP exports. (#4217)
- Surface Blueprint editor action feedback in the Dock toast. (#4143)
- [CI] Reclaim Cypress browser memory between Playground boots. (#4204)
- [Docs] Route Playground guides through Dock workflows. (#4082)
Blueprints
- Preserve auto-login across browser-stored Playground reopens. (#4185)
Internal
- [CI] Compare affected tasks with the last successful run. (#4190)
Various
- [Website] Increase mobile Files heading to 18px. (#4188)
Contributors
The following contributors merged PRs in this release:
@adamziel @ashfame @fellyph
[v3.1.47] (2026-07-27)
Documentation
PHP WebAssembly
- [Blueprints] Make WordPress file imports failure-safe. (#3848)
- [Blueprints] Report ZIP extraction progress during WordPress imports. (#4168)
Website
- [Website] Fix phpMyAdmin page not found in Personal WP. (#4154)
Website
- Clarify New Playground and autosave failure states. (#4119)
- Add front-page thumbnails to saved Playgrounds. (#4133)
- Bind copied Blueprint bundles to their new Playground. (#4115)
- Detect the repository for pull request numbers. (#4120)
- Distinguish 404 errors from transient network failures. (#4114)
- Expose front-page thumbnail capture through PlaygroundClient. (#4142)
- Fix phpMyAdmin after opening Adminer. (#4144)
- Give failed Blueprint runs an explicit recovery path. (#4099)
- Import ZIP contents before initial browser persistence. (#4131)
- Keep unfinished Blueprint runs out of Recent and restore suggestions. (#4127)
- Log OPFS write worker failures. (#4125)
- Make desktop address suggestions clickable and input-width. (#4135)
- Preserve Blueprint recovery through GitHub authentication. (#4129)
- Preserve Playground records when OPFS deletion fails. (#4128)
- Preserve concurrent cross-tab metadata changes. (#4152)
- Preserve concurrent metadata while preparing Blueprint drafts. (#4116)
- Preserve plugin proxy default response headers. (#4157)
- Preserve selected Query API parameters when starting over after an error. (#4123)
- Prevent stale thumbnail captures from overwriting saved metadata. (#4167)
- Queue Blueprint Run during OPFS synchronization. (#4118)
- Remove stray plugin proxy expression. (#4158)
- Replace failed Blueprint runs before pruning autosaves. (#4134)
- Retry transient OPFS access handle contention. (#4149)
- Serialize concurrent OPFS metadata writes. (#4136)
- Share concurrent OPFS autosave operations. (#4140)
- Track Blueprint runs until their first OPFS copy succeeds. (#4126)
- Turn the Logs pane into a PHP error log. (#4122)
- Tweak confirmations copy and placement. And preserve the Playground URL through settings update. (#4150)
- Validate plugin proxy redirect destinations. (#4137)
Blueprints
- Accept ZIP drops across the page. (#4121)
- Reveal ZIP imports while their browser autosave finishes. (#4132)
- [Blueprints] Export and import all site files except Playground runtime files. (#4141)
- [Blueprints] Export complete versioned Playground ZIP snapshots. (#4139)
- [Blueprints] Import versioned ZIP user content while retaining legacy defaults. (#4130)
Contributors
The following contributors merged PRs in this release:
@adamziel @ashfame @brandonpayton @fellyph
[v3.1.46] (2026-07-20)
Blueprints
- Declare v2 schema constraints beside their types. (#4077)
Documentation
- [Docs] Describe Playground tools with the Dock UI. (#4085)
- [Docs] Document Dock paths in Blueprint and API documentation. (#4083)
PHP WebAssembly
- [CLI] Use preferredVersions.wp in Playground CLI. (#4075)
- Harden non-streaming fallback tests for fetchWithCorsProxy. (#3495)
- [PHP-WASM] Expose recursive cp through PHPWorker. (#4061)
Website
- Add a square mobile Dock with a tools toggle. (#4088)
- Add end-to-end coverage for playground-zip import regressions. (#3874)
- Align mobile Dock pane titles, toolbars, and forms. (#4084)
- Anchor the autosave nudge to the Playgrounds Dock button. (#4096)
- Ask before reloading edited Blueprint fragments. (#4089)
- Clarify New Playground action labels. (#4090)
- Decode JSON-encoded <php-snippet> child payloads. (#4101)
- Keep the file editor Save control stable during autosave. (#4073)
- Make Playgrounds pane rows span the Dock width. (#4086)
- Match local-directory status to the autosave callout. (#4100)
- Name Dock pane state after the Dock. (#4080)
- Place Dock panes above the visible collapsed row. (#4112)
- Render error dialogs as Quiet Paper sheets. (#4102)
- Restyle the GitHub connect prompt to match the Dock. (#4094)
- Use outward glyph for Dock Export. (#4091)
Contributors
The following contributors merged PRs in this release:
@adamziel @ashfame
[v3.1.45] (2026-07-16)
Enhancements
- [Website] Add a file editor end-to-end test harness. (#3978)
Blueprints
- Add compiler support for more v2 data declarations. (#3967)
- Add runtime coverage for supported v2 declarations. (#3968)
- Add runtime tests for v2 post imports and post types. (#3982)
- Align Blueprint v2 schema types. (#3932)
- Compile Blueprint v2 declarations from raw JSON. (#3933)
- Execute every v2 schema variant in CI. (#4014)
- Ignore credential rewrites in git resource test. (#3941)
- Import nested WordPress file ZIPs. (#3986)
- Lower Blueprint v2 mysql-dump content to runSql. (#3944)
- Lower more Blueprint v2 declarations to v1 steps. (#3949)
- Point unsupported v2 execution errors at declaration fields. (#3940)
- Reject malformed v2 declarations before runtime setup. (#3998)
- Report progress for v2 compiler steps. (#3970)
- Support Blueprint v2 runSQL steps. (#3943)
- Support v2 WXR URL maps. (#3974)
- Support v2 WXR author options. (#3975)
- Test v2 login, language, mu-plugins, fonts, SQL, and PHP. (#4002)
Tools
Website
- [Website] Reuse FilePickerTree imports in the shared explorer. (#3973)
Documentation
- [docs] Adding manifest.json for handbook structure. (#3267)