stitchkit 0.109.4 → 0.110.1

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 (93) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/dist/agent-runtime/store-conformance-support.d.ts +5 -5
  3. package/dist/application/process-lifecycle-transitions.d.ts +10 -2
  4. package/dist/application/process-lifecycle-transitions.d.ts.map +1 -1
  5. package/dist/browser/http.d.ts.map +1 -1
  6. package/dist/browser/socket-io-client.d.ts +6 -0
  7. package/dist/browser/socket-io-client.d.ts.map +1 -0
  8. package/dist/browser/socket-io-contract.d.ts +183 -0
  9. package/dist/browser/socket-io-contract.d.ts.map +1 -0
  10. package/dist/browser/socket-io-default-peer.d.ts +3 -0
  11. package/dist/browser/socket-io-default-peer.d.ts.map +1 -0
  12. package/dist/browser/socket-io-explicit-peer.d.ts +12 -0
  13. package/dist/browser/socket-io-explicit-peer.d.ts.map +1 -0
  14. package/dist/browser/socket-io-peer.d.ts +2 -11
  15. package/dist/browser/socket-io-peer.d.ts.map +1 -1
  16. package/dist/browser/socket-io.d.ts +5 -224
  17. package/dist/browser/socket-io.d.ts.map +1 -1
  18. package/dist/entrypoints/agent-runtime/coding-tools.js +3 -3
  19. package/dist/entrypoints/agent-runtime/harness.js +6 -6
  20. package/dist/entrypoints/agent-runtime/realtime.js +4 -4
  21. package/dist/entrypoints/agent-runtime/sandbox.js +3 -3
  22. package/dist/entrypoints/agent-runtime.js +6 -6
  23. package/dist/entrypoints/application/directory-inbox.js +6 -6
  24. package/dist/entrypoints/application.js +17 -9
  25. package/dist/entrypoints/cli/publish.js +2 -2
  26. package/dist/entrypoints/cli.js +9 -9
  27. package/dist/entrypoints/contract.js +2 -2
  28. package/dist/entrypoints/files.js +1 -1
  29. package/dist/entrypoints/http.d.ts +6 -0
  30. package/dist/entrypoints/http.d.ts.map +1 -0
  31. package/dist/entrypoints/http.js +32 -0
  32. package/dist/entrypoints/index.js +21 -412
  33. package/dist/entrypoints/node.js +3 -3
  34. package/dist/entrypoints/observability.js +1 -1
  35. package/dist/entrypoints/process/owner-loss.js +1 -1
  36. package/dist/entrypoints/process.js +2 -2
  37. package/dist/entrypoints/react.js +1 -1
  38. package/dist/entrypoints/realtime.d.ts +6 -0
  39. package/dist/entrypoints/realtime.d.ts.map +1 -0
  40. package/dist/entrypoints/realtime.js +25 -0
  41. package/dist/entrypoints/remote.js +2 -2
  42. package/dist/entrypoints/server.js +8 -8
  43. package/dist/entrypoints/telegram/screens.js +6 -6
  44. package/dist/entrypoints/telegram.js +3 -3
  45. package/dist/entrypoints/testing.js +3 -3
  46. package/dist/entrypoints/tools/connections.js +3 -3
  47. package/dist/entrypoints/tools/invoker.js +3 -3
  48. package/dist/entrypoints/tools/mcp.js +4 -4
  49. package/dist/entrypoints/tools.js +24 -24
  50. package/dist/{index-3wm2xp2a.js → index-0d8m0kee.js} +1 -1
  51. package/dist/{index-5cw390s6.js → index-2tazbwhv.js} +6 -6
  52. package/dist/{index-hjvje0pf.js → index-506kd458.js} +1 -1
  53. package/dist/{index-dj1aycxw.js → index-84bf5spd.js} +0 -1
  54. package/dist/index-86sxnvpr.js +336 -0
  55. package/dist/{index-68y3n9j3.js → index-8rstkvcf.js} +3 -3
  56. package/dist/{index-tpk71wqn.js → index-924500c3.js} +1 -1
  57. package/dist/{index-kvvpw1kq.js → index-dd1z5kxb.js} +2 -2
  58. package/dist/{index-k3ty2b88.js → index-e1sjcjfy.js} +95 -20
  59. package/dist/{index-ryv32myz.js → index-ghwntn9n.js} +1 -1
  60. package/dist/index-hqsbtvta.js +92 -0
  61. package/dist/{index-e32vy8jw.js → index-jk44mbqb.js} +1 -1
  62. package/dist/{index-k4v2kq4q.js → index-mha6b4vk.js} +6 -6
  63. package/dist/{index-00v1qz76.js → index-p6apg0jg.js} +1 -1
  64. package/dist/{index-x5xs71dw.js → index-s2eybn7b.js} +8 -8
  65. package/dist/{index-njs9gvrh.js → index-s6d8zsha.js} +6 -6
  66. package/dist/{index-kc3jqqew.js → index-tjdsyrys.js} +2 -2
  67. package/dist/process/command-owner.d.ts.map +1 -1
  68. package/dist/process/group-presence.d.ts +3 -0
  69. package/dist/process/group-presence.d.ts.map +1 -0
  70. package/dist/process/group-settlement.d.ts +5 -0
  71. package/dist/process/group-settlement.d.ts.map +1 -0
  72. package/dist/process/group.d.ts.map +1 -1
  73. package/dist/process/output-drain.d.ts +1 -1
  74. package/dist/process/output-drain.d.ts.map +1 -1
  75. package/dist/process/owner-loss-control.d.ts.map +1 -1
  76. package/llms/application.2.txt +8 -5
  77. package/llms/application.3.txt +3 -0
  78. package/llms/http.txt +19 -0
  79. package/llms/realtime.txt +31 -0
  80. package/llms/stitchkit.txt +5 -3
  81. package/llms/{upgrading-0.101.0-0.109.0.txt → upgrading-0.101.0-0.110.0.txt} +13 -3
  82. package/llms/upgrading.txt +1 -1
  83. package/llms-full.txt +57 -8
  84. package/llms.txt +5 -3
  85. package/package.json +9 -1
  86. package/dist/{index-9j2atjte.js → index-2f9r0jgr.js} +3 -3
  87. package/dist/{index-299sm5tr.js → index-616xh7f2.js} +0 -0
  88. package/dist/{index-y70v24cw.js → index-8asb62xn.js} +0 -0
  89. package/dist/{index-k7qdkh3n.js → index-h1spd9kv.js} +3 -3
  90. package/dist/{index-qd8x73e8.js → index-k8fbzggr.js} +0 -0
  91. package/dist/{index-85qve8mq.js → index-pzw0fpek.js} +0 -0
  92. package/dist/{index-y3nemndz.js → index-r6v4mc67.js} +3 -3
  93. package/dist/{index-ktjmgq9p.js → index-s0xbnpfh.js} +3 -3
@@ -1,14 +1,24 @@
1
- # Upgrading 0.101.0 → 0.109.0 — stitchkit docs slice
1
+ # Upgrading 0.101.0 → 0.110.0 — stitchkit docs slice
2
2
 
3
3
  > Generated from the `docs/` tree by `bun run gen:llms`. The index of all slices is
4
4
  > `llms.txt` in this package.
5
5
 
6
- Contains: Guide: Upgrading, 0.101.0 → 0.109.0 (docs/guide/upgrading.md)
6
+ Contains: Guide: Upgrading, 0.101.0 → 0.110.0 (docs/guide/upgrading.md)
7
7
 
8
8
  ==============================================================================
9
- # Guide: Upgrading, 0.101.0 → 0.109.0 (docs/guide/upgrading.md)
9
+ # Guide: Upgrading, 0.101.0 → 0.110.0 (docs/guide/upgrading.md)
10
10
  ==============================================================================
11
11
 
12
+ ## Released migration: 0.110.0
13
+
14
+ ### Interrupted process drains
15
+
16
+ **Who must act:** applications with exhaustive switches or schemas over `LifecycleTermination` or `PreviousExit` from `stitchkit/application`.
17
+
18
+ A successor that closes an abandoned `draining` run now reports `interrupted`, rather than `abnormal` (or `startup-failed` before readiness). Add an `interrupted` case for an unfinished shutdown. `abnormal` still describes an abandoned active run. Handoff and same-pid hot reload retain their meaning.
19
+
20
+ `StartFact.previousDrainUpperBoundMs` measures from recorded admission stop to successor start, or is `null` without those facts. It is an upper bound: the ledger does not observe the actual kill signal, supervisor deadline, or death time. Before: `previousExit === "abnormal"` included unfinished drains; after: handle `previousExit === "interrupted"` separately.
21
+
12
22
  ## Released migration: 0.109.0
13
23
 
14
24
  ### free CLI record leaves are lexical
@@ -11,7 +11,7 @@ Contains: Guide: Upgrading, general (docs/guide/upgrading.md)
11
11
 
12
12
  Load this slice, then every range slice between your installed version and the target:
13
13
 
14
- - 0.101.0 → 0.109.0: `llms/upgrading-0.101.0-0.109.0.txt`
14
+ - 0.101.0 → 0.110.0: `llms/upgrading-0.101.0-0.110.0.txt`
15
15
  - 0.74.0 → 0.100.0: `llms/upgrading-0.74.0-0.100.0.txt`
16
16
  - 0.61.0 → 0.73.0: `llms/upgrading-0.61.0-0.73.0.txt`
17
17
  - 0.44.0 → 0.60.0: `llms/upgrading-0.44.0-0.60.0.txt`
package/llms-full.txt CHANGED
@@ -48,6 +48,8 @@ own, recorded as an ADR.
48
48
  | Import | Use in | Maturity | Holds |
49
49
  |--------|--------|----------|-------|
50
50
  | `stitchkit` | browser **and** server | stable | `defineContract`, `createClient`, `createHttpClient`, `createSocketIOClient`, `parseSSE`, the error model |
51
+ | `stitchkit/http` | browser, React Native/Hermes **and** server | evolving | typed HTTP client factories and `ApiError`, without optional realtime peers |
52
+ | `stitchkit/realtime` | browser, React Native/Hermes **and** server | evolving | typed realtime clients and retained topics with a required explicit Socket.IO peer loader |
51
53
  | `stitchkit/contract` | browser **and** server | stable | the contract layer alone — `defineContract`, errors, pagination |
52
54
  | `stitchkit/live` | browser **and** server | evolving | `defineEvents` — topic declarations beside the operation contract — and watched reads: `createWatchClient`, the value/difference frame and its reassembly |
53
55
  | `stitchkit/primitives` | browser **and** server | evolving | generic values and declarations for lifecycle, access, audit, delivery and exports |
@@ -75,12 +77,12 @@ own, recorded as an ADR.
75
77
  | `stitchkit/geo` | server (Bun or Node) | evolving | managed GeoIP reader generations, last-known-good reload and the optional MaxMind adapter |
76
78
  | `stitchkit/oauth` | browser **and** server | evolving | provider-neutral Authorization Code + PKCE request and one-shot callback transaction mechanics |
77
79
  | `stitchkit/google` | server (Bun or Node) | evolving | optional Google code exchange and verified OIDC identity adapter |
78
- | `stitchkit/observability` | server | stable<br>_redefined in 2 of the 54 minors since 0.56.2, most recently 0.92.0_ | request/tool event projections — `createObservability`, trace context, sanitisation |
80
+ | `stitchkit/observability` | server | stable<br>_redefined in 2 of the 55 minors since 0.56.2, most recently 0.92.0_ | request/tool event projections — `createObservability`, trace context, sanitisation |
79
81
  | `stitchkit/testing` | tests on Bun or Node | stable | in-process generated clients over a real Fetch handler, the managed-resource conformance kit and manual time for schedules and retries |
80
82
  | `stitchkit/declaration` | browser + build and deployment tooling (Bun or Node) | evolving | `ProjectDeclarationSchema` — the one machine-readable statement a repository makes about itself |
81
83
  | `stitchkit/react` | browser + server rendering | stable | `createCursorQuery`, `createCacheBridge`, QueryClient and `ApiError` retry policy |
82
84
  | `stitchkit/react/keyboard` | browser | evolving | which part of a screen gets a key — ordered layers, one Escape per level, list zones with real focus; see [keyboard guide](keyboard.md) |
83
- | `stitchkit/agent-runtime` | server | evolving<br>_redefined in 23 of the 54 minors since 0.56.2, most recently 0.105.0_ | optional durable conversation/run loop, history, models, prompts, fencing and events |
85
+ | `stitchkit/agent-runtime` | server | evolving<br>_redefined in 23 of the 55 minors since 0.56.2, most recently 0.105.0_ | optional durable conversation/run loop, history, models, prompts, fencing and events |
84
86
  | `stitchkit/agent-runtime/sandbox` | server | evolving | optional Linux Bubblewrap sessions, durable workspaces and a host HTTP credential gateway; see [sandbox guide](sandbox.md) |
85
87
  | `stitchkit/agent-runtime/testing` | tests on Bun or Node | evolving | credential-free replay, scripted provider faults, deterministic race controls and the agent-store conformance kit |
86
88
  | `stitchkit/agent-runtime/harness` | server | evolving | resource-aware process-local facade over the canonical Agent runtime; supervision stays outside |
@@ -92,7 +94,7 @@ own, recorded as an ADR.
92
94
  | `stitchkit/agent-runtime/sqlite/bun` | server (Bun) | evolving | durable built-in SQLite store for the agent runtime |
93
95
  | `stitchkit/agent-runtime/sqlite/node` | server (Node ≥ 22.5) | evolving | durable built-in SQLite store for the agent runtime |
94
96
  | `stitchkit-tui` | terminal (Bun) | evolving | optional official OpenTUI host over a caller-composed headless runtime |
95
- | `stitchkit/application` | browser + server | evolving<br>_redefined in 13 of the 54 minors since 0.56.2, most recently 0.105.0_ | managed resource graph, readiness, admission, schedules, subtree restart and bounded shutdown |
97
+ | `stitchkit/application` | browser + server | evolving<br>_redefined in 14 of the 55 minors since 0.56.2, most recently 0.110.0_ | managed resource graph, readiness, admission, schedules, subtree restart and bounded shutdown |
96
98
  | `stitchkit/application/grammy` | server | evolving | a grammY bot as application resources — configuration, then polling with updates admitted by batch — and the webhook adapter |
97
99
  | `stitchkit/application/opentelemetry` | server | evolving | maps application snapshots onto an injected OpenTelemetry `Meter` |
98
100
  | `stitchkit/application/schemas` | browser + server | evolving | the application's snapshot, health and shutdown schemas alone, without the kernel |
@@ -7849,12 +7851,13 @@ ever became ready:
7849
7851
  | newest run | same pid | version | `previousExit` | predecessor's `termination` |
7850
7852
  |---|---|---|---|---|
7851
7853
  | none | — | — | `first-boot` | — |
7852
- | recorded `stoppedAt` | — | — | `clean` / `forced` / `startup-failed` / `abnormal` as recorded | unchanged |
7854
+ | recorded `stoppedAt` | — | — | the recorded termination, including `interrupted` | unchanged |
7853
7855
  | still open | yes | — | `hot-reload` | `hot-reload`, closed at the new start |
7854
7856
  | still open | no | changed | `handoff` (default) | stays open; it records its own stop later |
7855
- | still open | no | changed, `versionChangeOverlap: 'abnormal'` | `abnormal` / `startup-failed` | closed at the new start, as for the same version |
7856
- | still open, was ready | no | same | `abnormal` (default) | `abnormal`, closed at the new start — an upper bound, the crash time is unknown |
7857
- | still open, never ready | no | same | `startup-failed` (default) | `startup-failed`, closed at the new start |
7857
+ | still open | no | changed, `versionChangeOverlap: 'abnormal'` | `interrupted` / `abnormal` / `startup-failed` | closed at the new start, as for the same version |
7858
+ | still draining | no | same or non-overlapping build | `interrupted` | closed at the new start; its death time and kill signal are unknown |
7859
+ | still active, was ready | no | same | `abnormal` (default) | `abnormal`, closed at the new start — an upper bound, the crash time is unknown |
7860
+ | still active, never ready | no | same | `startup-failed` (default) | `startup-failed`, closed at the new start |
7858
7861
 
7859
7862
  Every other open run the start finds was abandoned too and is closed the same
7860
7863
  way — two crashes in a row leave two open runs, and both are closed, not only
@@ -7883,10 +7886,12 @@ The ledger records what the process says while it can say it. stitchkit never
7883
7886
  calls `process.exit` (ADR 0074), so a stop is recorded on the kernel's `close`
7884
7887
  or `force` path, both awaited. An application that exits the process on its
7885
7888
  own before its shutdown settles loses that last write; the successor then
7886
- finds the run open and closes it as `abnormal`, keeping the `unavailableAt`
7889
+ finds the unfinished drain and closes it as `interrupted`, keeping the `unavailableAt`
7887
7890
  already recorded — which is why the drain moment is written first, at
7888
7891
  `stopAdmission`, and the downtime survives a stop that was never recorded.
7889
7892
 
7893
+ An abandoned `draining` run closes as `interrupted`, including before readiness. `StartFact.previousDrainUpperBoundMs` is the elapsed time from recorded admission stop to successor start, or `null` when unknown. This is an upper bound, not proof of a supervisor timeout or a particular kill signal. Live handoff predecessors remain open; same-pid restarts remain `hot-reload`.
7894
+
7890
7895
  The `abnormal` default is a choice, and it is the single-process deployment:
7891
7896
  one process per build, a new pid of the same build means the old one stopped
7892
7897
  answering. Where processes of **one** build overlap on purpose — a cluster, a
@@ -15890,6 +15895,17 @@ analytics policy belong to the application.
15890
15895
 
15891
15896
  # Upgrading stitchkit
15892
15897
 
15898
+ ## Released migration: 0.110.0
15899
+
15900
+ ### Interrupted process drains
15901
+
15902
+ **Who must act:** applications with exhaustive switches or schemas over `LifecycleTermination` or `PreviousExit` from `stitchkit/application`.
15903
+
15904
+ A successor that closes an abandoned `draining` run now reports `interrupted`, rather than `abnormal` (or `startup-failed` before readiness). Add an `interrupted` case for an unfinished shutdown. `abnormal` still describes an abandoned active run. Handoff and same-pid hot reload retain their meaning.
15905
+
15906
+ `StartFact.previousDrainUpperBoundMs` measures from recorded admission stop to successor start, or is `null` without those facts. It is an upper bound: the ledger does not observe the actual kill signal, supervisor deadline, or death time. Before: `previousExit === "abnormal"` included unfinished drains; after: handle `previousExit === "interrupted"` separately.
15907
+
15908
+
15893
15909
  ## Released migration: 0.109.0
15894
15910
 
15895
15911
  ### free CLI record leaves are lexical
@@ -21313,6 +21329,9 @@ lane never reaches the hooks on either runtime.
21313
21329
 
21314
21330
  ## `stitchkit/application`
21315
21331
 
21332
+ `StartFact` also carries `previousDrainUpperBoundMs`: the time from a predecessor's recorded admission stop to this start when its exit is `interrupted`, otherwise `null`. This is an upper bound, and does not identify a kill signal or supervisor deadline.
21333
+
21334
+
21316
21335
  Server-only process-local application composition. See the
21317
21336
  [application kernel guide](../guide/application-kernel.md) and
21318
21337
  [architecture](../architecture/application-kernel.md). Complete consumer
@@ -23311,3 +23330,33 @@ has no `outputPath`, because nothing is written beside the executable. Keep comp
23311
23330
  without splitting, preserve every output, and write each asset's `bytes` to its `outputPath`.
23312
23331
  This evolving entrypoint is a build dependency; runtime imports do not reach it.
23313
23332
  The detailed recipe is in [native IO](../guide/native-io.md#public-native-packaging).
23333
+
23334
+ ## `stitchkit/http`
23335
+
23336
+ An HTTP-only entrypoint for browsers, React Native/Hermes and servers. It exports the same `createClient`, `createClients`, `createHttpClient`, URL builders, client configuration types and `ApiError` as the root, without loading its optional Socket.IO graph. Import shared contracts from `stitchkit/contract`.
23337
+
23338
+ ```ts
23339
+ import { createClients, createHttpClient } from 'stitchkit/http';
23340
+ import { defineContract } from 'stitchkit/contract';
23341
+ ```
23342
+
23343
+ ## `stitchkit/realtime`
23344
+
23345
+ Hermes-safe realtime clients reuse the root transport and contract implementation. Both
23346
+ `createRealtimeClient` and `createSocketIOClient` require `peers.client` here; no default
23347
+ computed import enters this graph. Root clients retain their optional lazy runtime loader.
23348
+
23349
+ ```ts
23350
+ import { createRealtimeClient, defineRealtimeContract } from 'stitchkit/realtime';
23351
+ const client = createRealtimeClient(contract, {
23352
+ url,
23353
+ peers: { client: () => import('socket.io-client') },
23354
+ });
23355
+ ```
23356
+
23357
+ Native consumers import HTTP factories, `ApiError`, `createUrlBuilder`,
23358
+ `contractEndpointMatchers` and `uploadInChunks` from `stitchkit/http`; schema factories,
23359
+ `ContractDef` and `paginatedSchema` from `stitchkit/contract`; realtime factories,
23360
+ `RealtimeClient`, `defineRealtimeContract`, `InferRealtimeEventMap`, `createRetainedTopics`
23361
+ and `RetainedTopics` from `stitchkit/realtime`. `createQueryClientFactory` remains in
23362
+ `stitchkit/react`. Shared modules must use the same public leaves throughout their graph.
package/llms.txt CHANGED
@@ -9,7 +9,7 @@ Build with stitchkit: define a contract once, then `implement` it and serve it (
9
9
  Load the slice for each entrypoint your code imports — `import … from 'stitchkit/server'` → `llms/server.txt`; the root `stitchkit` import → `llms/stitchkit.txt`. A slice holds that entrypoint's API reference section and the guide pages whose home it is; every guide lives in exactly one slice, and a slice that needs another's guide names it under "Also read". Each file is at most 50.0 KB; a longer one continues in numbered parts, each naming the next at its top. Moving across versions: load `llms/upgrading.txt` and the range slices it lists between your version and the target. `llms-full.txt` inlines everything; it is far larger than a context window, so do not read it whole.
10
10
 
11
11
  ## Entrypoint slices
12
- - **stitchkit**: [llms/stitchkit.txt](llms/stitchkit.txt) 47.2 KB → [llms/stitchkit.2.txt](llms/stitchkit.2.txt) 36.5 KB
12
+ - **stitchkit**: [llms/stitchkit.txt](llms/stitchkit.txt) 47.5 KB → [llms/stitchkit.2.txt](llms/stitchkit.2.txt) 36.5 KB
13
13
  - **stitchkit/live**: [llms/live.txt](llms/live.txt) 21.2 KB
14
14
  - **stitchkit/react**: [llms/react.txt](llms/react.txt) 8.6 KB
15
15
  - **stitchkit/react/keyboard**: [llms/react-keyboard.txt](llms/react-keyboard.txt) 9.2 KB
@@ -33,7 +33,7 @@ Load the slice for each entrypoint your code imports — `import … from 'stitc
33
33
  - **stitchkit/agent-runtime/openrouter**: [llms/agent-runtime-openrouter.txt](llms/agent-runtime-openrouter.txt) 1.1 KB
34
34
  - **stitchkit/agent-runtime/sqlite/bun**: [llms/agent-runtime-sqlite-bun.txt](llms/agent-runtime-sqlite-bun.txt) 1.8 KB
35
35
  - **stitchkit/agent-runtime/sqlite/node**: [llms/agent-runtime-sqlite-node.txt](llms/agent-runtime-sqlite-node.txt) 1.7 KB
36
- - **stitchkit/application**: [llms/application.txt](llms/application.txt) 40.8 KB → [llms/application.2.txt](llms/application.2.txt) 30.7 KB → [llms/application.3.txt](llms/application.3.txt) 29.4 KB
36
+ - **stitchkit/application**: [llms/application.txt](llms/application.txt) 40.8 KB → [llms/application.2.txt](llms/application.2.txt) 31.3 KB → [llms/application.3.txt](llms/application.3.txt) 29.6 KB
37
37
  - **stitchkit/application/grammy**: [llms/application-grammy.txt](llms/application-grammy.txt) 2.3 KB
38
38
  - **stitchkit/application/opentelemetry**: [llms/application-opentelemetry.txt](llms/application-opentelemetry.txt) 1.6 KB
39
39
  - **stitchkit/application/directory-inbox**: [llms/application-directory-inbox.txt](llms/application-directory-inbox.txt) 0.3 KB
@@ -59,10 +59,12 @@ Load the slice for each entrypoint your code imports — `import … from 'stitc
59
59
  - **stitchkit/process**: [llms/process.txt](llms/process.txt) 45.8 KB
60
60
  - **stitchkit/process/owner-loss**: [llms/process-owner-loss.txt](llms/process-owner-loss.txt) 0.9 KB
61
61
  - **stitchkit/files/packaging**: [llms/files-packaging.txt](llms/files-packaging.txt) 3.5 KB
62
+ - **stitchkit/http**: [llms/http.txt](llms/http.txt) 0.9 KB
63
+ - **stitchkit/realtime**: [llms/realtime.txt](llms/realtime.txt) 1.4 KB
62
64
 
63
65
  ## Upgrading slices
64
66
  - **Upgrading — how to move across versions**: [llms/upgrading.txt](llms/upgrading.txt) 12.2 KB
65
- - **Upgrading 0.101.0 → 0.109.0**: [llms/upgrading-0.101.0-0.109.0.txt](llms/upgrading-0.101.0-0.109.0.txt) 45.0 KB
67
+ - **Upgrading 0.101.0 → 0.110.0**: [llms/upgrading-0.101.0-0.110.0.txt](llms/upgrading-0.101.0-0.110.0.txt) 45.8 KB
66
68
  - **Upgrading 0.74.0 → 0.100.0**: [llms/upgrading-0.74.0-0.100.0.txt](llms/upgrading-0.74.0-0.100.0.txt) 45.1 KB
67
69
  - **Upgrading 0.61.0 → 0.73.0**: [llms/upgrading-0.61.0-0.73.0.txt](llms/upgrading-0.61.0-0.73.0.txt) 41.2 KB
68
70
  - **Upgrading 0.44.0 → 0.60.0**: [llms/upgrading-0.44.0-0.60.0.txt](llms/upgrading-0.44.0-0.60.0.txt) 43.9 KB
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stitchkit",
3
- "version": "0.109.4",
3
+ "version": "0.110.1",
4
4
  "description": "Contract-first backend framework — one defineContract() into an HTTP API, MCP tools, AI-agent tools and a typed client. Bun and Node.",
5
5
  "keywords": [
6
6
  "bun",
@@ -256,6 +256,14 @@
256
256
  "./files/packaging": {
257
257
  "types": "./dist/entrypoints/files/packaging.d.ts",
258
258
  "import": "./dist/entrypoints/files/packaging.js"
259
+ },
260
+ "./http": {
261
+ "types": "./dist/entrypoints/http.d.ts",
262
+ "import": "./dist/entrypoints/http.js"
263
+ },
264
+ "./realtime": {
265
+ "types": "./dist/entrypoints/realtime.d.ts",
266
+ "import": "./dist/entrypoints/realtime.js"
259
267
  }
260
268
  },
261
269
  "publishConfig": {
@@ -2,9 +2,6 @@ import {
2
2
  ManagedFilePathSchema2,
3
3
  ManagedFileRefSchema2
4
4
  } from "./index-xqhede6x.js";
5
- import {
6
- raceAbort
7
- } from "./index-b0kddvzw.js";
8
5
  import {
9
6
  BoundedFileReadError,
10
7
  readBoundedFile
@@ -19,6 +16,9 @@ import {
19
16
  import {
20
17
  AtomicFilePublicationError2
21
18
  } from "./index-b56nnscm.js";
19
+ import {
20
+ raceAbort
21
+ } from "./index-b0kddvzw.js";
22
22
  import {
23
23
  assertPositiveSafeInteger
24
24
  } from "./index-0s4xebbg.js";
File without changes
File without changes
@@ -5,12 +5,12 @@ import {
5
5
  bytesToBase64Url,
6
6
  base64UrlToBytes
7
7
  } from "./index-dwfv9a85.js";
8
- import {
9
- unauthorized2
10
- } from "./index-j9gxbztg.js";
11
8
  import {
12
9
  safeJsonParse
13
10
  } from "./index-zsarb5xp.js";
11
+ import {
12
+ unauthorized2
13
+ } from "./index-j9gxbztg.js";
14
14
  import {
15
15
  isRecord
16
16
  } from "./index-9jfdm5tg.js";
File without changes
File without changes
@@ -2,12 +2,12 @@ import {
2
2
  resolveSocketIp2,
3
3
  getClientInfo2
4
4
  } from "./index-kw1ws0cs.js";
5
- import {
6
- resolveTraceContext2
7
- } from "./index-yex7eg1v.js";
8
5
  import {
9
6
  isUnsafeKey
10
7
  } from "./index-zsarb5xp.js";
8
+ import {
9
+ resolveTraceContext2
10
+ } from "./index-yex7eg1v.js";
11
11
 
12
12
  // src/observability/context.ts
13
13
  import { AsyncLocalStorage } from "node:async_hooks";
@@ -6,12 +6,12 @@ import {
6
6
  PrivateAddressRefusal,
7
7
  readCapped
8
8
  } from "./index-3h0ztg0z.js";
9
- import {
10
- raceAbort
11
- } from "./index-b0kddvzw.js";
12
9
  import {
13
10
  writeFileAtomicSync2
14
11
  } from "./index-07dcf2yn.js";
12
+ import {
13
+ raceAbort
14
+ } from "./index-b0kddvzw.js";
15
15
  import {
16
16
  assertPositiveSafeInteger
17
17
  } from "./index-0s4xebbg.js";