WordPress 7.1 Release Lead Decision Log

đź”— **Source:** [WordPress 7.1 Release Lead Decision Log](https://nomad.blog/2026/08/21/wordpress-7-1-release-lead-decision-log/)
> [!note]+ Document Notes
> ---
> tags: [wordpress-release-process, decision-logs, wordpress-governance, release-management, institutional-memory, project-leadership]
> author: Anne McCarthy (nomad.blog)
> source: https://nomad.blog/2026/08/21/wordpress-7-1-release-lead-decision-log/
> reference: "WordPress 7.1 Release Lead Decision Log" — published 2026-08-21
> date created: 2026-08-25 09:05
> ---
> > [!info] Generated analysis — not the author's words. Sections below are machine-written
> > from the captured source. Only text inside `> [!quote]` blocks is verbatim from the author.
> > Do not quote or attribute any other line to the named author.
> # 🏷️ Title: WordPress 7.1 Release Lead Decision Log
> **This is the primary document.** The Repository's article processed earlier in this batch (`01m0wpyt3gddb2ff719k7gp0n5`) is *reporting on this post*. That analysis named reading this log as its highest-value follow-up; this is it. **Two corrections to that earlier analysis are recorded below** under "Corrections to the secondary-source analysis."
> **Attribution.** Reader's `author` field records `nomad.blog`; `site_name` is `agm`. The author is **Anne McCarthy**, WordPress 7.1 release lead, writing in the first person on her own site. Published **2026-08-21**, two days after release day. Referred to with they/them below, following the usage in The Repository's coverage; the log itself is entirely first-person and contains no third-person pronouns.
> **Register.** **First-person participant account, self-published, contemporaneous.** This is the strongest available evidence for *what the decision-maker decided and why* — and it is not evidence about anyone else's intent. McCarthy is explicit that the log is partial and will be updated.
> ## đź§ Table of Contents
> 1. Corrections to the secondary-source analysis
> 2. Summary
> 3. Main Content and Notes
> 4. References
> 5. Paraphrase
> 6. Newsletter
> 7. Action Items
> 8. Hypotheses
> 9. Methodology
> 10. Questions
> 11. Future Research
> 12. Implications
> 13. Learning Styles Assessment
> 14. Accessibility Assessment
> 15. DEIB Assessment
> 16. Logical Validity
> 17. DARVO Analysis
> 18. Conclusion
> 19. Refactor Appendix
> 20. Template Library
> ## ⚠️ Corrections to the secondary-source analysis
> Reading the primary corrects two things recorded in the analysis of The Repository's article:
> **Correction 1 — the "AI briefings" claim was narrower than reported.** That analysis recorded McCarthy as having "used AI to compile the log from Slack, GitHub, and Trac — and called the AI briefings 'a bust.'" The log is more precise: AI *did* help compile the list, and the compilation worked. What was "a bust" was one of **three input sources** — the AI briefings she had separately tried to get working. Her actual sentence lists the sources as the `#7-1-release-leads` Slack, *"AI briefings I tried to get to work (it was a bust),"* and GitHub/Trac activity. **So this is not a negative result about AI-assisted compilation; it is a negative result about a specific AI briefing setup, inside an otherwise successful AI-assisted task.** That materially weakens the methods-stream finding logged earlier.
> **Correction 2 — the first reason is more specific than "deference."** The Repository rendered it as "not wanting to push against Mullenweg mid-presentation," and that analysis treated it as documented deference to authority. The log's own wording is narrower and more defensible: *"Matt clearly said no to the button, even if it was just for himself, and I didn't want to push against that or make him repeat himself in the middle of a big task."* That is **respecting a stated no**, not reluctance to challenge a superior. The distinction matters, and the secondary source's compression lost it.
> **One thing the primary confirms rather than corrects:** the ambiguity was real and McCarthy records it as ambiguity in her own words.
> ## 📝 Summary
> **What it is.** A dated, oldest-to-newest log of roughly eighteen decisions made between shipping the 7.1 roadmap on June 19 and release day on August 19, each with its reasons. McCarthy's stated purpose: *leave a trail of breadcrumbs for future WordPress folks*, because releases are a whirlwind and the release lead role is "fairly nebulous."
> **How it was made, precisely.** AI helped compile the list from three sources: the `#7-1-release-leads` Slack, AI briefings she tried to get working (which she calls a bust), and GitHub/Trac activity. She expects to update it as she remembers more.
> **The shape of the job.** Overwhelmingly, the release lead's work here is **subtraction and unblocking**, not addition. Of the logged decisions, the large majority are punts, deferrals, reversions, or scope reductions: Dialog and Marquee, real-time collaboration, the Abilities API follow-ups, the Table of Contents block, Unicode email addresses, React 19, "displaying inherited styles," the "On this day" widget, suggestion mode, and the toolbar focus/hover change. She passes along a principle to the squad: *what we don't add is sometimes more valuable than what we do.*
> **Where authority sits, stated plainly.** Mullenweg appears as the decider in at least five entries — the Knowledge merge proposal ("no"), Unicode email addresses, the "On this day" widget, a late request that landed auto-approved self-pingbacks, and confirmation on punting RTC. McCarthy's role in several of these is to confirm, close the loop publicly, and pass the reasoning to the squad.
> **Mullenweg's stated AI priority, recorded here and not widely reported:** evals and benchmarking of the kind model makers use and target, tied to WP Bench work — and a general rule that he doesn't want things in Core that aren't already driven by real-world adoption with impressive week-to-week growth ("think: double digits").
> **Release day, from inside.** The plan was proclamation → release with slides and highlight video → Mullenweg's session. Instead: neither McCarthy nor emcee Robert Jacobi had seen the slides; a commit triggered auto-updates early around **1:30pm MT** when only Downloads-page and WP-CLI availability was intended; by the time she reached the stage **roughly 300K sites had already updated**; a **WP Rocket fatal was already being reported and flagged in the release squad channel**; and backstage word arrived that Mullenweg *"doesn't want to do the button,"* which she records as genuinely ambiguous.
> **The seven reasons, now enumerated** (the secondary coverage gave only the count and the first). In her stated order of importance: the clear no; auto-updates already running ~3 hours so word was out; the original timeline gone with no visibility into when it could happen; the presentation appearing unrelated to the release; no way to reach him mid-stage; a rough hour for APAC squad members; and the presentation already 20–25 minutes late.
> **Ownership and lessons.** *"I will own this decision if it ends up being wrong later."* Called on stage roughly 50 minutes late. Two stated remedies: **a new handbook page for running releases live at in-person events**, and **a triple-check or full run-through backstage** beforehand.
> ## đź“– Main Content
> ### 🗒️ Notes
> **Framing.** Wants to leave breadcrumbs for future WordPress folks; often finds herself trying to remember why X and not Y; notes the release lead role is fairly nebulous and wanted to publicly document the decisions it required. Scope: after the roadmap shipped through to release day, oldest to newest.
> **Method.** AI-assisted compilation from `#7-1-release-leads` Slack, AI briefings she tried and failed to get working, and GitHub/Trac. Explicitly incomplete; will update.
> **The decisions, in order:**
> - **Jun 19 — Ship the 7.1 roadmap.** Beta 1 under 3.5 weeks away; continued tinkering had diminishing returns; the roadmap had already been through many iterations with squad feedback and anything wrong could be corrected after publishing.
> - **Jun 19 — Create a separate `#7-1-design-assets` channel.** Design asset work (highlight grid, video featurettes, microsite) spans many avenues and would create noise in the main channel. **First time release asset work was done in a dedicated public channel** — usually it lives in GitHub issues, Figma files, calls, and

I promise that one day I will write about something other than WordPress 7.1 but, for now, I want to leave a trail of breadcrumbs for future WordPress folks. Releases are a whirlwind and I often find myself scratching my head trying to remember, “Why did we do X and not Y?”. Tied to this, the release lead role is fairly nebulous and I wanted to publicly document some of the various decisions that had to be made.
This focuses on decisions made after the roadmap was shipped through to release day, listed from oldest to newest, with reasons listed below. I used AI to help compile this list from a combination of the #7-1-release-leads Slack, AI briefings I tried to get to work (it was a bust), and GitHub/trac activity. I’ll likely update this as I remember more items but, for now, these were the bigger decisions that had to be made.
#### Jun 19 — Ship the 7.1 roadmap.
* Beta 1 was less than 3.5 weeks away, and continuing to tinker with every detail had diminishing returns.
* The roadmap had already been through many iterations with squad feedback, and anything wrong could still be corrected after publishing.
* Decision: ship [Roadmap to 7.1](https://make.wordpress.org/core/2026/06/19/roadmap-to-7-1/).
#### Jun 19 — Create a separate #7-1-design-assets channel for design work
* Design asset work (highlight grid, video featurettes, microsite) spans many avenues and would create noise in the main release channel, so I kept important release conversations in #7-1-release-leads while letting anyone join the design coordination as they liked.
* This was the first time we ever did release asset in a dedicated public channel. Usually this work ends up on GitHub issues, figma files, and in various calls or DM when we review.
* My hope in making it public is that we could get more perspectives and folks could see how much goes into the assets themselves.
#### ~June 25 — shared a design direction for “Apply globally” with granularity
* After meeting with Aaron, a Gutenberg contributor, in person to talk through some of the 7.1 items when we had happened to be in the same place, I worked on navigating some design decisions.
* I opened [gutenberg#79719](https://github.com/WordPress/gutenberg/pull/79719) to test replacing the per-control “push to Global Styles” action with a granular review modal, [in response to feedback that a per-control push felt risky by default.](https://github.com/WordPress/gutenberg/issues/49278#issuecomment-4806213008)
* Aaron split the individual-style-pushing work into its own PR, [gutenberg#79839](https://github.com/WordPress/gutenberg/pull/79839), building on a DataViews-based approach suggested in [gutenberg#49278 (comment)](https://github.com/WordPress/gutenberg/issues/49278#issuecomment-4808114939). He then saw this through!
Takeaway: this is a great way for release leads to help make decisions while still ensuring the code is up to snuff.
#### July 4 — Dialog and Marquee punted
* Not enough contributions and progress made for [two easy decisions to punt the feature from the release.](https://wordpress.slack.com/archives/C0B4Q0RJVAT/p1783188996558319?thread_ts=1783116737.863849&cid=C0B4Q0RJVAT)
#### ~Jul 7 — Land the “Posts list: excerpt in Compact view” work as-is
* The design had gone through repeated back-and-forth with no resolution.
* [I decided it was better to land what existed](https://github.com/WordPress/wordpress-develop/pull/11553#issuecomment-4893814064) and adjust based on real feedback than keep debating it.
#### Jul 7 — Classic block stays in the inserter for 7.1 exactly as today
> One of the takeaways is that the Classic block should become obsolete by choice, not by force. I believe time will be better spent to make the alternative genuinely better, while also smoothly, losslessly migrating content, so that users move off Classic block because they want to, not because the door has been removed.
>
>
* The plan to hide the Classic block from the inserter was reverted, and the `wp_classic_block_supports_inserter` filter and its deprecation notice were removed.
* There’s a [full announcement](https://make.wordpress.org/core/2026/07/07/the-classic-block-stays-in-the-inserter-for-wordpress-7-1/) with details about why it was punted already shared.
#### ~Jul 8 — Punt real-time collaboration (RTC) entirely from 7.1
* Scope and transport decisions were unresolved with feature freeze approaching, so a clean deferral was safer.
* This required talking with a large number of contributors to understand where we were, alongside talking with Matt himself. Beyond that, my leaning towards punting came from my own testing and understanding of our options.
* I confirmed this directly with Matt and [announced it publicly on Jul 8](https://wordpress.slack.com/archives/C0B4Q0RJVAT/p1783553346931689). I tried to make this decision as early as possible to ensure we could focus on more realistic items to land.
#### ~Jul 8–13 — no on the Knowledge merge proposal, no on AI Client streaming and embeddings
* Matt gave the Knowledge merge proposal a no, and I closed the loop with a public summary of the outcome. [Merge Proposal: Expanding WordPress Core Abilities](https://make.wordpress.org/core/2026/07/02/merge-proposal-expanding-wordpress-core-abilities/) is the related public proposal thread.
* The main reason for the “no” is that the priority for Matt for AI work is around working on evals and benchmarking all the model makers use and target. This ties directly into [WP Bench work](https://make.wordpress.org/ai/2026/01/14/introducing-wp-bench-a-wordpress-ai-benchmark/). He also made it clear that he doesn’t want to put things into Core that aren’t already driven by real-world adoption with impressive week to week growth (think: double digits).
* php-ai-client streaming did not make 7.1, and the [WordPress/ai embeddings PR #683 was punted](https://core.trac.wordpress.org/ticket/65638#comment:5) after landing too late.
#### ~Jul 10–14 — Bless a limited list of items for the beta period, scope Notes down, and punt suggestion mode to 7.2
* [I pulled together a list of Blessed items](https://wordpress.slack.com/archives/C0B4Q0RJVAT/p1783621633996009) to confirm with the release squad: Notes features, displaying inherited styles, and a handful of small revisions enhancements, all close to landing with buy-in from their feature owners. I reconfirmed this list unchanged on Jul 14.
* Confirmed the notes scope, including punting suggestions after a big refactor: @mentions, rich text, and @mention notifications, with emoji reactions, floating notes, and minified mode targeted at Beta 2.
+ Suggestion mode was excluded and punted to 7.2 because a recent major refactor made it too experimental and under-tested.
#### ~Jul 14 — Punt the Abilities API follow-ups from 7.1
* I punted the [Abilities API proposal](https://make.wordpress.org/core/2026/07/02/merge-proposal-expanding-wordpress-core-abilities/#comment-49037), partially in light of the direction from Matt previously around AI features.
#### ~Jul 14 — Punt the Table of Contents block from 7.1
* [Aki handled this](https://github.com/WordPress/gutenberg/issues/42229#issuecomment-4955526262) after no contributions moved this block forward.
#### ~Jul 20 — Punt Unicode email address support to a community plugin
* [Matt made this call on the proposal itself](https://make.wordpress.org/core/2026/05/22/extending-unicode-support-in-email-addresses-usernames-and-slugs/#comment-49045) citing too vast of a surface area for security issues and added complexity, when we have more pressing problems to solve.
#### ~Jul 23 — Defer the React 19 upgrade from Core 7.1
> React 19 upgrade won’t be a part of WordPress 7.1. After briefly enabling it in Gutenberg we discovered unexpected incompatibilities in how old and new version of React interact with each other, and in the ways how plugins use React, and we were forced to revert the change.
>
> From “[React 19: punted beyond WordPress 7.1, experiment in Gutenberg](https://make.wordpress.org/core/2026/07/24/react-19-punted-beyond-wordpress-7-1-experiment-in-gutenberg/)“
* This decision was made by those who contributed to it and the work continues in the Gutenberg plugin. ([#71336](https://github.com/WordPress/gutenberg/issues/71336))
#### Jul 28 — Add a way to disable responsive styling, but don’t remove the feature
* Enterprise theme maintainers raised support-burden concerns in dev chat and asked for a pause or an opt-out.
* My call: “A way to disable is fine. I don’t think fully disabling it makes sense.” A full removal was disproportionate to the impact and desire for this feature. Aki built the disable mechanism, targeting RC1 at the latest.
* A way to opt out likely should have been done from the beginning as this is a common request in WordPress, even when a feature is long awaited.
#### ~Jul 31–Aug 3 — Punt “displaying inherited styles”
* Disagreement persisted right up to Beta 4 and there just wasn’t a solid design direction we could land with enough time for proper user feedback.
* [This followed the same conservative-scoping principle as the earlier calls when punting](https://github.com/WordPress/gutenberg/pull/80649#issuecomment-5108834987), and [I wrote a retrospective on it](https://nomad.blog/2026/07/28/behind-the-scenes-of-a-punted-feature-of-7-1/) so the squad could learn from the situation.
* This was another example where [I tried to unblock things as the release lead](https://github.com/WordPress/gutenberg/pull/80506#issuecomment-5055007721) by sharing various possible approaches to get consensus but, sadly, none of them ended up working out.
#### Aug 3 — Punt the “On this day” widget
* Outcome of my 7.1 review call with Matt: he didn’t think it was good enough and wanted it removed.
* I passed along the broader principle to the squad: what we don’t add is sometimes more valuable than what we do.
#### Aug 6 — Move forward with auto-approve self pingbacks
* [After getting a late request from Matt](https://core.trac.wordpress.org/ticket/65016#comment:6), auto-approved self ping backs landed.
* I discussed the surface area of this change with a number of contributors and agreed that this would be safe to make an exception for this close to the release due to the limited impact and small amount of code.
#### ~Aug 14 — Revert the toolbar focus/hover style change rather than ship it in 7.1
* Trac [#65849](https://core.trac.wordpress.org/ticket/65849) started as a report that clicking a toolbar item showed a focus outline that felt distracting. A fix matched the toolbar’s hover state to its focus state, which then drew pushback from several designers who argued it collapsed hover, focus, and “current page” into one confusing signal and introduced visible regressions in plugins like Yoast.
* Once the debate had run for several days without agreement, I made the call in [comment:33](https://core.trac.wordpress.org/ticket/65849#comment:33): “My concern is the :hover rendering and the resulting visual changes in [63190], backported in [63201]. That landed on August 11 and I don’t want it to ship in 7.1.” I sent the improvement of the focus indicator itself to 7.2 (#65445, #65878) rather than trying to resolve the design disagreement days before release.
* The full toolbar focus/hover change was reverted in r63306, backported to the 7.1 branch in r63318, restoring the WordPress 7.0 appearance.
#### Aug 19 (release day) — Skip the live on-stage release at WCUS and publish the announcement post directly
The original plan was for Matt to accept the proclamation, do the release with slides and the highlight video ready, then start his session. As it turned out, [Robert hadn’t seen the slides beforehand, and neither had I](https://www.youtube.com/live/notaTgEZByo?si=BdFDmg_SwHMTS_qf&t=478). A commit triggered auto-updates early, around 1:30pm MT, when only limited availability was intended (release visible via Downloads > Releases and wp-cli only). By the time I came out on stage, roughly [300K sites had already updated](https://www.youtube.com/live/notaTgEZByo?si=LLoxXUa99JcHSt9T&t=2052), and a [WP Rocket fatal was already being reported](https://x.com/austinginder/status/2090199834787541074) and [flagged in the release squad channel](https://wordpress.slack.com/archives/C0B4Q0RJVAT/p1787177763600549). Backstage, word came that Matt “doesn’t want to do the button,” which was ambiguous between not wanting to press the button himself and not wanting to do the release on stage at all. The real-time discussion with the release squad starts [here](https://wordpress.slack.com/archives/C0B4Q0RJVAT/p1787182369753219).
I made the decision to publish, in this order of importance:
1. Matt clearly said no to the button, even if it was just for himself, and I didn’t want to push against that or make him repeat himself in the middle of a big task.
2. Auto-updates had been running for about three hours, so word was already out regardless of what happened on stage and I worried about the confusion that would happen if we didn’t proceed.
3. The original timeline, releasing right after the proclamation, was gone, and I had no way to know how long it would be until the release could happen.
4. Matt’s presentation didn’t seem related to the release as it went on, and I had no way to check what else it might cover.
5. I had no way to communicate with Matt to follow up or clarify in the moment since he was on stage.
6. All of this was happening at a rough time for APAC squad members, and I didn’t want to prolong things when all signs pointed to the release not happening on stage.
7. The presentation was already running 20 to 25 minutes late, and it seemed likely we would run out of time.
I explicitly owned the call: “I will own this decision if it ends up being wrong later.” I was eventually [called on stage about 50 minutes after the original time](https://www.youtube.com/live/notaTgEZByo?si=i7ia6Hysgy4os9lN&t=1920). Lessons for next time: a new handbook page for running releases live at in-person events, and a triple-check or full run-through backstage before going on., WordPress 7.1 Release Lead Decision Log, Anne McCarthy, 01m0wt9mh3a9n5mpetba6z641y.