Conversation
…ry styles encodeDelimitedObject's filter destructured the entry key instead of its value, so it never dropped anything and null/undefined members were sent as the literal strings "null" and "undefined".
There was a problem hiding this comment.
✅ No new issues found.
Reviewed changes
The one-line fix corrects a destructuring typo in encodeDelimitedObject that let null/undefined object members reach the query string as the literal strings "null"/"undefined" for the comma-/space-/pipe-delimited-object styles.
encodeDelimitedObjectfilter fixed —packages/openapi/src/adapters/standard/openapi-link-codec.ts:511now destructures the value (([, v])) instead of the key (([v])), matching the already-correctencodeDelimitedArrayat:500.- New test across all six delimited styles —
packages/openapi/src/adapters/standard/openapi-link-codec.test.ts:429covers array and object variants for each delimiter, plus an all-null/undefined object asserting the parameter is omitted entirely.
I ran the test file on head (51 passed) and also reverted the fix locally to confirm the new test genuinely fails without it — it does, with expected 'a,undefined,b,1,c,null' to be 'b,1'. No other instances of the buggy filter(([v]) => pattern exist in the repo.
DeepSeek Flash (free via Pullfrog for OSS) | 𝕏
More templates
@orpc/ai-sdk
@orpc/arktype
@orpc/bun
@orpc/client
@orpc/cloudflare
@orpc/contract
@orpc/experimental-effect
@orpc/evlog
@orpc/hibernation
@orpc/json-schema
@orpc/experimental-lock
@orpc/experimental-msw
@orpc/nest
@orpc/next
@orpc/node
@orpc/openapi
@orpc/opentelemetry
@orpc/pinia-colada
@orpc/pino
@orpc/publisher
@orpc/ratelimit
@orpc/server
@orpc/shared
@orpc/swr
@orpc/tanstack-query
@orpc/trpc
@orpc/valibot
@orpc/zod
commit: |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Merging this PR will degrade performance by 12.65%
|
| Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|
| ❌ | octet stream |
640.3 µs | 733.1 µs | -12.65% |
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing dinwwwh:claude/openapi-link-codec-filter-fix-1de188 (573fced) with main (a16c885)

With the `comma-delimited-object`, `space-delimited-object`, or `pipe-delimited-object` query styles, `OpenAPILink` was sending null and undefined object members as the literal strings `"null"` and `"undefined"`. So `{ filters: { a: undefined, b: '1', c: null } }` reached the procedure as `{ a: 'undefined', b: '1', c: 'null' }` instead of `{ b: '1' }`. These members are now omitted, as the delimited-array styles and path params already did.
Fixes
Testing