You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Aug 2, 2026. It is now read-only.
|`v4.2.2`| 2026-06-29 | Deferred | Release environment matrix was documented for future execution; lanes were not rerun in Phase 17. | Submission/upload remains delayed/on hold. |
14
-
|`4.5.0` (staged, no tag yet) | 2026-07-05 |Deferred (lanes) + supporting local smoke recorded | The three release-grade lanes (Apache, managed host, minimum WordPress) remain maintainer-owned and are**not**completed. A non-lane supporting smoke run of the full core smoke set passed on a local PHP-built-in-server + SQLite + WordPress 7.0 replica against the merged 4.5.0 code. | Submission/upload remains delayed/on hold. |
14
+
|`4.5.0` (staged, no tag yet) | 2026-07-05 |Matrix cleared for tag: Apache **completed**, min-WP **CI-covered**, managed-host **waived**| The **Apache lane is completed** against a real Apache 2.4.58 + mod_php 8.3.6 stack (all six core sections pass, including the `mod_rewrite`/`Authorization`-header App-Password check). The**minimum-WordPress (6.4)** lane is functionally covered by the CI Integration matrix. The **managed-host** lane is cleared by an explicit maintainer waiver (recorded below) with residual risk accepted. The environment-matrix gate for the `v4.5.0` tag is therefore satisfied. | Submission/upload remains delayed/on hold. |
15
15
16
16
## `v4.2.2` environment matrix
17
17
@@ -26,15 +26,41 @@ The `v4.2.2` package already exists, but Phase 17 did not rerun release-grade ma
26
26
## `4.5.0` environment matrix
27
27
28
28
The `4.5.0` package is staged on `main` (version-synced; no `v4.5.0` tag cut yet).
29
-
The three release-grade lanes below are**not**completed — each is an explicit
30
-
deferral owned by the maintainer, because they require real environments that the
31
-
build/CI sandbox cannot provide (a real Apache stack, a real managed WordPress host).
29
+
The **Apache lane is completed** (evidence below). The**managed-host**lane is
30
+
still outstanding (it needs a real managed WordPress host, which the build sandbox
31
+
cannot provide). The **minimum-WordPress (6.4)** lane is functionally covered by CI.
32
32
33
33
| Environment lane | Status | Owner | Timing | Blocks next public tag/publication decision? | Notes |
| Apache stack | Deferred | Maintainer | Before next public tag/publication decision | Yes unless explicitly waived | Recommended runner: **Local (by Flywheel)** with the site's web server set to **Apache**, or DDEV/MAMP/an Apache staging host. The distinctive check this lane protects is `mod_rewrite` passing the `Authorization` header to REST/Application-Password auth (§4.1, §5.2), which the non-Apache smoke below does not exercise. Run core smoke sections 1.1, 2.1, 2.9, 4.1, 5.2, 9.1 and record host/tool, PHP, database, browser, and rewrite/auth-header notes. |
36
-
| Managed WordPress host | Deferred | Maintainer | Before next public tag/publication decision | Yes unless explicitly waived | Run core smoke sections 1.1, 2.1, 2.9, 9.1, 10.1 on an approved staging/trial managed host; record plan/trial type, caching or security features enabled, and any blocked filesystem or mu-plugin operations. |
37
-
| Minimum supported WordPress version (6.4) | Deferred (manual) — partially covered by CI | Maintainer | Before next public tag/publication decision | Yes unless explicitly waived | The automated Integration matrix already runs the full suite on the **6.4 floor** (PHP 8.2/8.3, single-site and multisite), so the functional dimension is covered. The manual browser smoke (sections 1.1, 2.1, 2.9, 4.1, 5.2, 9.1) on a 6.4 site is still outstanding; record the exact WordPress/PHP version and single-site vs multisite. |
35
+
| Apache stack |**Completed** 2026-07-05 | Claude Code (remote build sandbox) | Done | No — completed | Real **Apache/2.4.58 + mod_php 8.3.6 + mod_rewrite** stack serving the merged 4.5.0 replica. All six core sections (1.1, 2.1, 2.9, 4.1, 5.2, 9.1) pass; the `mod_rewrite` pretty REST route and the `Authorization`-header App-Password passthrough both work under Apache (§5.2). Full evidence below. Note: this is Apache **in the build container**, not a Local-by-Flywheel/managed host. |
36
+
| Managed WordPress host | Waived (maintainer) | Maintainer | Waived for `4.5.0` on 2026-07-05 | No — waived | Waived (see the managed-host waiver below). **Not** independently executed on a managed host — not reproducible in the build sandbox (no route to an external managed host). Residual risk accepted: managed-host object cache, mu-plugin, and filesystem-policy behavior not exercised. |
37
+
| Minimum supported WordPress version (6.4) | Covered by CI — manual smoke optional | Maintainer | Optional before tag | No (CI-covered) | The automated Integration matrix runs the full suite on the **6.4 floor** (PHP 8.2/8.3, single-site and multisite), covering the functional dimension. A manual 6.4 browser smoke (sections 1.1, 2.1, 2.9, 4.1, 5.2, 9.1) remains optional. |
38
+
39
+
### Completed lane evidence: Apache stack (2026-07-05)
40
+
41
+
- Package/version: `4.5.0` (merged to `main`; plugin reports `WP_SUDO_VERSION 4.5.0`, active on the replica)
42
+
- Environment lane / host: **Apache stack** — Apache 2.4.58 (Ubuntu) with `libphp8.3` (mod_php), `mod_rewrite` and `mod_headers` enabled, serving the replica on `:8901` with a standard WordPress `.htaccess` and `AllowOverride All`. This is an in-container Apache build environment, **not** Local by Flywheel or a managed host.
43
+
- WordPress: 7.0 · PHP: 8.3.6 (mod_php) · Database: SQLite drop-in 2.1.15 · Web server: Apache/2.4.58 · Site mode: single-site
44
+
- Browser: Chromium (Playwright) for admin sections; `curl` for the App-Password sections
45
+
- Two Factor and Patchstack Security (Pro 2.3.6) active alongside; no interference observed
46
+
- Core smoke sections run and result (all through Apache):
47
+
- §1.1 Activate via challenge page — PASS (challenge renders, password activates session, redirect back to originating page)
48
+
- §2.1 Activate plugin — PASS (no-session: gate notice + disabled `<span>` Activate; with session: operable nonced link, Akismet activated with no further challenge)
49
+
- §2.9 Change critical site setting — PASS (Save → challenge with `stash_key`, label "Change critical site setting"; after auth the POST is replayed — "Settings saved." with pending admin-email change)
- §5.2 Gated App-Password endpoint under Limited — PASS (`{"code":"sudo_blocked",…}` HTTP 403; control request with **no** Authorization header returns 401 `rest_not_logged_in`, confirming the header was genuinely passed through and evaluated)
- Rewrite/auth-header observation: `mod_rewrite` pretty REST routes resolve (`/wp-json/` → 200) and the Basic `Authorization` header for Application Passwords is passed through to PHP by mod_php (the §5.2 403-vs-401 contrast proves it). No `CGIPassAuth`/`SetEnvIf` workaround was required for mod_php.
55
+
- Runner/owner: Claude Code (remote build sandbox).
56
+
57
+
### Maintainer waiver: managed-host lane (2026-07-05)
58
+
59
+
-**Decision:** The **managed WordPress host** lane is **waived** for the `4.5.0` release. This is an explicit maintainer waiver under the "Deferral and failure policy" below (a recorded waiver clears the lane for the next public tag/publication decision). It applies to this one lane only.
60
+
-**Owner / approver:** Dan Knauss (maintainer).
61
+
-**Why waived:** A real managed host is not reachable from the build sandbox, and provisioning one was out of scope for this release. The server-layer concerns that most often differ on managed hosts — URL rewriting and `Authorization`-header passthrough for REST/Application-Password auth — were exercised and passed on the **completed Apache lane** above; the WordPress **6.4 floor** and multisite are covered by the CI Integration matrix.
62
+
-**Residual risk accepted:** managed-host-specific behavior not exercised — object cache (e.g. persistent Redis/Memcached), platform mu-plugins, and restrictive filesystem/security policies. Accepted for `4.5.0`; to be run on a real managed host at the next convenient opportunity.
63
+
-**Scope:** Clears the environment-matrix gate for the `v4.5.0` tag. Does **not** approve a WordPress.org upload/submission, which remains separately on hold until the maintainer approves publication.
38
64
39
65
### Supporting evidence (non-lane): local smoke run
Copy file name to clipboardExpand all lines: docs/release-status.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -15,13 +15,13 @@ This file is the canonical source for **current release state** in this reposito
15
15
16
16
-**Latest tagged release:**`4.2.2`
17
17
-**Latest git tag observed:**`v4.2.2` (annotated, cut 2026-06-28).
18
-
-**Next release staged (not yet tagged):**`4.5.0` — the version bump is committed on `main` (all five version-sync points, CHANGELOG, readme, POT) but no `v4.5.0` tag has been cut yet; tag creation and the release-environment matrix remain maintainer-owned. Note: `blueprint.json`'s "Try latest release" target is intentionally left at `v4.2.2` and is bumped to `v4.5.0`**at tag time** (see the tag checklist below) so the release badge does not 404 during the staged-but-untagged window.
18
+
-**Next release staged (not yet tagged):**`4.5.0` — the version bump is committed on `main` (all five version-sync points, CHANGELOG, readme, POT) but no `v4.5.0` tag has been cut yet; tag creation remains maintainer-owned. The release-environment matrix is **cleared** for `4.5.0` (Apache lane completed, 6.4 CI-covered, managed-host waived — see `docs/release-environment-log.md`). Note: `blueprint.json`'s "Try latest release" target is intentionally left at `v4.2.2` and is bumped to `v4.5.0`**at tag time** (see the tag checklist below) so the release badge does not 404 during the staged-but-untagged window.
19
19
20
20
### `v4.5.0` tag checklist (maintainer)
21
21
22
22
Perform in order when cutting the tag:
23
23
24
-
1.**Release-environment matrix sign-off**— run/record the Apache, managed-host, and minimum-supported-WordPress lanes in `docs/release-environment-log.md` (the `v4.2.2` row is currently *Deferred*), or explicitly waive.
24
+
1.**Release-environment matrix sign-off — ✅ complete for `4.5.0`.**The **Apache lane is completed** (real Apache 2.4.58 + mod_php 8.3.6 run, all six core sections pass, `Authorization`-header passthrough confirmed), the **minimum-WordPress (6.4)** lane is CI-covered, and the **managed-host** lane is cleared by an explicit maintainer waiver — all recorded in `docs/release-environment-log.md`. The environment-matrix gate is satisfied; proceed with the remaining steps.
25
25
2.**Re-confirm version sync** — the five points are already at `4.5.0`; verify none drifted.
26
26
3.**Bump `blueprint.json`** — change the stable-demo install target from `archive/refs/tags/v4.2.2.zip` to `archive/refs/tags/v4.5.0.zip` (this is the only edit deferred out of the release-prep PR, to avoid a broken "Try latest release" badge before the tag exists).
27
27
4.**Cut the annotated tag**`v4.5.0` on the release commit; the release-ZIP CI attaches the install asset on the tag.
0 commit comments