docs(providers): register providers removed at their operator's request and guard against reintroduction - #12478
Merged
Conversation
…st and guard against reintroduction Adds docs/reference/REMOVED_PROVIDERS.md (policy + register: puter #10210, the keyless provider removed in #12440), links it from the docs index and AGENTS.md's provider checklist, and adds a regression test that fails if any registered id, alias or domain shows up again in the provider catalogs, the executor map or the registry/executor sources.
6 tasks done
diegosouzapw
added a commit
that referenced
this pull request
Sep 3, 2026
…matter (base-red #12581) (#12610) `source.config.ts` feeds `docs/reference/**/*.md` to fumadocs-mdx, whose default schema requires a `title`. #12478 added `docs/reference/REMOVED_PROVIDERS.md` with no frontmatter block at all, so every production build died with: [MDX] invalid frontmatter in docs/reference/REMOVED_PROVIDERS.md: - title: Invalid input: expected string, received undefined That single missing block is what turns three release-green gates red at once — `Package artifact (npm pack policy)` fails on the build, and both `Tarball boot-smoke` and the packaged CLI checks are skipped for lack of a valid `dist/`. Fixes: - add the frontmatter block, matching the convention of its sibling reference docs (`title` / `version` / `lastUpdated`). - add `check:docs-frontmatter`, wired into `check:docs-all`, so the next doc added without a title fails in milliseconds instead of costing a full Next build and a red release branch. The gate reads its globs from `source.config.ts` rather than duplicating them, so a new docs directory cannot silently escape the check. Verified: the gate reports OK across all 122 compiled docs, fails (exit 1) when the frontmatter is removed, and `npm run check:docs-all` passes.
muhamadgalihsaputra
pushed a commit
to niyatna/NiyatnaRoute
that referenced
this pull request
Sep 27, 2026
…st and guard against reintroduction (diegosouzapw#12478) Adds docs/reference/REMOVED_PROVIDERS.md (policy + register: puter diegosouzapw#10210, the keyless provider removed in diegosouzapw#12440), links it from the docs index and AGENTS.md's provider checklist, and adds a regression test that fails if any registered id, alias or domain shows up again in the provider catalogs, the executor map or the registry/executor sources. Co-authored-by: Markus Hartung <diegosouzapw@users.noreply.github.com>
muhamadgalihsaputra
pushed a commit
to niyatna/NiyatnaRoute
that referenced
this pull request
Sep 27, 2026
…matter (base-red diegosouzapw#12581) (diegosouzapw#12610) `source.config.ts` feeds `docs/reference/**/*.md` to fumadocs-mdx, whose default schema requires a `title`. diegosouzapw#12478 added `docs/reference/REMOVED_PROVIDERS.md` with no frontmatter block at all, so every production build died with: [MDX] invalid frontmatter in docs/reference/REMOVED_PROVIDERS.md: - title: Invalid input: expected string, received undefined That single missing block is what turns three release-green gates red at once — `Package artifact (npm pack policy)` fails on the build, and both `Tarball boot-smoke` and the packaged CLI checks are skipped for lack of a valid `dist/`. Fixes: - add the frontmatter block, matching the convention of its sibling reference docs (`title` / `version` / `lastUpdated`). - add `check:docs-frontmatter`, wired into `check:docs-all`, so the next doc added without a title fails in milliseconds instead of costing a full Next build and a red release branch. The gate reads its globs from `source.config.ts` rather than duplicating them, so a new docs directory cannot silently escape the check. Verified: the gate reports OK across all 122 compiled docs, fails (exit 1) when the frontmatter is removed, and `npm run check:docs-all` passes.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Two providers have now been removed at the request of the people who operate them (Puter in #10210, a keyless provider in #12440). Nothing in the repo said "do not bring these back", so an old fork, a cached tarball or a "restore provider X" PR could reintroduce them by accident.
What
docs/reference/REMOVED_PROVIDERS.md: the policy (what a takedown covers, never reintroduce without written permission, keep entries minimal) and the register with both providers (ids, aliases, domains, dates, removal PRs).tests/unit/removed-providers-blocklist.test.ts: fails if any registered id/alias/domain shows up again in the chat registry, the provider catalogs, the executor map, the free-model catalog, or the sources underopen-sse/config/providers,open-sse/executors,src/shared/constants/providers. Also asserts the doc lists every guarded id.docs/README.mdanddocs/reference/meta.json.AGENTS.md: one new step 0 in "Adding a New Provider" pointing at the doc and the guard.Validation
No new ESLint warningsjob fails oncodeql-ratchet(13 open CodeQL alerts > baseline 11). All 13 alerts sit onrelease/v3.8.51files merged today (open-sse/executors/maxai/*,tests/unit/uc-*.test.ts,tests/unit/maxai-image.test.ts,tests/unit/custom-provider-prefix-shadowing-11943.test.ts,open-sse/utils/error.ts). None is on a file this PR touches; ESLint itself reports 0 warnings / 0 errors here.