The four registry READMEs — npm (rocketride), PyPI (rocketride), PyPI (rocketride-mcp), and the VS Code Marketplace + OpenVSX — are not stored in git. Each package's scripts/tasks.js copies one in from docs/ at build time, which is why those directories contain no README.md:
packages/client-python/scripts/tasks.js:52 docs/README-python-client.md
packages/client-mcp/scripts/tasks.js:62 docs/README-mcp-client.md
packages/client-typescript/scripts/tasks.js:73 docs/README-typescript-client.md
apps/vscode/scripts/tasks.js:40 docs/README-vscode.md
That copy is silent when it breaks, and the consequence is unusually long-lived: a registry README cannot be corrected without publishing a new version, so a stale or wrong one stays live until the next release of that artifact.
Three failure modes, none of which anything currently catches:
- a
README_SRC path renamed on one side only — the build copies nothing or the wrong file, every check stays green
- a
README.md committed into a package directory, shadowing the generated one — which wins is then decided by build order rather than intent
- a relative link or image in a source README — invisible in review, because each registry resolves relative paths against itself rather than against GitHub. A README that renders perfectly in the repo can render broken on npm, PyPI and the Marketplace simultaneously, and
vsce needs --baseContentUrl to have any chance at all
Proposal: a dependency-free check in CI that fails on any of the three. Raised by Charlie while refreshing all four sources (#1736).
The four registry READMEs — npm (
rocketride), PyPI (rocketride), PyPI (rocketride-mcp), and the VS Code Marketplace + OpenVSX — are not stored in git. Each package'sscripts/tasks.jscopies one in fromdocs/at build time, which is why those directories contain noREADME.md:That copy is silent when it breaks, and the consequence is unusually long-lived: a registry README cannot be corrected without publishing a new version, so a stale or wrong one stays live until the next release of that artifact.
Three failure modes, none of which anything currently catches:
README_SRCpath renamed on one side only — the build copies nothing or the wrong file, every check stays greenREADME.mdcommitted into a package directory, shadowing the generated one — which wins is then decided by build order rather than intentvsceneeds--baseContentUrlto have any chance at allProposal: a dependency-free check in CI that fails on any of the three. Raised by Charlie while refreshing all four sources (#1736).