You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(client)!: delete projects.listTemplates() — nothing has ever mounted its route (#3702) (#3730)
`client.projects.listTemplates()` built `GET /api/v1/cloud/templates`. That
path is mounted by nothing: none of the 17 registrars in cloud's
`cloud-artifact-api-plugin.ts` (91 registrations, enumerated by driving them
against a capturing mock `IHttpServer`), and nothing here — the string occurs
exactly once in each repo, at the call itself. Every invocation was a 404
behind a type signature promising a resolved value.
Templates are real as DATA — `sys_package_templates`, the `is_starter = true`
view over `sys_package`, rendered as a console page — but there has never been
an HTTP route that lists them, and an org-wide code search finds no caller in
any repo. Mounting a route to satisfy a method nobody calls is the wrong
order: the client's declared shape (`{ id, label, description, category? }`)
does not match `sys_package`'s columns, so picking that mapping is a product
decision. The method returns when a route exists to back it, with an `sdk`
ledger row proving so — cloud's ledger already pins the absence
("DELIBERATELY ABSENT") and `UNMOUNTED_CLIENT_METHODS` shrinks to empty on the
companion bump there.
Sixth instance of the `the method exists != the method can be called` class,
after analytics.explain/meta (#3584), meta.getView (#3611) and
i18n.getTranslations/getFieldLabels (#3636) — and the first only a cross-repo
guard could see: the framework capstone (#3642) exempts the `/api/v1/cloud/`
prefix wholesale because this repo does not serve those routes, so the finding
came from cloud's control-plane ledger (#3655).
Audit doc and the capstone's prose updated to record the finding as resolved.
Closes#3702
Co-authored-by: Jack Zhuang <277994282+os-zhuang@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
0 commit comments