@adonis-agora/agent 0.91.6 → 0.93.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 (74) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/assets/spa/assets/index-DUq09Q_k.js +9 -0
  3. package/dist/assets/spa/index.html +1 -1
  4. package/dist/providers/agent_provider.d.ts.map +1 -1
  5. package/dist/providers/agent_provider.js +33 -0
  6. package/dist/providers/agent_provider.js.map +1 -1
  7. package/dist/src/agent-loop.d.ts +8 -0
  8. package/dist/src/agent-loop.d.ts.map +1 -1
  9. package/dist/src/agent-loop.js +196 -87
  10. package/dist/src/agent-loop.js.map +1 -1
  11. package/dist/src/agent-service.d.ts +73 -2
  12. package/dist/src/agent-service.d.ts.map +1 -1
  13. package/dist/src/agent-service.js +110 -2
  14. package/dist/src/agent-service.js.map +1 -1
  15. package/dist/src/diagnostics.d.ts +65 -0
  16. package/dist/src/diagnostics.d.ts.map +1 -1
  17. package/dist/src/diagnostics.js +18 -4
  18. package/dist/src/diagnostics.js.map +1 -1
  19. package/dist/src/durable/agent-run-workflow.d.ts.map +1 -1
  20. package/dist/src/durable/agent-run-workflow.js +11 -0
  21. package/dist/src/durable/agent-run-workflow.js.map +1 -1
  22. package/dist/src/index.d.ts +4 -3
  23. package/dist/src/index.d.ts.map +1 -1
  24. package/dist/src/index.js +3 -2
  25. package/dist/src/index.js.map +1 -1
  26. package/dist/src/opencode/turn.d.ts.map +1 -1
  27. package/dist/src/opencode/turn.js +4 -1
  28. package/dist/src/opencode/turn.js.map +1 -1
  29. package/dist/src/run-timings.d.ts +16 -0
  30. package/dist/src/run-timings.d.ts.map +1 -0
  31. package/dist/src/run-timings.js +59 -0
  32. package/dist/src/run-timings.js.map +1 -0
  33. package/dist/src/runners/inline-agent-runner.d.ts.map +1 -1
  34. package/dist/src/runners/inline-agent-runner.js +5 -1
  35. package/dist/src/runners/inline-agent-runner.js.map +1 -1
  36. package/dist/src/spi/agent-store.d.ts +98 -2
  37. package/dist/src/spi/agent-store.d.ts.map +1 -1
  38. package/dist/src/spi/agent-store.js +7 -0
  39. package/dist/src/spi/agent-store.js.map +1 -1
  40. package/dist/src/spi/governance-queries.d.ts +81 -0
  41. package/dist/src/spi/governance-queries.d.ts.map +1 -1
  42. package/dist/src/stores/lucid-governance-queries.d.ts +18 -1
  43. package/dist/src/stores/lucid-governance-queries.d.ts.map +1 -1
  44. package/dist/src/stores/lucid-governance-queries.js +176 -2
  45. package/dist/src/stores/lucid-governance-queries.js.map +1 -1
  46. package/dist/src/stores/lucid-schema.d.ts +20 -0
  47. package/dist/src/stores/lucid-schema.d.ts.map +1 -1
  48. package/dist/src/stores/lucid-schema.js +172 -20
  49. package/dist/src/stores/lucid-schema.js.map +1 -1
  50. package/dist/src/stores/lucid.d.ts +9 -2
  51. package/dist/src/stores/lucid.d.ts.map +1 -1
  52. package/dist/src/stores/lucid.js +41 -5
  53. package/dist/src/stores/lucid.js.map +1 -1
  54. package/dist/src/testing/in-memory-governance-queries.d.ts +11 -1
  55. package/dist/src/testing/in-memory-governance-queries.d.ts.map +1 -1
  56. package/dist/src/testing/in-memory-governance-queries.js +86 -2
  57. package/dist/src/testing/in-memory-governance-queries.js.map +1 -1
  58. package/dist/src/testing/in-memory-store.d.ts +15 -4
  59. package/dist/src/testing/in-memory-store.d.ts.map +1 -1
  60. package/dist/src/testing/in-memory-store.js +21 -4
  61. package/dist/src/testing/in-memory-store.js.map +1 -1
  62. package/dist/src/types.d.ts +6 -1
  63. package/dist/src/types.d.ts.map +1 -1
  64. package/dist/src/usage-attribution.d.ts +10 -0
  65. package/dist/src/usage-attribution.d.ts.map +1 -0
  66. package/dist/src/usage-attribution.js +12 -0
  67. package/dist/src/usage-attribution.js.map +1 -0
  68. package/dist/src/usage-ledger.d.ts +9 -0
  69. package/dist/src/usage-ledger.d.ts.map +1 -0
  70. package/dist/src/usage-ledger.js +35 -0
  71. package/dist/src/usage-ledger.js.map +1 -0
  72. package/package.json +1 -1
  73. package/skills/agent-governance/SKILL.md +1 -1
  74. package/dist/assets/spa/assets/index-BsGunSCg.js +0 -9
@@ -2,7 +2,7 @@ import { summarizeGenuiCalls } from '../genui-telemetry.js';
2
2
  import { summarizeLatency, summarizeRunMetrics } from '../run-metrics.js';
3
3
  import { estimateCost, resolveModelPrice } from '../spi/pricing-store.js';
4
4
  import { inAppendOrder, toolCallIdOfRow } from './lucid.js';
5
- import { AGENT_TABLES, ensureAgentTables, rowsOf } from './lucid-schema.js';
5
+ import { AGENT_TABLES, ensureAgentTables, hasLedgerColumns, rowsOf } from './lucid-schema.js';
6
6
  import { portableSql } from './sql-dialect.js';
7
7
  function toInt(value) {
8
8
  if (typeof value === 'number')
@@ -141,8 +141,46 @@ function runRowToSummary(row) {
141
141
  ttftMs: toNumOrNull(row.ttft_ms),
142
142
  errorCode: toStrOrNull(row.error_code),
143
143
  modelId: toStrOrNull(row.model_id),
144
+ queueMs: toNumOrNull(row.queue_ms),
145
+ modelMs: toNumOrNull(row.model_ms),
146
+ toolsMs: toNumOrNull(row.tools_ms),
147
+ modelCalls: toNumOrNull(row.model_calls),
148
+ toolCalls: toNumOrNull(row.tool_calls),
144
149
  };
145
150
  }
151
+ /** A run row's persisted {@link RunTimings}, or `null` when it has none (or they do not parse). */
152
+ function runTimingsOf(row) {
153
+ const steps = parseJsonCol(row.timings);
154
+ if (!Array.isArray(steps))
155
+ return null;
156
+ return {
157
+ modelMs: toInt(row.model_ms),
158
+ toolsMs: toInt(row.tools_ms),
159
+ modelCalls: toInt(row.model_calls),
160
+ toolCalls: toInt(row.tool_calls),
161
+ steps: steps,
162
+ };
163
+ }
164
+ /** The feature a ledger row reports under, in SQL: its own, else `agent` (rows from before features). */
165
+ const FEATURE_SQL = `COALESCE("feature", 'agent')`;
166
+ /**
167
+ * The ledger expressions when the schema predates the ledger columns (`autoCreateTables: false`,
168
+ * migration not run yet): every row is an agent turn's, one request, billed in tokens.
169
+ */
170
+ const LEGACY_LEDGER = {
171
+ feature: `'agent'`,
172
+ requests: '1',
173
+ audioSeconds: '0',
174
+ characters: '0',
175
+ };
176
+ const CURRENT_LEDGER = {
177
+ feature: FEATURE_SQL,
178
+ requests: `COALESCE("requests", 1)`,
179
+ audioSeconds: `COALESCE("audio_seconds", 0)`,
180
+ characters: `COALESCE("characters", 0)`,
181
+ };
182
+ /** Whether a ledger row came from `AgentService.recordUsage` (`external`) or an agent turn. */
183
+ const SOURCE_SQL = `CASE WHEN "purpose" = 'external' THEN 'external' ELSE 'agent' END`;
146
184
  /** Map a raw `agent_tool_call` Lucid row to the read-model {@link RunToolCallRow}. */
147
185
  function toolCallRowToDetail(row) {
148
186
  return {
@@ -185,6 +223,18 @@ export class LucidGovernanceQueries {
185
223
  ready() {
186
224
  return this.autoCreateTables ? ensureAgentTables(this.db) : Promise.resolve();
187
225
  }
226
+ ledgerExpressions;
227
+ /**
228
+ * The SQL the rollups read the ledger columns through. With `autoCreateTables` on they always
229
+ * exist; off, the app's migration may not have added them yet, and the reports then read every row
230
+ * as an agent turn's rather than fail. Probed once.
231
+ */
232
+ ledger() {
233
+ if (this.autoCreateTables)
234
+ return Promise.resolve(CURRENT_LEDGER);
235
+ this.ledgerExpressions ??= hasLedgerColumns(this.db).then((present) => present ? CURRENT_LEDGER : LEGACY_LEDGER);
236
+ return this.ledgerExpressions;
237
+ }
188
238
  /** Provision the shared schema now (what the agent provider calls at app start). Idempotent. */
189
239
  ensureSchema() {
190
240
  return this.ready();
@@ -227,7 +277,7 @@ export class LucidGovernanceQueries {
227
277
  const bucket = by === 'actor' ? `"actor_ref"` : by === 'day' ? DAY_START_SQL : undefined;
228
278
  const unreported = (column) => `SUM(CASE WHEN "cost_usd" IS NULL THEN COALESCE("${column}", 0) ELSE 0 END)`;
229
279
  const rows = rowsOf(await this.db.rawQuery(portableSql(this.db, `SELECT "model_id" AS model_id, ${bucket !== undefined ? `${bucket} AS bucket, ` : ''}` +
230
- `COUNT(*) AS requests, SUM("input_tokens") AS input_tokens, ` +
280
+ `SUM(${(await this.ledger()).requests}) AS requests, SUM("input_tokens") AS input_tokens, ` +
231
281
  `SUM("output_tokens") AS output_tokens, SUM("cost_usd") AS reported_cost, ` +
232
282
  `${unreported('input_tokens')} AS unreported_input, ` +
233
283
  `${unreported('output_tokens')} AS unreported_output, ` +
@@ -303,6 +353,128 @@ export class LucidGovernanceQueries {
303
353
  result.sort((left, right) => left.day.localeCompare(right.day));
304
354
  return result;
305
355
  }
356
+ /**
357
+ * The ledger summed in the database per model and (feature, source), and per actor when `byActor`
358
+ * — what {@link spendByFeature} and {@link usageBreakdown} price. Same unreported-token split as
359
+ * {@link usageGroups}, plus the units non-token rows bill by.
360
+ */
361
+ async featureGroups(range, byActor, filter = {}) {
362
+ const ledger = await this.ledger();
363
+ const featureSql = ledger.feature;
364
+ const where = [`"created_at" >= ?`, `"created_at" <= ?`];
365
+ const bindings = [
366
+ Date.parse(`${range.fromDay}T00:00:00.000Z`),
367
+ Date.parse(`${range.toDay}T23:59:59.999Z`),
368
+ ];
369
+ if (filter.actor !== undefined) {
370
+ where.push(`"actor_ref" = ?`);
371
+ bindings.push(filter.actor);
372
+ }
373
+ if (filter.feature !== undefined) {
374
+ where.push(`${featureSql} = ?`);
375
+ bindings.push(filter.feature);
376
+ }
377
+ const unreported = (column) => `SUM(CASE WHEN "cost_usd" IS NULL THEN COALESCE("${column}", 0) ELSE 0 END)`;
378
+ const groups = [`"model_id"`, featureSql, SOURCE_SQL, ...(byActor ? [`"actor_ref"`] : [])];
379
+ const rows = rowsOf(await this.db.rawQuery(portableSql(this.db, `SELECT "model_id" AS model_id, ${featureSql} AS feature, ${SOURCE_SQL} AS source, ` +
380
+ `${byActor ? `"actor_ref" AS actor_ref, ` : ''}` +
381
+ `SUM(${ledger.requests}) AS requests, SUM("input_tokens") AS input_tokens, ` +
382
+ `SUM("output_tokens") AS output_tokens, ` +
383
+ `SUM(${ledger.audioSeconds}) AS audio_seconds, ` +
384
+ `SUM(${ledger.characters}) AS characters, ` +
385
+ `SUM("cost_usd") AS reported_cost, ` +
386
+ `SUM(CASE WHEN "cost_source" = 'estimate' THEN "cost_usd" ELSE 0 END) AS estimated_cost, ` +
387
+ `${unreported('input_tokens')} AS unreported_input, ` +
388
+ `${unreported('output_tokens')} AS unreported_output, ` +
389
+ `${unreported('cache_write_tokens')} AS unreported_cache_write, ` +
390
+ `${unreported('cache_read_tokens')} AS unreported_cache_read ` +
391
+ `FROM "${AGENT_TABLES.tokenUsage}" WHERE ${where.join(' AND ')} ` +
392
+ `GROUP BY ${groups.join(', ')}`), bindings));
393
+ return rows.map((row) => ({
394
+ modelId: String(row.model_id),
395
+ feature: String(row.feature),
396
+ source: String(row.source) === 'external' ? 'external' : 'agent',
397
+ actorRef: byActor ? String(row.actor_ref) : '',
398
+ requests: toInt(row.requests),
399
+ inputTokens: toInt(row.input_tokens),
400
+ outputTokens: toInt(row.output_tokens),
401
+ audioSeconds: toNumOrNull(row.audio_seconds) ?? 0,
402
+ characters: toInt(row.characters),
403
+ reportedCostUsd: toNumOrNull(row.reported_cost) ?? 0,
404
+ recordedEstimateUsd: toNumOrNull(row.estimated_cost) ?? 0,
405
+ unreported: {
406
+ inputTokens: toInt(row.unreported_input),
407
+ outputTokens: toInt(row.unreported_output),
408
+ cacheWriteTokens: toInt(row.unreported_cache_write),
409
+ cacheReadTokens: toInt(row.unreported_cache_read),
410
+ },
411
+ }));
412
+ }
413
+ /** An unpriced group's tokens at the current price (0 when the model is unpriced). */
414
+ unreportedCost(group, pricing) {
415
+ const price = resolveModelPrice(pricing, group.modelId);
416
+ return price === undefined ? 0 : estimateCost(group.unreported, price);
417
+ }
418
+ async spendByFeature(range) {
419
+ await this.ready();
420
+ const pricing = await this.loadPricing();
421
+ const byFeature = new Map();
422
+ for (const group of await this.featureGroups(range, false)) {
423
+ const key = `${group.source}\u0000${group.feature}`;
424
+ const bucket = byFeature.get(key) ?? {
425
+ feature: group.feature,
426
+ source: group.source,
427
+ requests: 0,
428
+ inputTokens: 0,
429
+ outputTokens: 0,
430
+ audioSeconds: 0,
431
+ characters: 0,
432
+ costUsd: 0,
433
+ };
434
+ bucket.requests += group.requests;
435
+ bucket.inputTokens += group.inputTokens;
436
+ bucket.outputTokens += group.outputTokens;
437
+ bucket.audioSeconds += group.audioSeconds;
438
+ bucket.characters += group.characters;
439
+ bucket.costUsd += group.reportedCostUsd + this.unreportedCost(group, pricing);
440
+ byFeature.set(key, bucket);
441
+ }
442
+ return [...byFeature.values()].sort((left, right) => right.costUsd - left.costUsd ||
443
+ left.feature.localeCompare(right.feature) ||
444
+ left.source.localeCompare(right.source));
445
+ }
446
+ async usageBreakdown(range, filter = {}) {
447
+ await this.ready();
448
+ const pricing = await this.loadPricing();
449
+ const rows = new Map();
450
+ for (const group of await this.featureGroups(range, true, filter)) {
451
+ const key = `${group.actorRef}\u0000${group.source}\u0000${group.feature}`;
452
+ const bucket = rows.get(key) ?? {
453
+ actorRef: group.actorRef,
454
+ feature: group.feature,
455
+ source: group.source,
456
+ requests: 0,
457
+ inputTokens: 0,
458
+ outputTokens: 0,
459
+ audioSeconds: 0,
460
+ characters: 0,
461
+ costUsd: 0,
462
+ estimatedCostUsd: 0,
463
+ };
464
+ const priced = this.unreportedCost(group, pricing);
465
+ bucket.requests += group.requests;
466
+ bucket.inputTokens += group.inputTokens;
467
+ bucket.outputTokens += group.outputTokens;
468
+ bucket.audioSeconds += group.audioSeconds;
469
+ bucket.characters += group.characters;
470
+ bucket.costUsd += group.reportedCostUsd + priced;
471
+ bucket.estimatedCostUsd += group.recordedEstimateUsd + priced;
472
+ rows.set(key, bucket);
473
+ }
474
+ return [...rows.values()].sort((left, right) => right.costUsd - left.costUsd ||
475
+ left.actorRef.localeCompare(right.actorRef) ||
476
+ left.feature.localeCompare(right.feature));
477
+ }
306
478
  /** `thread_id → value` for one aggregate over `table`'s rows of `threadIds`. */
307
479
  async perThread(table, aggregate, threadIds) {
308
480
  const out = new Map();
@@ -454,6 +626,7 @@ export class LucidGovernanceQueries {
454
626
  const usage = usageRows.map((row) => ({
455
627
  modelId: String(row.model_id),
456
628
  purpose: String(row.purpose),
629
+ feature: toStrOrNull(row.feature) ?? 'agent',
457
630
  inputTokens: toInt(row.input_tokens),
458
631
  outputTokens: toInt(row.output_tokens),
459
632
  costUsd: toNumOrNull(row.cost_usd),
@@ -465,6 +638,7 @@ export class LucidGovernanceQueries {
465
638
  toolCalls,
466
639
  approvals: toolCalls.filter((call) => call.status === 'pending_approval'),
467
640
  usage,
641
+ timings: runTimingsOf(runRow),
468
642
  };
469
643
  }
470
644
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"lucid-governance-queries.js","sourceRoot":"","sources":["../../../src/stores/lucid-governance-queries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lucid-governance-queries.js","sourceRoot":"","sources":["../../../src/stores/lucid-governance-queries.ts"],"names":[],"mappings":"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"}
@@ -64,6 +64,18 @@ export declare function streamFrameIndexStatement(table?: string): string;
64
64
  * No foreign key: the rows name provider ids, not agent rows.
65
65
  */
66
66
  export declare function channelStateTableStatements(table?: string): string[];
67
+ /**
68
+ * The usage ledger, `agent_token_usage`: one row per billed call — every model call an agent turn
69
+ * makes, and whatever an app records itself through `AgentService.recordUsage` (transcription, TTS,
70
+ * batch embeddings, a direct SDK call). `thread_id` is NULL on a row recorded outside any
71
+ * conversation; the foreign key still cascades a deleted thread's rows away. `feature` says what the
72
+ * spend was for, `audio_seconds` / `characters` / `requests` hold the units a row bills by when they
73
+ * are not tokens, and `metadata` is the caller's own JSON.
74
+ *
75
+ * Its own function so the SQLite rebuild that makes an old ledger's `thread_id` nullable (see
76
+ * {@link createAgentTables}) creates exactly this shape under a scratch name.
77
+ */
78
+ export declare function tokenUsageTableStatement(table?: string): string;
67
79
  /**
68
80
  * `CREATE TABLE IF NOT EXISTS` DDL for the twelve agent tables plus their indexes, one statement per
69
81
  * array element so each can be issued through Lucid's `rawQuery`. Portable across SQLite / Postgres /
@@ -96,6 +108,14 @@ export declare function hasToolCallIdColumn(db: LucidRawRunner): Promise<boolean
96
108
  * its migration has added them. Probed like {@link hasToolCallIdColumn}.
97
109
  */
98
110
  export declare function hasSentAtColumns(db: LucidRawRunner): Promise<boolean>;
111
+ /**
112
+ * Whether `agent_token_usage` has the columns `AgentService.recordUsage` writes, and a nullable
113
+ * `thread_id` — what `LucidAgentStore` checks under `autoCreateTables: false`. Probed like
114
+ * {@link hasToolCallIdColumn}.
115
+ */
116
+ export declare function hasLedgerColumns(db: LucidRawRunner): Promise<boolean>;
117
+ /** Whether `agent_run` has its timing columns. Probed like {@link hasLedgerColumns}. */
118
+ export declare function hasRunTimingColumns(db: LucidRawRunner): Promise<boolean>;
99
119
  /** Rows of a raw query result, whatever the driver wraps them in (`{ rows }`, `[rows, fields]`, rows). */
100
120
  export declare function rowsOf(result: unknown): Record<string, unknown>[];
101
121
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"lucid-schema.d.ts","sourceRoot":"","sources":["../../../src/stores/lucid-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD;;;GAGG;AACH,eAAO,MAAM,YAAY;IACvB,oFAAoF;aACpF,eAAe,EAAE,uBAAuB;aACxC,OAAO,EAAE,cAAc;aACvB,QAAQ,EAAE,eAAe;aACzB,SAAS,EAAE,iBAAiB;aAC5B,UAAU,EAAE,mBAAmB;aAC/B,YAAY,EAAE,qBAAqB;aACnC,IAAI,EAAE,WAAW;IACjB,wFAAwF;aACxF,cAAc,EAAE,sBAAsB;IACtC,qGAAqG;aACrG,aAAa,EAAE,qBAAqB;IACpC,+FAA+F;aAC/F,YAAY,EAAE,oBAAoB;IAClC;;;OAGG;aACH,YAAY,EAAE,qBAAqB;IACnC;;;OAGG;aACH,UAAU,EAAE,kBAAkB;CACtB,CAAC;AAEX;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAQpE;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,GAAE,MAAkC,GAAG,MAAM,CAQ3F;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,GAAE,MAAkC,GAAG,MAAM,CAE3F;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,GAAE,MAAkC,GAAG,MAAM,EAAE,CAU/F;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,EAAE,CA4NhD;AA8FD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAExE;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAM3E;AAED,0GAA0G;AAC1G,wBAAgB,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAQjE;AAoGD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA6C7E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,EAAE,CAgB9C;AAED,kHAAkH;AAClH,wBAAsB,eAAe,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAIvE;AA0BD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,cAAc,GAAG,cAAc,CAY/D;AAWD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAanE;AAED;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAC1C,EAAE,EAAE,cAAc,EAClB,KAAK,GAAE,MAAkC,GACxC,OAAO,CAAC,IAAI,CAAC,CAef;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,EAAE,EAAE,cAAc,EAClB,KAAK,GAAE,MAAkC,GACxC,OAAO,CAAC,IAAI,CAAC,CAcf"}
1
+ {"version":3,"file":"lucid-schema.d.ts","sourceRoot":"","sources":["../../../src/stores/lucid-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAGjD;;;GAGG;AACH,eAAO,MAAM,YAAY;IACvB,oFAAoF;aACpF,eAAe,EAAE,uBAAuB;aACxC,OAAO,EAAE,cAAc;aACvB,QAAQ,EAAE,eAAe;aACzB,SAAS,EAAE,iBAAiB;aAC5B,UAAU,EAAE,mBAAmB;aAC/B,YAAY,EAAE,qBAAqB;aACnC,IAAI,EAAE,WAAW;IACjB,wFAAwF;aACxF,cAAc,EAAE,sBAAsB;IACtC,qGAAqG;aACrG,aAAa,EAAE,qBAAqB;IACpC,+FAA+F;aAC/F,YAAY,EAAE,oBAAoB;IAClC;;;OAGG;aACH,YAAY,EAAE,qBAAqB;IACnC;;;OAGG;aACH,UAAU,EAAE,kBAAkB;CACtB,CAAC;AAEX;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAQpE;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,GAAE,MAAkC,GAAG,MAAM,CAQ3F;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,GAAE,MAAkC,GAAG,MAAM,CAE3F;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,GAAE,MAAkC,GAAG,MAAM,EAAE,CAU/F;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,GAAE,MAAgC,GAAG,MAAM,CAyBxF;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,EAAE,CAmNhD;AAmND;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAExE;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAM3E;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAM3E;AAED,wFAAwF;AACxF,wBAAsB,mBAAmB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,CAM9E;AAED,0GAA0G;AAC1G,wBAAgB,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAQjE;AAqGD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA0D7E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,EAAE,CAgB9C;AAED,kHAAkH;AAClH,wBAAsB,eAAe,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAIvE;AA0BD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,cAAc,GAAG,cAAc,CAY/D;AAWD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAanE;AAED;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAC1C,EAAE,EAAE,cAAc,EAClB,KAAK,GAAE,MAAkC,GACxC,OAAO,CAAC,IAAI,CAAC,CAef;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,EAAE,EAAE,cAAc,EAClB,KAAK,GAAE,MAAkC,GACxC,OAAO,CAAC,IAAI,CAAC,CAcf"}