Patch Changes
-
#1717
bf8fff8Thanks @gcanti! - Schema: addOptionFromOptionalNullOrschema, closes #1707. -
#1722
1af3ef3Thanks @tim-smart! - FixRpcSerialization.jsondecode so JSON array payloads are not wrapped in an extra outer array. -
#1725
27fea0fThanks @tim-smart! - Improve unstable HttpApi runtime failures for missing server middleware and missing group implementations.- HttpApiBuilder.applyMiddleware now resolves middleware services via ServiceMap.getUnsafe, so missing middleware fails with a clear "Service not found: " error instead of an opaque is not a function TypeError.
- HttpApiBuilder.layer now reports missing groups with actionable context (group identifier, service key, suggested HttpApiBuilder.group(...) call, and available group keys).
- Added regression tests in packages/platform-node/test/HttpApi.test.ts covering:
- addHttpApi + API-level middleware applied across merged groups
- missing middleware service diagnostics
- missing addHttpApi group layer diagnostics
-
#1727
2ad6c1bThanks @tim-smart! - Make all built-inHttpApiErrorclasses implementHttpServerRespondable, so they can be returned directly from plain HTTP server handlers outside ofHttpApi. -
#1739
398ac3eThanks @tim-smart! - Use predicate-baseddualdispatch forStream.mergeso data-last calls with optionaloptionsare handled correctly. -
#1741
51fe22fThanks @tim-smart! - AddLayer.tap,Layer.tapError, andLayer.tapCauseAPIs for effectful observation of layer success and failure without changing layer outputs. -
#1740
4605db6Thanks @tim-smart! - Refactor call sites with multipleServiceMapmutations to useServiceMap.mutatefor batched updates. -
#1750
f4de1b0Thanks @gcanti! - Improve unstable AI structured output handling for empty tool params and addTool.EmptyParams, closes #1749. -
#1525
60214f2Thanks @tim-smart! - use Option instead of undefined | A -
#1747
c4b8b0fThanks @tim-smart! - seperate scheduler dispatch from yield decisions -
#1729
6d9393aThanks @tim-smart! - add ServiceMap.mutate -
#1753
6de4efeThanks @tim-smart! - Add dtslint coverage forStream.catchIfto lock in predicate and refinement inference behavior in both data-first and data-last forms. -
#1716
4f969d1Thanks @gcanti! - Remove unusedeffect/NullOrmodule. -
#1721
6cc67c8Thanks @IMax153! - Correct the type of the schema parameter accepted by thefileSchemamethods in the CLI to beSchema.Decoder<A> -
#1709
8531a22Thanks @mikearnaldi! - Add module-level helpers forSemaphore,Latch, and extractedPartitionedSemaphoreoperations. -
#1752
b226760Thanks @tim-smart! - simplify SubscriptionRef -
#1743
47a51abThanks @tim-smart! - default ws close codes to 1001 in case they are undefined -
#1728
1521d02Thanks @tim-smart! - add graceful shutdown to http servers