Skip to content

docs: list every supported resource type, and keep the list honest - #195

Merged
naxty merged 1 commit into
mainfrom
naxty/readmeSupportedResources
Sep 3, 2026
Merged

docs: list every supported resource type, and keep the list honest#195
naxty merged 1 commit into
mainfrom
naxty/readmeSupportedResources

Conversation

@naxty

@naxty naxty commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

The README table had drifted 52 types behind the plugin — 153 documented
against 205 shipping. A third of what this plugin supports was invisible to
anyone reading it, including everything added most recently: Network Security,
Network Services, Certificate Manager's certificates, API Gateway, Analytics Hub,
Spanner, and the Cloud SQL sub-resources.

The table

Descriptions come from each schema module's own doc comment rather than being
written a second time here, so the table says what the schema says. The count in
the prose is regenerated with it: 205 types across 39 services.

GCP::Compute::RegionNotificationEndpoint is deliberately absent — its constant
survives in resources.go, but it has no schema and no registration, having been
withdrawn when the project turned out to be unable to create one.

Keeping it honest

Two tests, because this drifted without anyone noticing and a batch lands about
weekly:

  • TestReadmeListsEverySupportedType fails when a registered type has no row, or
    a row names a type that no longer ships.
  • TestReadmeCountMatchesTheTable fails when the stated count disagrees with the
    rows under it.

Both were confirmed to fail on a deliberately removed row before being
committed. A parity test that cannot fail is the same silent no-op this
repository has spent the week finding — a sweep matching a prefix nothing uses, a
gcloud subcommand that does not exist, a grep for formae--test with a doubled
hyphen. Worth checking a guard actually guards.

Scope

Documentation and one test file. Conformance scope is 0 — no fixture is
touched, so this does not occupy the serialized queue.

The README table had drifted 52 types behind the plugin - 153 documented against
205 shipping. A third of what this plugin supports was invisible to anyone
reading it, including the services added most recently: Network Security, Network
Services, Certificate Manager's certificates, API Gateway, Analytics Hub, Spanner
and the Cloud SQL sub-resources.

Descriptions come from each schema module's own doc comment rather than being
written again here, so the table says what the schema says.

The count in the prose is regenerated with it: 205 types across 39 services.

Two tests keep it that way. A batch lands about weekly, and this drifted without
anyone noticing because nothing was looking - the table is the only list of
supported types anyone outside this repository reads, and a stale one answers
"does this support X?" wrongly. One test fails when a registered type has no row
or a row names a type that no longer ships; the other fails when the stated count
disagrees with the table. Both were confirmed to fail on a removed row before
being committed - a parity test that cannot fail is the same silent no-op this
repository has been finding all week.

GCP::Compute::RegionNotificationEndpoint is deliberately absent: its constant
survives but it has no schema and no registration, having been withdrawn when the
project turned out not to be able to create one.
@naxty
naxty merged commit f1982cc into main Sep 3, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant