Making WordPress.org

Opened 4 weeks ago

Closed 2 weeks ago

#8367 closed enhancement (fixed)

Introduce (more) README.md / AGENTS.md documentation to the repository.

Reported by: georgestephanis Owned by: obenland
Priority: normal Milestone:
Component: General Keywords:
Cc:

Description

Right now, the wordpress.org meta repository is a bit of a black box for anyone trying to build on top of it — or orient themselves for the first time. We've got a lot of moving parts (endpoints, directories, forums, Rosetta localized portals, and shared packages) but very little high-level guidance mapping out how these systems tie together.

To make it easier for developers (and AI coding assistants) to propose enhancements without accidentally breaking things, I'd love to see a set of repository-relative markdown guides directly in the codebase.

Why this could help:

  • Faster developer velocity: New contributors don't have to guess where plugins or configs live or how to seed a local Docker setup.
  • Safer enhancements: Clear guidelines on dynamically deployed files (like the untracked wp-init-ondemand.php) prevent developers and agents from writing broken imports.
  • Portability: All links inside the documentation use repository-relative paths, meaning they render perfectly right on GitHub or in any standard viewer.

Change History (10)

#1 @georgestephanis
4 weeks ago

Files in the PR:

  • README.md (Root): An entry point mapping out the folder layout of the Git repository, summarizing the services under active development, and pointing directly to subproject guides.
  • AGENTS.md (Root): A developer guide to conventions and internals. It documents key patterns — like dynamic wp-init-ondemand.php bootstrapping, multisite object cache blog prefixing, and SSO client routines — and highlights linting and testing rules.
  • api.wordpress.org/README.md: A breakdown of core API routes (browser and version checks, community events feeds, translations) and the Composer v2 package repository logic.
  • wordpress.org/README.md: A map of custom plugins and themes (such as the Plugin/Theme Directories, the HelpHub docs layout, Rosetta, and the Gandalf zip scanner).
  • common/README.md: Outlines shared dependencies like single sign-on modules and Slack announcement webhooks.
  • .github/README.md: Documents the automated CI workflows (the branch-based PHPCS branch check, local Docker wp-env setups, and the co-author Props Bot).

This ticket was mentioned in Slack in #meta by georgestephanis. View the logs.


4 weeks ago

@obenland commented on PR #716:


3 weeks ago
#3

Thanks @georgestephanis! I pushed a few changes and clarifications on things that I noticed.

I'm in favor of having an AGENTS.md (and claude equivalent), so I'm glad that's part of the PR. The details I'm a bit more skeptical of, like all three items in the "Architectural Patterns & Conventions" section. Why the focus on these three, which seem pretty specific and not really reflecting patterns? "Deep-Dive Integrations & Internals", is that something agents _need_ to know about in every session? Things of that nature.

For the READMEs: I think the ones in the repo root and in .github/ are useful and worth iterating on and giving them more meat.
The three subdirectory READMEs (api.wordpress.org, common, wordpress.org) are where I'm less sure. A lot of the content restates what the directory names already tell you ("photo-directory powers the photos registry") and I worry that they'll just get outdated quickly since they mostly just recount the directories. Maybe we could just drop those. Curious what you think?

@georgestephanis commented on PR #716:


3 weeks ago
#4

I'm personally in favor of the subdirectory readmes, as I've found when navigating the repository it can be nice to have that context loading up automagically as you navigate -- like when clicking around in https://github.com/WordPress/gutenberg/tree/trunk/packages for example (which is the first repo that kinda got me on the pattern of it).

@obenland commented on PR #716:


3 weeks ago
#5

I'd agree if they'd provide context and non-obvious information, like in your example, but at the moment they're mostly just listing files and directories.

@georgestephanis commented on PR #716:


3 weeks ago
#6

My big want is to get something in. If you'd rather do a thinner addition, I'm fine dropping stuff -- you have a lot more experience than I do in this repo.

@obenland commented on PR #716:


3 weeks ago
#7

Sounds good! Let's drop the readme's in api.wordpress.org, common, and wordpress.org for now and get the rest in as a first pass

@obenland commented on PR #716:


2 weeks ago
#8

Pushed ade2bf60c: dropped the READMEs in api.wordpress.org, common, and wordpress.org as discussed, and updated the root README's workspace map to remove the now-dead links. This should be good to go as a first pass now.

#9 @obenland
2 weeks ago

  • Owner set to obenland
  • Status newreviewing

#10 @obenland
2 weeks ago

  • Resolutionfixed
  • Status reviewingclosed

Fixed in [14999].

Note: See TracTickets for help on using tickets.