@cyanheads/nasa-power-mcp-server 0.2.0 → 0.4.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 (66) hide show
  1. package/AGENTS.md +26 -11
  2. package/CLAUDE.md +26 -11
  3. package/Dockerfile +9 -3
  4. package/README.md +50 -79
  5. package/changelog/0.3.x/0.3.0.md +35 -0
  6. package/changelog/0.4.x/0.4.0.md +36 -0
  7. package/dist/config/server-config.d.ts +1 -0
  8. package/dist/config/server-config.d.ts.map +1 -1
  9. package/dist/config/server-config.js +11 -1
  10. package/dist/config/server-config.js.map +1 -1
  11. package/dist/index.js +3 -8
  12. package/dist/index.js.map +1 -1
  13. package/dist/mcp-server/tools/definitions/comparison-contracts.d.ts +7 -2
  14. package/dist/mcp-server/tools/definitions/comparison-contracts.d.ts.map +1 -1
  15. package/dist/mcp-server/tools/definitions/comparison-contracts.js +3 -1
  16. package/dist/mcp-server/tools/definitions/comparison-contracts.js.map +1 -1
  17. package/dist/mcp-server/tools/definitions/nasa-power-compare-locations.tool.d.ts +5 -0
  18. package/dist/mcp-server/tools/definitions/nasa-power-compare-locations.tool.d.ts.map +1 -1
  19. package/dist/mcp-server/tools/definitions/nasa-power-dataframe-describe.tool.d.ts +1 -0
  20. package/dist/mcp-server/tools/definitions/nasa-power-dataframe-describe.tool.d.ts.map +1 -1
  21. package/dist/mcp-server/tools/definitions/nasa-power-get-climatology.tool.d.ts +15 -0
  22. package/dist/mcp-server/tools/definitions/nasa-power-get-climatology.tool.d.ts.map +1 -1
  23. package/dist/mcp-server/tools/definitions/nasa-power-get-climatology.tool.js +21 -3
  24. package/dist/mcp-server/tools/definitions/nasa-power-get-climatology.tool.js.map +1 -1
  25. package/dist/mcp-server/tools/definitions/nasa-power-get-region.tool.d.ts +24 -4
  26. package/dist/mcp-server/tools/definitions/nasa-power-get-region.tool.d.ts.map +1 -1
  27. package/dist/mcp-server/tools/definitions/nasa-power-get-region.tool.js +9 -3
  28. package/dist/mcp-server/tools/definitions/nasa-power-get-region.tool.js.map +1 -1
  29. package/dist/mcp-server/tools/definitions/nasa-power-get-timeseries.tool.d.ts +2 -0
  30. package/dist/mcp-server/tools/definitions/nasa-power-get-timeseries.tool.d.ts.map +1 -1
  31. package/dist/mcp-server/tools/definitions/nasa-power-list-reference.tool.d.ts.map +1 -1
  32. package/dist/mcp-server/tools/definitions/nasa-power-list-reference.tool.js +5 -5
  33. package/dist/mcp-server/tools/definitions/nasa-power-list-reference.tool.js.map +1 -1
  34. package/dist/mcp-server/tools/definitions/point-contracts.d.ts +2 -0
  35. package/dist/mcp-server/tools/definitions/point-contracts.d.ts.map +1 -1
  36. package/dist/mcp-server/tools/definitions/point-contracts.js +1 -5
  37. package/dist/mcp-server/tools/definitions/point-contracts.js.map +1 -1
  38. package/dist/services/canvas/canvas-service.d.ts +9 -3
  39. package/dist/services/canvas/canvas-service.d.ts.map +1 -1
  40. package/dist/services/canvas/canvas-service.js +58 -32
  41. package/dist/services/canvas/canvas-service.js.map +1 -1
  42. package/dist/services/canvas/format.d.ts +0 -1
  43. package/dist/services/canvas/format.d.ts.map +1 -1
  44. package/dist/services/canvas/format.js +3 -3
  45. package/dist/services/canvas/format.js.map +1 -1
  46. package/dist/services/canvas/types.d.ts +11 -1
  47. package/dist/services/canvas/types.d.ts.map +1 -1
  48. package/dist/services/canvas/types.js +2 -3
  49. package/dist/services/canvas/types.js.map +1 -1
  50. package/dist/services/power/normalize.d.ts.map +1 -1
  51. package/dist/services/power/normalize.js +24 -8
  52. package/dist/services/power/normalize.js.map +1 -1
  53. package/dist/services/power/power-service.d.ts.map +1 -1
  54. package/dist/services/power/power-service.js +9 -3
  55. package/dist/services/power/power-service.js.map +1 -1
  56. package/dist/services/power/presets.d.ts +2 -0
  57. package/dist/services/power/presets.d.ts.map +1 -1
  58. package/dist/services/power/presets.js +2 -0
  59. package/dist/services/power/presets.js.map +1 -1
  60. package/dist/services/power/types.d.ts +5 -3
  61. package/dist/services/power/types.d.ts.map +1 -1
  62. package/dist/services/power/types.js +12 -4
  63. package/dist/services/power/types.js.map +1 -1
  64. package/package.json +11 -8
  65. package/server.json +37 -19
  66. package/skills/nasa-power-guide/SKILL.md +73 -0
@@ -1 +1 @@
1
- {"version":3,"file":"nasa-power-list-reference.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/nasa-power-list-reference.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nasa-power-list-reference.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/nasa-power-list-reference.tool.ts"],"names":[],"mappings":"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"}
@@ -103,6 +103,7 @@ export declare const PointOutputSchema: z.ZodObject<{
103
103
  longName: z.ZodOptional<z.ZodString>;
104
104
  units: z.ZodOptional<z.ZodString>;
105
105
  valueKind: z.ZodEnum<{
106
+ categorical: "categorical";
106
107
  number: "number";
107
108
  orientation: "orientation";
108
109
  }>;
@@ -166,6 +167,7 @@ export declare const PointOutputSchema: z.ZodObject<{
166
167
  nullable: z.ZodBoolean;
167
168
  units: z.ZodOptional<z.ZodString>;
168
169
  valueKind: z.ZodOptional<z.ZodEnum<{
170
+ categorical: "categorical";
169
171
  number: "number";
170
172
  orientation: "orientation";
171
173
  }>>;
@@ -1 +1 @@
1
- {"version":3,"file":"point-contracts.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/point-contracts.ts"],"names":[],"mappings":"AAAA,sHAAsH;AACtH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAG3C,OAAO,EAIL,KAAK,YAAY,EAElB,MAAM,2BAA2B,CAAC;AAEnC,iFAAiF;AACjF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAK5B,CAAC;AAEH,4FAA4F;AAC5F,wBAAgB,YAAY,CAC1B,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,GAAG,EAAE,OAAO,EACZ,UAAU,EAAE,MAAM,oHAiBnB"}
1
+ {"version":3,"file":"point-contracts.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/point-contracts.ts"],"names":[],"mappings":"AAAA,sHAAsH;AACtH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAE3C,OAAO,EAIL,KAAK,YAAY,EAClB,MAAM,2BAA2B,CAAC;AAEnC,iFAAiF;AACjF,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAK5B,CAAC;AAEH,4FAA4F;AAC5F,wBAAgB,YAAY,CAC1B,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,GAAG,EAAE,OAAO,EACZ,UAAU,EAAE,MAAM,oHASnB"}
@@ -1,7 +1,6 @@
1
1
  import { z } from '@cyanheads/mcp-ts-core';
2
- import { POWER_LIMITS } from '../../../config/server-config.js';
3
2
  import { getCanvasService } from '../../../services/canvas/index.js';
4
- import { DatasetHandleSchema, getPowerService, PowerDatasetSchema, powerError, } from '../../../services/power/index.js';
3
+ import { DatasetHandleSchema, getPowerService, PowerDatasetSchema, } from '../../../services/power/index.js';
5
4
  /** Full scientific envelope with exact row count and optional staged pointer. */
6
5
  export const PointOutputSchema = PowerDatasetSchema.extend({
7
6
  rowCount: z.number().int().describe('Exact full normalized observation count'),
@@ -14,9 +13,6 @@ export function presentPoint(request, canvasId, ctx, sourceTool) {
14
13
  const budget = power.createCallBudget(producerCtx);
15
14
  const callCtx = { ...producerCtx, signal: budget.signal };
16
15
  const dataset = await power.point(request, callCtx, budget);
17
- if (request.temporalResolution === 'climatology' &&
18
- JSON.stringify(dataset.rows).length > POWER_LIMITS.inlineCharacters)
19
- throw powerError('dataset_limit', 'Point climatology exceeds the complete inline profile budget.');
20
16
  return getCanvasService().present(dataset, canvasId, callCtx, sourceTool);
21
17
  });
22
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"point-contracts.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/point-contracts.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,kBAAkB,EAElB,UAAU,GACX,MAAM,2BAA2B,CAAC;AAEnC,iFAAiF;AACjF,MAAM,CAAC,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,MAAM,CAAC;IACzD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;IAC9E,OAAO,EAAE,mBAAmB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC9C,0EAA0E,CAC3E;CACF,CAAC,CAAC;AAEH,4FAA4F;AAC5F,MAAM,UAAU,YAAY,CAC1B,OAAqB,EACrB,QAA4B,EAC5B,GAAY,EACZ,UAAkB;IAElB,OAAO,gBAAgB,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;QAC1E,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,KAAK,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,EAAE,GAAG,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QAC1D,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5D,IACE,OAAO,CAAC,kBAAkB,KAAK,aAAa;YAC5C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,YAAY,CAAC,gBAAgB;YAEnE,MAAM,UAAU,CACd,eAAe,EACf,+DAA+D,CAChE,CAAC;QACJ,OAAO,gBAAgB,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"point-contracts.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/point-contracts.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,kBAAkB,GAEnB,MAAM,2BAA2B,CAAC;AAEnC,iFAAiF;AACjF,MAAM,CAAC,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,MAAM,CAAC;IACzD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;IAC9E,OAAO,EAAE,mBAAmB,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAC9C,0EAA0E,CAC3E;CACF,CAAC,CAAC;AAEH,4FAA4F;AAC5F,MAAM,UAAU,YAAY,CAC1B,OAAqB,EACrB,QAA4B,EAC5B,GAAY,EACZ,UAAkB;IAElB,OAAO,gBAAgB,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE;QAC1E,MAAM,KAAK,GAAG,eAAe,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,KAAK,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,EAAE,GAAG,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;QAC1D,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5D,OAAO,gBAAgB,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,10 +1,11 @@
1
1
  import type { Context } from '@cyanheads/mcp-ts-core';
2
2
  import type { DataCanvas } from '@cyanheads/mcp-ts-core/canvas';
3
+ import type { AppConfig } from '@cyanheads/mcp-ts-core/config';
3
4
  import type { StorageService } from '@cyanheads/mcp-ts-core/storage';
4
5
  import { type ServerConfig } from '../../config/server-config.js';
5
- import { type ComparisonDataset, type PresentableDataset, type PresentedDataset, type ScientificColumn } from './types.js';
6
+ import { type ComparisonDataset, type PresentableDataset, type PresentedDataset, type RegionalSummaryDataset, type ScientificColumn } from './types.js';
6
7
  type SummaryTable = {
7
- key: 'buckets' | 'locations';
8
+ key: 'buckets' | 'locations' | 'regional';
8
9
  table: string;
9
10
  rows: Record<string, string | number | boolean | null | undefined>[];
10
11
  columns: ScientificColumn[];
@@ -15,6 +16,7 @@ export type CanvasServiceOptions = {
15
16
  storage: StorageService;
16
17
  now?: () => number;
17
18
  config: ServerConfig;
19
+ canvasLimits?: Pick<AppConfig['canvas'], 'maxCanvasesPerTenant' | 'absoluteCapMs'>;
18
20
  reconciliationMs?: number;
19
21
  };
20
22
  /** Explicit token access, atomic admission, and native-lifecycle reconciliation. */
@@ -23,6 +25,7 @@ export declare class CanvasService {
23
25
  private readonly storage;
24
26
  private readonly now;
25
27
  private readonly config;
28
+ private readonly canvasLimits;
26
29
  private readonly records;
27
30
  private readonly producers;
28
31
  private readonly operations;
@@ -38,6 +41,9 @@ export declare class CanvasService {
38
41
  withProducer<T>(kind: 'single' | 'comparison', ctx: Context, run: (ctx: Context) => Promise<T>): Promise<T>;
39
42
  /** Stage comparison summaries with observations only when the scientific envelope overflows. */
40
43
  presentComparison<T extends ComparisonDataset>(dataset: T, canvasId: string | undefined, ctx: Context, sourceTool: string): Promise<PresentedDataset<T>>;
44
+ /** Stage complete cross-cell summaries when the no-observation regional envelope overflows. */
45
+ presentRegion<T extends RegionalSummaryDataset>(dataset: T, canvasId: string | undefined, ctx: Context, sourceTool: string): Promise<PresentedDataset<T>>;
46
+ private summaryTable;
41
47
  /** Preserve the scientific envelope with complete staging and bounded whole-row previews. */
42
48
  present<T extends PresentableDataset>(dataset: T, canvasId: string | undefined, ctx: Context, sourceTool: string, related?: SummaryTable[]): Promise<PresentedDataset<T>>;
43
49
  /** Inspect only the supplied canvas, including original scientific provenance. */
@@ -55,7 +61,7 @@ export declare class CanvasService {
55
61
  type: import("@cyanheads/mcp-ts-core/canvas").ColumnType;
56
62
  nullable: boolean;
57
63
  units?: string;
58
- valueKind?: "number" | "orientation";
64
+ valueKind?: "categorical" | "number" | "orientation";
59
65
  }[];
60
66
  provenance: {
61
67
  sourceTool: string;
@@ -1 +1 @@
1
- {"version":3,"file":"canvas-service.d.ts","sourceRoot":"","sources":["../../../src/services/canvas/canvas-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"canvas-service.d.ts","sourceRoot":"","sources":["../../../src/services/canvas/canvas-service.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export class CanvasService {
12
12
  storage;
13
13
  now;
14
14
  config;
15
+ canvasLimits;
15
16
  records = new Map();
16
17
  producers = new Set();
17
18
  operations = new Set();
@@ -25,6 +26,10 @@ export class CanvasService {
25
26
  this.storage = options.storage;
26
27
  this.now = options.now ?? Date.now;
27
28
  this.config = options.config;
29
+ this.canvasLimits = options.canvasLimits ?? {
30
+ maxCanvasesPerTenant: POWER_LIMITS.canvasesPerTenant,
31
+ absoluteCapMs: POWER_LIMITS.canvasAbsoluteTtlMs,
32
+ };
28
33
  this.timer = setInterval(() => {
29
34
  void this.reconcile().catch(() => {
30
35
  /* Individual records retain reservations and log failures. */
@@ -84,6 +89,30 @@ export class CanvasService {
84
89
  .flatMap((location) => location.summaries.map((summary) => ({ locationId: location.locationId, ...summary })))
85
90
  .map((summary, summaryIndex) => ({ ...summary, summaryIndex })),
86
91
  };
92
+ const tables = ['buckets', 'locations'].map((key) => this.summaryTable(key, summaryRows[key]));
93
+ const compact = {
94
+ ...dataset,
95
+ summaries: dataset.summaries.slice(0, 1),
96
+ locations: dataset.locations.map((location) => ({
97
+ ...location,
98
+ summaries: location.summaries.slice(0, 1),
99
+ summaryCount: location.summaries.length,
100
+ })),
101
+ };
102
+ return this.present(compact, canvasId, ctx, sourceTool, tables);
103
+ }
104
+ /** Stage complete cross-cell summaries when the no-observation regional envelope overflows. */
105
+ presentRegion(dataset, canvasId, ctx, sourceTool) {
106
+ if (this.fits({ ...dataset, rows: [], rowCount: dataset.rows.length, dataset: null }))
107
+ return this.present(dataset, canvasId, ctx, sourceTool);
108
+ const summaries = this.summaryTable('regional', dataset.summaries.map((summary, summaryIndex) => ({ ...summary, summaryIndex })));
109
+ return this.present({
110
+ ...dataset,
111
+ summaries: dataset.summaries.slice(0, 1),
112
+ summaryCount: dataset.summaries.length,
113
+ }, canvasId, ctx, sourceTool, [summaries]);
114
+ }
115
+ summaryTable(key, rows) {
87
116
  const strings = new Set([
88
117
  'parameter',
89
118
  'locationId',
@@ -91,42 +120,30 @@ export class CanvasService {
91
120
  'bucket',
92
121
  'method',
93
122
  'periodKind',
123
+ 'periodKey',
94
124
  'firstReturnedKey',
95
125
  'lastReturnedKey',
96
126
  'lastValidPeriodKey',
97
127
  'lastValidDate',
98
128
  ]);
99
129
  const booleans = new Set(['complete', 'windowClipped']);
100
- const tables = ['buckets', 'locations'].map((key) => {
101
- const rows = summaryRows[key];
102
- const names = new Set(rows.flatMap((row) => Object.keys(row)));
103
- return {
104
- key,
105
- table: `power_${randomUUID().replaceAll('-', '')}`,
106
- rows,
107
- columns: [...names].map((name) => ({
108
- name,
109
- type: strings.has(name)
110
- ? 'VARCHAR'
111
- : booleans.has(name)
112
- ? 'BOOLEAN'
113
- : name === 'summaryIndex'
114
- ? 'INTEGER'
115
- : 'DOUBLE',
116
- nullable: true,
117
- })),
118
- };
119
- });
120
- const compact = {
121
- ...dataset,
122
- summaries: dataset.summaries.slice(0, 1),
123
- locations: dataset.locations.map((location) => ({
124
- ...location,
125
- summaries: location.summaries.slice(0, 1),
126
- summaryCount: location.summaries.length,
130
+ const names = new Set(rows.flatMap((row) => Object.keys(row)));
131
+ return {
132
+ key,
133
+ table: `power_${randomUUID().replaceAll('-', '')}`,
134
+ rows,
135
+ columns: [...names].map((name) => ({
136
+ name,
137
+ type: strings.has(name)
138
+ ? 'VARCHAR'
139
+ : booleans.has(name)
140
+ ? 'BOOLEAN'
141
+ : name === 'summaryIndex'
142
+ ? 'INTEGER'
143
+ : 'DOUBLE',
144
+ nullable: true,
127
145
  })),
128
146
  };
129
- return this.present(compact, canvasId, ctx, sourceTool, tables);
130
147
  }
131
148
  /** Preserve the scientific envelope with complete staging and bounded whole-row previews. */
132
149
  async present(dataset, canvasId, ctx, sourceTool, related = []) {
@@ -157,6 +174,11 @@ export class CanvasService {
157
174
  queryTool: 'nasa_power_dataframe_query',
158
175
  });
159
176
  const relatedHandles = (id, expiresAt) => {
177
+ const regional = related.find((item) => item.key === 'regional');
178
+ if (regional)
179
+ return {
180
+ summaryDataset: handle(id, expiresAt, regional.table, regional.rows.length, regional.columns),
181
+ };
160
182
  const buckets = related.find((item) => item.key === 'buckets');
161
183
  const locations = related.find((item) => item.key === 'locations');
162
184
  return buckets && locations
@@ -185,6 +207,10 @@ export class CanvasService {
185
207
  const expiry = (instance, info) => new Date(Math.min(Date.parse(info.expiresAt ?? instance.expiresAt), Date.parse(instance.expiresAt))).toISOString();
186
208
  const operation = this.stage(canvas, record, table, dataset.rows, ctx, (instance, info) => {
187
209
  const references = relatedHandles(instance.canvasId, expiry(instance, info));
210
+ if (related.length)
211
+ Object.assign(references, {
212
+ dataset: handle(instance.canvasId, expiry(instance, info), table, dataset.rows.length, columns),
213
+ });
188
214
  for (const name of [table, ...related.map((item) => item.table)]) {
189
215
  const staged = this.registration(record, name);
190
216
  Object.assign(staged.provenance.envelope, references);
@@ -415,8 +441,8 @@ export class CanvasService {
415
441
  const tenantRecords = records.filter((item) => item.tenant === ctx.tenantId);
416
442
  const relatedBytes = related.reduce((sum, item) => sum + Buffer.byteLength(JSON.stringify(item.rows)), 0);
417
443
  if (!record &&
418
- (records.length >= POWER_LIMITS.canvasesPerProcess ||
419
- tenantRecords.length >= POWER_LIMITS.canvasesPerTenant))
444
+ (records.length >= this.config.maxCanvasesPerProcess ||
445
+ tenantRecords.length >= this.canvasLimits.maxCanvasesPerTenant))
420
446
  throw canvasError('canvas_capacity_exhausted', 'The process or tenant canvas-count limit is exhausted.', this.config.dataframeDropEnabled
421
447
  ? 'Reuse an explicit live canvas_id, drop all tables from a canvas, or wait for canvas expiry.'
422
448
  : 'Reuse an explicit live canvas_id, or wait for canvas expiry.');
@@ -498,7 +524,7 @@ export class CanvasService {
498
524
  for (const registration of registrations) {
499
525
  const entry = this.registration(record, registration.table);
500
526
  await this.storage.set(this.key(record, registration.table), entry.provenance, ctx, {
501
- ttl: POWER_LIMITS.canvasAbsoluteTtlMs / 1_000,
527
+ ttl: this.canvasLimits.absoluteCapMs / 1_000,
502
528
  });
503
529
  ctx.signal.throwIfAborted();
504
530
  }
@@ -625,7 +651,7 @@ export class CanvasService {
625
651
  await this.removeMetadata(record, table);
626
652
  }
627
653
  if ((record.tables.size === 0 && actual.length === 0) ||
628
- this.now() - record.created >= POWER_LIMITS.canvasAbsoluteTtlMs) {
654
+ this.now() - record.created >= this.canvasLimits.absoluteCapMs) {
629
655
  await this.canvas.drop(record.id, record.ctx);
630
656
  await provider.destroyCanvas(record.id, record.ctx);
631
657
  await this.confirmAbsent(record);
@@ -1 +1 @@
1
- {"version":3,"file":"canvas-service.js","sourceRoot":"","sources":["../../../src/services/canvas/canvas-service.ts"],"names":[],"mappings":"AAAA,wGAAwG;AACxG,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAQzC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAE3E,OAAO,EAAE,YAAY,EAAqB,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAuB,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAKL,gBAAgB,EAChB,iBAAiB,GAElB,MAAM,YAAY,CAAC;AAuCpB,oFAAoF;AACpF,MAAM,OAAO,aAAa;IACP,MAAM,CAAyB;IAC/B,OAAO,CAAiB;IACxB,GAAG,CAAe;IAClB,MAAM,CAAe;IACrB,OAAO,GAAG,IAAI,GAAG,EAAwB,CAAC;IAC1C,SAAS,GAAG,IAAI,GAAG,EAAY,CAAC;IAChC,UAAU,GAAG,IAAI,GAAG,EAAoB,CAAC;IACzC,kBAAkB,GAAG,IAAI,eAAe,EAAE,CAAC;IACpD,UAAU,GAAG,CAAC,CAAC;IACf,OAAO,GAAG,KAAK,CAAC;IAChB,cAAc,CAA4B;IACjC,KAAK,CAAiC;IAEvD,YAAY,OAA6B;QACvC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;QACnC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;YAC5B,KAAK,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC/B,8DAA8D;YAChE,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,OAAO,CAAC,gBAAgB,IAAI,MAAM,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,kFAAkF;IAClF,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC;IACnC,CAAC;IACD,yFAAyF;IACzF,KAAK,CAAC,YAAY,CAChB,IAA6B,EAC7B,GAAY,EACZ,GAAiC;QAEjC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,KAAK,GACT,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC;YACnF,YAAY,CAAC,QAAQ,CAAC;QACxB,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,MAAM;aAClB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC;aACxC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACxC,IACE,MAAM,CAAC,MAAM,IAAI,YAAY,CAAC,SAAS;YACvC,KAAK,GAAG,KAAK,GAAG,YAAY,CAAC,oBAAoB;YACjD,MAAM,GAAG,KAAK,GAAG,YAAY,CAAC,mBAAmB;YAEjD,MAAM,WAAW,CACf,2BAA2B,EAC3B,uDAAuD,CACxD,CAAC;QACJ,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC;YAC7B,GAAG,CAAC,MAAM;YACV,UAAU,CAAC,MAAM;YACjB,IAAI,CAAC,kBAAkB,CAAC,MAAM;YAC9B,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC;SAC7C,CAAC,CAAC;QACH,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,EAAQ,CAAC;QAC5E,MAAM,QAAQ,GAAa;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACxB,KAAK;YACL,UAAU;YACV,OAAO;SACR,CAAC;QACF,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7B,IAAI,CAAC;YACH,OAAO,MAAM,GAAG,CAAC,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;QACvC,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAChC,MAAM,EAAE,CAAC;QACX,CAAC;IACH,CAAC;IAED,gGAAgG;IAChG,iBAAiB,CACf,OAAU,EACV,QAA4B,EAC5B,GAAY,EACZ,UAAkB;QAElB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YACnF,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QAC1D,MAAM,WAAW,GAAG;YAClB,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;YACzF,SAAS,EAAE,OAAO,CAAC,SAAS;iBACzB,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE,CACpB,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,CACvF;iBACA,GAAG,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;SAClE,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC;YACtB,WAAW;YACX,YAAY;YACZ,OAAO;YACP,QAAQ;YACR,QAAQ;YACR,YAAY;YACZ,kBAAkB;YAClB,iBAAiB;YACjB,oBAAoB;YACpB,eAAe;SAChB,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC;QACxD,MAAM,MAAM,GAAoB,CAAC,SAAS,EAAE,WAAW,CAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YAC7E,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAC9B,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC/D,OAAO;gBACL,GAAG;gBACH,KAAK,EAAE,SAAS,UAAU,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE;gBAClD,IAAI;gBACJ,OAAO,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oBACjC,IAAI;oBACJ,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;wBACrB,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;4BAClB,CAAC,CAAC,SAAS;4BACX,CAAC,CAAC,IAAI,KAAK,cAAc;gCACvB,CAAC,CAAC,SAAS;gCACX,CAAC,CAAC,QAAQ;oBAChB,QAAQ,EAAE,IAAI;iBACf,CAAC,CAAC;aACJ,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,GAAG;YACd,GAAG,OAAO;YACV,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YACxC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;gBAC9C,GAAG,QAAQ;gBACX,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;gBACzC,YAAY,EAAE,QAAQ,CAAC,SAAS,CAAC,MAAM;aACxC,CAAC,CAAC;SACJ,CAAC;QACF,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAClE,CAAC;IAED,6FAA6F;IAC7F,KAAK,CAAC,OAAO,CACX,OAAU,EACV,QAA4B,EAC5B,GAAY,EACZ,UAAkB,EAClB,OAAO,GAAmB,EAAE;QAE5B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CACjC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EACjE,CAAC,CACF,CAAC;QACF,IACE,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,IAAI;YACvC,KAAK,GAAG,YAAY,GAAG,YAAY,CAAC,QAAQ;YAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC;YAC5D,OAAO,CAAC,UAAU,CAAC,MAAM,GAAG,YAAY,CAAC,OAAO;YAEhD,MAAM,UAAU,CACd,eAAe,EACf,2DAA2D,CAC5D,CAAC;QACJ,MAAM,MAAM,GAAG,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QAC5E,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QACxD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;YACrC,MAAM,UAAU,CACd,eAAe,EACf,2DAA2D,CAC5D,CAAC;QACJ,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,SAAS,UAAU,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC;QAC1D,MAAM,MAAM,GAAG,CACb,EAAU,EACV,SAAiB,EACjB,IAAY,EACZ,QAAgB,EAChB,MAA0B,EAC1B,EAAE,CAAC,CAAC;YACJ,SAAS,EAAE,EAAE;YACb,KAAK,EAAE,IAAI;YACX,QAAQ;YACR,SAAS;YACT,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,IAAI,EAAE,CAAC,CAAC;YACnF,YAAY,EAAE,+BAAwC;YACtD,SAAS,EAAE,4BAAqC;SACjD,CAAC,CAAC;QACH,MAAM,cAAc,GAAG,CAAC,EAAU,EAAE,SAAiB,EAAE,EAAE;YACvD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC;YAC/D,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,WAAW,CAAC,CAAC;YACnE,OAAO,OAAO,IAAI,SAAS;gBACzB,CAAC,CAAC;oBACE,eAAe,EAAE;wBACf,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC;wBACnF,SAAS,EAAE,MAAM,CACf,EAAE,EACF,SAAS,EACT,SAAS,CAAC,KAAK,EACf,SAAS,CAAC,IAAI,CAAC,MAAM,EACrB,SAAS,CAAC,OAAO,CAClB;qBACF;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;QACT,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,EAAU,EAAE,SAAiB,EAAE,OAAyB,EAAE,EAAE,CAAC,CAAC;YAC5E,GAAG,OAAO;YACV,GAAG,cAAc,CAAC,EAAE,EAAE,SAAS,CAAC;YAChC,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM;YAC7B,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;SACpE,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAClD,MAAM,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC,CAC/D,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM;YACT,MAAM,WAAW,CACf,iBAAiB,EACjB,yDAAyD,CAC1D,CAAC;QACJ,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACvB,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAChG,MAAM,MAAM,GAAG,CAAC,QAAwB,EAAE,IAAe,EAAE,EAAE,CAC3D,IAAI,IAAI,CACN,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAC3F,CAAC,WAAW,EAAE,CAAC;QAClB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAC1B,MAAM,EACN,MAAM,EACN,KAAK,EACL,OAAO,CAAC,IAAI,EACZ,GAAG,EACH,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE;YACjB,MAAM,UAAU,GAAG,cAAc,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;YAC7E,KAAK,MAAM,IAAI,IAAI,CAAC,KAAK,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBACjE,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBAC/C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;gBACtD,MAAM,KAAK,GACT,IAAI,KAAK,KAAK;oBACZ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM;oBACrB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC;gBAC/D,IACE,OAAO,CAAC,MAAM,GAAG,CAAC;oBAClB,CAAC,IAAI,CAAC,IAAI,CAAC;wBACT,SAAS,EAAE,QAAQ,CAAC,QAAQ;wBAC5B,SAAS,EAAE,QAAQ,CAAC,SAAS;wBAC7B,MAAM,EAAE;4BACN;gCACE,KAAK,EAAE,IAAI;gCACX,QAAQ,EAAE,KAAK;gCACf,SAAS,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC;gCACjC,OAAO,EAAE,MAAM,CAAC,OAAO;gCACvB,UAAU,EAAE,MAAM,CAAC,UAAU;6BAC9B;yBACF;qBACF,CAAC;oBAEF,MAAM,UAAU,CACd,eAAe,EACf,+DAA+D,CAChE,CAAC;YACN,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;gBACxE,MAAM,UAAU,CACd,eAAe,EACf,2DAA2D,CAC5D,CAAC;QACN,CAAC,EACD,OAAO,CACR,CAAC;QACF,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,MAAM,SAAS,CAAC;YAC3C,OAAO,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;QACpE,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,kFAAkF;IAClF,QAAQ,CAAC,QAAgB,EAAE,KAAyB,EAAE,GAAY;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE;YAC5D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC7F,IAAI,KAAK,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM;gBAC/B,MAAM,WAAW,CAAC,eAAe,EAAE,gCAAgC,CAAC,CAAC;YACvE,MAAM,SAAS,GAAG,EAAE,CAAC;YACrB,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;gBAC1B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC5C,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO;oBAAE,SAAS;gBACxC,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;gBAC5B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAa,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;gBACxF,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;gBAC5B,IAAI,CAAC,UAAU;oBACb,MAAM,IAAI,QAAQ,CAChB,gBAAgB,CAAC,aAAa,EAC9B,yCAAyC,CAC1C,CAAC;gBACJ,SAAS,CAAC,IAAI,CAAC;oBACb,KAAK,EAAE,IAAI,CAAC,IAAI;oBAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ;oBACvB,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI;oBACjC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;wBACnC,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC;wBAC5E,OAAO;4BACL,GAAG,MAAM;4BACT,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,IAAI;4BACjC,GAAG,CAAC,UAAU,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC;4BACvE,GAAG,CAAC,UAAU,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,SAAS,EAAE,CAAC;yBACpF,CAAC;oBACJ,CAAC,CAAC;oBACF,UAAU;iBACX,CAAC,CAAC;YACL,CAAC;YACD,MAAM,MAAM,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;YACzF,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;gBACpB,MAAM,WAAW,CACf,aAAa,EACb,wDAAwD,EACxD,gIAAgI,CACjI,CAAC;YACJ,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,kFAAkF;IAClF,KAAK,CAAC,KAAK,CAAC,QAAgB,EAAE,KAAyC,EAAE,GAAY;QACnF,IACE,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,YAAY,CAAC,aAAa;YAC7C,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YAE3F,MAAM,WAAW,CAAC,aAAa,EAAE,kDAAkD,CAAC,CAAC;QACvF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,GAAG,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC;QACzE,MAAM,MAAM,GACV,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,GAAG,QAAQ;YACvD,CAAC,CAAC,sEAAsE;YACxE,CAAC,CAAC,SAAS,CAAC;QAChB,IAAI,IAAI,CAAC,UAAU,IAAI,YAAY,CAAC,OAAO;YACzC,MAAM,WAAW,CAAC,2BAA2B,EAAE,4CAA4C,CAAC,CAAC;QAC/F,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;gBAC1D,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC;oBAC7B,GAAG,CAAC,MAAM;oBACV,IAAI,CAAC,kBAAkB,CAAC,MAAM;oBAC9B,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,CAAC;iBAC1C,CAAC,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE;oBAC7C,QAAQ;oBACR,kBAAkB,EAAE,IAAI;oBACxB,MAAM;iBACP,CAAC,CAAC;gBACH,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC;oBACrC,SAAS,EAAE,QAAQ;oBACnB,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM;oBAC9B,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,KAAK;oBACpC,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,OAAO;iBACnE,CAAC,CAAC;gBACH,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC;oBAC5B,MAAM,WAAW,CAAC,aAAa,EAAE,kDAAkD,CAAC,CAAC;gBACvF,IAAI,MAAM;oBAAE,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACtC,OAAO,MAAM,CAAC;YAChB,CAAC,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC;IACH,CAAC;IAED,+EAA+E;IAC/E,KAAK,CAAC,IAAI,CAAC,QAAgB,EAAE,KAAwB,EAAE,GAAY;QACjE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB;YACnC,MAAM,IAAI,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,yCAAyC,CAAC,CAAC;QAC5F,OAAO,MAAM,IAAI,CAAC,OAAO,CACvB,QAAQ,EACR,GAAG,EACH,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE;YACzB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC9C,IAAI,MAAM;gBAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;YAClC,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACjD,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YAC/C,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzE,MAAM,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC/C,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YACnC,CAAC;YACD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,CAAC;QAC9D,CAAC,EACD,IAAI,CACL,CAAC;IACJ,CAAC;IAED,mFAAmF;IACnF,SAAS;QACP,IAAI,IAAI,CAAC,cAAc;YAAE,OAAO,IAAI,CAAC,cAAc,CAAC;QACpD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;YAC9C,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;QAClC,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,uFAAuF;IACvF,KAAK,CAAC,QAAQ;QACZ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAChC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS;YAAE,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACnE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;QAClF,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAC/C,MAAM,IAAI,CAAC,cAAc,CAAC;QAC1B,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;IACzB,CAAC;IAEO,aAAa;QACnB,IAAI,IAAI,CAAC,OAAO;YACd,MAAM,IAAI,QAAQ,CAChB,gBAAgB,CAAC,kBAAkB,EACnC,wCAAwC,CACzC,CAAC;IACN,CAAC;IACO,MAAM,CAAC,GAAY;QACzB,IAAI,CAAC,GAAG,CAAC,QAAQ;YACf,MAAM,IAAI,QAAQ,CAChB,gBAAgB,CAAC,aAAa,EAC9B,kDAAkD,CACnD,CAAC;QACJ,OAAO,GAAG,CAAC,QAAQ,CAAC;IACtB,CAAC;IACO,YAAY,CAAC,GAAY;QAC/B,OAAO,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,IAAI,eAAe,EAAE,CAAC,MAAM,EAAE,CAAC;IAC1D,CAAC;IACO,GAAG,CAAC,MAAoB,EAAE,KAAa;QAC7C,OAAO,gBAAgB,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,EAAE,IAAI,KAAK,EAAE,CAAC;IACnF,CAAC;IAEO,OAAO,CAAC,OAA2B;QACzC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI;YAAE,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;gBAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrF,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC9F,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;QAC9E,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACrC,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YACxE,MAAM,IAAI,GACR,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,SAAS,EAAE,SAAS,KAAK,aAAa;gBACzD,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;oBAClB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,QAAQ,CAAC;YACjB,OAAO;gBACL,IAAI;gBACJ,IAAI;gBACJ,QAAQ,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;gBAC7B,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACtD,CAAC;QAC/B,CAAC,CAAC,CAAC;QACH,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,IAAI;YAC5B,KAAK,MAAM,MAAM,IAAI,MAAM,EAAE,CAAC;gBAC5B,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC/B,IACE,CAAC,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;oBAC7D,CAAC,KAAK,KAAK,IAAI;wBACb,KAAK,KAAK,SAAS;wBACnB,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;4BACnF,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS;gCACxB,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;4BAC1D,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC;oBAE9D,MAAM,IAAI,QAAQ,CAChB,gBAAgB,CAAC,kBAAkB,EACnC,uEAAuE,CACxE,CAAC;YACN,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,IAAI,CAAC,MAAc,EAAE,MAAe;QAC1C,OAAO,CACL,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM;YAC1E,YAAY,CAAC,gBAAgB;YAC/B,gBAAgB,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBACzE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,MAAM,CAAC;gBACrD,YAAY,CAAC,gBAAgB,CAChC,CAAC;IACJ,CAAC;IAEO,OAAO,CACb,IAAsB,EACtB,MAA6C;QAE7C,KAAK,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;YAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YACrC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAAE,OAAO,OAAO,CAAC;QACjD,CAAC;QACD,MAAM,UAAU,CACd,eAAe,EACf,8EAA8E,CAC/E,CAAC;IACJ,CAAC;IAEO,OAAO,CACb,EAAsB,EACtB,GAAY,EACZ,KAAa,EACb,KAAa,EACb,OAA2B,EAC3B,OAAU,EACV,UAAkB,EAClB,OAAO,GAAmB,EAAE;QAE5B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3C,IAAI,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACnD,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,CAAC;YACrE,MAAM,WAAW,CAAC,kBAAkB,EAAE,8BAA8B,CAAC,CAAC;QACxE,MAAM,QAAQ,GAAG,CAAC,KAAqB,EAAE,EAAE,CACzC,KAAK,CAAC,MAAM,CACV,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CACZ,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,QAAQ,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,EACxF,CAAC,CACF,CAAC;QACJ,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7E,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CACjC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EACjE,CAAC,CACF,CAAC;QACF,IACE,CAAC,MAAM;YACP,CAAC,OAAO,CAAC,MAAM,IAAI,YAAY,CAAC,kBAAkB;gBAChD,aAAa,CAAC,MAAM,IAAI,YAAY,CAAC,iBAAiB,CAAC;YAEzD,MAAM,WAAW,CACf,2BAA2B,EAC3B,wDAAwD,EACxD,IAAI,CAAC,MAAM,CAAC,oBAAoB;gBAC9B,CAAC,CAAC,6FAA6F;gBAC/F,CAAC,CAAC,8DAA8D,CACnE,CAAC;QACJ,IACE,QAAQ,CAAC,OAAO,CAAC,GAAG,KAAK,GAAG,YAAY,GAAG,YAAY,CAAC,oBAAoB;YAC5E,QAAQ,CAAC,aAAa,CAAC,GAAG,KAAK,GAAG,YAAY,GAAG,YAAY,CAAC,mBAAmB;YACjF,CAAC,MAAM;gBACL,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC;YAE1F,MAAM,WAAW,CACf,2BAA2B,EAC3B,6DAA6D,CAC9D,CAAC;QACJ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,GAAG,OAAO,CAAC;QAC7C,MAAM,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC;YACxC,UAAU;YACV,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC9C,SAAS,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,WAAW,EAAE;SAC9C,CAAC,CAAC;QACH,MAAM,KAAK;YACT,EAAE,EAAE,UAAU,EAAE;YAChB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YACxB,GAAG,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC;YAC3B,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;YACnB,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,IAAI,GAAG,EAAE;SAClB,CAAC;QACF,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QACxE,KAAK,MAAM,IAAI,IAAI,OAAO;YACxB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE;gBAC5B,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACnD,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,UAAU,EAAE,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC;gBAC9C,OAAO,EAAE,IAAI;aACd,CAAC,CAAC;QACL,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QACpC,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,KAAK,CACjB,MAAkB,EAClB,MAAoB,EACpB,KAAa,EACb,IAAsB,EACtB,GAAY,EACZ,QAA6D,EAC7D,OAAO,GAAmB,EAAE;QAE5B,IAAI,QAAoC,CAAC;QACzC,MAAM,aAAa,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,IAAI,IAA2B,CAAC;QAChC,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE;gBAC3E,MAAM,EAAE,GAAG,CAAC,MAAM;aACnB,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC/B,MAAM,CAAC,EAAE,GAAG,QAAQ,CAAC,QAAQ,CAAC;gBAC9B,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACtC,CAAC;YACD,IAAI,CAAC,MAAM,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC;gBACjE,MAAM,IAAI,QAAQ,CAChB,gBAAgB,CAAC,QAAQ,EACzB,iDAAiD,CAClD,CAAC;YACJ,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;gBACzC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;gBAC5D,MAAM,MAAM,GAAmB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC9E,IAAI;oBACJ,IAAI;oBACJ,QAAQ,EAAE,QAAQ,IAAI,IAAI;iBAC3B,CAAC,CAAC,CAAC;gBACJ,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBAChC,MAAM,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,EAAE;oBAClE,MAAM;oBACN,KAAK,EAAE,YAAY,CAAC,UAAU;oBAC9B,MAAM,EAAE,GAAG,CAAC,MAAM;iBACnB,CAAC,CAAC;gBACH,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;gBAC5B,MAAM,UAAU,GAAG,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnF,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,QAAQ,KAAK,YAAY,CAAC,IAAI,CAAC,MAAM;oBACjE,MAAM,IAAI,QAAQ,CAChB,gBAAgB,CAAC,aAAa,EAC9B,yDAAyD,CAC1D,CAAC;gBACJ,IAAI,YAAY,CAAC,KAAK,KAAK,KAAK;oBAAE,IAAI,GAAG,UAAU,CAAC;YACtD,CAAC;YACD,IAAI,CAAC,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;YACnE,UAAU,GAAG,IAAI,CAAC;YAClB,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACzB,UAAU,GAAG,KAAK,CAAC;YACnB,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;gBACzC,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;gBAC5D,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,GAAG,EAAE;oBAClF,GAAG,EAAE,YAAY,CAAC,mBAAmB,GAAG,KAAK;iBAC9C,CAAC,CAAC;gBACH,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC9B,CAAC;YACD,KAAK,MAAM,YAAY,IAAI,aAAa;gBACtC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC;YAChE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,IAAI,MAAM,CAAC,OAAO;oBAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;oBACzC,IAAI,CAAC;wBACH,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC;4BACjC,MAAM,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;wBACnF,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;oBACxD,CAAC;oBAAC,OAAO,YAAY,EAAE,CAAC;wBACtB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAClB,2DAA2D,EAC3D,YAAY,YAAY,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAC/E,CAAC;oBACJ,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC;oBACH,IAAI,QAAQ,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;wBAC/C,MAAM,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;wBACzC,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;oBACnC,CAAC;gBACH,CAAC;gBAAC,OAAO,YAAY,EAAE,CAAC;oBACtB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAClB,kEAAkE,EAClE,YAAY,YAAY,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAC/E,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,UAAU;gBAAE,MAAM,KAAK,CAAC;YAC5B,eAAe,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC;QACtB,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,MAAoB,EAAE,KAAa;QACtD,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAC7D,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,OAAO,CACnB,EAAU,EACV,GAAY,EACZ,GAAmE,EACnE,IAAI,GAAG,KAAK;QAEZ,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM;YAAE,MAAM,WAAW,CAAC,oBAAoB,EAAE,sCAAsC,CAAC,CAAC;QAC7F,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO;YAC7D,MAAM,WAAW,CACf,kBAAkB,EAClB,8BAA8B,EAC9B,IAAI,CAAC,CAAC,CAAC,uEAAuE,CAAC,CAAC,CAAC,SAAS,CAC3F,CAAC;QACJ,IAAI,MAAM,CAAC,IAAI;YACb,MAAM,WAAW,CAAC,2BAA2B,EAAE,6CAA6C,CAAC,CAAC;QAChG,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,MAAM,SAAS,GAAG,CAAC,KAAK,IAAI,EAAE;YAC5B,IAAI,CAAC;gBACH,OAAO,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;YAClF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAC/B,CAAC;oBAAS,CAAC;gBACT,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC;YACtB,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QACL,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,CAAC;YACH,OAAO,MAAM,SAAS,CAAC;QACzB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,MAAoB,EAAE,KAAa;QAC9D,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/D,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IACO,KAAK,CAAC,aAAa,CAAC,MAAoB;QAC9C,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,MAAM,KAAK,kBAAkB,EAAE,CAAC;gBAC3E,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;oBAAE,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBACnF,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBAC/B,OAAO;YACT,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IACO,KAAK,CAAC,KAAK;QACjB,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QACzB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAC3C,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,OAAO;gBAAE,SAAS;YAC5C,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;YACnB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC3C,IAAI,MAAmB,CAAC;gBACxB,IAAI,CAAC;oBACH,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC1D,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC,CAAC,KAAK,YAAY,QAAQ,CAAC,IAAI,KAAK,CAAC,IAAI,EAAE,MAAM,KAAK,kBAAkB;wBAC3E,MAAM,KAAK,CAAC;oBACd,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;wBAAE,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;oBACnF,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;oBAC/B,SAAS;gBACX,CAAC;gBACD,KAAK,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oBAC5C,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;wBACjE,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;wBAClD,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;oBAC1D,CAAC;oBACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC;wBAAE,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBAC5F,CAAC;gBACD,IACE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC;oBACjD,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,OAAO,IAAI,YAAY,CAAC,mBAAmB,EAC/D,CAAC;oBACD,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;oBAC9C,MAAM,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;oBACpD,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAClB,4DAA4D,EAC5D,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAC1D,CAAC;YACJ,CAAC;oBAAS,CAAC;gBACT,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC;YACtB,CAAC;QACH,CAAC;IACH,CAAC;CACF;AAED,0EAA0E;AAC1E,MAAM,UAAU,mBAAmB,CAAC,OAA6B;IAC/D,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC;AACD,IAAI,OAAkC,CAAC;AACvC,0DAA0D;AAC1D,MAAM,UAAU,iBAAiB,CAAC,OAA6B;IAC7D,OAAO,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IACvC,OAAO,OAAO,CAAC;AACjB,CAAC;AACD,yDAAyD;AACzD,MAAM,UAAU,gBAAgB;IAC9B,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IAClE,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"canvas-service.js","sourceRoot":"","sources":["../../../src/services/canvas/canvas-service.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- /** @fileoverview Compact faithful analytical rendering. @module services/canvas/format */
2
1
  /** Preserve every value and newline, even when values contain Markdown fences. */
3
2
  export declare function formatFaithfully(value: object): {
4
3
  type: 'text';
@@ -1 +1 @@
1
- {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../src/services/canvas/format.ts"],"names":[],"mappings":"AAAA,0FAA0F;AAE1F,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM;UAiDlC,MAAM;;IAIjB"}
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../src/services/canvas/format.ts"],"names":[],"mappings":"AAGA,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM;UAiDlC,MAAM;;IAIjB"}
@@ -1,4 +1,5 @@
1
1
  /** @fileoverview Compact faithful analytical rendering. @module services/canvas/format */
2
+ import { markdownLink } from '@cyanheads/mcp-ts-core/utils';
2
3
  /** Preserve every value and newline, even when values contain Markdown fences. */
3
4
  export function formatFaithfully(value) {
4
5
  const literal = (text) => {
@@ -11,10 +12,9 @@ export function formatFaithfully(value) {
11
12
  };
12
13
  const render = (item) => {
13
14
  if (typeof item === 'string') {
14
- const link = (url) => `[${url.replace(/[\\[\]]/g, '\\$&')}](<${url.replaceAll('>', '%3E')}>)`;
15
15
  if (/^https?:\/\/[^\s<>]+$/.test(item))
16
- return link(item);
17
- const links = [...item.matchAll(/https?:\/\/[^\s<>]+/g)].map(([url]) => link(url));
16
+ return markdownLink(item, item);
17
+ const links = [...item.matchAll(/https?:\/\/[^\s<>]+/g)].map(([url]) => markdownLink(url, url));
18
18
  return [literal(item), ...links].join('\n\n');
19
19
  }
20
20
  if (Array.isArray(item)) {
@@ -1 +1 @@
1
- {"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/services/canvas/format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../../src/services/canvas/format.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /** @fileoverview Analytical workspace presentation contracts. @module services/canvas/types */
2
2
  import { z } from '@cyanheads/mcp-ts-core';
3
3
  import type { ColumnSchema } from '@cyanheads/mcp-ts-core/canvas';
4
- import { type BucketSummary, type DatasetHandle, type NumericSummary, type ObservationRow, type ParameterMetadata } from '../power/types.js';
4
+ import { type BucketSummary, type CellSummary, type DatasetHandle, type NumericSummary, type ObservationRow, type ParameterMetadata } from '../power/types.js';
5
5
  /** Narrow scientific envelope; presentation preserves every additional caller field. */
6
6
  export type PresentableDataset = {
7
7
  rows: ObservationRow[];
@@ -16,6 +16,12 @@ export type PresentedDataset<T extends PresentableDataset> = Omit<T, 'rows'> & {
16
16
  buckets: DatasetHandle;
17
17
  locations: DatasetHandle;
18
18
  };
19
+ summaryDataset?: DatasetHandle;
20
+ summaryCount?: number;
21
+ };
22
+ /** Regional summaries before optional related-table staging. */
23
+ export type RegionalSummaryDataset = PresentableDataset & {
24
+ summaries: CellSummary[];
19
25
  };
20
26
  /** Complete comparison summaries before presentation; other scientific fields remain untouched. */
21
27
  export type ComparisonDataset = PresentableDataset & {
@@ -40,6 +46,7 @@ export declare const SummaryDatasetsSchema: z.ZodObject<{
40
46
  nullable: z.ZodBoolean;
41
47
  units: z.ZodOptional<z.ZodString>;
42
48
  valueKind: z.ZodOptional<z.ZodEnum<{
49
+ categorical: "categorical";
43
50
  number: "number";
44
51
  orientation: "orientation";
45
52
  }>>;
@@ -58,6 +65,7 @@ export declare const SummaryDatasetsSchema: z.ZodObject<{
58
65
  nullable: z.ZodBoolean;
59
66
  units: z.ZodOptional<z.ZodString>;
60
67
  valueKind: z.ZodOptional<z.ZodEnum<{
68
+ categorical: "categorical";
61
69
  number: "number";
62
70
  orientation: "orientation";
63
71
  }>>;
@@ -86,6 +94,7 @@ export declare const DescribedTableSchema: z.ZodObject<{
86
94
  nullable: z.ZodBoolean;
87
95
  units: z.ZodOptional<z.ZodString>;
88
96
  valueKind: z.ZodOptional<z.ZodEnum<{
97
+ categorical: "categorical";
89
98
  number: "number";
90
99
  orientation: "orientation";
91
100
  }>>;
@@ -109,6 +118,7 @@ export declare const DescribeResultSchema: z.ZodObject<{
109
118
  nullable: z.ZodBoolean;
110
119
  units: z.ZodOptional<z.ZodString>;
111
120
  valueKind: z.ZodOptional<z.ZodEnum<{
121
+ categorical: "categorical";
112
122
  number: "number";
113
123
  orientation: "orientation";
114
124
  }>>;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/canvas/types.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,aAAa,EAGlB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACvB,MAAM,mBAAmB,CAAC;AAE3B,wFAAwF;AACxF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,UAAU,EAAE,iBAAiB,EAAE,CAAC;CACjC,CAAC;AACF,gFAAgF;AAChF,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,kBAAkB,IAAI,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG;IAC7E,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAC9B,eAAe,CAAC,EAAE;QAAE,OAAO,EAAE,aAAa,CAAC;QAAC,SAAS,EAAE,aAAa,CAAA;KAAE,CAAC;CACxE,CAAC;AACF,mGAAmG;AACnG,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,GAAG;IACnD,SAAS,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC,EAAE,CAAC;IAC7E,SAAS,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,cAAc,EAAE,CAAA;KAAE,EAAE,CAAC;CAClE,CAAC;AACF,yFAAyF;AACzF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAKhC,CAAC;AACH,2DAA2D;AAC3D,MAAM,MAAM,gBAAgB,GAAG,YAAY,GACzC,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC;AAC1D,8DAA8D;AAC9D,eAAO,MAAM,gBAAgB;;;;iBAM3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC1D,+DAA+D;AAC/D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;iBAuBwB,CAAC;AAC1D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;iBAI/B,CAAC;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;iBAQ5B,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/canvas/types.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAC/F,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,aAAa,EAGlB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EAEvB,MAAM,mBAAmB,CAAC;AAE3B,wFAAwF;AACxF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,UAAU,EAAE,iBAAiB,EAAE,CAAC;CACjC,CAAC;AACF,gFAAgF;AAChF,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,kBAAkB,IAAI,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG;IAC7E,IAAI,EAAE,cAAc,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAC9B,eAAe,CAAC,EAAE;QAAE,OAAO,EAAE,aAAa,CAAC;QAAC,SAAS,EAAE,aAAa,CAAA;KAAE,CAAC;IACvE,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AACF,gEAAgE;AAChE,MAAM,MAAM,sBAAsB,GAAG,kBAAkB,GAAG;IAAE,SAAS,EAAE,WAAW,EAAE,CAAA;CAAE,CAAC;AACvF,mGAAmG;AACnG,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,GAAG;IACnD,SAAS,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,CAAC,EAAE,CAAC;IAC7E,SAAS,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,cAAc,EAAE,CAAA;KAAE,EAAE,CAAC;CAClE,CAAC;AACF,yFAAyF;AACzF,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAKhC,CAAC;AACH,2DAA2D;AAC3D,MAAM,MAAM,gBAAgB,GAAG,YAAY,GACzC,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC;AAC1D,8DAA8D;AAC9D,eAAO,MAAM,gBAAgB;;;;iBAM3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC1D,+DAA+D;AAC/D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;iBAsBwB,CAAC;AAC1D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;iBAI/B,CAAC;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;iBAQ5B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /** @fileoverview Analytical workspace presentation contracts. @module services/canvas/types */
2
2
  import { z } from '@cyanheads/mcp-ts-core';
3
- import { DatasetHandleSchema, JsonValueSchema, } from '../power/types.js';
3
+ import { DatasetHandleSchema, JsonValueSchema, ParameterMetadataSchema, } from '../power/types.js';
4
4
  /** Full summary tables; summaryIndex preserves original array order across SQL pages. */
5
5
  export const SummaryDatasetsSchema = z.object({
6
6
  buckets: DatasetHandleSchema.describe('Complete bucket summaries ordered by summaryIndex'),
@@ -27,8 +27,7 @@ export const DescribedTableSchema = z
27
27
  type: z.string().describe('Actual native SQL type'),
28
28
  nullable: z.boolean().describe('Whether SQL NULL is permitted'),
29
29
  units: z.string().optional().describe('Source physical units'),
30
- valueKind: z
31
- .enum(['number', 'orientation'])
30
+ valueKind: ParameterMetadataSchema.shape.valueKind
32
31
  .optional()
33
32
  .describe('Scientific value interpretation'),
34
33
  })
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/services/canvas/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/services/canvas/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../../../src/services/power/normalize.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAC/G,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAK3C,OAAO,EACL,KAAK,cAAc,EAGnB,KAAK,cAAc,EAEnB,KAAK,YAAY,EAEjB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,YAAY,CAAC;AAmCpB,iEAAiE;AACjE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;2IAAsC,CAAC;AACtE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;2IAMJ,CAAC;AAC7B,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,kFAAkF;AAClF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,aAAa,GAAG,MAAM,EAAE,CAanF;AAED,8EAA8E;AAC9E,wBAAgB,WAAW,CACzB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,UAAU,EACtB,YAAY,CAAC,EAAE,MAAM,GACpB,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,CAgCvF;AAkED,gGAAgG;AAChG,MAAM,MAAM,iBAAiB,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC;AAgF5E,+EAA+E;AAC/E,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,MAAM,CAWlE;AACD,qEAAqE;AACrE,wBAAgB,cAAc,CAC5B,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,cAAc,GACrB,YAAY,CAyBd;AACD,gFAAgF;AAChF,wBAAgB,eAAe,CAC7B,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,cAAc,GACrB,eAAe,CAoBjB"}
1
+ {"version":3,"file":"normalize.d.ts","sourceRoot":"","sources":["../../../src/services/power/normalize.ts"],"names":[],"mappings":"AAAA,+GAA+G;AAC/G,OAAO,EAAE,CAAC,EAAE,MAAM,wBAAwB,CAAC;AAK3C,OAAO,EACL,KAAK,cAAc,EAGnB,KAAK,cAAc,EAEnB,KAAK,YAAY,EAEjB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,YAAY,CAAC;AAmCpB,iEAAiE;AACjE,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;2IAAsC,CAAC;AACtE,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;2IAMJ,CAAC;AAC7B,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,kFAAkF;AAClF,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,aAAa,GAAG,MAAM,EAAE,CAanF;AAED,8EAA8E;AAC9E,wBAAgB,WAAW,CACzB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,UAAU,EACtB,YAAY,CAAC,EAAE,MAAM,GACpB,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,YAAY,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC,CAgCvF;AAuED,gGAAgG;AAChG,MAAM,MAAM,iBAAiB,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC;AA6F5E,+EAA+E;AAC/E,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,MAAM,CAWlE;AACD,qEAAqE;AACrE,wBAAgB,cAAc,CAC5B,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,cAAc,GACrB,YAAY,CAyBd;AACD,gFAAgF;AAChF,wBAAgB,eAAe,CAC7B,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,cAAc,GACrB,eAAe,CAoBjB"}