stitchkit 0.80.0 → 0.81.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 (179) hide show
  1. package/dist/agent-runtime/provider-failure.d.ts.map +1 -1
  2. package/dist/agent-runtime-coding-tools.js +1 -1
  3. package/dist/agent-runtime-harness.js +7 -5
  4. package/dist/agent-runtime.js +15 -19
  5. package/dist/application/notification-outbox.d.ts +80 -0
  6. package/dist/application/notification-outbox.d.ts.map +1 -0
  7. package/dist/application/process-lifecycle.d.ts +166 -0
  8. package/dist/application/process-lifecycle.d.ts.map +1 -0
  9. package/dist/application/revision-signal.d.ts +86 -0
  10. package/dist/application/revision-signal.d.ts.map +1 -0
  11. package/dist/application/state-store.d.ts +18 -0
  12. package/dist/application/state-store.d.ts.map +1 -0
  13. package/dist/application.d.ts +4 -0
  14. package/dist/application.d.ts.map +1 -1
  15. package/dist/application.js +725 -1
  16. package/dist/browser/http.d.ts +14 -0
  17. package/dist/browser/http.d.ts.map +1 -1
  18. package/dist/browser/resumable.d.ts +6 -0
  19. package/dist/browser/resumable.d.ts.map +1 -1
  20. package/dist/cli.js +9 -7
  21. package/dist/contract/define.d.ts +27 -4
  22. package/dist/contract/define.d.ts.map +1 -1
  23. package/dist/contract/errors-factory.d.ts +22 -3
  24. package/dist/contract/errors-factory.d.ts.map +1 -1
  25. package/dist/contract/index.d.ts +2 -2
  26. package/dist/contract/index.d.ts.map +1 -1
  27. package/dist/contract/index.js +1 -1
  28. package/dist/geo/index.d.ts +4 -0
  29. package/dist/geo/index.d.ts.map +1 -0
  30. package/dist/geo/maxmind.d.ts +4 -0
  31. package/dist/geo/maxmind.d.ts.map +1 -0
  32. package/dist/geo/resolver.d.ts +9 -0
  33. package/dist/geo/resolver.d.ts.map +1 -0
  34. package/dist/geo/types.d.ts +59 -0
  35. package/dist/geo/types.d.ts.map +1 -0
  36. package/dist/geo.d.ts +3 -0
  37. package/dist/geo.d.ts.map +1 -0
  38. package/dist/geo.js +245 -0
  39. package/dist/{index-9s6z8vgf.js → index-1dd82z59.js} +1 -1
  40. package/dist/{index-vwp69871.js → index-27487ay5.js} +4 -4
  41. package/dist/{index-7ag81v2f.js → index-27gm3d6g.js} +10 -321
  42. package/dist/{index-y01f4223.js → index-2bxcmqkb.js} +127 -43
  43. package/dist/{index-dxesg10d.js → index-3ds42w1w.js} +3 -3
  44. package/dist/index-3xwxfj4z.js +334 -0
  45. package/dist/{index-egaabxkz.js → index-5z8tezpx.js} +2 -2
  46. package/dist/{index-fxz0v7vg.js → index-7evdsyez.js} +1 -83
  47. package/dist/{index-xcetq6j3.js → index-90d7h2cr.js} +32 -13
  48. package/dist/{index-t0z5p5w6.js → index-apn8repm.js} +1 -1
  49. package/dist/{index-758zx2ha.js → index-dggwnnjv.js} +2 -2
  50. package/dist/{index-dwf1f2ap.js → index-f9mb610r.js} +1 -62
  51. package/dist/{index-5mtc969c.js → index-fwbkp2jn.js} +1 -1
  52. package/dist/index-p13mwz16.js +16 -0
  53. package/dist/{index-m9kzax52.js → index-p18f59zy.js} +21 -5
  54. package/dist/{index-hb5pf3s4.js → index-qmgs7y68.js} +1 -1
  55. package/dist/{index-2rwwmr7v.js → index-s4ckmrac.js} +1 -1
  56. package/dist/{index-h4pj6fta.js → index-s8cnx02s.js} +8 -5
  57. package/dist/{index-k9ay6v6d.js → index-vchzar7e.js} +74 -23
  58. package/dist/index-vsbzgd7b.js +84 -0
  59. package/dist/{index-dxjjv399.js → index-xbppf54a.js} +95 -15
  60. package/dist/index-y91ry9h2.js +4 -0
  61. package/dist/index-zcgf3gqf.js +83 -0
  62. package/dist/index.js +17 -13
  63. package/dist/internal/error-message.d.ts +3 -0
  64. package/dist/internal/error-message.d.ts.map +1 -0
  65. package/dist/internal/media-type.d.ts +8 -0
  66. package/dist/internal/media-type.d.ts.map +1 -0
  67. package/dist/internal/route-pattern.d.ts +21 -0
  68. package/dist/internal/route-pattern.d.ts.map +1 -1
  69. package/dist/node.js +9 -6
  70. package/dist/observability/audit.d.ts +28 -1
  71. package/dist/observability/audit.d.ts.map +1 -1
  72. package/dist/observability/bounded-logger.d.ts +20 -0
  73. package/dist/observability/bounded-logger.d.ts.map +1 -0
  74. package/dist/observability/context.d.ts +12 -3
  75. package/dist/observability/context.d.ts.map +1 -1
  76. package/dist/observability/index.d.ts +3 -2
  77. package/dist/observability/index.d.ts.map +1 -1
  78. package/dist/observability/index.js +138 -8
  79. package/dist/observability/sanitize.d.ts +17 -0
  80. package/dist/observability/sanitize.d.ts.map +1 -1
  81. package/dist/primitives.js +1 -1
  82. package/dist/react/query-client.d.ts +33 -0
  83. package/dist/react/query-client.d.ts.map +1 -0
  84. package/dist/react.d.ts +1 -0
  85. package/dist/react.d.ts.map +1 -1
  86. package/dist/react.js +83 -1
  87. package/dist/realtime/registry.d.ts +93 -0
  88. package/dist/realtime/registry.d.ts.map +1 -0
  89. package/dist/release/header.d.ts +9 -0
  90. package/dist/release/header.d.ts.map +1 -0
  91. package/dist/release/marker.d.ts +39 -0
  92. package/dist/release/marker.d.ts.map +1 -0
  93. package/dist/release/socket.d.ts +44 -0
  94. package/dist/release/socket.d.ts.map +1 -0
  95. package/dist/release/watcher.d.ts +66 -0
  96. package/dist/release/watcher.d.ts.map +1 -0
  97. package/dist/release.d.ts +15 -0
  98. package/dist/release.d.ts.map +1 -0
  99. package/dist/release.js +196 -0
  100. package/dist/remote.js +12 -7
  101. package/dist/server/context.d.ts +2 -1
  102. package/dist/server/context.d.ts.map +1 -1
  103. package/dist/server/create.d.ts.map +1 -1
  104. package/dist/server/error-hook.d.ts +17 -16
  105. package/dist/server/error-hook.d.ts.map +1 -1
  106. package/dist/server/file-state-store.d.ts +23 -0
  107. package/dist/server/file-state-store.d.ts.map +1 -0
  108. package/dist/server/implement.d.ts.map +1 -1
  109. package/dist/server/index.d.ts +5 -2
  110. package/dist/server/index.d.ts.map +1 -1
  111. package/dist/server/index.js +469 -11
  112. package/dist/server/middleware/cookies.d.ts +33 -1
  113. package/dist/server/middleware/cookies.d.ts.map +1 -1
  114. package/dist/server/middleware/cors.d.ts +16 -1
  115. package/dist/server/middleware/cors.d.ts.map +1 -1
  116. package/dist/server/openapi.d.ts.map +1 -1
  117. package/dist/server/release-signal.d.ts +35 -0
  118. package/dist/server/release-signal.d.ts.map +1 -0
  119. package/dist/server/router.d.ts.map +1 -1
  120. package/dist/server/types.d.ts +26 -2
  121. package/dist/server/types.d.ts.map +1 -1
  122. package/dist/testing/surface-manifest.d.ts.map +1 -1
  123. package/dist/testing.js +7 -4
  124. package/dist/tool-invoker.js +8 -6
  125. package/dist/tools/download-core.d.ts.map +1 -1
  126. package/dist/tools/remote.d.ts.map +1 -1
  127. package/dist/tools/view-file.d.ts.map +1 -1
  128. package/dist/tools.js +20 -16
  129. package/dist/tracking/attribution.d.ts +51 -0
  130. package/dist/tracking/attribution.d.ts.map +1 -0
  131. package/dist/tracking/beacon.d.ts +14 -0
  132. package/dist/tracking/beacon.d.ts.map +1 -0
  133. package/dist/tracking/clicks.d.ts +46 -0
  134. package/dist/tracking/clicks.d.ts.map +1 -0
  135. package/dist/tracking/client.d.ts +121 -0
  136. package/dist/tracking/client.d.ts.map +1 -0
  137. package/dist/tracking/contract.d.ts +46 -0
  138. package/dist/tracking/contract.d.ts.map +1 -0
  139. package/dist/tracking/delivery.d.ts +24 -0
  140. package/dist/tracking/delivery.d.ts.map +1 -0
  141. package/dist/tracking/host.d.ts +43 -0
  142. package/dist/tracking/host.d.ts.map +1 -0
  143. package/dist/tracking/once-per-page.d.ts +17 -0
  144. package/dist/tracking/once-per-page.d.ts.map +1 -0
  145. package/dist/tracking/outbox-storage-indexeddb.d.ts +12 -0
  146. package/dist/tracking/outbox-storage-indexeddb.d.ts.map +1 -0
  147. package/dist/tracking/outbox-storage-memory.d.ts +12 -0
  148. package/dist/tracking/outbox-storage-memory.d.ts.map +1 -0
  149. package/dist/tracking/outbox.d.ts +98 -0
  150. package/dist/tracking/outbox.d.ts.map +1 -0
  151. package/dist/tracking/schemas.d.ts +183 -0
  152. package/dist/tracking/schemas.d.ts.map +1 -0
  153. package/dist/tracking/scroll.d.ts +22 -0
  154. package/dist/tracking/scroll.d.ts.map +1 -0
  155. package/dist/tracking/sequence-reserve.d.ts +34 -0
  156. package/dist/tracking/sequence-reserve.d.ts.map +1 -0
  157. package/dist/tracking/server/active-interval.d.ts +26 -0
  158. package/dist/tracking/server/active-interval.d.ts.map +1 -0
  159. package/dist/tracking/server/bot.d.ts +9 -0
  160. package/dist/tracking/server/bot.d.ts.map +1 -0
  161. package/dist/tracking/server/disposition.d.ts +55 -0
  162. package/dist/tracking/server/disposition.d.ts.map +1 -0
  163. package/dist/tracking/server/hash.d.ts +13 -0
  164. package/dist/tracking/server/hash.d.ts.map +1 -0
  165. package/dist/tracking/server/presence.d.ts +27 -0
  166. package/dist/tracking/server/presence.d.ts.map +1 -0
  167. package/dist/tracking/server/visit-lease.d.ts +92 -0
  168. package/dist/tracking/server/visit-lease.d.ts.map +1 -0
  169. package/dist/tracking/visible-time.d.ts +38 -0
  170. package/dist/tracking/visible-time.d.ts.map +1 -0
  171. package/dist/tracking-server.d.ts +14 -0
  172. package/dist/tracking-server.d.ts.map +1 -0
  173. package/dist/tracking-server.js +173 -0
  174. package/dist/tracking.d.ts +24 -0
  175. package/dist/tracking.d.ts.map +1 -0
  176. package/dist/tracking.js +1090 -0
  177. package/llms-full.txt +986 -30
  178. package/llms.txt +4 -0
  179. package/package.json +26 -5
package/llms.txt CHANGED
@@ -6,6 +6,8 @@ Build with stitchkit: define a contract once, then `implement` it and serve it (
6
6
 
7
7
  ## Guide
8
8
  - [Getting started](https://github.com/max-listov/stitchkit/blob/master/docs/guide/getting-started.md): install, entrypoints, and a first contract → server → client app
9
+ - [Release](https://github.com/max-listov/stitchkit/blob/master/docs/guide/release.md): stitchkit/release — the page reloads onto the release it was built for: build marker, X-Build-Id header, socket event, reload policy, the deploy signal
10
+ - [Visitor tracking](https://github.com/max-listov/stitchkit/blob/master/docs/guide/tracking.md): stitchkit/tracking — the browser client, outbox, page-leave beacon, attribution; stitchkit/tracking/server — dispositions and the visit lease over your store
9
11
  - [Contracts](https://github.com/max-listov/stitchkit/blob/master/docs/guide/contracts.md): every endpoint field — method, path, params/input/output, scope, expose, meta, multipart
10
12
  - [HTTP server](https://github.com/max-listov/stitchkit/blob/master/docs/guide/server.md): createServer/createHandler, implement, lifecycle hooks, raw routes + raw-response endpoints + helpers, scopePrefixes, serveFile, primitives
11
13
  - [Typed client](https://github.com/max-listov/stitchkit/blob/master/docs/guide/client.md): createClient/createHttpClient, the typed call surface, scoped clients, SSE
@@ -22,6 +24,8 @@ Build with stitchkit: define a contract once, then `implement` it and serve it (
22
24
  - [Testing & deployment](https://github.com/max-listov/stitchkit/blob/master/docs/guide/testing-and-deployment.md): in-process testing; deploying on Bun and on Node (serveNode)
23
25
  - [Multi-tenant](https://github.com/max-listov/stitchkit/blob/master/docs/guide/multi-tenant.md): a /tenants/:id/… scenario end-to-end — scopePrefixes, scoped client, extend
24
26
  - [Frontend integrations](https://github.com/max-listov/stitchkit/blob/master/docs/guide/frontend-integrations.md): React Router resource routes and a separate Vite development proxy
27
+ - [React Query policy](https://github.com/max-listov/stitchkit/blob/master/docs/guide/react.md): request-local SSR clients, a browser singleton and ApiError retry rules
28
+ - [GeoIP](https://github.com/max-listov/stitchkit/blob/master/docs/guide/geo.md): stitchkit/geo — a server-only managed reader, three observable states and last-known-good generation reloads
25
29
  - [Upgrading](https://github.com/max-listov/stitchkit/blob/master/docs/guide/upgrading.md): moving a project across stitchkit versions; how breaking changes are marked
26
30
  - [Project declaration](https://github.com/max-listov/stitchkit/blob/master/docs/guide/declaration.md): the optional machine-readable statement a repository makes about itself — identity, roles, build, requirements, release steps and the names of the values a deployment supplies
27
31
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "stitchkit",
3
- "version": "0.80.0",
3
+ "version": "0.81.0",
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",
@@ -153,6 +153,22 @@
153
153
  "types": "./dist/telegram.d.ts",
154
154
  "import": "./dist/telegram.js"
155
155
  },
156
+ "./tracking": {
157
+ "types": "./dist/tracking.d.ts",
158
+ "import": "./dist/tracking.js"
159
+ },
160
+ "./release": {
161
+ "types": "./dist/release.d.ts",
162
+ "import": "./dist/release.js"
163
+ },
164
+ "./tracking/server": {
165
+ "types": "./dist/tracking-server.d.ts",
166
+ "import": "./dist/tracking-server.js"
167
+ },
168
+ "./geo": {
169
+ "types": "./dist/geo.d.ts",
170
+ "import": "./dist/geo.js"
171
+ },
156
172
  "./declaration": {
157
173
  "types": "./dist/declaration.d.ts",
158
174
  "import": "./dist/declaration.js"
@@ -170,7 +186,7 @@
170
186
  "check": "bun x tsc --noEmit",
171
187
  "build:js": "bun run build:entrypoints && bun scripts/preserve-webpack-ignore.mjs",
172
188
  "build:types": "bun x tsc -p tsconfig.build.json --emitDeclarationOnly && bun scripts/rewrite-declaration-specifiers.mjs",
173
- "build": "rm -rf dist && bun run build:js && bun run build:types && bun scripts/check-browser-clean.mjs && bun scripts/check-browser-executes.mjs && bun scripts/check-env-live.mjs && bun scripts/check-public-types.mjs",
189
+ "build": "rm -rf dist && bun run build:js && bun run build:types && bun scripts/check-browser-clean.mjs && bun scripts/check-browser-executes.mjs && bun scripts/check-env-live.mjs && bun scripts/check-public-types.mjs && bun scripts/check-declarations-strict.mjs",
174
190
  "dev": "bun run build:entrypoints -- --watch",
175
191
  "prepack": "cp ../../README.md ./README.md && bun ../../scripts/gen-llms.ts && bun run build",
176
192
  "test": "bun test",
@@ -183,14 +199,15 @@
183
199
  "peerDependencies": {
184
200
  "@modelcontextprotocol/ext-apps": "^1.7.2",
185
201
  "@modelcontextprotocol/server": "^2.0.0",
186
- "@opentelemetry/api": "^1.9.0",
187
202
  "@openrouter/ai-sdk-provider": "^3.0.0",
188
- "@types/bun": "^1.3.14",
203
+ "@opentelemetry/api": "^1.9.0",
189
204
  "@socket.io/bun-engine": "^0.1.1",
190
205
  "@socket.io/component-emitter": "^3.1.2",
191
206
  "@tanstack/react-query": ">=5",
207
+ "@types/bun": "^1.3.14",
192
208
  "ai": "^7.0.0",
193
209
  "grammy": "^1.45.1",
210
+ "maxmind": "^5.0.7",
194
211
  "react": ">=18",
195
212
  "react-query-kit": "^3.3.3",
196
213
  "socket.io": "^4.8.3",
@@ -229,6 +246,9 @@
229
246
  "grammy": {
230
247
  "optional": true
231
248
  },
249
+ "maxmind": {
250
+ "optional": true
251
+ },
232
252
  "react": {
233
253
  "optional": true
234
254
  },
@@ -252,8 +272,8 @@
252
272
  "@modelcontextprotocol/client": "^2.0.0",
253
273
  "@modelcontextprotocol/ext-apps": "^1.7.5",
254
274
  "@modelcontextprotocol/server": "^2.0.0",
255
- "@opentelemetry/api": "^1.9.0",
256
275
  "@openrouter/ai-sdk-provider": "^3.0.0",
276
+ "@opentelemetry/api": "^1.9.0",
257
277
  "@socket.io/bun-engine": "^0.1.1",
258
278
  "@socket.io/component-emitter": "^3.1.2",
259
279
  "@tanstack/react-query": "5.102.3",
@@ -262,6 +282,7 @@
262
282
  "@types/react": "^19.2.18",
263
283
  "@typescript/typescript6": "^6.0.2",
264
284
  "ai": "^7.0.79",
285
+ "fake-indexeddb": "^6.2.5",
265
286
  "grammy": "^1.45.1",
266
287
  "react": "^19.2.8",
267
288
  "react-query-kit": "^3.3.4",