@cavelang/cli 0.35.0 → 0.36.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 (327) hide show
  1. package/README.md +224 -12
  2. package/dist/internal/act/action.js +2 -1
  3. package/dist/internal/act/action.js.map +1 -1
  4. package/dist/internal/act/declare.d.ts.map +1 -1
  5. package/dist/internal/act/declare.js +82 -53
  6. package/dist/internal/act/declare.js.map +1 -1
  7. package/dist/internal/act/engine.d.ts +4 -3
  8. package/dist/internal/act/engine.d.ts.map +1 -1
  9. package/dist/internal/act/engine.js +121 -32
  10. package/dist/internal/act/engine.js.map +1 -1
  11. package/dist/internal/automate/cancellation.d.ts +3 -0
  12. package/dist/internal/automate/cancellation.d.ts.map +1 -0
  13. package/dist/internal/automate/cancellation.js +38 -0
  14. package/dist/internal/automate/cancellation.js.map +1 -0
  15. package/dist/internal/automate/declare.d.ts.map +1 -1
  16. package/dist/internal/automate/declare.js +49 -24
  17. package/dist/internal/automate/declare.js.map +1 -1
  18. package/dist/internal/automate/engine.d.ts +7 -3
  19. package/dist/internal/automate/engine.d.ts.map +1 -1
  20. package/dist/internal/automate/engine.js +196 -93
  21. package/dist/internal/automate/engine.js.map +1 -1
  22. package/dist/internal/automate/error-message.d.ts +3 -0
  23. package/dist/internal/automate/error-message.d.ts.map +1 -0
  24. package/dist/internal/automate/error-message.js +10 -0
  25. package/dist/internal/automate/error-message.js.map +1 -0
  26. package/dist/internal/automate/main.d.ts.map +1 -1
  27. package/dist/internal/automate/main.js +238 -35
  28. package/dist/internal/automate/main.js.map +1 -1
  29. package/dist/internal/automate/options.d.ts +4 -0
  30. package/dist/internal/automate/options.d.ts.map +1 -0
  31. package/dist/internal/automate/options.js +19 -0
  32. package/dist/internal/automate/options.js.map +1 -0
  33. package/dist/internal/connect/declared.d.ts +6 -27
  34. package/dist/internal/connect/declared.d.ts.map +1 -1
  35. package/dist/internal/connect/declared.js +165 -76
  36. package/dist/internal/connect/declared.js.map +1 -1
  37. package/dist/internal/connect/error-message.d.ts +3 -0
  38. package/dist/internal/connect/error-message.d.ts.map +1 -0
  39. package/dist/internal/connect/error-message.js +10 -0
  40. package/dist/internal/connect/error-message.js.map +1 -0
  41. package/dist/internal/connect/federation.d.ts +9 -0
  42. package/dist/internal/connect/federation.d.ts.map +1 -0
  43. package/dist/internal/connect/federation.js +19 -0
  44. package/dist/internal/connect/federation.js.map +1 -0
  45. package/dist/internal/connect/fetch-failure.d.ts +3 -0
  46. package/dist/internal/connect/fetch-failure.d.ts.map +1 -0
  47. package/dist/internal/connect/fetch-failure.js +36 -0
  48. package/dist/internal/connect/fetch-failure.js.map +1 -0
  49. package/dist/internal/connect/main.d.ts +1 -0
  50. package/dist/internal/connect/main.d.ts.map +1 -1
  51. package/dist/internal/connect/main.js +288 -114
  52. package/dist/internal/connect/main.js.map +1 -1
  53. package/dist/internal/connect/options.d.ts +3 -0
  54. package/dist/internal/connect/options.d.ts.map +1 -0
  55. package/dist/internal/connect/options.js +9 -0
  56. package/dist/internal/connect/options.js.map +1 -0
  57. package/dist/internal/connect/records.d.ts +3 -0
  58. package/dist/internal/connect/records.d.ts.map +1 -0
  59. package/dist/internal/connect/records.js +21 -0
  60. package/dist/internal/connect/records.js.map +1 -0
  61. package/dist/internal/connect/run.d.ts +1 -18
  62. package/dist/internal/connect/run.d.ts.map +1 -1
  63. package/dist/internal/connect/run.js +115 -55
  64. package/dist/internal/connect/run.js.map +1 -1
  65. package/dist/internal/connect/source.d.ts +3 -1
  66. package/dist/internal/connect/source.d.ts.map +1 -1
  67. package/dist/internal/connect/source.js +226 -47
  68. package/dist/internal/connect/source.js.map +1 -1
  69. package/dist/internal/connect/template.d.ts +2 -2
  70. package/dist/internal/connect/template.d.ts.map +1 -1
  71. package/dist/internal/connect/template.js +25 -9
  72. package/dist/internal/connect/template.js.map +1 -1
  73. package/dist/internal/connect/utf8.d.ts +3 -0
  74. package/dist/internal/connect/utf8.d.ts.map +1 -0
  75. package/dist/internal/connect/utf8.js +12 -0
  76. package/dist/internal/connect/utf8.js.map +1 -0
  77. package/dist/internal/eval/cleanup.d.ts +5 -0
  78. package/dist/internal/eval/cleanup.d.ts.map +1 -0
  79. package/dist/internal/eval/cleanup.js +50 -0
  80. package/dist/internal/eval/cleanup.js.map +1 -0
  81. package/dist/internal/eval/error-message.d.ts +3 -0
  82. package/dist/internal/eval/error-message.d.ts.map +1 -0
  83. package/dist/internal/eval/error-message.js +10 -0
  84. package/dist/internal/eval/error-message.js.map +1 -0
  85. package/dist/internal/eval/judge.d.ts.map +1 -1
  86. package/dist/internal/eval/judge.js +3 -31
  87. package/dist/internal/eval/judge.js.map +1 -1
  88. package/dist/internal/eval/loop.d.ts.map +1 -1
  89. package/dist/internal/eval/loop.js +18 -4
  90. package/dist/internal/eval/loop.js.map +1 -1
  91. package/dist/internal/eval/main.d.ts.map +1 -1
  92. package/dist/internal/eval/main.js +22 -10
  93. package/dist/internal/eval/main.js.map +1 -1
  94. package/dist/internal/eval/options.d.ts +6 -0
  95. package/dist/internal/eval/options.d.ts.map +1 -0
  96. package/dist/internal/eval/options.js +31 -0
  97. package/dist/internal/eval/options.js.map +1 -0
  98. package/dist/internal/eval/queries.d.ts.map +1 -1
  99. package/dist/internal/eval/queries.js +9 -6
  100. package/dist/internal/eval/queries.js.map +1 -1
  101. package/dist/internal/eval/run.d.ts.map +1 -1
  102. package/dist/internal/eval/run.js +112 -24
  103. package/dist/internal/eval/run.js.map +1 -1
  104. package/dist/internal/eval/score.d.ts.map +1 -1
  105. package/dist/internal/eval/score.js +9 -2
  106. package/dist/internal/eval/score.js.map +1 -1
  107. package/dist/internal/eval/suite.d.ts.map +1 -1
  108. package/dist/internal/eval/suite.js +14 -2
  109. package/dist/internal/eval/suite.js.map +1 -1
  110. package/dist/internal/ingest/cleanup.d.ts +5 -0
  111. package/dist/internal/ingest/cleanup.d.ts.map +1 -0
  112. package/dist/internal/ingest/cleanup.js +50 -0
  113. package/dist/internal/ingest/cleanup.js.map +1 -0
  114. package/dist/internal/ingest/content.d.ts +6 -0
  115. package/dist/internal/ingest/content.d.ts.map +1 -0
  116. package/dist/internal/ingest/content.js +25 -0
  117. package/dist/internal/ingest/content.js.map +1 -0
  118. package/dist/internal/ingest/context.d.ts.map +1 -1
  119. package/dist/internal/ingest/context.js +25 -7
  120. package/dist/internal/ingest/context.js.map +1 -1
  121. package/dist/internal/ingest/error-message.d.ts +3 -0
  122. package/dist/internal/ingest/error-message.d.ts.map +1 -0
  123. package/dist/internal/ingest/error-message.js +10 -0
  124. package/dist/internal/ingest/error-message.js.map +1 -0
  125. package/dist/internal/ingest/files.d.ts +4 -12
  126. package/dist/internal/ingest/files.d.ts.map +1 -1
  127. package/dist/internal/ingest/files.js +22 -10
  128. package/dist/internal/ingest/files.js.map +1 -1
  129. package/dist/internal/ingest/main.d.ts.map +1 -1
  130. package/dist/internal/ingest/main.js +46 -16
  131. package/dist/internal/ingest/main.js.map +1 -1
  132. package/dist/internal/ingest/options.d.ts +6 -0
  133. package/dist/internal/ingest/options.d.ts.map +1 -0
  134. package/dist/internal/ingest/options.js +27 -0
  135. package/dist/internal/ingest/options.js.map +1 -0
  136. package/dist/internal/ingest/prompt.d.ts.map +1 -1
  137. package/dist/internal/ingest/prompt.js +14 -10
  138. package/dist/internal/ingest/prompt.js.map +1 -1
  139. package/dist/internal/ingest/run.d.ts +9 -2
  140. package/dist/internal/ingest/run.d.ts.map +1 -1
  141. package/dist/internal/ingest/run.js +206 -62
  142. package/dist/internal/ingest/run.js.map +1 -1
  143. package/dist/internal/ingest/timeout.d.ts +3 -0
  144. package/dist/internal/ingest/timeout.d.ts.map +1 -0
  145. package/dist/internal/ingest/timeout.js +14 -0
  146. package/dist/internal/ingest/timeout.js.map +1 -0
  147. package/dist/internal/ingest/web.d.ts +2 -11
  148. package/dist/internal/ingest/web.d.ts.map +1 -1
  149. package/dist/internal/ingest/web.js +131 -25
  150. package/dist/internal/ingest/web.js.map +1 -1
  151. package/dist/internal/loop/budgets.d.ts +3 -0
  152. package/dist/internal/loop/budgets.d.ts.map +1 -0
  153. package/dist/internal/loop/budgets.js +10 -0
  154. package/dist/internal/loop/budgets.js.map +1 -0
  155. package/dist/internal/loop/index.d.ts +2 -0
  156. package/dist/internal/loop/index.d.ts.map +1 -1
  157. package/dist/internal/loop/index.js +2 -0
  158. package/dist/internal/loop/index.js.map +1 -1
  159. package/dist/internal/loop/json-answer.d.ts +7 -0
  160. package/dist/internal/loop/json-answer.d.ts.map +1 -0
  161. package/dist/internal/loop/json-answer.js +79 -0
  162. package/dist/internal/loop/json-answer.js.map +1 -0
  163. package/dist/internal/loop/json-spans.d.ts +3 -0
  164. package/dist/internal/loop/json-spans.d.ts.map +1 -0
  165. package/dist/internal/loop/json-spans.js +88 -0
  166. package/dist/internal/loop/json-spans.js.map +1 -0
  167. package/dist/internal/loop/llm.d.ts +3 -2
  168. package/dist/internal/loop/llm.d.ts.map +1 -1
  169. package/dist/internal/loop/llm.js +115 -32
  170. package/dist/internal/loop/llm.js.map +1 -1
  171. package/dist/internal/loop/process.d.ts +3 -1
  172. package/dist/internal/loop/process.d.ts.map +1 -1
  173. package/dist/internal/loop/process.js +159 -59
  174. package/dist/internal/loop/process.js.map +1 -1
  175. package/dist/internal/loop/read-snapshot.d.ts +4 -0
  176. package/dist/internal/loop/read-snapshot.d.ts.map +1 -0
  177. package/dist/internal/loop/read-snapshot.js +29 -0
  178. package/dist/internal/loop/read-snapshot.js.map +1 -0
  179. package/dist/internal/loop/reconstruct.d.ts +6 -5
  180. package/dist/internal/loop/reconstruct.d.ts.map +1 -1
  181. package/dist/internal/loop/reconstruct.js +19 -8
  182. package/dist/internal/loop/reconstruct.js.map +1 -1
  183. package/dist/internal/loop/score-settings.d.ts +5 -0
  184. package/dist/internal/loop/score-settings.d.ts.map +1 -0
  185. package/dist/internal/loop/score-settings.js +14 -0
  186. package/dist/internal/loop/score-settings.js.map +1 -0
  187. package/dist/internal/loop/sqlite.d.ts.map +1 -1
  188. package/dist/internal/loop/sqlite.js +15 -7
  189. package/dist/internal/loop/sqlite.js.map +1 -1
  190. package/dist/internal/loop/store.d.ts.map +1 -1
  191. package/dist/internal/loop/store.js +11 -7
  192. package/dist/internal/loop/store.js.map +1 -1
  193. package/dist/internal/loop/timeout.d.ts +3 -0
  194. package/dist/internal/loop/timeout.d.ts.map +1 -0
  195. package/dist/internal/loop/timeout.js +13 -0
  196. package/dist/internal/loop/timeout.js.map +1 -0
  197. package/dist/internal/mcp/error-message.d.ts +3 -0
  198. package/dist/internal/mcp/error-message.d.ts.map +1 -0
  199. package/dist/internal/mcp/error-message.js +10 -0
  200. package/dist/internal/mcp/error-message.js.map +1 -0
  201. package/dist/internal/mcp/main.d.ts.map +1 -1
  202. package/dist/internal/mcp/main.js +42 -27
  203. package/dist/internal/mcp/main.js.map +1 -1
  204. package/dist/internal/mcp/read-snapshot.d.ts +4 -0
  205. package/dist/internal/mcp/read-snapshot.d.ts.map +1 -0
  206. package/dist/internal/mcp/read-snapshot.js +22 -0
  207. package/dist/internal/mcp/read-snapshot.js.map +1 -0
  208. package/dist/internal/mcp/server.d.ts.map +1 -1
  209. package/dist/internal/mcp/server.js +181 -21
  210. package/dist/internal/mcp/server.js.map +1 -1
  211. package/dist/internal/mcp/source.d.ts +3 -0
  212. package/dist/internal/mcp/source.d.ts.map +1 -0
  213. package/dist/internal/mcp/source.js +13 -0
  214. package/dist/internal/mcp/source.js.map +1 -0
  215. package/dist/internal/mcp/tools.d.ts.map +1 -1
  216. package/dist/internal/mcp/tools.js +135 -72
  217. package/dist/internal/mcp/tools.js.map +1 -1
  218. package/dist/internal/rules/declarations.d.ts +6 -0
  219. package/dist/internal/rules/declarations.d.ts.map +1 -0
  220. package/dist/internal/rules/declarations.js +14 -0
  221. package/dist/internal/rules/declarations.js.map +1 -0
  222. package/dist/internal/rules/declare.d.ts.map +1 -1
  223. package/dist/internal/rules/declare.js +30 -16
  224. package/dist/internal/rules/declare.js.map +1 -1
  225. package/dist/internal/rules/engine.d.ts +8 -7
  226. package/dist/internal/rules/engine.d.ts.map +1 -1
  227. package/dist/internal/rules/engine.js +150 -44
  228. package/dist/internal/rules/engine.js.map +1 -1
  229. package/dist/internal/shape/alias-root.d.ts +3 -0
  230. package/dist/internal/shape/alias-root.d.ts.map +1 -0
  231. package/dist/internal/shape/alias-root.js +13 -0
  232. package/dist/internal/shape/alias-root.js.map +1 -0
  233. package/dist/internal/shape/check.d.ts +15 -3
  234. package/dist/internal/shape/check.d.ts.map +1 -1
  235. package/dist/internal/shape/check.js +230 -100
  236. package/dist/internal/shape/check.js.map +1 -1
  237. package/dist/internal/shape/client.d.ts.map +1 -1
  238. package/dist/internal/shape/client.js +42 -20
  239. package/dist/internal/shape/client.js.map +1 -1
  240. package/dist/internal/shape/constraints.d.ts +8 -0
  241. package/dist/internal/shape/constraints.d.ts.map +1 -0
  242. package/dist/internal/shape/constraints.js +17 -0
  243. package/dist/internal/shape/constraints.js.map +1 -0
  244. package/dist/internal/shape/edit-distance.d.ts +3 -0
  245. package/dist/internal/shape/edit-distance.d.ts.map +1 -0
  246. package/dist/internal/shape/edit-distance.js +33 -0
  247. package/dist/internal/shape/edit-distance.js.map +1 -0
  248. package/dist/internal/shape/gate.d.ts.map +1 -1
  249. package/dist/internal/shape/gate.js +0 -0
  250. package/dist/internal/shape/gate.js.map +1 -1
  251. package/dist/internal/shape/snapshot.d.ts +4 -0
  252. package/dist/internal/shape/snapshot.d.ts.map +1 -0
  253. package/dist/internal/shape/snapshot.js +20 -0
  254. package/dist/internal/shape/snapshot.js.map +1 -0
  255. package/dist/internal/shape/suggest.d.ts +8 -6
  256. package/dist/internal/shape/suggest.d.ts.map +1 -1
  257. package/dist/internal/shape/suggest.js +208 -92
  258. package/dist/internal/shape/suggest.js.map +1 -1
  259. package/dist/internal/sync/error-message.d.ts +3 -0
  260. package/dist/internal/sync/error-message.d.ts.map +1 -0
  261. package/dist/internal/sync/error-message.js +10 -0
  262. package/dist/internal/sync/error-message.js.map +1 -0
  263. package/dist/internal/sync/index.d.ts +3 -2
  264. package/dist/internal/sync/index.d.ts.map +1 -1
  265. package/dist/internal/sync/index.js +3 -2
  266. package/dist/internal/sync/index.js.map +1 -1
  267. package/dist/internal/sync/sync.d.ts +8 -5
  268. package/dist/internal/sync/sync.d.ts.map +1 -1
  269. package/dist/internal/sync/sync.js +322 -65
  270. package/dist/internal/sync/sync.js.map +1 -1
  271. package/dist/internal/view/api.d.ts +3 -1
  272. package/dist/internal/view/api.d.ts.map +1 -1
  273. package/dist/internal/view/api.js +154 -90
  274. package/dist/internal/view/api.js.map +1 -1
  275. package/dist/internal/view/error-message.d.ts +3 -0
  276. package/dist/internal/view/error-message.d.ts.map +1 -0
  277. package/dist/internal/view/error-message.js +10 -0
  278. package/dist/internal/view/error-message.js.map +1 -0
  279. package/dist/internal/view/main.d.ts.map +1 -1
  280. package/dist/internal/view/main.js +61 -8
  281. package/dist/internal/view/main.js.map +1 -1
  282. package/dist/internal/view/page.d.ts.map +1 -1
  283. package/dist/internal/view/page.js +119 -20
  284. package/dist/internal/view/page.js.map +1 -1
  285. package/dist/internal/view/report.d.ts.map +1 -1
  286. package/dist/internal/view/report.js +180 -145
  287. package/dist/internal/view/report.js.map +1 -1
  288. package/dist/internal/view/scope.d.ts +6 -2
  289. package/dist/internal/view/scope.d.ts.map +1 -1
  290. package/dist/internal/view/scope.js +107 -24
  291. package/dist/internal/view/scope.js.map +1 -1
  292. package/dist/internal/view/sensitivity.d.ts +4 -0
  293. package/dist/internal/view/sensitivity.d.ts.map +1 -0
  294. package/dist/internal/view/sensitivity.js +11 -0
  295. package/dist/internal/view/sensitivity.js.map +1 -0
  296. package/dist/internal/view/server.d.ts.map +1 -1
  297. package/dist/internal/view/server.js +57 -20
  298. package/dist/internal/view/server.js.map +1 -1
  299. package/dist/src/atomic-output.d.ts +3 -0
  300. package/dist/src/atomic-output.d.ts.map +1 -0
  301. package/dist/src/atomic-output.js +67 -0
  302. package/dist/src/atomic-output.js.map +1 -0
  303. package/dist/src/cli.d.ts +3 -2
  304. package/dist/src/cli.d.ts.map +1 -1
  305. package/dist/src/cli.js +188 -173
  306. package/dist/src/cli.js.map +1 -1
  307. package/dist/src/dispatch.d.ts.map +1 -1
  308. package/dist/src/dispatch.js +3 -2
  309. package/dist/src/dispatch.js.map +1 -1
  310. package/dist/src/doctor.d.ts.map +1 -1
  311. package/dist/src/doctor.js +178 -102
  312. package/dist/src/doctor.js.map +1 -1
  313. package/dist/src/error-message.d.ts +3 -0
  314. package/dist/src/error-message.d.ts.map +1 -0
  315. package/dist/src/error-message.js +20 -0
  316. package/dist/src/error-message.js.map +1 -0
  317. package/dist/src/hooks-config.d.ts +3 -0
  318. package/dist/src/hooks-config.d.ts.map +1 -0
  319. package/dist/src/hooks-config.js +23 -0
  320. package/dist/src/hooks-config.js.map +1 -0
  321. package/package.json +23 -20
  322. package/src/atomic-output.ts +47 -0
  323. package/src/cli.ts +170 -147
  324. package/src/dispatch.ts +3 -2
  325. package/src/doctor.ts +192 -111
  326. package/src/error-message.ts +13 -0
  327. package/src/hooks-config.ts +22 -0
@@ -7,42 +7,67 @@
7
7
  * review candidates, alias disagreements and coverage stats. Nothing is
8
8
  * written — enforcement is the opt-in gate in `gate.ts` (§20.3).
9
9
  */
10
+ import { readSnapshot } from "./snapshot.js";
10
11
  import { Uuidv7, Verb } from '@cavelang/core';
11
12
  import { Registry } from '@cavelang/canonical';
12
- const currentSql = `
13
- SELECT c.* FROM cave_claim c
14
- JOIN (
15
- SELECT claim_key, MAX(tx) AS max_tx
16
- FROM cave_claim GROUP BY claim_key
17
- ) latest ON c.claim_key = latest.claim_key AND c.tx = latest.max_tx
18
- `;
13
+ import { QuerySql } from '@cavelang/store';
14
+ import { aliasRoot } from "./alias-root.js";
15
+ import { constraintProblem } from "./constraints.js";
16
+ const currentSql = QuerySql.current();
19
17
  export const defaultStaleDays = 90;
20
18
  /** Entity test for coverage/targets: not a verb token, not a stored literal. */
21
19
  const isEntityName = (name) => !Verb.isVerbToken(name) && !name.startsWith('"') && !name.startsWith('`');
22
20
  const all = (store, sql, ...params) => store.db.prepare(sql).all(...params);
23
21
  /**
24
- * One evaluation snapshot. Query count is constant: current beliefs, tags,
25
- * and declaration-excluding qualifier edges, independent of shape size.
22
+ * One evaluation snapshot. Query count is constant: narrow current facts, full
23
+ * declaration rows, tags and qualifier edges, independent of shape size.
26
24
  */
27
- const shapeState = (store) => {
28
- const rows = all(store, `SELECT c.* FROM (${currentSql}) c ORDER BY c.tx`);
29
- const currentIds = new Set(rows.map(row => row.id));
25
+ const shapeState = (store, registry, declarations, declared) => {
26
+ const verbs = new Set(['IS', 'EXTENDS']);
27
+ const attributes = new Set();
28
+ for (const expectation of declared) {
29
+ if (expectation.kind === 'attribute')
30
+ attributes.add(expectation.name);
31
+ else
32
+ verbs.add(Registry.primaryOf(registry(), expectation.name).primary);
33
+ }
34
+ // Check each candidate against its complete history so a disabled latest
35
+ // version cannot revive an older value from the same claim key.
36
+ const rows = store.db.prepare(`SELECT c.subject, c.verb, c.object, c.attribute, c.value_unit
37
+ FROM cave_claim c
38
+ WHERE (c.verb IN (SELECT value FROM json_each(?))
39
+ OR (c.verb = 'HAS' AND c.attribute IN (SELECT value FROM json_each(?))))
40
+ AND c.conf > 0 AND c.negated = 0
41
+ AND c.tx = (SELECT MAX(latest.tx) FROM cave_claim latest WHERE latest.claim_key = c.claim_key)
42
+ ORDER BY c.tx`)
43
+ .all(JSON.stringify([...verbs]), JSON.stringify([...attributes]));
44
+ return { rows, ...declarations };
45
+ };
46
+ /** Declarations and their constraint/qualifier metadata, without ordinary facts. */
47
+ const declarationState = (store) => {
48
+ return readSnapshot(store, 'cave_shape_declarations', () => readDeclarationState(store));
49
+ };
50
+ const readDeclarationState = (store) => {
51
+ // Verb is part of claim identity, so filtering it before latest-row grouping
52
+ // retains complete current EXPECTS series, including disabled declarations.
53
+ const declarations = all(store, `${QuerySql.current("(SELECT * FROM cave_claim WHERE verb = 'EXPECTS')")} ORDER BY c.tx`);
54
+ const declarationIds = JSON.stringify(declarations.map(row => row.id));
30
55
  const tags = new Map();
31
- const tagRows = store.db.prepare("SELECT claim_id, key, value FROM cave_tag WHERE key IN ('unit', 'cardinality') ORDER BY rowid").all();
56
+ const tagRows = store.db.prepare(`SELECT claim_id, key, value FROM cave_tag
57
+ WHERE claim_id IN (SELECT value FROM json_each(?))
58
+ AND key IN ('unit', 'cardinality') ORDER BY rowid`).all(declarationIds);
32
59
  for (const tag of tagRows) {
33
- if (!currentIds.has(tag.claim_id))
34
- continue;
35
- const byKey = tags.get(tag.claim_id) ?? new Map();
36
- if (!byKey.has(tag.key))
37
- byKey.set(tag.key, tag.value);
38
- tags.set(tag.claim_id, byKey);
60
+ const entries = tags.get(tag.claim_id) ?? [];
61
+ entries.push(tag);
62
+ tags.set(tag.claim_id, entries);
39
63
  }
40
64
  const excludedDeclarations = new Set(store.db.prepare(`
41
- SELECT DISTINCT child_id FROM cave_edge WHERE role IN ('WHEN', 'VIA', 'BECAUSE')
42
- `).all().map(row => row.child_id));
43
- return { rows, tags, excludedDeclarations };
65
+ SELECT DISTINCT child_id FROM cave_edge
66
+ WHERE child_id IN (SELECT value FROM json_each(?)) AND role IN ('WHEN', 'VIA', 'BECAUSE')
67
+ `).all(declarationIds).map(row => row.child_id));
68
+ return { declarations, tags, excludedDeclarations };
44
69
  };
45
- const tagValue = (state, row, key) => state.tags.get(row.id)?.get(key) ?? undefined;
70
+ const tagValue = (state, row, key) => state.tags.get(row.id)?.find(tag => tag.key === key)?.value ?? undefined;
46
71
  const expectationOf = (state, row) => {
47
72
  if (!isEntityName(row.subject) || row.object === null || row.object.startsWith('"') || row.object.startsWith('`')) {
48
73
  return undefined;
@@ -58,7 +83,7 @@ const expectationOf = (state, row) => {
58
83
  row
59
84
  };
60
85
  };
61
- const expectationsOf = (state) => state.rows.flatMap(row => {
86
+ const expectationsOf = (state) => state.declarations.flatMap(row => {
62
87
  if (row.verb !== 'EXPECTS' || row.negated !== 0 || row.conf <= 0 || row.object === null ||
63
88
  state.excludedDeclarations.has(row.id))
64
89
  return [];
@@ -69,17 +94,34 @@ const expectationsOf = (state) => state.rows.flatMap(row => {
69
94
  * Current positive `EXPECTS` declarations (spec §20.1), oldest first.
70
95
  * Qualifier condition rows never declare, mirroring the registry's
71
96
  * treatment of in-band declarations; verb-token and literal subjects are
72
- * not types.
97
+ * not types. Internal reader for generators that collect validation problems.
73
98
  */
74
- export const expectations = (store) => expectationsOf(shapeState(store));
99
+ export const declarationSnapshot = (store) => {
100
+ const state = declarationState(store);
101
+ return { expectations: expectationsOf(state), tags: state.tags };
102
+ };
103
+ const checkedExpectations = (state) => {
104
+ const declared = expectationsOf(state);
105
+ const problems = declared.flatMap(expectation => {
106
+ const problem = constraintProblem(expectation, state.tags.get(expectation.row.id) ?? []);
107
+ return problem === undefined ? [] : [problem];
108
+ });
109
+ if (problems.length > 0)
110
+ throw new TypeError(`invalid shape declaration: ${problems.join('; ')}`);
111
+ return declared;
112
+ };
113
+ /** Current shape declarations, rejecting malformed constraint tags. */
114
+ export const expectations = (store) => checkedExpectations(declarationState(store));
75
115
  const targetIndexes = (state) => {
76
116
  const children = new Map();
77
117
  const typings = [];
78
118
  for (const row of state.rows) {
79
- if (row.negated !== 0 || row.conf <= 0 || row.object === null)
119
+ if (row.object === null)
80
120
  continue;
81
121
  if (row.verb === 'EXTENDS') {
82
- children.set(row.object, [...children.get(row.object) ?? [], row.subject]);
122
+ const descendants = children.get(row.object) ?? [];
123
+ descendants.push(row.subject);
124
+ children.set(row.object, descendants);
83
125
  }
84
126
  else if (row.verb === 'IS' && isEntityName(row.subject)) {
85
127
  typings.push({ entity: row.subject, via: row.object });
@@ -90,7 +132,8 @@ const targetIndexes = (state) => {
90
132
  const instancesOf = (targets, type) => {
91
133
  const types = new Set([type]);
92
134
  let frontier = [type];
93
- for (let depth = 0; depth < 32 && frontier.length > 0; depth += 1) {
135
+ // Visit each reachable type once; cycles terminate without truncating inheritance.
136
+ while (frontier.length > 0) {
94
137
  const next = [];
95
138
  for (const parent of frontier) {
96
139
  for (const child of targets.children.get(parent) ?? []) {
@@ -119,31 +162,45 @@ const addObserved = (index, slot, entity, unit) => {
119
162
  byEntity.set(entity, actual);
120
163
  index.set(slot, byEntity);
121
164
  };
122
- const observedIndexes = (state) => {
165
+ const observedIndexes = (registry, state, declared) => {
123
166
  const attributes = new Map();
124
167
  const forward = new Map();
125
168
  const reverse = new Map();
169
+ const attributeNames = new Set();
170
+ const forwardVerbs = new Set();
171
+ const reverseVerbs = new Set();
172
+ for (const expectation of declared) {
173
+ if (expectation.kind === 'attribute')
174
+ attributeNames.add(expectation.name);
175
+ else {
176
+ const { primary, isInverse } = Registry.primaryOf(registry(), expectation.name);
177
+ if (isInverse)
178
+ reverseVerbs.add(primary);
179
+ else
180
+ forwardVerbs.add(primary);
181
+ }
182
+ }
126
183
  for (const row of state.rows) {
127
- if (row.negated !== 0 || row.conf <= 0)
128
- continue;
129
- if (row.verb === 'HAS' && row.attribute !== null) {
184
+ if (row.verb === 'HAS' && row.attribute !== null && attributeNames.has(row.attribute)) {
130
185
  addObserved(attributes, row.attribute, row.subject, row.value_unit);
131
186
  }
132
187
  if (row.object !== null) {
133
- addObserved(forward, row.verb, row.subject);
134
- addObserved(reverse, row.verb, row.object);
188
+ if (forwardVerbs.has(row.verb))
189
+ addObserved(forward, row.verb, row.subject);
190
+ if (reverseVerbs.has(row.verb))
191
+ addObserved(reverse, row.verb, row.object);
135
192
  }
136
193
  }
137
194
  return { attributes, forward, reverse };
138
195
  };
139
- const observed = (store, indexes, entity, expectation) => {
196
+ const observed = (registry, indexes, entity, expectation) => {
140
197
  let actual;
141
198
  if (expectation.kind === 'attribute') {
142
199
  actual = indexes.attributes.get(expectation.name)?.get(entity);
143
200
  }
144
201
  else {
145
202
  // An inverse expectation reads the object side of its stored primary.
146
- const { primary, isInverse } = Registry.primaryOf(store.registry(), expectation.name);
203
+ const { primary, isInverse } = Registry.primaryOf(registry(), expectation.name);
147
204
  actual = (isInverse ? indexes.reverse : indexes.forward).get(primary)?.get(entity);
148
205
  }
149
206
  if (actual === undefined)
@@ -158,13 +215,32 @@ const satisfies = (expectation, actual) => actual.count > 0 &&
158
215
  (expectation.unit === undefined || actual.units.every(unit => unit === expectation.unit));
159
216
  /** Evaluates every declared expectation against its instances (spec §20.2). */
160
217
  export const evaluate = (store) => {
161
- const state = shapeState(store);
162
- const declared = expectationsOf(state);
163
- const indexes = observedIndexes(state);
218
+ return readSnapshot(store, 'cave_shape_evaluation', () => evaluateSnapshot(store));
219
+ };
220
+ const evaluateSnapshot = (store) => {
221
+ // No declaration can be current if none exists in history. Check on every
222
+ // evaluation: an action may introduce EXPECTS between its before/after gate.
223
+ // Historical declarations still require current-version and qualifier checks.
224
+ if (store.db.prepare("SELECT 1 FROM cave_claim WHERE verb = 'EXPECTS' LIMIT 1").get() === undefined) {
225
+ return { expectations: [], violations: [], instances: 0, checks: 0 };
226
+ }
227
+ const declarations = declarationState(store);
228
+ const declared = checkedExpectations(declarations);
229
+ if (declared.length === 0) {
230
+ return { expectations: [], violations: [], instances: 0, checks: 0 };
231
+ }
232
+ // Attribute-only shapes never need vocabulary; relation checks share one
233
+ // version-aware registry resolved inside this read snapshot on first use.
234
+ let vocabulary;
235
+ const registry = () => vocabulary ??= store.registry();
236
+ const state = shapeState(store, registry, declarations, declared);
237
+ const indexes = observedIndexes(registry, state, declared);
164
238
  const targets = targetIndexes(state);
165
239
  const byType = new Map();
166
240
  for (const expectation of declared) {
167
- byType.set(expectation.type, [...byType.get(expectation.type) ?? [], expectation]);
241
+ const group = byType.get(expectation.type) ?? [];
242
+ group.push(expectation);
243
+ byType.set(expectation.type, group);
168
244
  }
169
245
  const violations = [];
170
246
  const targeted = new Set();
@@ -174,7 +250,7 @@ export const evaluate = (store) => {
174
250
  targeted.add(entity);
175
251
  for (const expectation of typeExpectations) {
176
252
  checks += 1;
177
- const actual = observed(store, indexes, entity, expectation);
253
+ const actual = observed(registry, indexes, entity, expectation);
178
254
  if (!satisfies(expectation, actual)) {
179
255
  violations.push({
180
256
  entity,
@@ -203,38 +279,62 @@ const aliasGroups = (store) => {
203
279
  WHERE c.verb = 'ALIAS' AND c.negated = 0 AND c.conf > 0 AND c.object IS NOT NULL
204
280
  `).all();
205
281
  const parent = new Map();
206
- const find = (name) => {
207
- const up = parent.get(name);
208
- if (up === undefined || up === name) {
209
- return name;
210
- }
211
- const root = find(up);
212
- parent.set(name, root);
213
- return root;
214
- };
282
+ const find = (name) => aliasRoot(parent, name);
215
283
  for (const { a, b } of edges) {
216
284
  parent.set(find(a), find(b));
217
285
  }
218
286
  const groups = new Map();
219
287
  for (const name of new Set(edges.flatMap(({ a, b }) => [a, b]))) {
220
288
  const root = find(name);
221
- groups.set(root, [...groups.get(root) ?? [], name]);
289
+ const group = groups.get(root) ?? [];
290
+ group.push(name);
291
+ groups.set(root, group);
222
292
  }
223
293
  return [...groups.values()].filter(group => group.length >= 2).map(group => group.sort());
224
294
  };
225
295
  /**
226
- * Scope signature of a row: its non-`src:` contexts, sorted. Series scoped
296
+ * Scope signatures: non-`src:` contexts, sorted. Series scoped
227
297
  * to different contexts (`@prod` vs `@staging`) describe different facts
228
298
  * and never disagree; actor provenance stamps (spec §9.5) are provenance,
229
299
  * not scope, so they don't separate.
230
300
  */
231
- const scopeOf = (store, row) => store.db.prepare('SELECT context FROM cave_context WHERE claim_id = ?').all(row.id)
232
- .map(({ context }) => context)
233
- .filter(context => !context.startsWith('src:'))
234
- .sort()
235
- .join('');
301
+ const scopesOf = (store, rows) => {
302
+ const scopes = new Map();
303
+ if (rows.length === 0)
304
+ return scopes;
305
+ // One JSON parameter avoids both per-row reads and SQLite's variable limit.
306
+ const contexts = store.db.prepare(`SELECT claim_id, context FROM cave_context
307
+ WHERE claim_id IN (SELECT value FROM json_each(?))`)
308
+ .all(JSON.stringify(rows.map(row => row.id)));
309
+ for (const { claim_id, context } of contexts) {
310
+ if (context.startsWith('src:'))
311
+ continue;
312
+ const scope = scopes.get(claim_id) ?? [];
313
+ scope.push(context);
314
+ scopes.set(claim_id, scope);
315
+ }
316
+ for (const scope of scopes.values())
317
+ scope.sort();
318
+ return scopes;
319
+ };
236
320
  /** Whether two rows from different alias names actually conflict. */
237
- const hasCrossNamePair = (rows, differs) => rows.some((left, at) => rows.slice(at + 1).some(right => left.subject !== right.subject && differs(left, right)));
321
+ const hasCrossNamePair = (rows, valueOf) => {
322
+ const first = rows[0];
323
+ if (first === undefined)
324
+ return false;
325
+ const value = valueOf(first);
326
+ let differentName = false;
327
+ let differentValue = false;
328
+ for (const row of rows) {
329
+ differentName ||= row.subject !== first.subject;
330
+ differentValue ||= valueOf(row) !== value;
331
+ // With two names and two equality classes, some cross-name pair differs,
332
+ // even when the first differing values occur under the same name.
333
+ if (differentName && differentValue)
334
+ return true;
335
+ }
336
+ return false;
337
+ };
238
338
  /**
239
339
  * Cross-series conflicts inside alias groups (spec §20.2) — the checking
240
340
  * half open decision 2 deferred: union-of-rows keeps disagreeing series
@@ -242,32 +342,44 @@ const hasCrossNamePair = (rows, differs) => rows.some((left, at) => rows.slice(a
242
342
  */
243
343
  const findDisagreements = (store) => {
244
344
  const disagreements = [];
245
- for (const group of aliasGroups(store)) {
246
- const rows = all(store, `
247
- SELECT c.* FROM (${currentSql}) c
248
- WHERE c.subject IN (${group.map(() => '?').join(', ')}) AND c.verb <> 'ALIAS' AND c.conf > 0
249
- ORDER BY c.tx
250
- `, ...group);
345
+ const groups = aliasGroups(store);
346
+ if (groups.length === 0)
347
+ return disagreements;
348
+ const groupOf = new Map(groups.flatMap((group, index) => group.map(name => [name, index])));
349
+ const groupedRows = groups.map(() => []);
350
+ // One ordered read avoids a bind parameter for every alias-group member.
351
+ for (const row of all(store, `
352
+ SELECT c.* FROM (${currentSql}) c
353
+ WHERE c.verb <> 'ALIAS' AND c.conf > 0 ORDER BY c.tx
354
+ `)) {
355
+ const index = groupOf.get(row.subject);
356
+ if (index !== undefined)
357
+ groupedRows[index].push(row);
358
+ }
359
+ const scopes = scopesOf(store, groupedRows.flat());
360
+ for (const rows of groupedRows) {
251
361
  const buckets = new Map();
252
362
  for (const row of rows) {
253
363
  const slot = row.attribute !== null ? `attr:${row.attribute}` : row.object !== null ? `obj:${row.object}` : '';
254
364
  if (slot === '') {
255
365
  continue;
256
366
  }
257
- const key = `${row.verb}${slot}${scopeOf(store, row)}`;
258
- buckets.set(key, [...buckets.get(key) ?? [], row]);
367
+ const key = JSON.stringify([row.verb, slot, scopes.get(row.id) ?? []]);
368
+ const bucket = buckets.get(key) ?? [];
369
+ bucket.push(row);
370
+ buckets.set(key, bucket);
259
371
  }
260
372
  for (const bucket of buckets.values()) {
261
373
  const first = bucket[0];
262
374
  if (first.attribute !== null) {
263
375
  const positives = bucket.filter(row => row.negated === 0);
264
376
  const subjects = [...new Set(positives.map(row => row.subject))].sort();
265
- if (hasCrossNamePair(positives, (left, right) => left.value_text !== right.value_text)) {
377
+ if (hasCrossNamePair(positives, row => row.value_text)) {
266
378
  disagreements.push({ kind: 'value', about: `${first.verb} ${first.attribute}`, entities: subjects, rows: positives });
267
379
  }
268
380
  }
269
381
  else {
270
- if (hasCrossNamePair(bucket, (left, right) => left.negated !== right.negated)) {
382
+ if (hasCrossNamePair(bucket, row => row.negated)) {
271
383
  disagreements.push({
272
384
  kind: 'polarity',
273
385
  about: `${first.verb} ${first.object}`,
@@ -282,27 +394,33 @@ const findDisagreements = (store) => {
282
394
  };
283
395
  const count = (store, sql) => store.db.prepare(sql).get().n;
284
396
  const coverage = (store, evaluation) => {
285
- const average = store.db.prepare(`SELECT AVG(conf) AS avg FROM (${currentSql}) c WHERE c.conf > 0`)
286
- .get().avg;
287
- const names = store.db.prepare(`
288
- SELECT c.subject AS name FROM (${currentSql}) c WHERE c.conf > 0
289
- UNION
290
- SELECT c.object AS name FROM (${currentSql}) c WHERE c.conf > 0 AND c.object IS NOT NULL
291
- `).all().map(row => row.name).filter(isEntityName);
292
- const typed = store.db.prepare(`
293
- SELECT DISTINCT c.subject AS name FROM (${currentSql}) c
294
- WHERE c.verb = 'IS' AND c.negated = 0 AND c.conf > 0 AND c.object IS NOT NULL
295
- `).all().map(row => row.name).filter(isEntityName);
397
+ const totals = store.db.prepare(`SELECT
398
+ COUNT(*) AS facts,
399
+ COUNT(CASE WHEN c.conf > 0 AND c.negated = 0 THEN 1 END) AS current,
400
+ COUNT(CASE WHEN c.conf = 0 THEN 1 END) AS retracted,
401
+ COUNT(CASE WHEN c.conf > 0 AND c.negated = 1 THEN 1 END) AS negated,
402
+ COUNT(CASE WHEN c.conf > 0 AND c.conf < 0.3 THEN 1 END) AS lowConfidence,
403
+ AVG(CASE WHEN c.conf > 0 THEN c.conf END) AS averageConfidence
404
+ FROM (${currentSql}) c`).get();
405
+ const names = new Set();
406
+ const typed = new Set();
407
+ const entityRows = store.db.prepare(`
408
+ SELECT c.subject, c.object, c.verb, c.negated FROM (${currentSql}) c WHERE c.conf > 0
409
+ `).all();
410
+ for (const row of entityRows) {
411
+ if (isEntityName(row.subject)) {
412
+ names.add(row.subject);
413
+ if (row.verb === 'IS' && row.negated === 0 && row.object !== null)
414
+ typed.add(row.subject);
415
+ }
416
+ if (row.object !== null && isEntityName(row.object))
417
+ names.add(row.object);
418
+ }
296
419
  return {
297
420
  rows: count(store, 'SELECT COUNT(*) AS n FROM cave_claim'),
298
- facts: count(store, 'SELECT COUNT(DISTINCT claim_key) AS n FROM cave_claim'),
299
- current: count(store, `SELECT COUNT(*) AS n FROM (${currentSql}) c WHERE c.conf > 0 AND c.negated = 0`),
300
- retracted: count(store, `SELECT COUNT(*) AS n FROM (${currentSql}) c WHERE c.conf = 0`),
301
- negated: count(store, `SELECT COUNT(*) AS n FROM (${currentSql}) c WHERE c.conf > 0 AND c.negated = 1`),
302
- averageConfidence: average,
303
- lowConfidence: count(store, `SELECT COUNT(*) AS n FROM (${currentSql}) c WHERE c.conf > 0 AND c.conf < 0.3`),
304
- entities: new Set(names).size,
305
- typedEntities: typed.length,
421
+ ...totals,
422
+ entities: names.size,
423
+ typedEntities: typed.size,
306
424
  expectations: evaluation.expectations.length,
307
425
  instances: evaluation.instances,
308
426
  checks: evaluation.checks,
@@ -315,17 +433,29 @@ const coverage = (store, evaluation) => {
315
433
  * and coverage. Violations are the failing section; the rest is advisory.
316
434
  */
317
435
  export const check = (store, options = {}) => {
318
- const evaluation = evaluate(store);
319
- return {
320
- expectations: evaluation.expectations,
321
- violations: evaluation.violations,
322
- stale: staleRows(store, options.staleDays ?? defaultStaleDays, (options.now ?? Date.now)()),
323
- review: all(store, `
324
- SELECT c.* FROM (${currentSql}) c
325
- WHERE c.conf >= 0.3 AND c.conf <= 0.7 ORDER BY c.conf, c.tx
326
- `),
327
- disagreements: findDisagreements(store),
328
- coverage: coverage(store, evaluation)
329
- };
436
+ const staleDays = options.staleDays ?? defaultStaleDays;
437
+ if (!Number.isFinite(staleDays) || staleDays < 0) {
438
+ throw new TypeError('staleDays must be finite and non-negative');
439
+ }
440
+ const nowMs = (options.now ?? Date.now)();
441
+ if (!Number.isFinite(nowMs))
442
+ throw new TypeError('now must return a finite timestamp');
443
+ // A savepoint starts a deferred read transaction or nests within the caller's
444
+ // transaction. Keep every report section on the same snapshot without taking
445
+ // a write reservation, including on read-only connections.
446
+ return readSnapshot(store, 'cave_health_read', () => {
447
+ const evaluation = evaluate(store);
448
+ return {
449
+ expectations: evaluation.expectations,
450
+ violations: evaluation.violations,
451
+ stale: staleRows(store, staleDays, nowMs),
452
+ review: all(store, `
453
+ SELECT c.* FROM (${currentSql}) c
454
+ WHERE c.conf >= 0.3 AND c.conf <= 0.7 ORDER BY c.conf, c.tx
455
+ `),
456
+ disagreements: findDisagreements(store),
457
+ coverage: coverage(store, evaluation)
458
+ };
459
+ });
330
460
  };
331
461
  //# sourceMappingURL=check.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/check.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"check.js","sourceRoot":"","sources":["../../src/check.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,uFAAuF;AAIvF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAI5C,eAAO,MAAM,mBAAmB,EAAG,CAAU,CAAA;AAE7C,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,UAAU,CAAA;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,KAAK,CAAA;IACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,6CAA6C;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,yEAAyE;IACzE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAA;IACjB,QAAQ,CAAC,OAAO,EAAE,OAAO,mBAAmB,CAAA;IAC5C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,CAAA;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAA;IAClB,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,uBAAuB,CAAA;AAkKxE,eAAO,MAAM,cAAc,GACzB,OAAO,KAAK,EACZ,UAAS;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAO,KACjC,gBAkBF,CAAA"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,uFAAuF;AAKvF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAI5C,eAAO,MAAM,mBAAmB,EAAG,CAAU,CAAA;AAE7C,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,UAAU,CAAA;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,KAAK,CAAA;IACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,6CAA6C;IAC7C,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,yEAAyE;IACzE,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAC3B,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAA;IACjB,QAAQ,CAAC,OAAO,EAAE,OAAO,mBAAmB,CAAA;IAC5C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,CAAA;IACvC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAA;IAClB,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,eAAe,GAAG,uBAAuB,CAAA;AAsLxE,eAAO,MAAM,cAAc,GACzB,OAAO,KAAK,EACZ,UAAS;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAO,KACjC,gBAkBF,CAAA"}