@laserdata/laser-sdk 0.5.3 → 0.6.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 (356) hide show
  1. package/README.md +105 -79
  2. package/dist/agent/agdx.d.ts +8 -3
  3. package/dist/agent/agdx.d.ts.map +1 -1
  4. package/dist/agent/agdx.js +39 -22
  5. package/dist/agent/agdx.js.map +1 -1
  6. package/dist/agent/builder.d.ts +25 -15
  7. package/dist/agent/builder.d.ts.map +1 -1
  8. package/dist/agent/builder.js +103 -59
  9. package/dist/agent/builder.js.map +1 -1
  10. package/dist/agent/context.d.ts +3 -6
  11. package/dist/agent/context.d.ts.map +1 -1
  12. package/dist/agent/context.js +17 -9
  13. package/dist/agent/context.js.map +1 -1
  14. package/dist/agent/contract.d.ts +2 -2
  15. package/dist/agent/contract.d.ts.map +1 -1
  16. package/dist/agent/contract.js +10 -6
  17. package/dist/agent/contract.js.map +1 -1
  18. package/dist/agent/memory-handler.d.ts +25 -0
  19. package/dist/agent/memory-handler.d.ts.map +1 -0
  20. package/dist/agent/memory-handler.js +43 -0
  21. package/dist/agent/memory-handler.js.map +1 -0
  22. package/dist/agent/registry.d.ts +3 -10
  23. package/dist/agent/registry.d.ts.map +1 -1
  24. package/dist/agent/registry.js +22 -19
  25. package/dist/agent/registry.js.map +1 -1
  26. package/dist/agent/reliable-consumer.d.ts +19 -9
  27. package/dist/agent/reliable-consumer.d.ts.map +1 -1
  28. package/dist/agent/reliable-consumer.js +193 -54
  29. package/dist/agent/reliable-consumer.js.map +1 -1
  30. package/dist/agent/replies.d.ts +6 -0
  31. package/dist/agent/replies.d.ts.map +1 -1
  32. package/dist/agent/replies.js +55 -4
  33. package/dist/agent/replies.js.map +1 -1
  34. package/dist/agent/router.d.ts +1 -1
  35. package/dist/agent/router.d.ts.map +1 -1
  36. package/dist/agent/router.js +5 -19
  37. package/dist/agent/router.js.map +1 -1
  38. package/dist/agent/scope.d.ts +7 -3
  39. package/dist/agent/scope.d.ts.map +1 -1
  40. package/dist/agent/scope.js +11 -1
  41. package/dist/agent/scope.js.map +1 -1
  42. package/dist/agent/timer.d.ts +6 -0
  43. package/dist/agent/timer.d.ts.map +1 -0
  44. package/dist/agent/timer.js +21 -0
  45. package/dist/agent/timer.js.map +1 -0
  46. package/dist/agent/workflow.d.ts +16 -19
  47. package/dist/agent/workflow.d.ts.map +1 -1
  48. package/dist/agent/workflow.js +17 -6
  49. package/dist/agent/workflow.js.map +1 -1
  50. package/dist/blob.d.ts +2 -3
  51. package/dist/blob.d.ts.map +1 -1
  52. package/dist/blob.js.map +1 -1
  53. package/dist/bridges/a2a.d.ts +34 -23
  54. package/dist/bridges/a2a.d.ts.map +1 -1
  55. package/dist/bridges/a2a.js +29 -19
  56. package/dist/bridges/a2a.js.map +1 -1
  57. package/dist/bridges/hops.d.ts +1 -1
  58. package/dist/bridges/hops.d.ts.map +1 -1
  59. package/dist/bridges/hops.js +1 -1
  60. package/dist/bridges/hops.js.map +1 -1
  61. package/dist/bridges/mcp.d.ts +27 -7
  62. package/dist/bridges/mcp.d.ts.map +1 -1
  63. package/dist/bridges/mcp.js +24 -9
  64. package/dist/bridges/mcp.js.map +1 -1
  65. package/dist/client/bytes.d.ts +5 -0
  66. package/dist/client/bytes.d.ts.map +1 -1
  67. package/dist/client/bytes.js +15 -0
  68. package/dist/client/bytes.js.map +1 -1
  69. package/dist/client/capabilities.d.ts +25 -13
  70. package/dist/client/capabilities.d.ts.map +1 -1
  71. package/dist/client/capabilities.js +145 -123
  72. package/dist/client/capabilities.js.map +1 -1
  73. package/dist/client/error-classify.d.ts +57 -0
  74. package/dist/client/error-classify.d.ts.map +1 -0
  75. package/dist/client/error-classify.js +347 -0
  76. package/dist/client/error-classify.js.map +1 -0
  77. package/dist/client/errors.d.ts +113 -40
  78. package/dist/client/errors.d.ts.map +1 -1
  79. package/dist/client/errors.js +191 -53
  80. package/dist/client/errors.js.map +1 -1
  81. package/dist/client/internals.d.ts +1 -0
  82. package/dist/client/internals.d.ts.map +1 -1
  83. package/dist/client/internals.js +1 -0
  84. package/dist/client/internals.js.map +1 -1
  85. package/dist/client/laser.d.ts +62 -46
  86. package/dist/client/laser.d.ts.map +1 -1
  87. package/dist/client/laser.js +206 -120
  88. package/dist/client/laser.js.map +1 -1
  89. package/dist/client/managed.d.ts +3 -0
  90. package/dist/client/managed.d.ts.map +1 -1
  91. package/dist/client/managed.js +70 -3
  92. package/dist/client/managed.js.map +1 -1
  93. package/dist/context-scope.d.ts +25 -9
  94. package/dist/context-scope.d.ts.map +1 -1
  95. package/dist/context-scope.js +36 -9
  96. package/dist/context-scope.js.map +1 -1
  97. package/dist/context.d.ts +33 -16
  98. package/dist/context.d.ts.map +1 -1
  99. package/dist/context.js +174 -95
  100. package/dist/context.js.map +1 -1
  101. package/dist/conversation-state.d.ts +1 -1
  102. package/dist/conversation-state.d.ts.map +1 -1
  103. package/dist/conversation-state.js +35 -16
  104. package/dist/conversation-state.js.map +1 -1
  105. package/dist/govern.d.ts +24 -5
  106. package/dist/govern.d.ts.map +1 -1
  107. package/dist/govern.js +116 -28
  108. package/dist/govern.js.map +1 -1
  109. package/dist/iggy/apache-iggy.d.ts +59 -56
  110. package/dist/iggy/apache-iggy.d.ts.map +1 -1
  111. package/dist/iggy/apache-iggy.js +300 -137
  112. package/dist/iggy/apache-iggy.js.map +1 -1
  113. package/dist/index.d.ts +97 -65
  114. package/dist/index.d.ts.map +1 -1
  115. package/dist/index.js +49 -30
  116. package/dist/index.js.map +1 -1
  117. package/dist/intent.d.ts +16 -2
  118. package/dist/intent.d.ts.map +1 -1
  119. package/dist/intent.js +50 -18
  120. package/dist/intent.js.map +1 -1
  121. package/dist/managed/coordination.d.ts +82 -0
  122. package/dist/managed/coordination.d.ts.map +1 -0
  123. package/dist/managed/coordination.js +367 -0
  124. package/dist/managed/coordination.js.map +1 -0
  125. package/dist/managed/destinations.d.ts +4 -3
  126. package/dist/managed/destinations.d.ts.map +1 -1
  127. package/dist/managed/destinations.js +29 -13
  128. package/dist/managed/destinations.js.map +1 -1
  129. package/dist/managed/filters.d.ts +5 -5
  130. package/dist/managed/filters.d.ts.map +1 -1
  131. package/dist/managed/filters.js +39 -22
  132. package/dist/managed/filters.js.map +1 -1
  133. package/dist/managed/forks.d.ts +8 -11
  134. package/dist/managed/forks.d.ts.map +1 -1
  135. package/dist/managed/forks.js +33 -13
  136. package/dist/managed/forks.js.map +1 -1
  137. package/dist/managed/graph.d.ts +1 -4
  138. package/dist/managed/graph.d.ts.map +1 -1
  139. package/dist/managed/graph.js +5 -3
  140. package/dist/managed/graph.js.map +1 -1
  141. package/dist/managed/kv.d.ts +26 -14
  142. package/dist/managed/kv.d.ts.map +1 -1
  143. package/dist/managed/kv.js +88 -61
  144. package/dist/managed/kv.js.map +1 -1
  145. package/dist/managed/projections.d.ts +5 -8
  146. package/dist/managed/projections.d.ts.map +1 -1
  147. package/dist/managed/projections.js +22 -2
  148. package/dist/managed/projections.js.map +1 -1
  149. package/dist/managed/query.d.ts +20 -6
  150. package/dist/managed/query.d.ts.map +1 -1
  151. package/dist/managed/query.js +97 -24
  152. package/dist/managed/query.js.map +1 -1
  153. package/dist/managed/runs.d.ts +2 -4
  154. package/dist/managed/runs.d.ts.map +1 -1
  155. package/dist/managed/runs.js +9 -1
  156. package/dist/managed/runs.js.map +1 -1
  157. package/dist/managed/watch.d.ts +2 -4
  158. package/dist/managed/watch.d.ts.map +1 -1
  159. package/dist/managed/watch.js +9 -1
  160. package/dist/managed/watch.js.map +1 -1
  161. package/dist/memory/handle.d.ts +75 -22
  162. package/dist/memory/handle.d.ts.map +1 -1
  163. package/dist/memory/handle.js +232 -58
  164. package/dist/memory/handle.js.map +1 -1
  165. package/dist/memory/log-memory.d.ts +24 -12
  166. package/dist/memory/log-memory.d.ts.map +1 -1
  167. package/dist/memory/log-memory.js +214 -100
  168. package/dist/memory/log-memory.js.map +1 -1
  169. package/dist/memory/topic.d.ts +2 -2
  170. package/dist/memory/topic.d.ts.map +1 -1
  171. package/dist/memory/topic.js +7 -5
  172. package/dist/memory/topic.js.map +1 -1
  173. package/dist/memory/types.d.ts +41 -5
  174. package/dist/memory/types.d.ts.map +1 -1
  175. package/dist/memory/types.js +44 -18
  176. package/dist/memory/types.js.map +1 -1
  177. package/dist/memory/vector-memory.d.ts +8 -6
  178. package/dist/memory/vector-memory.d.ts.map +1 -1
  179. package/dist/memory/vector-memory.js +65 -34
  180. package/dist/memory/vector-memory.js.map +1 -1
  181. package/dist/memory.d.ts +6 -5
  182. package/dist/memory.d.ts.map +1 -1
  183. package/dist/memory.js +4 -4
  184. package/dist/memory.js.map +1 -1
  185. package/dist/provenance/agent-topic.d.ts +3 -1
  186. package/dist/provenance/agent-topic.d.ts.map +1 -1
  187. package/dist/provenance/agent-topic.js +3 -1
  188. package/dist/provenance/agent-topic.js.map +1 -1
  189. package/dist/provenance/provenance.d.ts +3 -3
  190. package/dist/provenance/provenance.d.ts.map +1 -1
  191. package/dist/provenance/provenance.js +30 -18
  192. package/dist/provenance/provenance.js.map +1 -1
  193. package/dist/runtime/clock.d.ts +3 -0
  194. package/dist/runtime/clock.d.ts.map +1 -1
  195. package/dist/runtime/clock.js +16 -3
  196. package/dist/runtime/clock.js.map +1 -1
  197. package/dist/schema-codecs.d.ts +7 -3
  198. package/dist/schema-codecs.d.ts.map +1 -1
  199. package/dist/schema-codecs.js +80 -12
  200. package/dist/schema-codecs.js.map +1 -1
  201. package/dist/session.d.ts +27 -18
  202. package/dist/session.d.ts.map +1 -1
  203. package/dist/session.js +95 -37
  204. package/dist/session.js.map +1 -1
  205. package/dist/signing.d.ts +11 -5
  206. package/dist/signing.d.ts.map +1 -1
  207. package/dist/signing.js +64 -21
  208. package/dist/signing.js.map +1 -1
  209. package/dist/snapshot.d.ts +10 -2
  210. package/dist/snapshot.d.ts.map +1 -1
  211. package/dist/snapshot.js +62 -28
  212. package/dist/snapshot.js.map +1 -1
  213. package/dist/state-store.d.ts +1 -1
  214. package/dist/state-store.d.ts.map +1 -1
  215. package/dist/state-store.js.map +1 -1
  216. package/dist/stream/batching.d.ts +81 -0
  217. package/dist/stream/batching.d.ts.map +1 -0
  218. package/dist/stream/batching.js +210 -0
  219. package/dist/stream/batching.js.map +1 -0
  220. package/dist/stream/bson.d.ts +3 -0
  221. package/dist/stream/bson.d.ts.map +1 -0
  222. package/dist/stream/bson.js +245 -0
  223. package/dist/stream/bson.js.map +1 -0
  224. package/dist/stream/codecs.d.ts +58 -6
  225. package/dist/stream/codecs.d.ts.map +1 -1
  226. package/dist/stream/codecs.js +143 -59
  227. package/dist/stream/codecs.js.map +1 -1
  228. package/dist/stream/consumer-group.d.ts +13 -10
  229. package/dist/stream/consumer-group.d.ts.map +1 -1
  230. package/dist/stream/consumer-group.js +91 -31
  231. package/dist/stream/consumer-group.js.map +1 -1
  232. package/dist/stream/consumer-start.d.ts +17 -0
  233. package/dist/stream/consumer-start.d.ts.map +1 -0
  234. package/dist/stream/consumer-start.js +2 -0
  235. package/dist/stream/consumer-start.js.map +1 -0
  236. package/dist/stream/consumer.d.ts +166 -24
  237. package/dist/stream/consumer.d.ts.map +1 -1
  238. package/dist/stream/consumer.js +451 -68
  239. package/dist/stream/consumer.js.map +1 -1
  240. package/dist/stream/cursor.d.ts +5 -12
  241. package/dist/stream/cursor.d.ts.map +1 -1
  242. package/dist/stream/cursor.js +34 -8
  243. package/dist/stream/cursor.js.map +1 -1
  244. package/dist/stream/header-value.d.ts +61 -15
  245. package/dist/stream/header-value.d.ts.map +1 -1
  246. package/dist/stream/header-value.js.map +1 -1
  247. package/dist/stream/message.d.ts +17 -0
  248. package/dist/stream/message.d.ts.map +1 -0
  249. package/dist/stream/message.js +9 -0
  250. package/dist/stream/message.js.map +1 -0
  251. package/dist/stream/producer.d.ts +127 -11
  252. package/dist/stream/producer.d.ts.map +1 -1
  253. package/dist/stream/producer.js +401 -36
  254. package/dist/stream/producer.js.map +1 -1
  255. package/dist/stream/publish.d.ts +6 -15
  256. package/dist/stream/publish.d.ts.map +1 -1
  257. package/dist/stream/publish.js +18 -28
  258. package/dist/stream/publish.js.map +1 -1
  259. package/dist/stream/record.d.ts +4 -6
  260. package/dist/stream/record.d.ts.map +1 -1
  261. package/dist/stream/record.js +4 -3
  262. package/dist/stream/record.js.map +1 -1
  263. package/dist/stream/routing.d.ts +12 -0
  264. package/dist/stream/routing.d.ts.map +1 -1
  265. package/dist/stream/routing.js +6 -1
  266. package/dist/stream/routing.js.map +1 -1
  267. package/dist/stream/stream.d.ts +1 -4
  268. package/dist/stream/stream.d.ts.map +1 -1
  269. package/dist/stream/stream.js +5 -1
  270. package/dist/stream/stream.js.map +1 -1
  271. package/dist/stream/topic.d.ts +22 -23
  272. package/dist/stream/topic.d.ts.map +1 -1
  273. package/dist/stream/topic.js +90 -30
  274. package/dist/stream/topic.js.map +1 -1
  275. package/dist/stream/typed-topic.d.ts +9 -13
  276. package/dist/stream/typed-topic.d.ts.map +1 -1
  277. package/dist/stream/typed-topic.js +25 -10
  278. package/dist/stream/typed-topic.js.map +1 -1
  279. package/dist/swarm.d.ts +0 -1
  280. package/dist/swarm.d.ts.map +1 -1
  281. package/dist/swarm.js +1 -0
  282. package/dist/swarm.js.map +1 -1
  283. package/dist/testing.d.ts +3 -3
  284. package/dist/testing.d.ts.map +1 -1
  285. package/dist/testing.js +3 -3
  286. package/dist/testing.js.map +1 -1
  287. package/dist/types/ids.d.ts +17 -2
  288. package/dist/types/ids.d.ts.map +1 -1
  289. package/dist/types/ids.js +34 -14
  290. package/dist/types/ids.js.map +1 -1
  291. package/dist/wire/agent.d.ts +22 -0
  292. package/dist/wire/agent.d.ts.map +1 -1
  293. package/dist/wire/agent.js +80 -25
  294. package/dist/wire/agent.js.map +1 -1
  295. package/dist/wire/authz.d.ts +35 -1
  296. package/dist/wire/authz.d.ts.map +1 -1
  297. package/dist/wire/authz.js +45 -15
  298. package/dist/wire/authz.js.map +1 -1
  299. package/dist/wire/cbor.d.ts.map +1 -1
  300. package/dist/wire/cbor.js +13 -2
  301. package/dist/wire/cbor.js.map +1 -1
  302. package/dist/wire/checkpoint.d.ts +17 -12
  303. package/dist/wire/checkpoint.d.ts.map +1 -1
  304. package/dist/wire/checkpoint.js +28 -3
  305. package/dist/wire/checkpoint.js.map +1 -1
  306. package/dist/wire/control.d.ts +82 -0
  307. package/dist/wire/control.d.ts.map +1 -1
  308. package/dist/wire/control.js +219 -0
  309. package/dist/wire/control.js.map +1 -1
  310. package/dist/wire/filter-eval.d.ts +41 -7
  311. package/dist/wire/filter-eval.d.ts.map +1 -1
  312. package/dist/wire/filter-eval.js +26 -28
  313. package/dist/wire/filter-eval.js.map +1 -1
  314. package/dist/wire/filter.d.ts +51 -17
  315. package/dist/wire/filter.d.ts.map +1 -1
  316. package/dist/wire/filter.js +99 -10
  317. package/dist/wire/filter.js.map +1 -1
  318. package/dist/wire/fork.d.ts +14 -1
  319. package/dist/wire/fork.d.ts.map +1 -1
  320. package/dist/wire/fork.js +19 -8
  321. package/dist/wire/fork.js.map +1 -1
  322. package/dist/wire/graph.d.ts +3 -0
  323. package/dist/wire/graph.d.ts.map +1 -1
  324. package/dist/wire/graph.js +18 -4
  325. package/dist/wire/graph.js.map +1 -1
  326. package/dist/wire/hello.d.ts +4 -1
  327. package/dist/wire/hello.d.ts.map +1 -1
  328. package/dist/wire/hello.js +13 -3
  329. package/dist/wire/hello.js.map +1 -1
  330. package/dist/wire/index.d.ts +4 -1
  331. package/dist/wire/index.d.ts.map +1 -1
  332. package/dist/wire/index.js +4 -1
  333. package/dist/wire/index.js.map +1 -1
  334. package/dist/wire/kv.d.ts +37 -2
  335. package/dist/wire/kv.d.ts.map +1 -1
  336. package/dist/wire/kv.js +36 -18
  337. package/dist/wire/kv.js.map +1 -1
  338. package/dist/wire/query.d.ts +6 -0
  339. package/dist/wire/query.d.ts.map +1 -1
  340. package/dist/wire/query.js +38 -12
  341. package/dist/wire/query.js.map +1 -1
  342. package/dist/wire/schema.d.ts +29 -6
  343. package/dist/wire/schema.d.ts.map +1 -1
  344. package/dist/wire/schema.js +61 -26
  345. package/dist/wire/schema.js.map +1 -1
  346. package/dist/wire/snapshot.js +1 -1
  347. package/dist/wire/snapshot.js.map +1 -1
  348. package/dist/wire/value.d.ts +10 -2
  349. package/dist/wire/value.d.ts.map +1 -1
  350. package/dist/wire/value.js +29 -3
  351. package/dist/wire/value.js.map +1 -1
  352. package/package.json +2 -3
  353. package/dist/stream/polling-strategy.d.ts +0 -14
  354. package/dist/stream/polling-strategy.d.ts.map +0 -1
  355. package/dist/stream/polling-strategy.js +0 -2
  356. package/dist/stream/polling-strategy.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import { UnsupportedError } from "./errors.js";
2
- import { Feature, opVersionsHasFeature } from "../wire/hello.js";
2
+ import { feature, filterAnnounceEvaluates, opVersionsHasFeature } from "../wire/hello.js";
3
3
  export const OPEN_CAPABILITIES = Object.freeze({
4
4
  managed: false,
5
5
  query: Object.freeze({
@@ -10,7 +10,7 @@ export const OPEN_CAPABILITIES = Object.freeze({
10
10
  cancellation: false,
11
11
  executionStatus: false
12
12
  }),
13
- destinations: Object.freeze({ available: false, checkpointVersion: 0 }),
13
+ destinations: Object.freeze({ available: false, consistency: "potentially_stale" }),
14
14
  kv: Object.freeze({ available: false, cas: false, casFenced: false, fencedLeases: false }),
15
15
  graph: false,
16
16
  forks: false,
@@ -19,140 +19,77 @@ export const OPEN_CAPABILITIES = Object.freeze({
19
19
  watch: false,
20
20
  authz: false,
21
21
  filters: Object.freeze({ native: false, catalog: false, groupPolicyReads: false }),
22
- sessions: false,
23
- durableDedup: false,
24
22
  backends: Object.freeze([]),
25
23
  hello: "unknown"
26
24
  });
27
- function managedBase() {
28
- return {
29
- ...OPEN_CAPABILITIES,
30
- managed: true,
31
- query: { ...OPEN_CAPABILITIES.query, available: true },
32
- kv: { ...OPEN_CAPABILITIES.kv, available: true },
33
- forks: true
34
- };
35
- }
36
- export function managedCapabilitiesWithUnknownVersions() {
37
- return managedBase();
38
- }
39
- export function managedCapabilitiesFrom(announce) {
40
- const versions = announce.versions;
41
- const ready = announce.ready !== false;
42
- const consistency = opVersionsHasFeature(versions, Feature.STRONG_CONSISTENCY)
43
- ? "strong"
44
- : opVersionsHasFeature(versions, Feature.READ_YOUR_WRITES)
45
- ? "read_your_writes"
46
- : "eventual";
47
- const readyBackends = ready ? announce.backends.filter((backend) => backend.readiness.ready) : [];
48
- const queryCapabilities = readyBackends.flatMap((backend) => backend.query ?? []);
49
- return {
50
- ...(ready ? managedBase() : OPEN_CAPABILITIES),
51
- query: {
52
- available: ready && versions.query > 0,
53
- consistency: ready ? consistency : "eventual",
54
- keyword: ready && opVersionsHasFeature(versions, Feature.KEYWORD_SEARCH),
55
- cursorPaging: queryCapabilities.some((query) => query.paging.includes("cursor")),
56
- cancellation: queryCapabilities.some((query) => query.cancellation),
57
- executionStatus: queryCapabilities.some((query) => query.executionStatus)
58
- },
59
- destinations: {
60
- available: ready &&
61
- (versions.checkpoint ?? 0) > 0 &&
62
- opVersionsHasFeature(versions, Feature.DESTINATIONS),
63
- checkpointVersion: versions.checkpoint ?? 0
64
- },
65
- kv: {
66
- available: ready && versions.kv > 0,
67
- cas: ready && opVersionsHasFeature(versions, Feature.KV_CAS),
68
- casFenced: ready &&
69
- (opVersionsHasFeature(versions, Feature.KV_CAS_FENCED) ||
70
- opVersionsHasFeature(versions, Feature.KV_FENCED_LEASES)),
71
- fencedLeases: ready && opVersionsHasFeature(versions, Feature.KV_FENCED_LEASES)
72
- },
73
- graph: ready && versions.graph > 0,
74
- forks: ready && versions.fork > 0,
75
- agentWorkflow: ready && opVersionsHasFeature(versions, Feature.AGENT_WORKFLOW),
76
- watch: ready && opVersionsHasFeature(versions, Feature.WATCH),
77
- authz: opVersionsHasFeature(versions, Feature.AUTHZ),
78
- filters: {
79
- native: opVersionsHasFeature(versions, Feature.CONSUMER_FILTERS),
80
- catalog: ready &&
81
- (opVersionsHasFeature(versions, Feature.CONSUMER_FILTERS) ||
82
- opVersionsHasFeature(versions, Feature.GROUP_POLICY_READS)) &&
83
- (versions.filter ?? 0) > 0,
84
- // Served by the streaming server itself, like the native reads: a server
85
- // without a managed plane resolves every group as unbound.
86
- groupPolicyReads: opVersionsHasFeature(versions, Feature.GROUP_POLICY_READS),
87
- ...(opVersionsHasFeature(versions, Feature.CONSUMER_FILTERS) && announce.filters !== undefined
88
- ? { evaluation: announce.filters }
89
- : {})
90
- },
91
- versions,
92
- backends: announce.backends,
93
- ...(announce.topology !== undefined ? { topology: announce.topology } : {}),
94
- hello: "answered"
95
- };
96
- }
97
25
  const CONSISTENCY_RANK = {
98
26
  eventual: 0,
99
27
  read_your_writes: 1,
100
28
  strong: 2
101
29
  };
30
+ // The announcement each answered set came from, so a merge onto the builder's
31
+ // seed folds the announcement itself like Rust `merge_announcement`, and the
32
+ // client reads the announced topology without it being a capability.
33
+ const ANNOUNCEMENTS = new WeakMap();
34
+ export function managedCapabilitiesFrom(announce) {
35
+ return mergeAnnouncement(OPEN_CAPABILITIES, announce);
36
+ }
37
+ /** The stream and topic names the deployment announced with `capabilities`,
38
+ * if it announced any. */
39
+ export function advertisedTopology(capabilities) {
40
+ return ANNOUNCEMENTS.get(capabilities)?.topology;
41
+ }
42
+ /** Merges a probe result onto the builder's capability seed. The seed is the
43
+ * starting point, never a ceiling: an answered probe adds what the deployment
44
+ * serves, and a rejected or failed one only records its outcome. */
102
45
  export function mergeCapabilities(configured, announced) {
103
- const consistency = CONSISTENCY_RANK[announced.query.consistency] > CONSISTENCY_RANK[configured.query.consistency]
104
- ? announced.query.consistency
105
- : configured.query.consistency;
46
+ const announce = ANNOUNCEMENTS.get(announced);
47
+ if (announce !== undefined)
48
+ return mergeAnnouncement(configured, announce);
106
49
  return {
107
- managed: configured.managed || announced.managed,
108
- query: {
109
- available: configured.query.available || announced.query.available,
110
- consistency,
111
- keyword: configured.query.keyword || announced.query.keyword,
112
- cursorPaging: configured.query.cursorPaging || announced.query.cursorPaging,
113
- cancellation: configured.query.cancellation || announced.query.cancellation,
114
- executionStatus: configured.query.executionStatus || announced.query.executionStatus
115
- },
116
- destinations: {
117
- available: configured.destinations.available || announced.destinations.available,
118
- checkpointVersion: Math.max(configured.destinations.checkpointVersion, announced.destinations.checkpointVersion)
119
- },
120
- kv: {
121
- available: configured.kv.available || announced.kv.available,
122
- cas: configured.kv.cas || announced.kv.cas,
123
- casFenced: configured.kv.casFenced || announced.kv.casFenced,
124
- fencedLeases: configured.kv.fencedLeases || announced.kv.fencedLeases
125
- },
126
- graph: configured.graph || announced.graph,
127
- forks: configured.forks || announced.forks,
128
- a2aGateway: configured.a2aGateway || announced.a2aGateway,
129
- agentWorkflow: configured.agentWorkflow || announced.agentWorkflow,
130
- watch: configured.watch || announced.watch,
131
- authz: configured.authz || announced.authz,
132
- filters: {
133
- native: configured.filters.native || announced.filters.native,
134
- catalog: configured.filters.catalog || announced.filters.catalog,
135
- groupPolicyReads: configured.filters.groupPolicyReads || announced.filters.groupPolicyReads,
136
- ...((announced.filters.evaluation ?? configured.filters.evaluation) !== undefined
137
- ? { evaluation: announced.filters.evaluation ?? configured.filters.evaluation }
138
- : {})
139
- },
140
- sessions: configured.sessions || announced.sessions,
141
- durableDedup: configured.durableDedup || announced.durableDedup,
142
- ...(announced.versions !== undefined
143
- ? { versions: announced.versions }
144
- : configured.versions !== undefined
145
- ? { versions: configured.versions }
146
- : {}),
147
- backends: announced.backends.length > 0 ? announced.backends : configured.backends,
148
- ...(announced.topology !== undefined
149
- ? { topology: announced.topology }
150
- : configured.topology !== undefined
151
- ? { topology: configured.topology }
152
- : {}),
50
+ ...configured,
153
51
  hello: announced.hello === "unknown" ? configured.hello : announced.hello
154
52
  };
155
53
  }
54
+ /** True when the connected infrastructure advertised nothing beyond the open
55
+ * SDK, field for field equal to `OPEN_CAPABILITIES`, like Rust
56
+ * `Capabilities::is_open_only`. */
57
+ export function isOpenOnly(capabilities) {
58
+ const open = OPEN_CAPABILITIES;
59
+ const { query, destinations, kv, filters } = capabilities;
60
+ return (capabilities.managed === open.managed &&
61
+ query.available === open.query.available &&
62
+ query.consistency === open.query.consistency &&
63
+ query.keyword === open.query.keyword &&
64
+ query.cursorPaging === open.query.cursorPaging &&
65
+ query.cancellation === open.query.cancellation &&
66
+ query.executionStatus === open.query.executionStatus &&
67
+ destinations.available === open.destinations.available &&
68
+ destinations.consistency === open.destinations.consistency &&
69
+ kv.available === open.kv.available &&
70
+ kv.cas === open.kv.cas &&
71
+ kv.casFenced === open.kv.casFenced &&
72
+ kv.fencedLeases === open.kv.fencedLeases &&
73
+ capabilities.graph === open.graph &&
74
+ capabilities.forks === open.forks &&
75
+ capabilities.a2aGateway === open.a2aGateway &&
76
+ capabilities.agentWorkflow === open.agentWorkflow &&
77
+ capabilities.watch === open.watch &&
78
+ capabilities.authz === open.authz &&
79
+ filters.native === open.filters.native &&
80
+ filters.catalog === open.filters.catalog &&
81
+ filters.groupPolicyReads === open.filters.groupPolicyReads &&
82
+ filters.evaluation === undefined &&
83
+ capabilities.versions === undefined &&
84
+ capabilities.backends.length === 0);
85
+ }
86
+ /** Whether the server evaluates a filter built for `evaluatorVersion` with
87
+ * `codec` exactly as this build does, like Rust `FilterCaps::evaluates`. A
88
+ * server that announced no evaluation contract accepts every filter. */
89
+ export function filterCapsEvaluates(filters, evaluatorVersion, codec) {
90
+ return (filters.evaluation === undefined ||
91
+ filterAnnounceEvaluates(filters.evaluation, evaluatorVersion, codec));
92
+ }
156
93
  export function servesConsistency(capabilities, level) {
157
94
  return CONSISTENCY_RANK[level] <= CONSISTENCY_RANK[capabilities.query.consistency];
158
95
  }
@@ -208,4 +145,89 @@ export function requireCapability(capabilities, surface) {
208
145
  });
209
146
  }
210
147
  }
148
+ function strongerConsistency(left, right) {
149
+ return CONSISTENCY_RANK[right] > CONSISTENCY_RANK[left] ? right : left;
150
+ }
151
+ // Folds one hello announcement into `capabilities`, step for step like Rust
152
+ // `merge_announcement` and `merge_features`. Only a ready announcement lights
153
+ // up plane-served surfaces, and the query surface needs a ready backend that
154
+ // announces query capabilities. Additive, so a surface the seed set survives.
155
+ function mergeAnnouncement(capabilities, announce) {
156
+ const merged = foldAnnouncement(capabilities, announce);
157
+ ANNOUNCEMENTS.set(merged, announce);
158
+ return merged;
159
+ }
160
+ function foldAnnouncement(capabilities, announce) {
161
+ const versions = announce.versions;
162
+ const has = (bit) => opVersionsHasFeature(versions, bit);
163
+ const native = capabilities.filters.native || has(feature.CONSUMER_FILTERS);
164
+ const groupPolicyReads = capabilities.filters.groupPolicyReads || has(feature.GROUP_POLICY_READS);
165
+ const evaluation = native ? announce.filters : capabilities.filters.evaluation;
166
+ const answered = {
167
+ ...capabilities,
168
+ versions,
169
+ backends: announce.backends,
170
+ authz: capabilities.authz || has(feature.AUTHZ),
171
+ filters: {
172
+ native,
173
+ catalog: capabilities.filters.catalog,
174
+ groupPolicyReads,
175
+ ...(evaluation !== undefined ? { evaluation } : {})
176
+ },
177
+ hello: "answered"
178
+ };
179
+ if (announce.ready === false)
180
+ return answered;
181
+ const destinations = capabilities.destinations.available ||
182
+ ((versions.checkpoint ?? 0) > 0 && has(feature.DESTINATIONS));
183
+ let consistency = capabilities.query.consistency;
184
+ if (has(feature.STRONG_CONSISTENCY))
185
+ consistency = "strong";
186
+ else if (has(feature.READ_YOUR_WRITES))
187
+ consistency = strongerConsistency(consistency, "read_your_writes");
188
+ let query = {
189
+ ...capabilities.query,
190
+ keyword: capabilities.query.keyword || has(feature.KEYWORD_SEARCH)
191
+ };
192
+ for (const backend of announce.backends) {
193
+ const served = backend.readiness.ready ? backend.query : undefined;
194
+ if (served === undefined)
195
+ continue;
196
+ query = {
197
+ ...query,
198
+ available: query.available || versions.query > 0,
199
+ cursorPaging: query.cursorPaging || served.paging.includes("cursor"),
200
+ cancellation: query.cancellation || served.cancellation,
201
+ executionStatus: query.executionStatus || served.executionStatus
202
+ };
203
+ if (served.consistency.includes("strong"))
204
+ consistency = "strong";
205
+ else if (served.consistency.includes("read_your_writes"))
206
+ consistency = strongerConsistency(consistency, "read_your_writes");
207
+ }
208
+ const fencedLeases = capabilities.kv.fencedLeases || has(feature.KV_FENCED_LEASES);
209
+ return {
210
+ ...answered,
211
+ managed: true,
212
+ query: { ...query, consistency },
213
+ destinations: {
214
+ available: destinations,
215
+ consistency: destinations ? "linearizable" : capabilities.destinations.consistency
216
+ },
217
+ kv: {
218
+ available: capabilities.kv.available || versions.kv > 0,
219
+ cas: capabilities.kv.cas || has(feature.KV_CAS),
220
+ casFenced: capabilities.kv.casFenced || has(feature.KV_CAS_FENCED) || fencedLeases,
221
+ fencedLeases
222
+ },
223
+ graph: capabilities.graph || versions.graph > 0,
224
+ forks: capabilities.forks || versions.fork > 0,
225
+ agentWorkflow: capabilities.agentWorkflow || has(feature.AGENT_WORKFLOW),
226
+ watch: capabilities.watch || has(feature.WATCH),
227
+ filters: {
228
+ ...answered.filters,
229
+ catalog: capabilities.filters.catalog || ((native || groupPolicyReads) && (versions.filter ?? 0) > 0)
230
+ }
231
+ };
232
+ }
211
233
  //# sourceMappingURL=capabilities.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/client/capabilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../../src/client/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAE9C,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAgGzF,MAAM,CAAC,MAAM,iBAAiB,GAAiB,MAAM,CAAC,MAAM,CAAC;IAC3D,OAAO,EAAE,KAAK;IACd,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;QACnB,SAAS,EAAE,KAAK;QAChB,WAAW,EAAE,UAAU;QACvB,OAAO,EAAE,KAAK;QACd,YAAY,EAAE,KAAK;QACnB,YAAY,EAAE,KAAK;QACnB,eAAe,EAAE,KAAK;KACvB,CAAC;IACF,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnF,EAAE,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;IAC1F,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,KAAK;IACZ,UAAU,EAAE,KAAK;IACjB,aAAa,EAAE,KAAK;IACpB,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC;IAClF,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;IAC3B,KAAK,EAAE,SAAS;CACjB,CAAC,CAAA;AAEF,MAAM,gBAAgB,GAA0C;IAC9D,QAAQ,EAAE,CAAC;IACX,gBAAgB,EAAE,CAAC;IACnB,MAAM,EAAE,CAAC;CACV,CAAA;AAED,8EAA8E;AAC9E,6EAA6E;AAC7E,qEAAqE;AACrE,MAAM,aAAa,GAAG,IAAI,OAAO,EAAiC,CAAA;AAElE,MAAM,UAAU,uBAAuB,CAAC,QAAyB;IAC/D,OAAO,iBAAiB,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAA;AACvD,CAAC;AAED;0BAC0B;AAC1B,MAAM,UAAU,kBAAkB,CAAC,YAA0B;IAC3D,OAAO,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,QAAQ,CAAA;AAClD,CAAC;AAED;;oEAEoE;AACpE,MAAM,UAAU,iBAAiB,CAAC,UAAwB,EAAE,SAAuB;IACjF,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IAC7C,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,iBAAiB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;IAC1E,OAAO;QACL,GAAG,UAAU;QACb,KAAK,EAAE,SAAS,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK;KAC1E,CAAA;AACH,CAAC;AAED;;mCAEmC;AACnC,MAAM,UAAU,UAAU,CAAC,YAA0B;IACnD,MAAM,IAAI,GAAG,iBAAiB,CAAA;IAC9B,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,YAAY,CAAA;IACzD,OAAO,CACL,YAAY,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO;QACrC,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS;QACxC,KAAK,CAAC,WAAW,KAAK,IAAI,CAAC,KAAK,CAAC,WAAW;QAC5C,KAAK,CAAC,OAAO,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO;QACpC,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC,KAAK,CAAC,YAAY;QAC9C,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC,KAAK,CAAC,YAAY;QAC9C,KAAK,CAAC,eAAe,KAAK,IAAI,CAAC,KAAK,CAAC,eAAe;QACpD,YAAY,CAAC,SAAS,KAAK,IAAI,CAAC,YAAY,CAAC,SAAS;QACtD,YAAY,CAAC,WAAW,KAAK,IAAI,CAAC,YAAY,CAAC,WAAW;QAC1D,EAAE,CAAC,SAAS,KAAK,IAAI,CAAC,EAAE,CAAC,SAAS;QAClC,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG;QACtB,EAAE,CAAC,SAAS,KAAK,IAAI,CAAC,EAAE,CAAC,SAAS;QAClC,EAAE,CAAC,YAAY,KAAK,IAAI,CAAC,EAAE,CAAC,YAAY;QACxC,YAAY,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;QACjC,YAAY,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;QACjC,YAAY,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU;QAC3C,YAAY,CAAC,aAAa,KAAK,IAAI,CAAC,aAAa;QACjD,YAAY,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;QACjC,YAAY,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;QACjC,OAAO,CAAC,MAAM,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM;QACtC,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO;QACxC,OAAO,CAAC,gBAAgB,KAAK,IAAI,CAAC,OAAO,CAAC,gBAAgB;QAC1D,OAAO,CAAC,UAAU,KAAK,SAAS;QAChC,YAAY,CAAC,QAAQ,KAAK,SAAS;QACnC,YAAY,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CACnC,CAAA;AACH,CAAC;AAED;;wEAEwE;AACxE,MAAM,UAAU,mBAAmB,CACjC,OAAmB,EACnB,gBAAwB,EACxB,KAAkB;IAElB,OAAO,CACL,OAAO,CAAC,UAAU,KAAK,SAAS;QAChC,uBAAuB,CAAC,OAAO,CAAC,UAAU,EAAE,gBAAgB,EAAE,KAAK,CAAC,CACrE,CAAA;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,YAA0B,EAAE,KAAkB;IAC9E,OAAO,gBAAgB,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,CAAA;AACpF,CAAC;AAED,MAAM,UAAU,OAAO,CACrB,YAA0B,EAC1B,UAA6B;IAE7B,OAAO,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAA;AAC3F,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,YAA0B;IACxD,OAAO,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,YAAY,KAAK,SAAS,CAAC,CAAA;AAC1F,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,YAA0B;IACxD,OAAO,eAAe,CAAC,YAAY,CAAC,CAAC,MAAM,CACzC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,aAAa,KAAK,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CACjF,CAAA;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,YAA0B,EAC1B,UAA6B;IAE7B,OAAO,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,SAAS,CAAC,OAAO,CAAA;AAC7D,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,YAA0B;IAChD,MAAM,OAAO,GAAG,eAAe,CAAC,YAAY,CAAC,CAAA;IAC7C,OAAO,CACL,YAAY,CAAC,OAAO;QACpB,OAAO,CAAC,MAAM,GAAG,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,aAAa,KAAK,OAAO,IAAI,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAC/F,CAAA;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,YAA0B,EAAE,OAA0B;IACtF,MAAM,SAAS,GACb,OAAO,KAAK,SAAS;QACnB,CAAC,CAAC,YAAY,CAAC,OAAO;QACtB,CAAC,CAAC,OAAO,KAAK,OAAO;YACnB,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,SAAS;YAC9B,CAAC,CAAC,OAAO,KAAK,cAAc;gBAC1B,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,SAAS;gBACrC,CAAC,CAAC,OAAO,KAAK,IAAI;oBAChB,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS;oBAC3B,CAAC,CAAC,OAAO,KAAK,OAAO;wBACnB,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS,IAAI,YAAY,CAAC,EAAE,CAAC,GAAG;wBAClD,CAAC,CAAC,OAAO,KAAK,aAAa;4BACzB,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS,IAAI,YAAY,CAAC,EAAE,CAAC,SAAS;4BACxD,CAAC,CAAC,OAAO,KAAK,gBAAgB;gCAC5B,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,SAAS,IAAI,YAAY,CAAC,EAAE,CAAC,YAAY;gCAC3D,CAAC,CAAC,OAAO,KAAK,OAAO;oCACnB,CAAC,CAAC,YAAY,CAAC,KAAK;oCACpB,CAAC,CAAC,OAAO,KAAK,OAAO;wCACnB,CAAC,CAAC,YAAY,CAAC,KAAK;wCACpB,CAAC,CAAC,OAAO,KAAK,eAAe;4CAC3B,CAAC,CAAC,YAAY,CAAC,aAAa;4CAC5B,CAAC,CAAC,OAAO,KAAK,OAAO;gDACnB,CAAC,CAAC,YAAY,CAAC,KAAK;gDACpB,CAAC,CAAC,OAAO,KAAK,SAAS;oDACrB,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM;oDAC7B,CAAC,CAAC,OAAO,KAAK,eAAe;wDAC3B,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO;wDAC9B,CAAC,CAAC,YAAY,CAAC,KAAK,CAAA;IAChD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,gBAAgB,CAAC,GAAG,OAAO,mCAAmC,EAAE;YACxE,KAAK,EAAE,EAAE,OAAO,EAAE;SACnB,CAAC,CAAA;IACJ,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAiB,EAAE,KAAkB;IAChE,OAAO,gBAAgB,CAAC,KAAK,CAAC,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AACxE,CAAC;AAED,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,8EAA8E;AAC9E,SAAS,iBAAiB,CAAC,YAA0B,EAAE,QAAyB;IAC9E,MAAM,MAAM,GAAG,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;IACvD,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACnC,OAAO,MAAM,CAAA;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,YAA0B,EAAE,QAAyB;IAC7E,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAA;IAClC,MAAM,GAAG,GAAG,CAAC,GAAW,EAAW,EAAE,CAAC,oBAAoB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IACzE,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAC3E,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAC,gBAAgB,IAAI,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAA;IACjG,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAA;IAC9E,MAAM,QAAQ,GAAiB;QAC7B,GAAG,YAAY;QACf,QAAQ;QACR,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC;QAC/C,OAAO,EAAE;YACP,MAAM;YACN,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC,OAAO;YACrC,gBAAgB;YAChB,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpD;QACD,KAAK,EAAE,UAAU;KAClB,CAAA;IACD,IAAI,QAAQ,CAAC,KAAK,KAAK,KAAK;QAAE,OAAO,QAAQ,CAAA;IAC7C,MAAM,YAAY,GAChB,YAAY,CAAC,YAAY,CAAC,SAAS;QACnC,CAAC,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAA;IAC/D,IAAI,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,WAAW,CAAA;IAChD,IAAI,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC;QAAE,WAAW,GAAG,QAAQ,CAAA;SACtD,IAAI,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACpC,WAAW,GAAG,mBAAmB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAA;IACpE,IAAI,KAAK,GAAG;QACV,GAAG,YAAY,CAAC,KAAK;QACrB,OAAO,EAAE,YAAY,CAAC,KAAK,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC;KACnE,CAAA;IACD,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAA;QAClE,IAAI,MAAM,KAAK,SAAS;YAAE,SAAQ;QAClC,KAAK,GAAG;YACN,GAAG,KAAK;YACR,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,QAAQ,CAAC,KAAK,GAAG,CAAC;YAChD,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACpE,YAAY,EAAE,KAAK,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY;YACvD,eAAe,EAAE,KAAK,CAAC,eAAe,IAAI,MAAM,CAAC,eAAe;SACjE,CAAA;QACD,IAAI,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,WAAW,GAAG,QAAQ,CAAA;aAC5D,IAAI,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YACtD,WAAW,GAAG,mBAAmB,CAAC,WAAW,EAAE,kBAAkB,CAAC,CAAA;IACtE,CAAC;IACD,MAAM,YAAY,GAAG,YAAY,CAAC,EAAE,CAAC,YAAY,IAAI,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAClF,OAAO;QACL,GAAG,QAAQ;QACX,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,WAAW,EAAE;QAChC,YAAY,EAAE;YACZ,SAAS,EAAE,YAAY;YACvB,WAAW,EAAE,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,CAAC,WAAW;SACnF;QACD,EAAE,EAAE;YACF,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC,SAAS,IAAI,QAAQ,CAAC,EAAE,GAAG,CAAC;YACvD,GAAG,EAAE,YAAY,CAAC,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC;YAC/C,SAAS,EAAE,YAAY,CAAC,EAAE,CAAC,SAAS,IAAI,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,YAAY;YAClF,YAAY;SACb;QACD,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,GAAG,CAAC;QAC/C,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,GAAG,CAAC;QAC9C,aAAa,EAAE,YAAY,CAAC,aAAa,IAAI,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC;QACxE,KAAK,EAAE,YAAY,CAAC,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC;QAC/C,OAAO,EAAE;YACP,GAAG,QAAQ,CAAC,OAAO;YACnB,OAAO,EACL,YAAY,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,IAAI,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;SAC/F;KACF,CAAA;AACH,CAAC"}
@@ -0,0 +1,57 @@
1
+ import type { ResultCode } from "../wire/result.js";
2
+ import type { FilterErrorReason } from "../wire/filter.js";
3
+ /** The Apache Iggy server error code under a failure, when the server
4
+ * answered one. Publish wrapping is followed, then the causes of a transport
5
+ * or protocol failure. Another typed SDK error that wraps an Apache Iggy
6
+ * failure keeps its own classification, like the Rust SDK. */
7
+ export declare function iggyErrorCode(error: unknown): number | undefined;
8
+ /** The typed consumer-filter cause, when the failure is one. */
9
+ export declare function filterReason(error: unknown): FilterErrorReason | undefined;
10
+ /** Whether the target stream or topic does not exist for this principal.
11
+ * Under RBAC an existing stream the principal cannot see answers like a
12
+ * missing one. */
13
+ export declare function isStreamOrTopicNotFound(error: unknown): boolean;
14
+ /** Whether the server refused the operation for missing permissions. The fix
15
+ * is a grant, not a retry. */
16
+ export declare function isPermissionDenied(error: unknown): boolean;
17
+ /** Whether the connected infrastructure does not provide the feature at all.
18
+ * Permanent: gate the code path instead of retrying. */
19
+ export declare function isUnsupported(error: unknown): boolean;
20
+ /** Whether the failure names a missing resource. */
21
+ export declare function isNotFound(error: unknown): boolean;
22
+ /** Whether the failure is wire-version skew between this SDK and the
23
+ * connected deployment. Permanent for this client build. */
24
+ export declare function isVersionSkew(error: unknown): boolean;
25
+ /** Whether a compare-and-swap lost its precondition. Re-read, recompute, and
26
+ * commit again. */
27
+ export declare function isVersionConflict(error: unknown): boolean;
28
+ /** Whether a managed mutation may already have reached the server. A generic
29
+ * retry loop must stop. */
30
+ export declare function isAmbiguousMutation(error: unknown): boolean;
31
+ /** Whether a read-consistency barrier was not met yet. Retryable. */
32
+ export declare function isStale(error: unknown): boolean;
33
+ /** Whether the plane declined a conditional write because it does not own
34
+ * the mutation partition. */
35
+ export declare function isNotLeader(error: unknown): boolean;
36
+ /** Whether capability routing found no live agent for the skill. */
37
+ export declare function isNoCapableAgent(error: unknown): boolean;
38
+ /** Whether a revocable lease was lost. */
39
+ export declare function isLeaseLost(error: unknown): boolean;
40
+ /** Whether a fenced write lost the fence. Never retryable by the loser. */
41
+ export declare function isFenceViolation(error: unknown): boolean;
42
+ /** Whether a spend ceiling was reached. */
43
+ export declare function isBudgetExceeded(error: unknown): boolean;
44
+ /** Whether the agent is quarantined. */
45
+ export declare function isQuarantined(error: unknown): boolean;
46
+ /** Whether the failure was transient: the identical request may succeed on a
47
+ * later attempt. */
48
+ export declare function isUnavailable(error: unknown): boolean;
49
+ /**
50
+ * This failure's place in the unified result-code space, the same code the
51
+ * Rust `LaserError::code()` and the management HTTP surface give it. A
52
+ * managed surface error projects onto its surface code, and a client-side
53
+ * failure maps to the closest code.
54
+ */
55
+ export declare function code(error: unknown): ResultCode;
56
+ export declare function publicErrorMessage(error: unknown): string;
57
+ //# sourceMappingURL=error-classify.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"error-classify.d.ts","sourceRoot":"","sources":["../../src/client/error-classify.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAkB,MAAM,mBAAmB,CAAA;AACnE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAmD1D;;;8DAG8D;AAC9D,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAgBhE;AAED,gEAAgE;AAChE,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,iBAAiB,GAAG,SAAS,CAG1E;AAED;;kBAEkB;AAClB,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAG/D;AAED;8BAC8B;AAC9B,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAQ1D;AAED;wDACwD;AACxD,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAarD;AAED,oDAAoD;AACpD,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAgBlD;AAED;4DAC4D;AAC5D,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAYrD;AAED;mBACmB;AACnB,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAGzD;AAED;2BAC2B;AAC3B,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE3D;AAED,qEAAqE;AACrE,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAM/C;AAED;6BAC6B;AAC7B,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAQnD;AAED,oEAAoE;AACpE,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAGxD;AAED,0CAA0C;AAC1C,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAGnD;AAED,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAExD;AAED,2CAA2C;AAC3C,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAExD;AAED,wCAAwC;AACxC,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAErD;AAED;oBACoB;AACpB,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAGrD;AAoFD;;;;;GAKG;AACH,wBAAgB,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,CAuE/C;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAazD"}