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
{{ message }}
Repository navigation
sdk(release): npm latest still ships wh.policy and the pipe writers the server deleted #556
Area: sdk · release — gap · found via pm-triage status sweep
Expected: when the server deletes a route family, the published client that calls it gets a release (or a deprecation) in the same window, so an adopter on the documented floating range never holds a client whose methods 404.
Actual:main has deleted the routes, but npm latest still ships the methods, and no issue tracks the client-side release.
Removed from the server — PUT /v1/ops/policy, PUT/DELETE /v1/ops/pipes/{name} (#508, 982cb4e9), then GET /v1/ops/policy and POST /v1/ops/policy/validate (#541, 4bee1876). clients/ts/src/policy.ts is deleted on main.
Still published — @wavehouse/sdk@0.1.1 (npm latest, clients/ts/v0.1.1) exports the whole wh.policy namespace plus two pipe writers:
Published method
Path it calls
Against current main
wh.policy.get()
GET /v1/ops/policy
gone
wh.policy.set()
PUT /v1/ops/policy
gone
wh.policy.validate()
POST /v1/ops/policy/validate
gone
wh.pipes.put()
PUT /v1/ops/pipes/{name}
gone
wh.pipes.delete()
DELETE /v1/ops/pipes/{name}
gone
Impact: latent today only because the newest server release is still v0.1.0, which has the routes. It becomes real the moment the next server image ships: sdk/index.mdx:61 recommends floating ranges (@0, @0.1, bare CDN), so a consumer who upgrades the server keeps a client with five methods that fail — and the Result contract surfaces it as a plain 404, not as "this method no longer exists." No SDK release has been cut since clients/ts/v0.1.1 (2026-08-20), and clients/ts/package.json on main still reads 0.1.0.
Scope: a client release that drops the dead surface, sequenced against the next server release — the CHANGELOG already records both removals as breaking; nothing carries that into a published package.
Related: #519 (states the compatibility policy gap — this is the first concrete instance, and #519 explicitly excludes the mechanism), #501 (same two-families-one-pointer root cause), #302
From the pm-triage all routine (status sweep); validated by code-read against 40963c4f, git show clients/ts/v0.1.1:clients/ts/src/{policy,pipes}.ts, npm view @wavehouse/sdk dist-tags, and gh release list on 2026-09-02.
Activity