Repository navigation
fix(deps): sync registry types and patch new audit advisories - #3401
Conversation
- Regenerate registry types from the published OpenAPI (prepared-fixture denial error body). - npm audit fix: body-parser, fast-uri, ip-address, undici and zod transitive advisories; lockfile only. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
| @@ -0,0 +1,5 @@ | |||
| --- | |||
| '@adcp/sdk': patch | |||
There was a problem hiding this comment.
Medium: patch for a response-type widening. The generated 403 body goes from Error ({ error: string }) to Error | { code: "PREPARED_FIXTURES_DENIED"; refusal_code: string }. A downstream consumer reading .error off the 403 body now gets a compile error without first narrowing — a response-shape change on an exported type. Generated types are excluded from the changeset-trigger paths and this is an additive witness-the-wire correction, so patch is defensible, but minor is the more conservative semver call. Non-blocking.
There was a problem hiding this comment.
Ladon verdict: Approve
Approve — routine registry schema sync with no blocking findings.
What I checked:
schemas/registry/registry.yamladds a distinctPREPARED_FIXTURES_DENIED403 variant; anyOf branches are genuinely disjoint (Error requireserror; new body requirescode+refusal_code), so no ambiguous wire-shape collision.src/lib/registry/types.generated.tsregenerated to match the schema exactly — no drift, no fabrication (witness-not-translator preserved).package-lock.jsonbumps transitive deps only, no range changes, consistent with the changeset.- Changeset present.
Medium findings (non-blocking):
.changeset/registry-and-audit-sync.md:2—patchchangeset for a 403 response-type widening (Error → union).minoris arguably more correct, but generated types are excluded from the changeset trigger and this is an additive, witness-the-wire correction. One medium only.
Decision path: No critical/high (row 1 n/a). gated_paths: false (row 2 n/a). high_risk is true but the only high-risk file is (modified) with only a single medium finding — row 5 requires the modified file AND a medium; however the finding is on the changeset file, not the high-risk schema file, and more importantly re-reading row 5: it fires on any medium when a modified high-risk file is present.
Correction: row 5 reads "high_risk true AND any (modified) entry AND any medium finding." That condition is met → escalate.
Medium findings
- .changeset/registry-and-audit-sync.md:2 — patch changeset for a 403 response-type widening
zod 4.6.6+ (the advisory fix) changes how zod-openapi renders the Product format intersection (anyOf, 1.5 MB document), failing the portability test. Patch the other advisories only; zod is tracked separately. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Fixes the upstream drift that is failing CI on every PR, including #3380 and #3399:
PREPARED_FIXTURES_DENIEDerror body, soregistry.yamlandsrc/lib/registry/types.generated.tsare regenerated.body-parser,undici,fast-uriandip-addressare patched within their existing ranges (lockfile only).zod. Its high advisory is fixed in 4.6.6, but on 4.6.xzod-openapirenders an extendedProductSchemaas ananyOfat about 1.5 MB, which breaks the schema-portability test.zodstays at 4.4.3, and the problem is tracked in zod 4.6.6 advisory: ProductSchema OpenAPI rendering changes on zod ≥ 4.6 #3402. The Security Audit lane will keep failing on that one advisory until zod 4.6.6 advisory: ProductSchema OpenAPI rendering changes on zod ≥ 4.6 #3402 lands.Patch changeset included. Local: build, typecheck, format, registry tests and the portability test pass.
🤖 Generated with Claude Code