🚨 Breaking Changes
- client: Don't retry 4xx errors by default in retry plugin - by @dinwwwh and Claude in #2266 (7760f)
- msw: Rename @orpc/experimental-msw to @orpc/msw - by @dinwwwh and Claude in #2258 (2f779)
- publisher,ratelimit,cloudflare,bun: Align adapter options with the lock - by @dinwwwh in #2292 (5a0fe)
- rpc: Carry batched cookies and shared headers on the batch response - by @dinwwwh in #2264 (0c7f6)
- rpc,openapi: Make RPCSerializer and OpenAPISerializer extend their JSON serializers - by @dinwwwh in #2275 (81698)
- server: Fall back to 400 for error codes missing from errorStatusMap - by @dinwwwh and Claude in #2280 (6f8f9)
🚀 Features
- client: Introduce ResponseError for carrying response details - by @dinwwwh and Claude in #2265 (f9036)
- effect: Enhance effect/wrap with discriminated options and context passing - by @dinwwwh in #2262 (eed2b)
- mcp: Add Model Context Protocol integration - by @dinwwwh in #2282 (6fda9)
- pinia-colada: Configurable key serializer and type-aware input keys - by @dinwwwh in #2300 (947c6)
- server: Add SignalSyncHandlerPlugin - by @dinwwwh in #2299 (5ff71)
- tanstack-query: Add SSR helpers for hashing, hydration and streamed queries - by @dinwwwh and Claude in #2289 (3ca4a)
🐞 Bug Fixes
- Accept explicit
undefinedfor everyserializeroption - by @dinwwwh and Claude in #2277 (51096) - Accept explicit
undefinedon optional option fields - by @dinwwwh and Claude in #2278 (a5148) - Upgrade standard-server/* packages to 0.11.0 - by @dinwwwh and Claude in #2288 (0a644)
- contract: Start oc from an empty error map - by @dinwwwh in #2274 (7f448)
- effect: Close type holes in catchORPCErrorCode and catchORPCErrorCodes - by @dinwwwh in #2261 (55947)
- msw: Handle trailing slashes in origin and bump MSW requirement - by @dinwwwh in #2257 (e6912)
- tanstack-query: Cancel SSR stream queries so the procedure's signal aborts - by @dinwwwh in #2298 (e500f)