stitchkit 0.103.12 → 0.104.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 (225) hide show
  1. package/CHANGELOG.md +112 -0
  2. package/darwin-native.cjs +12 -0
  3. package/darwin-native.d.cts +2 -0
  4. package/dist/agent-runtime/store-conformance-lifecycle.d.ts +10 -10
  5. package/dist/application/directory-inbox-accept.d.ts +13 -0
  6. package/dist/application/directory-inbox-accept.d.ts.map +1 -0
  7. package/dist/application/directory-inbox-contract.d.ts +42 -5
  8. package/dist/application/directory-inbox-contract.d.ts.map +1 -1
  9. package/dist/application/directory-inbox-delivery.d.ts +14 -0
  10. package/dist/application/directory-inbox-delivery.d.ts.map +1 -0
  11. package/dist/application/directory-inbox-files.d.ts +28 -0
  12. package/dist/application/directory-inbox-files.d.ts.map +1 -0
  13. package/dist/application/directory-inbox-state.d.ts +14 -0
  14. package/dist/application/directory-inbox-state.d.ts.map +1 -0
  15. package/dist/application/directory-inbox.d.ts +2 -1
  16. package/dist/application/directory-inbox.d.ts.map +1 -1
  17. package/dist/application/file-state-store.d.ts +2 -8
  18. package/dist/application/file-state-store.d.ts.map +1 -1
  19. package/dist/application/state-store.d.ts +6 -1
  20. package/dist/application/state-store.d.ts.map +1 -1
  21. package/dist/browser/client-arguments.d.ts +4 -0
  22. package/dist/browser/client-arguments.d.ts.map +1 -0
  23. package/dist/browser/client-executors.d.ts.map +1 -1
  24. package/dist/browser/client.d.ts.map +1 -1
  25. package/dist/browser/contract-stream.d.ts.map +1 -1
  26. package/dist/browser/http.d.ts +2 -1
  27. package/dist/browser/http.d.ts.map +1 -1
  28. package/dist/browser/native-fetch.d.ts +8 -0
  29. package/dist/browser/native-fetch.d.ts.map +1 -0
  30. package/dist/contract/errors.d.ts +16 -12
  31. package/dist/contract/errors.d.ts.map +1 -1
  32. package/dist/contract/normalize.d.ts +5 -1
  33. package/dist/contract/normalize.d.ts.map +1 -1
  34. package/dist/contract/stream.d.ts +1 -0
  35. package/dist/contract/stream.d.ts.map +1 -1
  36. package/dist/entrypoints/agent-runtime/browser.js +3 -3
  37. package/dist/entrypoints/agent-runtime/coding-tools.js +8 -6
  38. package/dist/entrypoints/agent-runtime/harness-tools.js +8 -8
  39. package/dist/entrypoints/agent-runtime/harness.js +12 -11
  40. package/dist/entrypoints/agent-runtime/realtime.js +3 -3
  41. package/dist/entrypoints/agent-runtime/sandbox.js +8 -6
  42. package/dist/entrypoints/agent-runtime.js +13 -13
  43. package/dist/entrypoints/application/diagnostic-journal.js +3 -2
  44. package/dist/entrypoints/application/directory-inbox.js +424 -119
  45. package/dist/entrypoints/application/grammy.js +1 -1
  46. package/dist/entrypoints/application.d.ts +2 -2
  47. package/dist/entrypoints/application.d.ts.map +1 -1
  48. package/dist/entrypoints/application.js +7 -3
  49. package/dist/entrypoints/cli.d.ts +2 -0
  50. package/dist/entrypoints/cli.d.ts.map +1 -1
  51. package/dist/entrypoints/cli.js +757 -136
  52. package/dist/entrypoints/contract.js +3 -3
  53. package/dist/entrypoints/files.js +11 -107
  54. package/dist/entrypoints/index.js +7 -7
  55. package/dist/entrypoints/node.js +8 -8
  56. package/dist/entrypoints/observability.js +2 -2
  57. package/dist/entrypoints/process.js +2 -1
  58. package/dist/entrypoints/react.js +1 -1
  59. package/dist/entrypoints/remote.js +19 -6
  60. package/dist/entrypoints/server.d.ts +1 -1
  61. package/dist/entrypoints/server.d.ts.map +1 -1
  62. package/dist/entrypoints/server.js +20 -14
  63. package/dist/entrypoints/telegram.d.ts +1 -0
  64. package/dist/entrypoints/telegram.d.ts.map +1 -1
  65. package/dist/entrypoints/telegram.js +214 -98
  66. package/dist/entrypoints/testing.js +7 -7
  67. package/dist/entrypoints/tools/connections.d.ts +2 -2
  68. package/dist/entrypoints/tools/connections.d.ts.map +1 -1
  69. package/dist/entrypoints/tools/connections.js +427 -294
  70. package/dist/entrypoints/tools/invoker.js +6 -6
  71. package/dist/entrypoints/tools/mcp.d.ts +12 -0
  72. package/dist/entrypoints/tools/mcp.d.ts.map +1 -0
  73. package/dist/entrypoints/tools/mcp.js +45 -0
  74. package/dist/entrypoints/tools.d.ts +1 -0
  75. package/dist/entrypoints/tools.d.ts.map +1 -1
  76. package/dist/entrypoints/tools.js +82 -1147
  77. package/dist/entrypoints/tracking.js +1 -1
  78. package/dist/files/boundary.d.ts +2 -8
  79. package/dist/files/boundary.d.ts.map +1 -1
  80. package/dist/files/file-io.d.ts +0 -5
  81. package/dist/files/file-io.d.ts.map +1 -1
  82. package/dist/files/read.d.ts +2 -2
  83. package/dist/files/read.d.ts.map +1 -1
  84. package/dist/index-1a6jtnd9.js +88 -0
  85. package/dist/{index-fyphpknh.js → index-22rhg58f.js} +1 -1
  86. package/dist/index-269zqj8m.js +77 -0
  87. package/dist/{index-r34mvse1.js → index-27a2pj09.js} +1 -1
  88. package/dist/{index-r956rndn.js → index-2hyavjjj.js} +3 -3
  89. package/dist/{index-m2xqkv55.js → index-2vnh05w4.js} +83 -14
  90. package/dist/{index-pw99k9h5.js → index-43p08g7t.js} +1 -1
  91. package/dist/{index-xwq9j1sf.js → index-4e0ah203.js} +9 -7
  92. package/dist/{index-nybn2err.js → index-5csmzesf.js} +1 -1
  93. package/dist/{index-qapzv4p5.js → index-5z6jn897.js} +1 -1
  94. package/dist/{index-ahvsksw5.js → index-6d9xaxw1.js} +1 -1
  95. package/dist/{index-ahtnte39.js → index-6drst9sg.js} +46 -35
  96. package/dist/{index-x87j7csh.js → index-77nxk6ay.js} +2 -2
  97. package/dist/{index-dnn9z96q.js → index-a0zzh8ak.js} +3 -3
  98. package/dist/{index-kmpzj1cq.js → index-a3wma1hk.js} +1 -1
  99. package/dist/{index-j8aw2c0e.js → index-bakgedh8.js} +35 -7
  100. package/dist/index-bhb950qs.js +1145 -0
  101. package/dist/{index-tgzhq07n.js → index-cvda079a.js} +1 -1
  102. package/dist/{index-n2gre124.js → index-fa4wg312.js} +4 -4
  103. package/dist/{index-zp4jpkp0.js → index-fk18k56k.js} +2 -2
  104. package/dist/{index-afjvjyck.js → index-g2j7pnak.js} +2 -134
  105. package/dist/index-g95fk660.js +116 -0
  106. package/dist/{index-ej331hah.js → index-gxm9rc97.js} +1 -1
  107. package/dist/{index-r5c4fedv.js → index-h2fhjqy7.js} +2 -1
  108. package/dist/{index-sybedc8b.js → index-hbd32c6a.js} +23 -94
  109. package/dist/index-jd470k6q.js +109 -0
  110. package/dist/{index-b2bz0kdm.js → index-kb8styz3.js} +4 -3
  111. package/dist/{index-0c419yx7.js → index-kemm0ej5.js} +12 -9
  112. package/dist/{index-806d5phm.js → index-ptn0g0gj.js} +7 -7
  113. package/dist/{index-w575evhq.js → index-r4r70zmh.js} +1 -1
  114. package/dist/{index-12m2v2a9.js → index-s4evrmp5.js} +1 -1
  115. package/dist/{index-1khy8y7n.js → index-t1sr4aks.js} +3 -3
  116. package/dist/index-v5ee8ath.js +88 -0
  117. package/dist/{index-45tdvqa3.js → index-wh0ecvyk.js} +1 -1
  118. package/dist/{index-n53mswt3.js → index-x928baz2.js} +8 -1
  119. package/dist/index-yk4g8805.js +133 -0
  120. package/dist/{index-ygkka6zn.js → index-ywppsaby.js} +28 -5
  121. package/dist/{index-xvdd2rbb.js → index-za6j7nwy.js} +19 -5
  122. package/dist/internal/bounded-file-read.d.ts +41 -0
  123. package/dist/internal/bounded-file-read.d.ts.map +1 -0
  124. package/dist/internal/darwin-binding-error.d.ts +24 -0
  125. package/dist/internal/darwin-binding-error.d.ts.map +1 -0
  126. package/dist/internal/darwin-binding.d.ts.map +1 -1
  127. package/dist/internal/exclusive-lock.d.ts +2 -0
  128. package/dist/internal/exclusive-lock.d.ts.map +1 -1
  129. package/dist/internal/with-exclusive-lock.d.ts +4 -2
  130. package/dist/internal/with-exclusive-lock.d.ts.map +1 -1
  131. package/dist/telegram/broadcast-delivery.d.ts +23 -0
  132. package/dist/telegram/broadcast-delivery.d.ts.map +1 -0
  133. package/dist/telegram/broadcast-failure.d.ts +22 -0
  134. package/dist/telegram/broadcast-failure.d.ts.map +1 -0
  135. package/dist/telegram/broadcast-state.d.ts +6 -3
  136. package/dist/telegram/broadcast-state.d.ts.map +1 -1
  137. package/dist/telegram/broadcast.d.ts +10 -5
  138. package/dist/telegram/broadcast.d.ts.map +1 -1
  139. package/dist/tools/cli/args-fields.d.ts +2 -0
  140. package/dist/tools/cli/args-fields.d.ts.map +1 -1
  141. package/dist/tools/cli/args.d.ts.map +1 -1
  142. package/dist/tools/cli/format.d.ts.map +1 -1
  143. package/dist/tools/cli/invoke.d.ts +2 -2
  144. package/dist/tools/cli/invoke.d.ts.map +1 -1
  145. package/dist/tools/cli/publication-assets.d.ts +10 -0
  146. package/dist/tools/cli/publication-assets.d.ts.map +1 -0
  147. package/dist/tools/cli/publication-contract.d.ts +75 -0
  148. package/dist/tools/cli/publication-contract.d.ts.map +1 -0
  149. package/dist/tools/cli/publication-control.d.ts +4 -0
  150. package/dist/tools/cli/publication-control.d.ts.map +1 -0
  151. package/dist/tools/cli/publication-storage.d.ts +32 -0
  152. package/dist/tools/cli/publication-storage.d.ts.map +1 -0
  153. package/dist/tools/cli/publication.d.ts +35 -0
  154. package/dist/tools/cli/publication.d.ts.map +1 -0
  155. package/dist/tools/cli/update.d.ts.map +1 -1
  156. package/dist/tools/connections/define.d.ts.map +1 -1
  157. package/dist/tools/connections/error-projection.d.ts +4 -0
  158. package/dist/tools/connections/error-projection.d.ts.map +1 -0
  159. package/dist/tools/connections/errors.d.ts +24 -8
  160. package/dist/tools/connections/errors.d.ts.map +1 -1
  161. package/dist/tools/connections/limits.d.ts +11 -31
  162. package/dist/tools/connections/limits.d.ts.map +1 -1
  163. package/dist/tools/connections/mcp-client.d.ts +6 -4
  164. package/dist/tools/connections/mcp-client.d.ts.map +1 -1
  165. package/dist/tools/connections/mcp.d.ts.map +1 -1
  166. package/dist/tools/connections/openapi.d.ts.map +1 -1
  167. package/dist/tools/connections/operation-limits.d.ts +25 -0
  168. package/dist/tools/connections/operation-limits.d.ts.map +1 -0
  169. package/dist/tools/connections/sse-frames.d.ts +11 -2
  170. package/dist/tools/connections/sse-frames.d.ts.map +1 -1
  171. package/dist/tools/connections/sse-session.d.ts +15 -2
  172. package/dist/tools/connections/sse-session.d.ts.map +1 -1
  173. package/dist/tools/connections/types.d.ts +19 -1
  174. package/dist/tools/connections/types.d.ts.map +1 -1
  175. package/dist/tools/execute-result.d.ts.map +1 -1
  176. package/dist/tools/execute.d.ts.map +1 -1
  177. package/dist/tools/internal/observe-hook.d.ts +3 -0
  178. package/dist/tools/internal/observe-hook.d.ts.map +1 -0
  179. package/dist/tools/internal/surface-projector.d.ts +2 -1
  180. package/dist/tools/internal/surface-projector.d.ts.map +1 -1
  181. package/dist/tools/mcp/mount.d.ts +2 -2
  182. package/dist/tools/mcp/mount.d.ts.map +1 -1
  183. package/dist/tools/mcp/prepare.d.ts +4 -5
  184. package/dist/tools/mcp/prepare.d.ts.map +1 -1
  185. package/dist/tools/mcp/register.d.ts +4 -1
  186. package/dist/tools/mcp/register.d.ts.map +1 -1
  187. package/dist/tools/mcp/runtime-tools.d.ts.map +1 -1
  188. package/dist/tools/remote.d.ts.map +1 -1
  189. package/dist/tools/runtime-tool-execution.d.ts +65 -0
  190. package/dist/tools/runtime-tool-execution.d.ts.map +1 -0
  191. package/dist/tools/runtime-tool-mcp.d.ts +27 -0
  192. package/dist/tools/runtime-tool-mcp.d.ts.map +1 -0
  193. package/dist/tools/runtime-tool.d.ts +9 -60
  194. package/dist/tools/runtime-tool.d.ts.map +1 -1
  195. package/dist/tools/surface.d.ts +12 -14
  196. package/dist/tools/surface.d.ts.map +1 -1
  197. package/llms/application.2.txt +221 -44
  198. package/llms/application.3.txt +3 -1
  199. package/llms/application.txt +1 -1
  200. package/llms/cli.2.txt +144 -1
  201. package/llms/cli.txt +133 -104
  202. package/llms/contract.txt +1 -1
  203. package/llms/process.txt +34 -5
  204. package/llms/server.4.txt +4 -1
  205. package/llms/server.5.txt +1 -0
  206. package/llms/stitchkit.2.txt +14 -0
  207. package/llms/stitchkit.txt +5 -4
  208. package/llms/telegram.txt +64 -2
  209. package/llms/tools-connections.txt +3 -0
  210. package/llms/tools-mcp.txt +29 -0
  211. package/llms/tools.2.txt +59 -0
  212. package/llms/tools.3.txt +1 -0
  213. package/llms/tools.txt +11 -52
  214. package/llms/upgrading-0.37.0-0.44.0.txt +444 -0
  215. package/llms/{upgrading-0.44.0-0.60.0.txt → upgrading-0.44.0-0.61.0.txt} +140 -271
  216. package/llms/{upgrading-0.61.0-0.74.0.txt → upgrading-0.62.0-0.79.0.txt} +171 -140
  217. package/llms/{upgrading-0.75.0-0.103.0.txt → upgrading-0.80.0-0.104.0.txt} +120 -171
  218. package/llms/upgrading.txt +4 -4
  219. package/llms-full.txt +677 -64
  220. package/llms.txt +13 -12
  221. package/package.json +10 -1
  222. package/dist/index-d4pa2bgs.js +0 -42
  223. package/dist/index-wykebpn9.js +0 -221
  224. package/llms/upgrading-0.37.0.txt +0 -176
  225. package/dist/{index-69nvze1q.js → index-pptyv13k.js} +3 -3
package/CHANGELOG.md CHANGED
@@ -15,6 +15,118 @@ additive**; the first breaking change landed in 0.10.0. Grep the file for
15
15
 
16
16
  ## [Unreleased]
17
17
 
18
+ ## [0.104.0] - 2026-10-04
19
+
20
+ ### ⚠️ Breaking changes
21
+
22
+ **Who must act:** consumers constructing schema-dependent CLI/MCP tools inline,
23
+ custom state-store adapters, callers using retired file-lock options or broadcast
24
+ halt fields, consumers validating closed HTTP error schemas, and applications
25
+ collecting raw tool causes from protocol stderr. Follow the 0.104.0 migration guide;
26
+ native CLI commands and ordinary one-argument state transitions remain valid.
27
+
28
+ - `stitchkit/cli` — **construct schema-aware managed runtime tools before registration.**
29
+ The CLI registry no longer contextually types raw inline handlers or SDK-specific `present`.
30
+ This keeps strict NodeNext declarations independent of optional MCP/AI peers while preserving
31
+ the canonical schema-validating runner and strictly typed construction.
32
+ `// before: runtimeTools: [{ input, output, handler: ({ input }) => …, present }]` →
33
+ `// after: const tool = { … } satisfies RuntimeToolExecutionWithOutput<typeof input, typeof output>; runtimeTools: [tool]`
34
+ Keep SDK presenters on a definition constructed with `defineRuntimeTool` instead.
35
+ **Who must act:** callers constructing schema-dependent handlers or transport presenters inline
36
+ in `CliConfig.runtimeTools` / `CliInvokerConfig.runtimeTools`. Existing typed definitions and
37
+ native `commands` need no change. See [migration](docs/guide/upgrading.md#released-migration-01040).
38
+ → ADR 0227
39
+ - `stitchkit/application` — custom state adapters must supply an active, fenced
40
+ `StateStoreUpdateContext`: `transition(current)` → `transition(current, context)` inside
41
+ their protected transaction. Remove file-store `staleLockMs` / `retryMs`:
42
+ `{ staleLockMs, retryMs, lockTimeoutMs }` → `{ lockTimeoutMs }`. Live and unknown owners
43
+ cannot be reclaimed by age; legacy lock recovery requires proof that the owner stopped.
44
+ Ordinary one-argument transition callbacks still work. → ADR 0228
45
+ - `stitchkit/telegram` — broadcast halt uses `TelegramBroadcastFailure`:
46
+ `report.halt.reason` → `report.halt.kind`. An unknown send outcome becomes durable
47
+ `uncertain` and halts without replay; explicit retry classifiers certify that the failed
48
+ attempt did not apply its effect. → ADR 0228
49
+ - `stitchkit/tools`, `stitchkit/tools/mcp` — construct schema-dependent MCP tools before
50
+ heterogeneous registration: `runtimeTools: [{ input, output, handler, present }]` →
51
+ `const tool = { … } satisfies RuntimeMcpToolDefinitionWithOutput<typeof input, typeof output>; runtimeTools: [tool]`.
52
+ Existing valid `defineRuntimeTool` values remain accepted. MCP presenters now retain the
53
+ official SDK's required content and metadata types: `present: { mcp: () => ({}) }` →
54
+ `present: { mcp: () => ({ content: [] }) }`. **Who must act:** inline MCP constructors
55
+ and presenters returning malformed content or metadata. → ADR 0231
56
+ - `stitchkit/contract`, `stitchkit/remote` — error envelopes and framed errors admit an
57
+ optional boolean `retryable`. A closed error schema must add
58
+ `retryable: z.boolean().optional()` before upgrading producers that declare it; envelopes
59
+ without a declaration remain unchanged. See [migrations](docs/guide/upgrading.md).
60
+ These migrations require a minor release. → ADR 0232
61
+ - `stitchkit/tools`, `stitchkit/cli` — raw unexpected tool errors are observed through
62
+ `hooks.onToolError` / `hooks.afterToolCall` instead of being printed on protocol stderr.
63
+ **Who must act:** applications collecting raw tool causes from `console.error`; configure
64
+ an internal hook sink instead. MCP resolver failures reach the same observing hooks without
65
+ rerunning the handler or its lifecycle. → ADR 0229
66
+
67
+ ### Fixed
68
+
69
+ - `stitchkit/cli` runtime and declarations require no optional MCP/AI peers. Packed installed
70
+ proofs check strict NodeNext with `skipLibCheck: false` and execute native/managed commands
71
+ in Bun and Node. Post-publication proofs install neutral and SDK consumers as siblings so
72
+ transport peers cannot hide a declaration leak. Three CLI type exports name the neutral
73
+ construction and registration contracts; the shared void definition retains one owner.
74
+
75
+ - `implementRemote` forwards caller cancellation through the typed HTTP client for endpoints
76
+ with and without arguments. Aborts are safe `REQUEST_ABORTED` failures (CLI exit 130),
77
+ with no automatic replay. Cooperative origins receive request cancellation; applications
78
+ still own cancellation of external work. Explicit error `retryable: false` / `true`
79
+ survives HTTP, CLI, MCP, AI tools and framed contract streams; an omitted field keeps
80
+ the existing defaults and transport retry policy.
81
+ - Connection failures expose safe codes and phase/operation budgets through the existing
82
+ CLI/MCP/AI error boundary. Raw URLs, credentials, bodies and unknown exceptions remain
83
+ available to local observers while tool output and stderr contain safe errors.
84
+ - State stores and broadcasts verify the actual exclusive lock generation before committing.
85
+ A readable legacy or live owner is never reclaimed merely because its lock is old.
86
+ - Numeric SemVer prereleases retain their ordering during CLI updates and publication:
87
+ `1.0.0-rc.10` follows `1.0.0-rc.2`.
88
+ - Native Bun HTTP requests keep the framework request deadline and caller cancellation
89
+ as their timeout policy, disabling only Bun's independent socket idle timer. Both HTTP
90
+ client paths share one native adapter; explicit/custom fetch, Node/browser/Next request
91
+ identity, retry policy and existing raw/stream lifetime semantics stay compatible.
92
+
93
+ ### Added
94
+
95
+ - `DirectoryInbox.accept({ source, key, entry })` durably admits programmatic work to the
96
+ existing directory inbox. The first payload wins; capacity, encoded bytes and completed
97
+ receipt retention are finite. Renewable claims fence stale completion and cleanup.
98
+ - An injected Telegram broadcast classifier supports known retry waits, transient failures,
99
+ permanent refusals and ambiguous send outcomes. Provider waits are never shortened.
100
+ - `publishCli` builds a bounded target set with one immutable stamp, verifies source admission,
101
+ commits assets before the public manifest, recovers completed versions and retains verified
102
+ history. Existing signatures, installer and updater keep one implementation.
103
+ - `stitchkit/tools/mcp` serves the existing HTTP/stdin-stdout MCP implementation with Zod
104
+ and the MCP SDK as its feature peers. Installing the AI SDK is unnecessary for this leaf.
105
+ - MCP discovery and calls have independent `limits.discovery` / `limits.call` deadlines and
106
+ raw byte ceilings; omitted fields inherit the existing shared limits.
107
+ - A managed stateful-client recipe covers startup, dependent resources, partial failure,
108
+ forced shutdown and restart with the existing application lifecycle.
109
+ - Reviewed surface growth: application +6 intake/context names, Telegram +2 classifier
110
+ names, CLI +4 publisher names; connection diagnostics and policy gain named public types.
111
+ The MCP leaf shares existing owners and gives strict MCP construction its own contracts.
112
+
113
+ ## [0.103.13] - 2026-10-04
114
+
115
+ ### Fixed
116
+
117
+ - Darwin native process and contained-file backends retain a static addon dependency through
118
+ Node-compatible package builds, minified Bun/Node bundles and Bun standalone executables.
119
+ Bundlers emit native assets automatically; Bun compile embeds the target architecture addon.
120
+ Backend load failures keep their original internal cause and serialize safe stage/code
121
+ diagnostics instead of an empty object. Installed Darwin proofs exercise relocated artifacts,
122
+ exact process ownership, lock recovery, contained-file races and missing/corrupt backends.
123
+
124
+ - `stitchkit/cli`: repeated non-array options are refused before scalar coercion, including
125
+ mixed boolean presence, separate values, inline values, negation and short aliases. The same
126
+ rule covers framework and application globals. For example, `--check=false --check` is an
127
+ argument error instead of silently selecting `false`. Single options, array repetition,
128
+ untyped passthrough lists and command help retain their grammar.
129
+
18
130
  ## [0.103.12] - 2026-10-03
19
131
 
20
132
  ### Fixed
@@ -0,0 +1,12 @@
1
+ /** A lazy, statically discoverable addon edge shared by Node and Bun consumers. */
2
+ module.exports = function loadDarwinAddon() {
3
+ // The catch also keeps non-Darwin builds independent of unavailable slices.
4
+ // Bun compile selects its target architecture and embeds that literal addon.
5
+ try {
6
+ if (process.arch === 'arm64') return require('./native/darwin-arm64.node');
7
+ if (process.arch === 'x64') return require('./native/darwin-x64.node');
8
+ throw new Error('Unsupported Darwin addon architecture');
9
+ } catch (cause) {
10
+ throw new Error('Darwin addon loading failed', { cause });
11
+ }
12
+ };
@@ -0,0 +1,2 @@
1
+ declare function loadDarwinAddon(): unknown;
2
+ export = loadDarwinAddon;
@@ -133,6 +133,11 @@ export declare function fencingPhase(store: AgentRuntimeStore, conversationId: s
133
133
  parts: ({
134
134
  type: "text";
135
135
  text: string;
136
+ } | {
137
+ type: "file";
138
+ mediaType: string;
139
+ reference: string;
140
+ filename?: string | undefined;
136
141
  } | {
137
142
  type: "reasoning";
138
143
  text: string;
@@ -141,11 +146,6 @@ export declare function fencingPhase(store: AgentRuntimeStore, conversationId: s
141
146
  provider: string;
142
147
  data: Record<string, import("zod").JSONType>;
143
148
  } | undefined;
144
- } | {
145
- type: "file";
146
- mediaType: string;
147
- reference: string;
148
- filename?: string | undefined;
149
149
  } | {
150
150
  type: "source";
151
151
  sourceId: string;
@@ -313,6 +313,11 @@ export declare function fencingPhase(store: AgentRuntimeStore, conversationId: s
313
313
  parts: ({
314
314
  type: "text";
315
315
  text: string;
316
+ } | {
317
+ type: "file";
318
+ mediaType: string;
319
+ reference: string;
320
+ filename?: string | undefined;
316
321
  } | {
317
322
  type: "reasoning";
318
323
  text: string;
@@ -321,11 +326,6 @@ export declare function fencingPhase(store: AgentRuntimeStore, conversationId: s
321
326
  provider: string;
322
327
  data: Record<string, import("zod").JSONType>;
323
328
  } | undefined;
324
- } | {
325
- type: "file";
326
- mediaType: string;
327
- reference: string;
328
- filename?: string | undefined;
329
329
  } | {
330
330
  type: "source";
331
331
  sourceId: string;
@@ -0,0 +1,13 @@
1
+ import type { z } from 'zod';
2
+ import { type DirectoryInboxAccept, type DirectoryInboxAcceptResult } from './directory-inbox-contract.js';
3
+ import { type InboxFiles } from './directory-inbox-files.js';
4
+ import type { InboxStateAccess } from './directory-inbox-state.js';
5
+ export declare function createInboxAccept<TEntry>(options: {
6
+ access: InboxStateAccess;
7
+ files: () => InboxFiles;
8
+ accepting: () => boolean;
9
+ schema: z.ZodType<TEntry>;
10
+ maxEntryBytes: number;
11
+ maxPendingEntries: number;
12
+ }): (input: DirectoryInboxAccept<TEntry>) => Promise<DirectoryInboxAcceptResult>;
13
+ //# sourceMappingURL=directory-inbox-accept.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directory-inbox-accept.d.ts","sourceRoot":"","sources":["../../src/application/directory-inbox-accept.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,0BAA0B,EAEhC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAEL,KAAK,UAAU,EAGhB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE;IACjD,MAAM,EAAE,gBAAgB,CAAC;IACzB,KAAK,EAAE,MAAM,UAAU,CAAC;IACxB,SAAS,EAAE,MAAM,OAAO,CAAC;IACzB,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;CAC3B,WACsB,oBAAoB,CAAC,MAAM,CAAC,KAAG,OAAO,CAAC,0BAA0B,CAAC,CAkCxF"}
@@ -1,6 +1,22 @@
1
1
  import { z } from 'zod';
2
2
  import type { ManagedResource, ManagedResourceDependency } from './resource.js';
3
3
  import type { StateStore } from './state-store.js';
4
+ export declare const DirectoryInboxIdentitySchema: z.ZodObject<{
5
+ source: z.ZodString;
6
+ key: z.ZodString;
7
+ }, z.core.$strict>;
8
+ export type DirectoryInboxIdentity = z.infer<typeof DirectoryInboxIdentitySchema>;
9
+ export declare const DirectoryInboxAcceptResultSchema: z.ZodObject<{
10
+ status: z.ZodEnum<{
11
+ accepted: "accepted";
12
+ duplicate: "duplicate";
13
+ }>;
14
+ filename: z.ZodString;
15
+ }, z.core.$strict>;
16
+ export type DirectoryInboxAcceptResult = z.infer<typeof DirectoryInboxAcceptResultSchema>;
17
+ export interface DirectoryInboxAccept<TEntry> extends DirectoryInboxIdentity {
18
+ readonly entry: TEntry;
19
+ }
4
20
  export declare const DirectoryInboxRejectionReasonSchema: z.ZodEnum<{
5
21
  "attempt-limit": "attempt-limit";
6
22
  invalid: "invalid";
@@ -11,6 +27,10 @@ export declare const DirectoryInboxStateSchema: z.ZodObject<{
11
27
  schemaVersion: z.ZodLiteral<1>;
12
28
  claims: z.ZodArray<z.ZodObject<{
13
29
  key: z.ZodString;
30
+ identity: z.ZodOptional<z.ZodObject<{
31
+ source: z.ZodString;
32
+ key: z.ZodString;
33
+ }, z.core.$strict>>;
14
34
  attempts: z.ZodNumber;
15
35
  nextAttemptAt: z.ZodString;
16
36
  leaseId: z.ZodNullable<z.ZodString>;
@@ -18,10 +38,18 @@ export declare const DirectoryInboxStateSchema: z.ZodObject<{
18
38
  }, z.core.$strict>>;
19
39
  receipts: z.ZodArray<z.ZodObject<{
20
40
  key: z.ZodString;
41
+ identity: z.ZodOptional<z.ZodObject<{
42
+ source: z.ZodString;
43
+ key: z.ZodString;
44
+ }, z.core.$strict>>;
21
45
  completedAt: z.ZodString;
22
46
  }, z.core.$strict>>;
23
47
  rejected: z.ZodArray<z.ZodObject<{
24
48
  key: z.ZodString;
49
+ identity: z.ZodOptional<z.ZodObject<{
50
+ source: z.ZodString;
51
+ key: z.ZodString;
52
+ }, z.core.$strict>>;
25
53
  reason: z.ZodEnum<{
26
54
  "attempt-limit": "attempt-limit";
27
55
  invalid: "invalid";
@@ -44,6 +72,8 @@ export declare const emptyDirectoryInboxState: () => DirectoryInboxState;
44
72
  export interface DirectoryInboxDelivery<TEntry> {
45
73
  /** The entry's file name — stable across retries and restarts. */
46
74
  readonly key: string;
75
+ /** Explicit producer identity for programmatic entries; filename remains the legacy key. */
76
+ readonly identity?: DirectoryInboxIdentity;
47
77
  readonly entry: TEntry;
48
78
  /** 1 on the first delivery of this entry. */
49
79
  readonly attempt: number;
@@ -68,6 +98,8 @@ export interface DirectoryInboxConfig<TEntry> {
68
98
  readonly maxAttempts?: number;
69
99
  /** Larger entries are set aside unread. Default 1 MiB. */
70
100
  readonly maxEntryBytes?: number;
101
+ /** Programmatic acceptance refuses a full inbox without creating a file. Default 1 000. */
102
+ readonly maxPendingEntries?: number;
71
103
  /** Receipts and rejections kept. Default 1 000. */
72
104
  readonly retain?: number;
73
105
  /** An entry was set aside into `<directory>/rejected/`, with the reason. */
@@ -78,14 +110,16 @@ export interface DirectoryInboxConfig<TEntry> {
78
110
  */
79
111
  readonly onError?: (error: unknown) => void | Promise<void>;
80
112
  }
81
- export interface DirectoryInbox {
113
+ export interface DirectoryInbox<TEntry = unknown> {
114
+ /** Durably buffer an entry before activation; duplicates never replace the first payload. */
115
+ accept(input: DirectoryInboxAccept<TEntry>): Promise<DirectoryInboxAcceptResult>;
82
116
  /** Deliver every entry due now; resolves with how many were handled. */
83
117
  flush(): Promise<number>;
84
118
  state(): Promise<DirectoryInboxState>;
85
119
  }
86
- export interface DirectoryInboxResource extends ManagedResource {
120
+ export interface DirectoryInboxResource<TEntry = unknown> extends ManagedResource {
87
121
  start(): Promise<{
88
- readonly value: DirectoryInbox;
122
+ readonly value: DirectoryInbox<TEntry>;
89
123
  }>;
90
124
  }
91
125
  /** What the next step does with one entry of the directory. */
@@ -120,9 +154,12 @@ export declare function claimEntry(state: DirectoryInboxState, input: StepInput)
120
154
  readonly step: InboxStep;
121
155
  };
122
156
  /** The entry was handled: its receipt replaces its claim. */
123
- export declare function completeEntry(state: DirectoryInboxState, entryKey: string, now: Date, retain: number): DirectoryInboxState;
157
+ export declare function completeEntry(state: DirectoryInboxState, claim: DirectoryInboxClaim, now: Date, retain: number): DirectoryInboxState;
124
158
  /** The handler refused: wait, then take it again — unless it is no longer ours. */
125
- export declare function releaseEntry(state: DirectoryInboxState, claim: DirectoryInboxClaim, retryAt: Date): DirectoryInboxState;
159
+ export declare function releaseEntry(state: DirectoryInboxState, claim: DirectoryInboxClaim, now: Date, retryAt: Date): DirectoryInboxState;
160
+ /** A expired or replaced owner cannot complete, reject, renew or release an entry. */
161
+ export declare function ownsClaim(state: DirectoryInboxState, claim: DirectoryInboxClaim, now: Date): boolean;
162
+ export declare function renewEntry(state: DirectoryInboxState, claim: DirectoryInboxClaim, now: Date, leaseMs: number): DirectoryInboxState;
126
163
  /** Records about entries that are gone from the directory, except a live lease. */
127
164
  export declare function forgetMissing(state: DirectoryInboxState, present: ReadonlySet<string>, now: Date): DirectoryInboxState;
128
165
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"directory-inbox-contract.d.ts","sourceRoot":"","sources":["../../src/application/directory-inbox-contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"directory-inbox-contract.d.ts","sourceRoot":"","sources":["../../src/application/directory-inbox-contract.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { type DirectoryInboxClaim, type DirectoryInboxConfig } from './directory-inbox-contract.js';
2
+ import type { InboxFiles } from './directory-inbox-files.js';
3
+ import { type InboxStateAccess } from './directory-inbox-state.js';
4
+ export declare function createInboxDelivery<TEntry>(options: {
5
+ config: DirectoryInboxConfig<TEntry>;
6
+ access: InboxStateAccess;
7
+ files: () => InboxFiles;
8
+ clock: () => Date;
9
+ forced: () => AbortSignal;
10
+ leaseMs: number;
11
+ retain: number;
12
+ report: (error: unknown) => Promise<void>;
13
+ }): (taken: DirectoryInboxClaim) => Promise<boolean>;
14
+ //# sourceMappingURL=directory-inbox-delivery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directory-inbox-delivery.d.ts","sourceRoot":"","sources":["../../src/application/directory-inbox-delivery.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EAM1B,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAqB,KAAK,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAInF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE;IACnD,MAAM,EAAE,oBAAoB,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,EAAE,gBAAgB,CAAC;IACzB,KAAK,EAAE,MAAM,UAAU,CAAC;IACxB,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,MAAM,EAAE,MAAM,WAAW,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3C,WAEsB,mBAAmB,KAAG,OAAO,CAAC,OAAO,CAAC,CAmH5D"}
@@ -0,0 +1,28 @@
1
+ import { z } from 'zod';
2
+ import { type FileObservation } from '../internal/bounded-file-read.js';
3
+ import { type DirectoryInboxIdentity } from './directory-inbox-contract.js';
4
+ import type { StateStoreUpdateContext } from './state-store.js';
5
+ export type InboxRead<TEntry> = {
6
+ entry: TEntry;
7
+ identity?: DirectoryInboxIdentity;
8
+ observation: FileObservation;
9
+ } | {
10
+ reason: 'invalid' | 'too-large';
11
+ detail: string;
12
+ identity?: DirectoryInboxIdentity;
13
+ observation?: FileObservation;
14
+ } | null;
15
+ export declare const missingInboxFile: (error: unknown) => boolean;
16
+ export declare function inboxFilename(identity: DirectoryInboxIdentity): string;
17
+ export declare function sameInboxIdentity(a: DirectoryInboxIdentity | undefined, b: DirectoryInboxIdentity): boolean;
18
+ export declare function encodeInboxEntry<TEntry>(identity: DirectoryInboxIdentity, entry: TEntry, schema: z.ZodType<TEntry>, maxBytes: number): string;
19
+ export declare function createInboxFiles(directory: string, maxBytes: number): Promise<{
20
+ names(limit?: number): Promise<string[]>;
21
+ read<TEntry>(key: string, schema: z.ZodType<TEntry>): Promise<InboxRead<TEntry>>;
22
+ existingIdentity(key: string): Promise<DirectoryInboxIdentity | undefined>;
23
+ publish(key: string, bytes: string, context: StateStoreUpdateContext): Promise<void>;
24
+ remove(key: string, context: StateStoreUpdateContext, observation?: FileObservation): Promise<void>;
25
+ setAside(key: string, context: StateStoreUpdateContext, observation?: FileObservation): Promise<void>;
26
+ }>;
27
+ export type InboxFiles = Awaited<ReturnType<typeof createInboxFiles>>;
28
+ //# sourceMappingURL=directory-inbox-files.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directory-inbox-files.d.ts","sourceRoot":"","sources":["../../src/application/directory-inbox-files.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAEL,KAAK,eAAe,EAErB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EACL,KAAK,sBAAsB,EAE5B,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAY7D,MAAM,MAAM,SAAS,CAAC,MAAM,IACxB;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAAC,WAAW,EAAE,eAAe,CAAA;CAAE,GAClF;IACE,MAAM,EAAE,SAAS,GAAG,WAAW,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAClC,WAAW,CAAC,EAAE,eAAe,CAAC;CAC/B,GACD,IAAI,CAAC;AAET,eAAO,MAAM,gBAAgB,UAAW,OAAO,KAAG,OACoB,CAAC;AAEvE,wBAAgB,aAAa,CAAC,QAAQ,EAAE,sBAAsB,GAAG,MAAM,CAQtE;AAED,wBAAgB,iBAAiB,CAC/B,CAAC,EAAE,sBAAsB,GAAG,SAAS,EACrC,CAAC,EAAE,sBAAsB,GACxB,OAAO,CAET;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EACrC,QAAQ,EAAE,sBAAsB,EAChC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EACzB,QAAQ,EAAE,MAAM,GACf,MAAM,CAeR;AAED,wBAAsB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;kBA0BlD,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;SASnC,MAAM,OAAO,MAAM,UAAU,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;0BAuD1D,MAAM,GAAG,OAAO,CAAC,sBAAsB,GAAG,SAAS,CAAC;iBAezE,MAAM,SACJ,MAAM,WACJ,uBAAuB,GAC/B,OAAO,CAAC,IAAI,CAAC;gBAgBT,MAAM,WACF,uBAAuB,gBAClB,eAAe,GAC5B,OAAO,CAAC,IAAI,CAAC;kBAUT,MAAM,WACF,uBAAuB,gBAClB,eAAe,GAC5B,OAAO,CAAC,IAAI,CAAC;GAgBnB;AAED,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { FileObservation } from '../internal/bounded-file-read.js';
2
+ import { type DirectoryInboxRejection, type DirectoryInboxState } from './directory-inbox-contract.js';
3
+ import type { InboxFiles } from './directory-inbox-files.js';
4
+ import type { StateStore, StateStoreUpdate, StateStoreUpdateContext } from './state-store.js';
5
+ export interface InboxStateAccess {
6
+ update<TResult>(transition: (state: DirectoryInboxState, context: StateStoreUpdateContext) => StateStoreUpdate<DirectoryInboxState, TResult> | Promise<StateStoreUpdate<DirectoryInboxState, TResult>>): Promise<TResult>;
7
+ read(): Promise<DirectoryInboxState>;
8
+ }
9
+ export declare function inboxStateAccess(store: StateStore<DirectoryInboxState>): InboxStateAccess;
10
+ /** Durable settlement precedes cleanup; cleanup rechecks its fact and exact file generation. */
11
+ export declare function cleanupInboxEntry(access: InboxStateAccess, files: InboxFiles, key: string, settlement: {
12
+ completedAt: string;
13
+ } | DirectoryInboxRejection, observation?: FileObservation): Promise<void>;
14
+ //# sourceMappingURL=directory-inbox-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"directory-inbox-state.d.ts","sourceRoot":"","sources":["../../src/application/directory-inbox-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EACL,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EAGzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAE3F,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,OAAO,EACZ,UAAU,EAAE,CACV,KAAK,EAAE,mBAAmB,EAC1B,OAAO,EAAE,uBAAuB,KAE9B,gBAAgB,CAAC,mBAAmB,EAAE,OAAO,CAAC,GAC9C,OAAO,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC,GAC1D,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,IAAI,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC;CACtC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,mBAAmB,CAAC,GAAG,gBAAgB,CAQzF;AAED,gGAAgG;AAChG,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,UAAU,EACjB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,uBAAuB,EAC7D,WAAW,CAAC,EAAE,eAAe,GAC5B,OAAO,CAAC,IAAI,CAAC,CAsBf"}
@@ -1,3 +1,4 @@
1
1
  import { type DirectoryInboxConfig, type DirectoryInboxResource } from './directory-inbox-contract.js';
2
- export declare function createDirectoryInbox<TEntry>(config: DirectoryInboxConfig<TEntry>): DirectoryInboxResource;
2
+ /** One file-backed intake engine for atomically dropped and programmatically accepted entries. */
3
+ export declare function createDirectoryInbox<TEntry>(config: DirectoryInboxConfig<TEntry>): DirectoryInboxResource<TEntry>;
3
4
  //# sourceMappingURL=directory-inbox.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"directory-inbox.d.ts","sourceRoot":"","sources":["../../src/application/directory-inbox.ts"],"names":[],"mappings":"AAIA,OAAO,EAKL,KAAK,oBAAoB,EAEzB,KAAK,sBAAsB,EAO5B,MAAM,4BAA4B,CAAC;AAyEpC,wBAAgB,oBAAoB,CAAC,MAAM,EACzC,MAAM,EAAE,oBAAoB,CAAC,MAAM,CAAC,GACnC,sBAAsB,CAiKxB"}
1
+ {"version":3,"file":"directory-inbox.d.ts","sourceRoot":"","sources":["../../src/application/directory-inbox.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,KAAK,oBAAoB,EACzB,KAAK,sBAAsB,EAG5B,MAAM,4BAA4B,CAAC;AAkCpC,kGAAkG;AAClG,wBAAgB,oBAAoB,CAAC,MAAM,EACzC,MAAM,EAAE,oBAAoB,CAAC,MAAM,CAAC,GACnC,sBAAsB,CAAC,MAAM,CAAC,CAuJhC"}
@@ -9,15 +9,9 @@ export interface FileStateStoreOptions<TState> {
9
9
  /** `throw` is the safe default. `empty` is appropriate for reconstructable ledgers. */
10
10
  readonly corrupt?: 'throw' | 'empty';
11
11
  readonly onCorrupt?: (failure: FileStateStoreCorruption) => void | Promise<void>;
12
+ /** Maximum wait to acquire the lock; never revokes a live transition. Default 10 s. */
12
13
  readonly lockTimeoutMs?: number;
13
- readonly staleLockMs?: number;
14
- readonly retryMs?: number;
15
14
  }
16
- /**
17
- * A versioned JSON state store with one cross-process atomic update boundary.
18
- *
19
- * The lock is an exclusive file, not an in-memory mutex. Writes use a unique
20
- * temporary file in the destination directory followed by an atomic rename.
21
- */
15
+ /** One durable atomic state transition under the canonical process-instance lock. */
22
16
  export declare function createFileStateStore<TState>(path: string, options: FileStateStoreOptions<TState>): StateStore<TState>;
23
17
  //# sourceMappingURL=file-state-store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-state-store.d.ts","sourceRoot":"","sources":["../../src/application/file-state-store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAE7B,OAAO,KAAK,EAAE,UAAU,EAAoB,MAAM,eAAe,CAAC;AAElE,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,qBAAqB,CAAC,MAAM;IAC3C,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,uFAAuF;IACvF,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACrC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjF,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;CAC3B;AAqID;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EACzC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,qBAAqB,CAAC,MAAM,CAAC,GACrC,UAAU,CAAC,MAAM,CAAC,CAuIpB"}
1
+ {"version":3,"file":"file-state-store.d.ts","sourceRoot":"","sources":["../../src/application/file-state-store.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAI7B,OAAO,KAAK,EAAE,UAAU,EAA2B,MAAM,eAAe,CAAC;AAEzE,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,qBAAqB,CAAC,MAAM;IAC3C,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,uFAAuF;IACvF,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACrC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,wBAAwB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjF,uFAAuF;IACvF,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAKD,qFAAqF;AACrF,wBAAgB,oBAAoB,CAAC,MAAM,EACzC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,qBAAqB,CAAC,MAAM,CAAC,GACrC,UAAU,CAAC,MAAM,CAAC,CAmEpB"}
@@ -3,6 +3,11 @@ export interface StateStoreUpdate<TState, TResult> {
3
3
  readonly state: TState;
4
4
  readonly result: TResult;
5
5
  }
6
+ /** The still-active protected transaction that owns a state transition. */
7
+ export interface StateStoreUpdateContext {
8
+ /** Refuse when the transaction ended or its exclusive generation was lost. */
9
+ assertHeld(): Promise<void>;
10
+ }
6
11
  /**
7
12
  * Persistence boundary for small application state machines.
8
13
  *
@@ -13,6 +18,6 @@ export interface StateStoreUpdate<TState, TResult> {
13
18
  */
14
19
  export interface StateStore<TState> {
15
20
  read(): Promise<TState | null>;
16
- update<TResult>(transition: (current: TState | null) => StateStoreUpdate<TState, TResult> | Promise<StateStoreUpdate<TState, TResult>>): Promise<TResult>;
21
+ update<TResult>(transition: (current: TState | null, context: StateStoreUpdateContext) => StateStoreUpdate<TState, TResult> | Promise<StateStoreUpdate<TState, TResult>>): Promise<TResult>;
17
22
  }
18
23
  //# sourceMappingURL=state-store.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"state-store.d.ts","sourceRoot":"","sources":["../../src/application/state-store.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,MAAM,WAAW,gBAAgB,CAAC,MAAM,EAAE,OAAO;IAC/C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU,CAAC,MAAM;IAChC,IAAI,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC/B,MAAM,CAAC,OAAO,EACZ,UAAU,EAAE,CACV,OAAO,EAAE,MAAM,GAAG,IAAI,KACnB,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAClF,OAAO,CAAC,OAAO,CAAC,CAAC;CACrB"}
1
+ {"version":3,"file":"state-store.d.ts","sourceRoot":"","sources":["../../src/application/state-store.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,MAAM,WAAW,gBAAgB,CAAC,MAAM,EAAE,OAAO;IAC/C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AAED,2EAA2E;AAC3E,MAAM,WAAW,uBAAuB;IACtC,8EAA8E;IAC9E,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU,CAAC,MAAM;IAChC,IAAI,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC/B,MAAM,CAAC,OAAO,EACZ,UAAU,EAAE,CACV,OAAO,EAAE,MAAM,GAAG,IAAI,EACtB,OAAO,EAAE,uBAAuB,KAC7B,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAClF,OAAO,CAAC,OAAO,CAAC,CAAC;CACrB"}
@@ -0,0 +1,4 @@
1
+ import type { EndpointDef } from '../contract/define.js';
2
+ /** The argument shape shared by typed method construction and remote forwarding. */
3
+ export declare function endpointHasArguments(endpoint: EndpointDef): boolean;
4
+ //# sourceMappingURL=client-arguments.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-arguments.d.ts","sourceRoot":"","sources":["../../src/browser/client-arguments.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,oFAAoF;AACpF,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAEnE"}
@@ -1 +1 @@
1
- {"version":3,"file":"client-executors.d.ts","sourceRoot":"","sources":["../../src/browser/client-executors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAInE,OAAO,EAEL,KAAK,UAAU,IAAI,WAAW,EAG/B,MAAM,QAAQ,CAAC;AAkEhB,MAAM,MAAM,qBAAqB,GAAG,CAClC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,OAAO,CAAC,EAAE,oBAAoB,KAC3B,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,MAAM,EACjD,QAAQ,EAAE,WAAW,EACrB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,WAAW,EACnB,MAAM,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAC/B,qBAAqB,CA+DvB;AAED,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAClD,QAAQ,EAAE,WAAW,EACrB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,cAAc,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GACvC,qBAAqB,CAyHvB"}
1
+ {"version":3,"file":"client-executors.d.ts","sourceRoot":"","sources":["../../src/browser/client-executors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAInE,OAAO,EAEL,KAAK,UAAU,IAAI,WAAW,EAG/B,MAAM,QAAQ,CAAC;AAmEhB,MAAM,MAAM,qBAAqB,GAAG,CAClC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,OAAO,CAAC,EAAE,oBAAoB,KAC3B,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,MAAM,EACjD,QAAQ,EAAE,WAAW,EACrB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,WAAW,EACnB,MAAM,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAC/B,qBAAqB,CA+DvB;AAED,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAClD,QAAQ,EAAE,WAAW,EACrB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,YAAY,EACpB,cAAc,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,GACvC,qBAAqB,CAyHvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/browser/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/browser/client.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"contract-stream.d.ts","sourceRoot":"","sources":["../../src/browser/contract-stream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACnC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AA8InE,iFAAiF;AACjF,wBAAgB,mBAAmB,CAAC,CAAC,EACnC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAChD,KAAK,EAAE,MAAM,IAAI,GAChB,qBAAqB,CAAC,CAAC,CAAC,CAE1B"}
1
+ {"version":3,"file":"contract-stream.d.ts","sourceRoot":"","sources":["../../src/browser/contract-stream.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AACnC,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAiJnE,iFAAiF;AACjF,wBAAgB,mBAAmB,CAAC,CAAC,EACnC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,wBAAwB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAChD,KAAK,EAAE,MAAM,IAAI,GAChB,qBAAqB,CAAC,CAAC,CAAC,CAE1B"}
@@ -18,7 +18,8 @@ export declare class ApiError extends Error {
18
18
  readonly details?: unknown;
19
19
  readonly hint?: string | undefined;
20
20
  readonly traceId?: string | undefined;
21
- constructor(code: string, status?: number, details?: unknown, message?: string, hint?: string | undefined, traceId?: string | undefined, options?: ErrorOptions);
21
+ readonly retryable?: boolean | undefined;
22
+ constructor(code: string, status?: number, details?: unknown, message?: string, hint?: string | undefined, traceId?: string | undefined, options?: ErrorOptions, retryable?: boolean | undefined);
22
23
  static is(error: unknown): error is ApiError;
23
24
  }
24
25
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/browser/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/browser/http.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { ClientFetch } from './transport.js';
2
+ /**
3
+ * The client owns its whole-request/open deadline through AbortSignal. Bun's
4
+ * independent idle timer must not end a native request before that deadline.
5
+ * Explicit transports and patched global fetch keep their own delivery policy.
6
+ */
7
+ export declare function resolveClientFetch(explicitFetch?: ClientFetch): ClientFetch;
8
+ //# sourceMappingURL=native-fetch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-fetch.d.ts","sourceRoot":"","sources":["../../src/browser/native-fetch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAc/C;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,CAAC,EAAE,WAAW,GAAG,WAAW,CAU3E"}