experimental-a2 0.5.1 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. package/CHANGELOG.md +67 -0
  2. package/dist/ai-server.d.ts +4 -5
  3. package/dist/ai-server.d.ts.map +1 -1
  4. package/dist/ai-server.js +8 -7
  5. package/dist/ai-server.js.map +1 -1
  6. package/dist/ai.d.ts +334 -2
  7. package/dist/ai.d.ts.map +1 -0
  8. package/dist/ai.js +1 -1
  9. package/dist/client.d.ts +202 -2
  10. package/dist/client.d.ts.map +1 -0
  11. package/dist/client.js +1025 -1
  12. package/dist/client.js.map +1 -0
  13. package/dist/errors-BQuJpe82.js.map +1 -1
  14. package/dist/index.d.ts +22 -3
  15. package/dist/index.d.ts.map +1 -0
  16. package/dist/{internal-DstsI6Re.js → internal-DRXJ56EI.js} +5 -28
  17. package/dist/internal-DRXJ56EI.js.map +1 -0
  18. package/dist/react.d.ts +41 -7
  19. package/dist/react.d.ts.map +1 -1
  20. package/dist/react.js +74 -35
  21. package/dist/react.js.map +1 -1
  22. package/dist/scheduler-qstash.d.ts +3 -3
  23. package/dist/scheduler-qstash.js +4 -5
  24. package/dist/scheduler-qstash.js.map +1 -1
  25. package/dist/scheduler-vercel.d.ts +2 -2
  26. package/dist/scheduler-vercel.js +4 -4
  27. package/dist/scheduler-vercel.js.map +1 -1
  28. package/dist/{server-Duw6MVlB.js → server-286j79Mt.js} +708 -79
  29. package/dist/server-286j79Mt.js.map +1 -0
  30. package/dist/{server-DpvjhdoE.d.ts → server-DgXmORIq.d.ts} +67 -49
  31. package/dist/server-DgXmORIq.d.ts.map +1 -0
  32. package/dist/server.d.ts +3 -3
  33. package/dist/server.js +1 -1
  34. package/dist/store-N8PXxDAS.js.map +1 -1
  35. package/dist/{store-DysUkTH3.d.ts → store-flRz1OWh.d.ts} +2 -57
  36. package/dist/store-flRz1OWh.d.ts.map +1 -0
  37. package/dist/store-memory.d.ts +1 -1
  38. package/dist/store-memory.d.ts.map +1 -1
  39. package/dist/store-memory.js +1 -59
  40. package/dist/store-memory.js.map +1 -1
  41. package/dist/{store-polling-dSeLxzfb.js → store-polling-6DW7F1DT.js} +2 -2
  42. package/dist/{store-polling-dSeLxzfb.js.map → store-polling-6DW7F1DT.js.map} +1 -1
  43. package/dist/store-postgres.d.ts +1 -1
  44. package/dist/store-postgres.js +1 -81
  45. package/dist/store-postgres.js.map +1 -1
  46. package/dist/{store-redis-core-BFLwz0Wj.js → store-redis-core-DEYO8Ryv.js} +48 -134
  47. package/dist/store-redis-core-DEYO8Ryv.js.map +1 -0
  48. package/dist/store-redis-http.d.ts +1 -1
  49. package/dist/store-redis-http.js +2 -3
  50. package/dist/store-redis-http.js.map +1 -1
  51. package/dist/store-redis.d.ts +1 -1
  52. package/dist/store-redis.js +3 -4
  53. package/dist/store-redis.js.map +1 -1
  54. package/dist/store-sqlite.d.ts +1 -1
  55. package/dist/store-sqlite.d.ts.map +1 -1
  56. package/dist/store-sqlite.js +1 -72
  57. package/dist/store-sqlite.js.map +1 -1
  58. package/dist/{wire-BFQmSJ-9.js → wire-B6te_wns.js} +4 -3
  59. package/dist/wire-B6te_wns.js.map +1 -0
  60. package/docs/guides/03-react.mdx +118 -29
  61. package/docs/guides/05-production.mdx +9 -11
  62. package/docs/guides/06-ai-agents.mdx +8 -14
  63. package/docs/guides/09-presence.mdx +19 -21
  64. package/docs/guides/10-transports.mdx +104 -86
  65. package/docs/reference/01-api.mdx +186 -279
  66. package/docs/reference/02-errors.mdx +5 -7
  67. package/package.json +1 -14
  68. package/src/ai-server.ts +9 -5
  69. package/src/client.ts +71 -35
  70. package/src/errors.ts +1 -0
  71. package/src/internal.ts +3 -62
  72. package/src/push-envelope.ts +24 -21
  73. package/src/react.ts +118 -44
  74. package/src/scheduler-qstash.ts +3 -3
  75. package/src/scheduler-vercel.ts +2 -2
  76. package/src/server-fetch.ts +344 -0
  77. package/src/server.ts +73 -225
  78. package/src/session-socket.ts +36 -20
  79. package/src/sse.ts +2 -2
  80. package/src/store-memory.ts +0 -81
  81. package/src/store-postgres.ts +0 -100
  82. package/src/store-redis-core.ts +47 -211
  83. package/src/store-redis-http.ts +0 -1
  84. package/src/store-redis.ts +0 -1
  85. package/src/store-sqlite.ts +0 -119
  86. package/src/store.ts +0 -60
  87. package/src/wire.ts +2 -1
  88. package/dist/ai-D_PGS-JR.d.ts +0 -334
  89. package/dist/ai-D_PGS-JR.d.ts.map +0 -1
  90. package/dist/cli-B3VuxoDe.js +0 -599
  91. package/dist/cli-B3VuxoDe.js.map +0 -1
  92. package/dist/cli-bin.d.ts +0 -1
  93. package/dist/cli-bin.js +0 -7
  94. package/dist/cli-bin.js.map +0 -1
  95. package/dist/cli.d.ts +0 -20
  96. package/dist/cli.d.ts.map +0 -1
  97. package/dist/cli.js +0 -2
  98. package/dist/client-BKlyLiOU.js +0 -1008
  99. package/dist/client-BKlyLiOU.js.map +0 -1
  100. package/dist/client-D7mvIXrF.d.ts +0 -191
  101. package/dist/client-D7mvIXrF.d.ts.map +0 -1
  102. package/dist/devtools-J_jZ2vQf.d.ts +0 -152
  103. package/dist/devtools-J_jZ2vQf.d.ts.map +0 -1
  104. package/dist/devtools-kJJaORn-.js +0 -340
  105. package/dist/devtools-kJJaORn-.js.map +0 -1
  106. package/dist/devtools-server.browser.d.ts +0 -1
  107. package/dist/devtools-server.browser.js +0 -6
  108. package/dist/devtools-server.browser.js.map +0 -1
  109. package/dist/devtools-server.d.ts +0 -23
  110. package/dist/devtools-server.d.ts.map +0 -1
  111. package/dist/devtools-server.js +0 -1270
  112. package/dist/devtools-server.js.map +0 -1
  113. package/dist/devtools.d.ts +0 -2
  114. package/dist/devtools.js +0 -2
  115. package/dist/errors-W6nwJ-fm.d.ts +0 -21
  116. package/dist/errors-W6nwJ-fm.d.ts.map +0 -1
  117. package/dist/http.d.ts +0 -151
  118. package/dist/http.d.ts.map +0 -1
  119. package/dist/http.js +0 -706
  120. package/dist/http.js.map +0 -1
  121. package/dist/inspection-DaxB5jM2.js +0 -13
  122. package/dist/inspection-DaxB5jM2.js.map +0 -1
  123. package/dist/internal-DstsI6Re.js.map +0 -1
  124. package/dist/platform-B4TnJtWu.js +0 -34
  125. package/dist/platform-B4TnJtWu.js.map +0 -1
  126. package/dist/server-DpvjhdoE.d.ts.map +0 -1
  127. package/dist/server-Duw6MVlB.js.map +0 -1
  128. package/dist/store-DysUkTH3.d.ts.map +0 -1
  129. package/dist/store-redis-core-BFLwz0Wj.js.map +0 -1
  130. package/dist/testing.browser.d.ts +0 -1
  131. package/dist/testing.browser.js +0 -6
  132. package/dist/testing.browser.js.map +0 -1
  133. package/dist/testing.d.ts +0 -32
  134. package/dist/testing.d.ts.map +0 -1
  135. package/dist/testing.js +0 -103
  136. package/dist/testing.js.map +0 -1
  137. package/dist/wire-BFQmSJ-9.js.map +0 -1
  138. package/docs/guides/07-devtools.mdx +0 -229
  139. package/src/cli-bin.ts +0 -5
  140. package/src/cli.ts +0 -1046
  141. package/src/devtools-app.ts +0 -989
  142. package/src/devtools-server.browser.ts +0 -5
  143. package/src/devtools-server.ts +0 -604
  144. package/src/devtools.ts +0 -716
  145. package/src/http.ts +0 -394
  146. package/src/inspection.ts +0 -39
  147. package/src/testing.browser.ts +0 -5
  148. package/src/testing.ts +0 -185
package/CHANGELOG.md CHANGED
@@ -1,5 +1,72 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.7.0
4
+
5
+ ### Minor Changes
6
+
7
+ - eaf38cd: Replace the `experimental-a2/http` adapter and `handle(server, options)` with a
8
+ bound `server.fetch(request, options?)` method. Unprotected framework routes can
9
+ now export `server.fetch` directly, while protected routes pass a request-scoped
10
+ `authorize` callback over typed stream, history, and push operations.
11
+
12
+ WebSocket upgrades are supplied through the per-request `upgradeWebSocket`
13
+ capability. Each socket subscription and push is authorized independently;
14
+ physical upgrade authentication remains the application's responsibility.
15
+ Invocation deadlines and `waitUntil` remain ambient platform capabilities.
16
+
17
+ Remove the `experimental-a2/http` entry point, its before/after hooks, public
18
+ transport helpers, and legacy push validation surface. Scheduler callbacks now
19
+ use the configured scheduler's `handler(...servers)` method directly.
20
+
21
+ Remove the Devtools dashboard, protocol, capture format, CLI, testing helpers,
22
+ and store inspection capability. Redis no longer maintains the global session
23
+ index that existed only for Devtools discovery.
24
+
25
+ ## 0.6.0
26
+
27
+ ### Minor Changes
28
+
29
+ - 850e287: Standalone `useSession(client, sessionId, options?)` in
30
+ `experimental-a2/react`: mount any session from any component, no
31
+ provider required. The handle is identity-mapped (every hook and
32
+ provider mounting the same session shares one runtime) and the stream
33
+ is refcounted across all of them — first mount connects, last unmount
34
+ closes, StrictMode-safe.
35
+
36
+ Hydration is app-owned through one atomic option: `hydrate` takes the
37
+ `{ state, index }` pair `session.state(reducer)` returns, fetched by
38
+ the app through its own route, so the fold and its frontier travel
39
+ together or not at all. While `hydrate` is `undefined` the hook holds
40
+ the stream (connecting without a fold would replay the whole log — the
41
+ library never picks the expensive path silently); when the value
42
+ lands, the session hydrates under the usual never-move-backward rule
43
+ and the stream connects at that frontier. A deliberate full replay
44
+ needs no special vocabulary:
45
+ `hydrate: { state: reducer.initialState, index: 0 }` — state at index
46
+ 0 is the reducer's seed by definition. The result carries no pending
47
+ flag: whether the fold has been handed over is the caller's own input,
48
+ so the app's data-layer loading state is the pending state.
49
+
50
+ `connect()` now takes a lease on the live stream and returns its
51
+ release: leases refcount per handle (the first connects, releasing the
52
+ last closes, releasing twice is a no-op), so independent consumers of
53
+ one identity-mapped handle — hooks, providers, vanilla code — never
54
+ fight over the stream. `close()` stays as the hard stop: it drops
55
+ every outstanding lease and closes now. Returning a disposer from the
56
+ previously void `connect()` is additive.
57
+
58
+ `createClient` gains `participant` — identity is a client-level fact,
59
+ stated once as the default for every session handle. The per-session
60
+ `participant` (session options, `SessionProvider`, `useSession`)
61
+ remains as the override for apps whose identity is only known at mount
62
+ time.
63
+
64
+ Deliberately not included: a library-served state read. Reducer names
65
+ are the snapshot-invalidation knob and are designed to churn, so
66
+ putting them on the wire would open a version-skew window on every
67
+ rename; the app route calls `session.state(reducer)` with the reducer
68
+ by reference instead, and no name crosses the wire.
69
+
3
70
  ## 0.5.1
4
71
 
5
72
  ### Patch Changes
@@ -1,6 +1,6 @@
1
1
  import { a as EventDefs, r as ContractEvent } from "./contract-jIfaR085.js";
2
- import { d as PushValidationContext, g as ServerOptions, n as A2Server } from "./server-DpvjhdoE.js";
3
- import { l as AgentToolContext, o as AgentDefinition, r as AIState, t as AIEventDefs, u as AgentToolEventDefs } from "./ai-D_PGS-JR.js";
2
+ import { n as A2Server, p as ServerOptions } from "./server-DgXmORIq.js";
3
+ import { AIEventDefs, AIState, AgentDefinition, AgentToolContext, AgentToolEventDefs } from "./ai.js";
4
4
  import { Instructions, LanguageModel, TextStreamPart, ToolSet, ToolSet as ToolSet$1, UIMessage, UIMessageChunk, streamText } from "ai";
5
5
  //#region src/ai-sdk-step.d.ts
6
6
  type StreamTextOptions<T extends ToolSet$1> = Parameters<typeof streamText<T>>[0];
@@ -38,7 +38,6 @@ type AISDKStepSettings<T extends ToolSet$1> = Partial<Omit<StreamTextOptions<T>,
38
38
  };
39
39
  //#endregion
40
40
  //#region src/ai-server.d.ts
41
- declare function validateAgentPush(context: PushValidationContext): void;
42
41
  type AgentGenerateContext<M extends UIMessage, D extends AIEventDefs<M> & EventDefs, T extends ToolSet> = {
43
42
  request: ContractEvent<D, "ai.generation.requested">;
44
43
  requestId: string;
@@ -100,7 +99,7 @@ type CreateHandlersOptions<M extends UIMessage, D extends AIEventDefs<M> & Event
100
99
  maxDelayMs?: number;
101
100
  };
102
101
  };
103
- type CreateAgentServerOptions<M extends UIMessage, D extends AIEventDefs<M> & EventDefs, T extends ToolSet = ToolSet> = CreateHandlersOptions<M, D, T> & Omit<ServerOptions<D>, "contract" | "handlers" | "validatePush"> & {
102
+ type CreateAgentServerOptions<M extends UIMessage, D extends AIEventDefs<M> & EventDefs, T extends ToolSet = ToolSet> = CreateHandlersOptions<M, D, T> & Omit<ServerOptions<D>, "contract" | "handlers"> & {
104
103
  handlers?: ServerOptions<D>["handlers"];
105
104
  };
106
105
  /** Run `fn` with `ctx` as the ambient tool handler context, for direct tool tests. */
@@ -113,5 +112,5 @@ declare function createHandlers<M extends UIMessage, D extends AIEventDefs<M> &
113
112
  /** Assemble an A2 server with the built-in agent handlers and app extensions. */
114
113
  declare function createAgentServer<M extends UIMessage, D extends AIEventDefs<M> & EventDefs, T extends ToolSet = ToolSet>(options: CreateAgentServerOptions<M, D, T>): A2Server<D>;
115
114
  //#endregion
116
- export { AgentGenerate, AgentGenerateContext, AgentGenerationSettings, AgentMessageMetadata, AgentResolverContext, CompactionPolicy, CreateAgentServerOptions, CreateHandlersOptions, type Instructions, type LanguageModel, Resolvable, type ToolSet, createAgentServer, createHandlers, runWithHandlerContext, validateAgentPush };
115
+ export { AgentGenerate, AgentGenerateContext, AgentGenerationSettings, AgentMessageMetadata, AgentResolverContext, CompactionPolicy, CreateAgentServerOptions, CreateHandlersOptions, type Instructions, type LanguageModel, Resolvable, type ToolSet, createAgentServer, createHandlers, runWithHandlerContext };
117
116
  //# sourceMappingURL=ai-server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ai-server.d.ts","names":[],"sources":["../src/ai-sdk-step.ts","../src/ai-server.ts"],"mappings":"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"}
1
+ {"version":3,"file":"ai-server.d.ts","names":[],"sources":["../src/ai-sdk-step.ts","../src/ai-server.ts"],"mappings":"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"}
package/dist/ai-server.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { t as A2Error } from "./errors-BQuJpe82.js";
2
- import { m as installAmbientToolScopeStorage, p as consumeSchedulerSendFailure } from "./internal-DstsI6Re.js";
3
- import { t as createServer } from "./server-Duw6MVlB.js";
2
+ import { f as consumeSchedulerSendFailure, p as installAmbientToolScopeStorage } from "./internal-DRXJ56EI.js";
3
+ import { r as setServerFetchHooks, t as createServer } from "./server-286j79Mt.js";
4
4
  import { AsyncLocalStorage } from "node:async_hooks";
5
5
  import { convertToModelMessages, stepCountIs, streamText, toUIMessageStream } from "ai";
6
6
  //#region src/ai-sdk-step.ts
@@ -278,7 +278,7 @@ const continuationReady = (state) => {
278
278
  * `createHandlers()` exposes the ordinary A2 handler table;
279
279
  * `createAgentServer()` is its batteries-included assembly with createServer.
280
280
  */
281
- function validateAgentPush(context) {
281
+ function validateAgentIngress(context) {
282
282
  const rejected = context.events.find((event) => {
283
283
  if (event.type !== "ai.message.created") return !(event.type === "ai.approval.responded" || event.type === "ai.input.responded" || event.type === "ai.message.interrupted" || event.type === "ai.retry.requested");
284
284
  const payload = event.payload;
@@ -1186,17 +1186,18 @@ function createAgentServer(options) {
1186
1186
  ...compaction === void 0 ? {} : { compaction },
1187
1187
  ...progress === void 0 ? {} : { progress }
1188
1188
  });
1189
- return createServer({
1189
+ const server = createServer({
1190
1190
  ...serverOptions,
1191
1191
  contract: definition.contract,
1192
1192
  handlers: {
1193
1193
  ...builtIns,
1194
1194
  ...handlers
1195
- },
1196
- validatePush: validateAgentPush
1195
+ }
1197
1196
  });
1197
+ setServerFetchHooks(server, { validateIngress: validateAgentIngress });
1198
+ return server;
1198
1199
  }
1199
1200
  //#endregion
1200
- export { createAgentServer, createHandlers, runWithHandlerContext, validateAgentPush };
1201
+ export { createAgentServer, createHandlers, runWithHandlerContext };
1201
1202
 
1202
1203
  //# sourceMappingURL=ai-server.js.map