qyl-mcp-server 2.1.0 → 4.0.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 (47) hide show
  1. package/README.md +44 -21
  2. package/dist/collector.d.ts +15 -2
  3. package/dist/collector.js +67 -3
  4. package/dist/collector.js.map +1 -1
  5. package/dist/config.d.ts +0 -2
  6. package/dist/config.js +0 -2
  7. package/dist/config.js.map +1 -1
  8. package/dist/contract-operations.d.ts +37 -0
  9. package/dist/contract-operations.js +124 -0
  10. package/dist/contract-operations.js.map +1 -0
  11. package/dist/contract-validation.d.ts +7 -20
  12. package/dist/contract-validation.js +11 -22
  13. package/dist/contract-validation.js.map +1 -1
  14. package/dist/demo.d.ts +18 -0
  15. package/dist/demo.js +99 -0
  16. package/dist/demo.js.map +1 -1
  17. package/dist/mcp-app.html +5 -5
  18. package/dist/mcp-dashboard.html +4 -4
  19. package/dist/mcp-home.html +6 -7
  20. package/dist/metrics-tools.d.ts +23 -0
  21. package/dist/metrics-tools.js +96 -0
  22. package/dist/metrics-tools.js.map +1 -0
  23. package/dist/metrics.d.ts +45 -0
  24. package/dist/metrics.js +274 -0
  25. package/dist/metrics.js.map +1 -0
  26. package/dist/oauth.d.ts +0 -1
  27. package/dist/oauth.js +1 -2
  28. package/dist/oauth.js.map +1 -1
  29. package/dist/server.js +3 -4
  30. package/dist/server.js.map +1 -1
  31. package/dist/summaries.d.ts +13 -0
  32. package/dist/summaries.js +67 -0
  33. package/dist/summaries.js.map +1 -1
  34. package/package.json +4 -4
  35. package/dist/observe-graph.html +0 -214
  36. package/dist/workflow-data.d.ts +0 -13
  37. package/dist/workflow-data.js +0 -189
  38. package/dist/workflow-data.js.map +0 -1
  39. package/dist/workflow-layout.d.ts +0 -24
  40. package/dist/workflow-layout.js +0 -165
  41. package/dist/workflow-layout.js.map +0 -1
  42. package/dist/workflow-reducer.d.ts +0 -37
  43. package/dist/workflow-reducer.js +0 -114
  44. package/dist/workflow-reducer.js.map +0 -1
  45. package/dist/workflow-tools.d.ts +0 -10
  46. package/dist/workflow-tools.js +0 -170
  47. package/dist/workflow-tools.js.map +0 -1
package/README.md CHANGED
@@ -34,29 +34,20 @@ endpoint.
34
34
  **Telemetry** — `list_traces`, `get_trace`, `list_sessions`, `search_logs`,
35
35
  `ci_log`, `display_traces`, `display_mcp_dashboard`.
36
36
 
37
- **Workflow graph** — `list_workflow_runs`, `get_workflow_graph`,
38
- `display_workflow_graph`, `inspect_workflow_events`, `control_workflow_run`.
37
+ **Metrics** — `list_metrics`, `get_metric_series`, `query_metric`. Read in that
38
+ order: the catalog gives you an exact instrument name and how many attribute
39
+ streams it has, series discovery tells you which attribute keys are worth
40
+ grouping or filtering on, and the range query answers the actual question —
41
+ a window, a bucket width (`step_ms`), a reducer (`avg`, `min`, `max`, `sum`,
42
+ `count`, `last`, `p50`, `p90`, `p95`, `p99`), optional `group_by` keys, and
43
+ optional `attr` / `attr_prefix` matchers written `key=value`. One bucket
44
+ spanning the whole window collapses the answer to a single number.
39
45
 
40
- ### Agent diagnostic snapshots
46
+ **App-only** — `fetch_telemetry` is called by the bundled MCP Apps, not by a
47
+ model.
41
48
 
42
- ```text
43
- record_diagnostic_snapshot -> validate/check -> redact/encrypt
44
- -> content_captured + content_ref -> fixed OTel event -> inspect_workflow_events
45
- ```
46
-
47
- Format `qyl.agent.diagnostic.snapshot` version `1` stores dynamic names only in
48
- protected JSON. Public/internal values are encrypted, sensitive values are redacted,
49
- and secret values are omitted before IPC. The journal and OTel event expose only a
50
- value-free summary; models retrieve protected evidence explicitly by `content_ref`.
51
- `inspect_workflow_events` performs an immediate bounded journal read; graph cursors
52
- and long-poll controls remain exclusive to the app-only graph update tool.
53
-
54
- **App-only** — `fetch_telemetry` and `fetch_workflow_graph_updates` are called by
55
- the bundled MCP Apps, not by a model.
56
-
57
- All are read-only except **`control_workflow_run`**, which steers, interrupts, or
58
- resumes a run. It is approval-gated and, on the hosted server, requires the
59
- `qyl:control` scope in addition to `qyl:read`.
49
+ Every tool is read-only: the server queries the configured collector and never
50
+ mutates it. On the hosted server they all sit behind the single `qyl:read` scope.
60
51
 
61
52
  The `display_*` tools return MCP Apps UI resources as single-file viewers.
62
53
 
@@ -88,5 +79,37 @@ durable evidence.
88
79
  The HTTP entry is a web-standard fetch handler served by its default export,
89
80
  so serving it requires Bun.
90
81
 
82
+ ## Release notes
83
+
84
+ ### 4.0.0
85
+
86
+ - **Breaking.** The Codex workflow tools are gone: `list_workflow_runs`,
87
+ `get_workflow_graph`, `display_workflow_graph`, `inspect_workflow_events`,
88
+ `fetch_workflow_graph_updates`, and `control_workflow_run`. The tool surface is
89
+ 11 read-only tools; `tools/list` shrank about 31%.
90
+ - The `ui://qyl-explorer/observe-graph.html` MCP App resource and its viewer
91
+ bundle are gone with them, as is the `qyl:control` OAuth scope — no tool
92
+ required it any more, so the hosted server advertises `qyl:read` alone.
93
+ - These existed only to observe and control Codex runs, and were removed in one
94
+ wave with the qyl observer and the qyl-api-schema contract.
95
+ - Contract major: `@ancplua/qyl-api-schema` 9.0.0, revision
96
+ `sha256:d1c859393b628164`. The startup handshake refuses a collector that
97
+ advertises anything else, so this server and the collector move together.
98
+
99
+ ### 3.0.0
100
+
101
+ - Metrics reading: `list_metrics`, `get_metric_series`, and `query_metric` over
102
+ the collector's metrics API. Each carries the read-only safety annotations.
103
+ - Contract major: `@ancplua/qyl-api-schema` 8.0.0, revision
104
+ `sha256:64c464569005a485`. The startup handshake refuses a collector that
105
+ advertises anything else, so this server and the collector move together.
106
+
107
+ ### 2.1.0
108
+
109
+ - `tools/list` shrank 44.6%: shared models in the output schemas are emitted as
110
+ `$defs`/`$ref` where that is smaller, and the app-only tools no longer publish
111
+ an output schema at all.
112
+ - Native execution evidence is written only by a local server; see above.
113
+
91
114
  Full documentation, the workbench, and self-hosting:
92
115
  [github.com/ANcpLua/qyl.mcp](https://github.com/ANcpLua/qyl.mcp)
@@ -5,7 +5,7 @@
5
5
  * connection, HTTP, JSON, and contract failures surface to the caller rather
6
6
  * than silently substituting generated telemetry or invented defaults.
7
7
  */
8
- import type { LogRecord, SessionEntity, Trace } from "@ancplua/qyl-api-schema/types";
8
+ import type { LogRecord, MetricDescriptor, MetricQueryResult, MetricSeries, SessionEntity, Trace } from "@ancplua/qyl-api-schema/types";
9
9
  import { z } from "zod";
10
10
  import type { Mode } from "./wire.js";
11
11
  /** Error with a message already suitable for showing to the model/user. */
@@ -18,6 +18,17 @@ export declare class CollectorError extends Error {
18
18
  export declare function parseCollectorTrace(value: unknown, context?: string): Trace;
19
19
  /** Normalize RFC 3339 spelling, then enforce the public Session schema exactly. */
20
20
  export declare function parseCollectorSession(value: unknown, context?: string): SessionEntity;
21
+ /** Normalize RFC 3339 spelling, then enforce the public MetricDescriptor schema. */
22
+ export declare function parseCollectorMetricDescriptor(value: unknown, context?: string): MetricDescriptor;
23
+ /** Normalize RFC 3339 spelling, then enforce the public MetricSeries schema. */
24
+ export declare function parseCollectorMetricSeries(value: unknown, context?: string): MetricSeries;
25
+ /**
26
+ * Normalize every timestamp a range query answers with, then enforce the
27
+ * operation's own 200 body. Bucket starts are normalized too: a chart axis
28
+ * built from `+02:00` labels next to `Z` labels is a rendering bug the reader
29
+ * would have to diagnose.
30
+ */
31
+ export declare function parseCollectorMetricQueryResult(value: unknown, context?: string): MetricQueryResult;
21
32
  /** Enforce the public LogRecord schema without alternate wire encodings. */
22
33
  export declare function parseCollectorLog(value: unknown, context?: string): LogRecord;
23
34
  interface ParsedCollectorPage<T> {
@@ -37,7 +48,9 @@ export declare function parseCollectorPage<T, TPage extends {
37
48
  items: T[];
38
49
  has_more: boolean;
39
50
  }>(value: unknown, context: string, pageSchema: z.ZodType<TPage>, parseItem: (item: unknown, context: string) => T): ParsedCollectorPage<T>;
40
- export declare function collectorGet(pathname: string, params?: Record<string, string | number | boolean | undefined>, options?: CollectorRequestOptions): Promise<unknown>;
51
+ /** Query values a published operation parameter can carry, repeatable included. */
52
+ export type CollectorQueryParams = Record<string, string | number | boolean | readonly string[] | undefined>;
53
+ export declare function collectorGet(pathname: string, params?: CollectorQueryParams, options?: CollectorRequestOptions): Promise<unknown>;
41
54
  export declare function collectorPost(pathname: string, body: unknown, options?: CollectorRequestOptions): Promise<unknown>;
42
55
  export declare function resolveMode(): Promise<Mode>;
43
56
  export {};
package/dist/collector.js CHANGED
@@ -7,7 +7,7 @@
7
7
  */
8
8
  import { z } from "zod";
9
9
  import { collectorHeaders, collectorUrl } from "./config.js";
10
- import { LogRecordSchema, ProblemDetailsSchema, SessionSchema, TraceSchema, } from "./contract-validation.js";
10
+ import { LogRecordSchema, MetricDescriptorSchema, MetricQueryResultSchema, MetricSeriesSchema, ProblemDetailsSchema, SessionSchema, TraceSchema, } from "./contract-validation.js";
11
11
  /** Error with a message already suitable for showing to the model/user. */
12
12
  export class CollectorError extends Error {
13
13
  connectionError;
@@ -72,6 +72,61 @@ export function parseCollectorSession(value, context = "session") {
72
72
  throw contractMismatch(context, parsed.error);
73
73
  return parsed.data;
74
74
  }
75
+ /** Normalize RFC 3339 spelling, then enforce the public MetricDescriptor schema. */
76
+ export function parseCollectorMetricDescriptor(value, context = "metric") {
77
+ const descriptor = asRecord(value, context);
78
+ const parsed = MetricDescriptorSchema.safeParse({
79
+ ...descriptor,
80
+ last_seen: canonicalDateTime(descriptor.last_seen, `${context}.last_seen`),
81
+ });
82
+ if (!parsed.success)
83
+ throw contractMismatch(context, parsed.error);
84
+ return parsed.data;
85
+ }
86
+ /** Normalize RFC 3339 spelling, then enforce the public MetricSeries schema. */
87
+ export function parseCollectorMetricSeries(value, context = "series") {
88
+ const series = asRecord(value, context);
89
+ const parsed = MetricSeriesSchema.safeParse({
90
+ ...series,
91
+ first_seen: canonicalDateTime(series.first_seen, `${context}.first_seen`),
92
+ last_seen: canonicalDateTime(series.last_seen, `${context}.last_seen`),
93
+ });
94
+ if (!parsed.success)
95
+ throw contractMismatch(context, parsed.error);
96
+ return parsed.data;
97
+ }
98
+ /**
99
+ * Normalize every timestamp a range query answers with, then enforce the
100
+ * operation's own 200 body. Bucket starts are normalized too: a chart axis
101
+ * built from `+02:00` labels next to `Z` labels is a rendering bug the reader
102
+ * would have to diagnose.
103
+ */
104
+ export function parseCollectorMetricQueryResult(value, context = "metric query") {
105
+ const result = asRecord(value, context);
106
+ const series = Array.isArray(result.series) ? result.series : [];
107
+ const parsed = MetricQueryResultSchema.safeParse({
108
+ ...result,
109
+ start_time: canonicalDateTime(result.start_time, `${context}.start_time`),
110
+ end_time: canonicalDateTime(result.end_time, `${context}.end_time`),
111
+ series: series.map((stream, streamIndex) => {
112
+ const entry = asRecord(stream, `${context}.series[${streamIndex}]`);
113
+ const buckets = Array.isArray(entry.buckets) ? entry.buckets : [];
114
+ return {
115
+ ...entry,
116
+ buckets: buckets.map((bucket, bucketIndex) => {
117
+ const point = asRecord(bucket, `${context}.series[${streamIndex}].buckets[${bucketIndex}]`);
118
+ return {
119
+ ...point,
120
+ bucket_start: canonicalDateTime(point.bucket_start, `${context}.series[${streamIndex}].buckets[${bucketIndex}].bucket_start`),
121
+ };
122
+ }),
123
+ };
124
+ }),
125
+ });
126
+ if (!parsed.success)
127
+ throw contractMismatch(context, parsed.error);
128
+ return parsed.data;
129
+ }
75
130
  /** Enforce the public LogRecord schema without alternate wire encodings. */
76
131
  export function parseCollectorLog(value, context = "log") {
77
132
  const parsed = LogRecordSchema.safeParse(asRecord(value, context));
@@ -130,8 +185,17 @@ function parseProblemDetails(value) {
130
185
  async function collectorRequest(pathname, method, params, body, options) {
131
186
  const url = new URL(pathname, collectorUrl());
132
187
  for (const [key, value] of Object.entries(params)) {
133
- if (value !== undefined)
134
- url.searchParams.set(key, String(value));
188
+ if (value === undefined)
189
+ continue;
190
+ // A repeatable parameter is repeated, not joined: the metrics operations
191
+ // publish `group_by`, `attr`, and `attr_prefix` as arrays with no
192
+ // collection format, which is one `key=` pair per value.
193
+ if (Array.isArray(value)) {
194
+ for (const item of value)
195
+ url.searchParams.append(key, String(item));
196
+ continue;
197
+ }
198
+ url.searchParams.set(key, String(value));
135
199
  }
136
200
  const timeout = AbortSignal.timeout(options.timeoutMs ?? 10_000);
137
201
  const signal = options.signal
@@ -1 +1 @@
1
- {"version":3,"file":"collector.js","sourceRoot":"","sources":["../src/collector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"collector.js","sourceRoot":"","sources":["../src/collector.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -9,8 +9,6 @@
9
9
  export declare const RESOURCE_URI = "ui://qyl-explorer/mcp-app.html";
10
10
  /** URI of the MCP dashboard UI resource. */
11
11
  export declare const DASHBOARD_RESOURCE_URI = "ui://qyl-explorer/mcp-dashboard.html";
12
- /** URI of the fullscreen workflow debugger MCP App. */
13
- export declare const WORKFLOW_GRAPH_RESOURCE_URI = "ui://qyl-explorer/observe-graph.html";
14
12
  export declare function collectorUrl(): string;
15
13
  /** Optional collector credential, sent under the generated OpenAPI header. */
16
14
  export declare function collectorHeaders(): Record<string, string>;
package/dist/config.js CHANGED
@@ -10,8 +10,6 @@ import qylOpenApi from "@ancplua/qyl-api-schema/openapi" with { type: "json" };
10
10
  export const RESOURCE_URI = "ui://qyl-explorer/mcp-app.html";
11
11
  /** URI of the MCP dashboard UI resource. */
12
12
  export const DASHBOARD_RESOURCE_URI = "ui://qyl-explorer/mcp-dashboard.html";
13
- /** URI of the fullscreen workflow debugger MCP App. */
14
- export const WORKFLOW_GRAPH_RESOURCE_URI = "ui://qyl-explorer/observe-graph.html";
15
13
  const apiKeyHeader = qylOpenApi.components.securitySchemes.ApiKeyAuth.name;
16
14
  if (typeof apiKeyHeader !== "string" || apiKeyHeader.length === 0) {
17
15
  throw new Error("published Qyl OpenAPI has no API-key header name");
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,UAAU,MAAM,iCAAiC,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAE/E,6CAA6C;AAC7C,MAAM,CAAC,MAAM,YAAY,GAAG,gCAAgC,CAAC;AAE7D,4CAA4C;AAC5C,MAAM,CAAC,MAAM,sBAAsB,GAAG,sCAAsC,CAAC;AAE7E,uDAAuD;AACvD,MAAM,CAAC,MAAM,2BAA2B,GAAG,sCAAsC,CAAC;AAElF,MAAM,YAAY,GAAG,UAAU,CAAC,UAAU,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC;AAC3E,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;IAClE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,uBAAuB,CAAC;IAC5E,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CACb,kFAAkF,CACnF,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,gBAAgB;IAC9B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;IAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;IAChD,OAAO;QACL,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,UAAU,MAAM,iCAAiC,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAC;AAE/E,6CAA6C;AAC7C,MAAM,CAAC,MAAM,YAAY,GAAG,gCAAgC,CAAC;AAE7D,4CAA4C;AAC5C,MAAM,CAAC,MAAM,sBAAsB,GAAG,sCAAsC,CAAC;AAE7E,MAAM,YAAY,GAAG,UAAU,CAAC,UAAU,CAAC,eAAe,CAAC,UAAU,CAAC,IAAI,CAAC;AAC3E,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;IAClE,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,uBAAuB,CAAC;IAC5E,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CACb,kFAAkF,CACnF,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,gBAAgB;IAC9B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;IAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;IAChD,OAAO;QACL,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjD,CAAC;AACJ,CAAC"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Tool INPUT shapes derived from the published operation parameters.
3
+ *
4
+ * contract-validation.ts binds every response body and every `Mcp.Tools.*`
5
+ * shape the contract publishes. The metrics read API arrived in
6
+ * @ancplua/qyl-api-schema 8.0.0 with its response bodies but without
7
+ * `Mcp.Tools.*Metric*` input shapes, so there is nothing there to bind for the
8
+ * arguments of `list_metrics`, `get_metric_series`, and `query_metric`.
9
+ *
10
+ * Hand-writing those three objects is exactly what architecture gate G10a
11
+ * exists to prevent, and an exemption would carve the hole in the one place the
12
+ * gate names first ("request, response, or tool-input shapes"). So the inputs
13
+ * are generated too — from the other artifact the contract package publishes,
14
+ * its OpenAPI document. Every name, type, bound, default, enum, and description
15
+ * a metrics tool advertises is read out of `@ancplua/qyl-api-schema/openapi` at
16
+ * startup; nothing here is typed by hand except which operation a tool wraps,
17
+ * which is the same standing as `Operations.TracesApi_list.Response.200` being
18
+ * named in contract-validation.ts. A parameter added, retyped, or re-bounded on
19
+ * the collector side therefore moves the tool's advertised input and fails the
20
+ * G10b manifest snapshot, instead of drifting silently.
21
+ *
22
+ * This module is deliberately NOT re-exported through contract-validation.ts:
23
+ * the OpenAPI document is ~730 KB and that module is also imported by the
24
+ * dashboard and workbench browser bundles.
25
+ *
26
+ * When the contract publishes `Mcp.Tools.ListMetricsInput` and friends, delete
27
+ * this file and bind them in contract-validation.ts like every other tool.
28
+ */
29
+ import { z } from "zod";
30
+ /**
31
+ * The tool-input schema for one published GET operation.
32
+ *
33
+ * Header parameters are excluded: `ProjectScopeHeader` is the server-owned
34
+ * collector project scope, which QYL_PROJECT sets and a model never supplies —
35
+ * the same boundary the root README states for every other tool.
36
+ */
37
+ export declare function operationInputSchema<TInput>(pathname: string): z.ZodType<TInput>;
@@ -0,0 +1,124 @@
1
+ /**
2
+ * Tool INPUT shapes derived from the published operation parameters.
3
+ *
4
+ * contract-validation.ts binds every response body and every `Mcp.Tools.*`
5
+ * shape the contract publishes. The metrics read API arrived in
6
+ * @ancplua/qyl-api-schema 8.0.0 with its response bodies but without
7
+ * `Mcp.Tools.*Metric*` input shapes, so there is nothing there to bind for the
8
+ * arguments of `list_metrics`, `get_metric_series`, and `query_metric`.
9
+ *
10
+ * Hand-writing those three objects is exactly what architecture gate G10a
11
+ * exists to prevent, and an exemption would carve the hole in the one place the
12
+ * gate names first ("request, response, or tool-input shapes"). So the inputs
13
+ * are generated too — from the other artifact the contract package publishes,
14
+ * its OpenAPI document. Every name, type, bound, default, enum, and description
15
+ * a metrics tool advertises is read out of `@ancplua/qyl-api-schema/openapi` at
16
+ * startup; nothing here is typed by hand except which operation a tool wraps,
17
+ * which is the same standing as `Operations.TracesApi_list.Response.200` being
18
+ * named in contract-validation.ts. A parameter added, retyped, or re-bounded on
19
+ * the collector side therefore moves the tool's advertised input and fails the
20
+ * G10b manifest snapshot, instead of drifting silently.
21
+ *
22
+ * This module is deliberately NOT re-exported through contract-validation.ts:
23
+ * the OpenAPI document is ~730 KB and that module is also imported by the
24
+ * dashboard and workbench browser bundles.
25
+ *
26
+ * When the contract publishes `Mcp.Tools.ListMetricsInput` and friends, delete
27
+ * this file and bind them in contract-validation.ts like every other tool.
28
+ */
29
+ import { createRequire } from "node:module";
30
+ import { z } from "zod";
31
+ const COMPONENT_SCHEMA_PREFIX = "#/components/schemas/";
32
+ // require() rather than an import attribute: the package's "./openapi" export
33
+ // declares no "types" condition, so a static JSON import has no type to resolve
34
+ // and `verbatimModuleSyntax` would have to be worked around at every call site.
35
+ const publishedOpenApi = createRequire(import.meta.url)("@ancplua/qyl-api-schema/openapi");
36
+ /**
37
+ * Rewrite a published parameter schema into the subset `z.fromJSONSchema`
38
+ * accepts, resolving component references as it goes.
39
+ *
40
+ * Two published constructs need it, for the same reasons the contract package's
41
+ * own zod adapter documents: `unevaluatedProperties` is rejected outright by
42
+ * `z.fromJSONSchema` and is only ever used to seal an object, and a
43
+ * `#/components/schemas/...` reference has no meaning once the parameter is
44
+ * lifted out of the OpenAPI document. Resolution is by inlining, which is exact
45
+ * for the enums and scalars parameters actually use and would need a `$defs`
46
+ * carrier if a parameter ever referenced a recursive model.
47
+ */
48
+ function resolvePublishedSchema(node, seen = []) {
49
+ if (Array.isArray(node))
50
+ return node.map((item) => resolvePublishedSchema(item, seen));
51
+ if (typeof node !== "object" || node === null)
52
+ return node;
53
+ const source = node;
54
+ const resolved = {};
55
+ for (const [key, value] of Object.entries(source)) {
56
+ if (key === "unevaluatedProperties" || key === "$ref")
57
+ continue;
58
+ resolved[key] = resolvePublishedSchema(value, seen);
59
+ }
60
+ const reference = source.$ref;
61
+ if (typeof reference !== "string")
62
+ return resolved;
63
+ if (!reference.startsWith(COMPONENT_SCHEMA_PREFIX)) {
64
+ throw new Error(`contract-operations: unsupported parameter reference ${reference}`);
65
+ }
66
+ const name = reference.slice(COMPONENT_SCHEMA_PREFIX.length);
67
+ if (seen.includes(name)) {
68
+ throw new Error(`contract-operations: ${name} is recursive; a parameter referencing it needs a ` +
69
+ "$defs carrier rather than inlining");
70
+ }
71
+ const target = publishedOpenApi.components.schemas[name];
72
+ if (target === undefined) {
73
+ throw new Error(`contract-operations: ${reference} is not a published component schema`);
74
+ }
75
+ // A `$ref` with siblings is how the contract spells "this published model,
76
+ // with this default" — `aggregation` is `MetricAggregation` plus
77
+ // `default: "avg"`. Dropping the siblings would silently drop the default and
78
+ // leave the tool advertising a required-looking enum with no fallback, so the
79
+ // resolved target is merged UNDER them: the local keywords win.
80
+ return { ...resolvePublishedSchema(target, [...seen, name]), ...resolved };
81
+ }
82
+ /**
83
+ * The tool-input schema for one published GET operation.
84
+ *
85
+ * Header parameters are excluded: `ProjectScopeHeader` is the server-owned
86
+ * collector project scope, which QYL_PROJECT sets and a model never supplies —
87
+ * the same boundary the root README states for every other tool.
88
+ */
89
+ export function operationInputSchema(pathname) {
90
+ const operation = publishedOpenApi.paths[pathname]?.get;
91
+ if (operation === undefined) {
92
+ throw new Error(`contract-operations: the contract publishes no GET ${pathname}`);
93
+ }
94
+ const properties = {};
95
+ const required = [];
96
+ for (const parameter of operation.parameters ?? []) {
97
+ // A $ref parameter is a shared component; the only one the metrics
98
+ // operations use is the project-scope header.
99
+ if (parameter.$ref !== undefined || parameter.name === undefined)
100
+ continue;
101
+ if (parameter.in === "header")
102
+ continue;
103
+ const schema = resolvePublishedSchema(parameter.schema);
104
+ properties[parameter.name] = parameter.description === undefined
105
+ ? schema
106
+ : { ...schema, description: parameter.description };
107
+ if (parameter.required === true)
108
+ required.push(parameter.name);
109
+ }
110
+ if (Object.keys(properties).length === 0) {
111
+ throw new Error(`contract-operations: GET ${pathname} publishes no model-supplied parameters`);
112
+ }
113
+ // The assembled document is JSON Schema by construction — every property came
114
+ // out of the published parameter list — but it is built as plain data, so the
115
+ // cast is what tells the compiler that.
116
+ const assembled = {
117
+ type: "object",
118
+ properties,
119
+ ...(required.length === 0 ? {} : { required }),
120
+ additionalProperties: false,
121
+ };
122
+ return z.fromJSONSchema(assembled);
123
+ }
124
+ //# sourceMappingURL=contract-operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contract-operations.js","sourceRoot":"","sources":["../src/contract-operations.ts"],"names":[],"mappings":"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"}
@@ -11,8 +11,8 @@ export { publishedContractSchema, type ContractInput };
11
11
  * attribute values, and the same leaf shapes recur dozens of times inside one
12
12
  * response body. The SDK asks a schema for its JSON Schema through
13
13
  * `~standard.jsonSchema`, and zod's default there inlines every occurrence, so
14
- * `tools/list` shipped the Span tree once per mention — 232 KB for fourteen
15
- * tools, most of it the same object repeated. Every byte of that is context an
14
+ * `tools/list` shipped the Span tree once per mention — 232 KB for the fourteen
15
+ * tools that existed when this was written, most of it the same object repeated. Every byte of that is context an
16
16
  * agent pays for on connect.
17
17
  *
18
18
  * The choice is per schema and measured, not assumed: `reused: "ref"` hoists
@@ -38,6 +38,11 @@ export declare const TraceSpansListResponseSchema: z.ZodType<QylContracts.Cursor
38
38
  export declare const SessionTracesListResponseSchema: z.ZodType<QylContracts.CursorPageTrace, unknown, z.core.$ZodTypeInternals<QylContracts.CursorPageTrace, unknown>>;
39
39
  export declare const LogsListResponseSchema: z.ZodType<QylContracts.CursorPageLogRecord, unknown, z.core.$ZodTypeInternals<QylContracts.CursorPageLogRecord, unknown>>;
40
40
  export declare const SessionsListResponseSchema: z.ZodType<QylContracts.CursorPageSessionEntity, unknown, z.core.$ZodTypeInternals<QylContracts.CursorPageSessionEntity, unknown>>;
41
+ export declare const MetricDescriptorSchema: z.ZodType<QylContracts.MetricDescriptor, unknown, z.core.$ZodTypeInternals<QylContracts.MetricDescriptor, unknown>>;
42
+ export declare const MetricSeriesSchema: z.ZodType<QylContracts.MetricSeries, unknown, z.core.$ZodTypeInternals<QylContracts.MetricSeries, unknown>>;
43
+ export declare const MetricQueryResultSchema: z.ZodType<QylContracts.MetricQueryResult, unknown, z.core.$ZodTypeInternals<QylContracts.MetricQueryResult, unknown>>;
44
+ export declare const MetricsListResponseSchema: z.ZodType<QylContracts.CursorPageMetricDescriptor, unknown, z.core.$ZodTypeInternals<QylContracts.CursorPageMetricDescriptor, unknown>>;
45
+ export declare const MetricSeriesListResponseSchema: z.ZodType<QylContracts.CursorPageMetricSeries, unknown, z.core.$ZodTypeInternals<QylContracts.CursorPageMetricSeries, unknown>>;
41
46
  export declare const ProblemDetailsSchema: z.ZodType<QylContracts.ProblemDetails, unknown, z.core.$ZodTypeInternals<QylContracts.ProblemDetails, unknown>>;
42
47
  export declare const ModeSchema: z.ZodType<QylContracts.McpDataMode, unknown, z.core.$ZodTypeInternals<QylContracts.McpDataMode, unknown>>;
43
48
  export declare const McpDashboardStatsSchema: z.ZodType<QylContracts.McpDashboardStats, unknown, z.core.$ZodTypeInternals<QylContracts.McpDashboardStats, unknown>>;
@@ -59,24 +64,6 @@ export declare const CiLogInputSchema: z.ZodType<QylContracts.CiLogInput, unknow
59
64
  export declare const CiRunSummarySchema: z.ZodType<QylContracts.CiRunSummary, unknown, z.core.$ZodTypeInternals<QylContracts.CiRunSummary, unknown>>;
60
65
  export declare const CiPhaseSchema: z.ZodType<QylContracts.CiPhase, unknown, z.core.$ZodTypeInternals<QylContracts.CiPhase, unknown>>;
61
66
  export declare const CiLogOutputSchema: z.ZodType<QylContracts.CiLogOutput, unknown, z.core.$ZodTypeInternals<QylContracts.CiLogOutput, unknown>>;
62
- export declare const WorkflowRunSchema: z.ZodType<QylContracts.WorkflowRun, unknown, z.core.$ZodTypeInternals<QylContracts.WorkflowRun, unknown>>;
63
- export declare const WorkflowRunPageSchema: z.ZodType<QylContracts.WorkflowRunPage, unknown, z.core.$ZodTypeInternals<QylContracts.WorkflowRunPage, unknown>>;
64
- export declare const WorkflowEventPageSchema: z.ZodType<QylContracts.WorkflowEventPage, unknown, z.core.$ZodTypeInternals<QylContracts.WorkflowEventPage, unknown>>;
65
- export declare const WorkflowGraphSnapshotSchema: z.ZodType<QylContracts.WorkflowGraphSnapshot, unknown, z.core.$ZodTypeInternals<QylContracts.WorkflowGraphSnapshot, unknown>>;
66
- export declare const WorkflowContentSchema: z.ZodType<QylContracts.WorkflowContent, unknown, z.core.$ZodTypeInternals<QylContracts.WorkflowContent, unknown>>;
67
- export declare const WorkflowControlCommandSchema: z.ZodType<QylContracts.WorkflowControlCommand, unknown, z.core.$ZodTypeInternals<QylContracts.WorkflowControlCommand, unknown>>;
68
- export declare const ListWorkflowRunsInputSchema: z.ZodType<QylContracts.ListWorkflowRunsInput, unknown, z.core.$ZodTypeInternals<QylContracts.ListWorkflowRunsInput, unknown>>;
69
- export declare const ListWorkflowRunsOutputSchema: z.ZodType<QylContracts.ListWorkflowRunsOutput, unknown, z.core.$ZodTypeInternals<QylContracts.ListWorkflowRunsOutput, unknown>>;
70
- export declare const GetWorkflowGraphInputSchema: z.ZodType<QylContracts.GetWorkflowGraphInput, unknown, z.core.$ZodTypeInternals<QylContracts.GetWorkflowGraphInput, unknown>>;
71
- export declare const GetWorkflowGraphOutputSchema: z.ZodType<QylContracts.GetWorkflowGraphOutput, unknown, z.core.$ZodTypeInternals<QylContracts.GetWorkflowGraphOutput, unknown>>;
72
- export declare const DisplayWorkflowGraphInputSchema: z.ZodType<QylContracts.DisplayWorkflowGraphInput, unknown, z.core.$ZodTypeInternals<QylContracts.DisplayWorkflowGraphInput, unknown>>;
73
- export declare const DisplayWorkflowGraphOutputSchema: z.ZodType<QylContracts.DisplayWorkflowGraphOutput, unknown, z.core.$ZodTypeInternals<QylContracts.DisplayWorkflowGraphOutput, unknown>>;
74
- export declare const FetchWorkflowGraphUpdatesInputSchema: z.ZodType<QylContracts.FetchWorkflowGraphUpdatesInput, unknown, z.core.$ZodTypeInternals<QylContracts.FetchWorkflowGraphUpdatesInput, unknown>>;
75
- export declare const FetchWorkflowGraphUpdatesOutputSchema: z.ZodType<QylContracts.FetchWorkflowGraphUpdatesOutput, unknown, z.core.$ZodTypeInternals<QylContracts.FetchWorkflowGraphUpdatesOutput, unknown>>;
76
- export declare const InspectWorkflowEventsInputSchema: z.ZodType<QylContracts.InspectWorkflowEventsInput, unknown, z.core.$ZodTypeInternals<QylContracts.InspectWorkflowEventsInput, unknown>>;
77
- export declare const InspectWorkflowEventsOutputSchema: z.ZodType<QylContracts.InspectWorkflowEventsOutput, unknown, z.core.$ZodTypeInternals<QylContracts.InspectWorkflowEventsOutput, unknown>>;
78
- export declare const ControlWorkflowRunInputSchema: z.ZodType<QylContracts.ControlWorkflowRunInput, unknown, z.core.$ZodTypeInternals<QylContracts.ControlWorkflowRunInput, unknown>>;
79
- export declare const ControlWorkflowRunOutputSchema: z.ZodType<QylContracts.ControlWorkflowRunOutput, unknown, z.core.$ZodTypeInternals<QylContracts.ControlWorkflowRunOutput, unknown>>;
80
67
  export declare const RunnerResourceStateSchema: z.ZodType<QylContracts.RunnerResourceState, unknown, z.core.$ZodTypeInternals<QylContracts.RunnerResourceState, unknown>>;
81
68
  export declare const RunnerLogLineSchema: z.ZodType<QylContracts.RunnerLogLine, unknown, z.core.$ZodTypeInternals<QylContracts.RunnerLogLine, unknown>>;
82
69
  export declare const WorkbenchSessionIdSchema: z.ZodType<QylContracts.WorkbenchSessionId, unknown, z.core.$ZodTypeInternals<QylContracts.WorkbenchSessionId, unknown>>;
@@ -17,8 +17,8 @@ const compacted = new WeakMap();
17
17
  * attribute values, and the same leaf shapes recur dozens of times inside one
18
18
  * response body. The SDK asks a schema for its JSON Schema through
19
19
  * `~standard.jsonSchema`, and zod's default there inlines every occurrence, so
20
- * `tools/list` shipped the Span tree once per mention — 232 KB for fourteen
21
- * tools, most of it the same object repeated. Every byte of that is context an
20
+ * `tools/list` shipped the Span tree once per mention — 232 KB for the fourteen
21
+ * tools that existed when this was written, most of it the same object repeated. Every byte of that is context an
22
22
  * agent pays for on connect.
23
23
  *
24
24
  * The choice is per schema and measured, not assumed: `reused: "ref"` hoists
@@ -35,7 +35,7 @@ const compacted = new WeakMap();
35
35
  */
36
36
  export function compactOutputSchema(schema) {
37
37
  // createServer() runs per hosted request, so the wrapper is cached on the
38
- // generated schema: registering fourteen tools must not re-derive the same
38
+ // generated schema: registering every tool must not re-derive the same
39
39
  // JSON Schema on every connection.
40
40
  const cachedWrapper = compacted.get(schema);
41
41
  if (cachedWrapper !== undefined)
@@ -82,6 +82,14 @@ export const TraceSpansListResponseSchema = publishedContractSchema("Operations.
82
82
  export const SessionTracesListResponseSchema = publishedContractSchema("Operations.SessionsApi_getTraces.Response.200");
83
83
  export const LogsListResponseSchema = publishedContractSchema("Operations.LogsApi_list.Response.200");
84
84
  export const SessionsListResponseSchema = publishedContractSchema("Operations.SessionsApi_list.Response.200");
85
+ // Metrics read surface (contract 8.0.0). The list and series endpoints page
86
+ // like every other reader; the query endpoint answers with the result model
87
+ // directly, so its 200 body IS MetricQueryResult.
88
+ export const MetricDescriptorSchema = publishedContractSchema("OTel.Metrics.MetricDescriptor");
89
+ export const MetricSeriesSchema = publishedContractSchema("OTel.Metrics.MetricSeries");
90
+ export const MetricQueryResultSchema = publishedContractSchema("Operations.MetricsApi_query.Response.200");
91
+ export const MetricsListResponseSchema = publishedContractSchema("Operations.MetricsApi_list.Response.200");
92
+ export const MetricSeriesListResponseSchema = publishedContractSchema("Operations.MetricsApi_listSeries.Response.200");
85
93
  export const ProblemDetailsSchema = publishedContractSchema("Common.Errors.ProblemDetails");
86
94
  export const ModeSchema = publishedContractSchema("Mcp.Tools.McpDataMode");
87
95
  export const McpDashboardStatsSchema = publishedContractSchema("Mcp.Tools.McpDashboardStats");
@@ -103,25 +111,6 @@ export const CiLogInputSchema = publishedContractSchema("Mcp.Tools.CiLogInput");
103
111
  export const CiRunSummarySchema = publishedContractSchema("Mcp.Tools.CiRunSummary");
104
112
  export const CiPhaseSchema = publishedContractSchema("Mcp.Tools.CiPhase");
105
113
  export const CiLogOutputSchema = publishedContractSchema("Mcp.Tools.CiLogOutput");
106
- // Workflow journal, projection, lazy content, and curated debugger tool shapes.
107
- export const WorkflowRunSchema = publishedContractSchema("Workflow.WorkflowRun");
108
- export const WorkflowRunPageSchema = publishedContractSchema("Operations.WorkflowRunsApi_list.Response.200");
109
- export const WorkflowEventPageSchema = publishedContractSchema("Operations.WorkflowRunsApi_readEvents.Response.200");
110
- export const WorkflowGraphSnapshotSchema = publishedContractSchema("Operations.WorkflowRunsApi_getGraph.Response.200");
111
- export const WorkflowContentSchema = publishedContractSchema("Operations.WorkflowRunsApi_getContent.Response.200");
112
- export const WorkflowControlCommandSchema = publishedContractSchema("Operations.WorkflowRunsApi_submitControl.Response.200");
113
- export const ListWorkflowRunsInputSchema = publishedContractSchema("Mcp.Tools.ListWorkflowRunsInput");
114
- export const ListWorkflowRunsOutputSchema = publishedContractSchema("Mcp.Tools.ListWorkflowRunsOutput");
115
- export const GetWorkflowGraphInputSchema = publishedContractSchema("Mcp.Tools.GetWorkflowGraphInput");
116
- export const GetWorkflowGraphOutputSchema = publishedContractSchema("Mcp.Tools.GetWorkflowGraphOutput");
117
- export const DisplayWorkflowGraphInputSchema = publishedContractSchema("Mcp.Tools.DisplayWorkflowGraphInput");
118
- export const DisplayWorkflowGraphOutputSchema = publishedContractSchema("Mcp.Tools.DisplayWorkflowGraphOutput");
119
- export const FetchWorkflowGraphUpdatesInputSchema = publishedContractSchema("Mcp.Tools.FetchWorkflowGraphUpdatesInput");
120
- export const FetchWorkflowGraphUpdatesOutputSchema = publishedContractSchema("Mcp.Tools.FetchWorkflowGraphUpdatesOutput");
121
- export const InspectWorkflowEventsInputSchema = publishedContractSchema("Mcp.Tools.InspectWorkflowEventsInput");
122
- export const InspectWorkflowEventsOutputSchema = publishedContractSchema("Mcp.Tools.InspectWorkflowEventsOutput");
123
- export const ControlWorkflowRunInputSchema = publishedContractSchema("Mcp.Tools.ControlWorkflowRunInput");
124
- export const ControlWorkflowRunOutputSchema = publishedContractSchema("Mcp.Tools.ControlWorkflowRunOutput");
125
114
  export const RunnerResourceStateSchema = publishedContractSchema("Runner.RunnerResourceState");
126
115
  export const RunnerLogLineSchema = publishedContractSchema("Runner.RunnerLogLine");
127
116
  // Workbench identity, session, and workspace boundaries.
@@ -1 +1 @@
1
- {"version":3,"file":"contract-validation.js","sourceRoot":"","sources":["../src/contract-validation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAsB,MAAM,6BAA6B,CAAC;AAE1F,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,gFAAgF;AAChF,8EAA8E;AAC9E,2EAA2E;AAC3E,qFAAqF;AACrF,8EAA8E;AAC9E,2EAA2E;AAC3E,OAAO,EAAE,uBAAuB,EAAsB,CAAC;AAEvD,MAAM,kBAAkB,GAAG,eAAwB,CAAC;AAEpD,MAAM,SAAS,GAAG,IAAI,OAAO,EAAgD,CAAC;AAE9E;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,mBAAmB,CAAI,MAAoB;IACzD,0EAA0E;IAC1E,2EAA2E;IAC3E,mCAAmC;IACnC,MAAM,aAAa,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,aAAa,KAAK,SAAS;QAAE,OAAO,aAA6C,CAAC;IAEtF,IAAI,OAA4C,CAAC;IACjD,MAAM,UAAU,GAAG,GAA4B,EAAE;QAC/C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;YACrF,MAAM,OAAO,GAAG,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE;gBACrC,MAAM,EAAE,kBAAkB;gBAC1B,EAAE,EAAE,QAAQ;gBACZ,MAAM,EAAE,KAAK;aACd,CAAC,CAAC;YACH,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;QAChG,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;IACrC,MAAM,OAAO,GAAG;QACd,WAAW,EAAE;YACX,OAAO,EAAE,CAAC;YACV,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,UAAU,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE;YACrD,QAAQ,EAAE,CAAC,KAAc,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC;SACvD;KAC8B,CAAC;IAClC,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,OAA0D,CAAC,CAAC;IAClF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,uBAAuB,CAAY,IAAY;IACtD,OAAO,uBAAuB,CAAY,aAAa,IAAI,EAAE,CAAC,CAAC;AACjE,CAAC;AAED,sDAAsD;AACtD,MAAM,CAAC,MAAM,UAAU,GAAG,uBAAuB,CAAoB,kBAAkB,CAAC,CAAC;AACzF,MAAM,CAAC,MAAM,kBAAkB,GAAG,uBAAuB,CACvD,0BAA0B,CAC3B,CAAC;AACF,MAAM,CAAC,MAAM,WAAW,GAAG,uBAAuB,CAAqB,mBAAmB,CAAC,CAAC;AAC5F,MAAM,CAAC,MAAM,eAAe,GAAG,uBAAuB,CACpD,qBAAqB,CACtB,CAAC;AACF,MAAM,CAAC,MAAM,aAAa,GAAG,uBAAuB,CAClD,uCAAuC,CACxC,CAAC;AAEF,6EAA6E;AAC7E,8EAA8E;AAC9E,4EAA4E;AAC5E,MAAM,CAAC,MAAM,wBAAwB,GACnC,uBAAuB,CACrB,wCAAwC,CACzC,CAAC;AACJ,MAAM,CAAC,MAAM,4BAA4B,GACvC,uBAAuB,CACrB,4CAA4C,CAC7C,CAAC;AACJ,MAAM,CAAC,MAAM,+BAA+B,GAC1C,uBAAuB,CACrB,+CAA+C,CAChD,CAAC;AACJ,MAAM,CAAC,MAAM,sBAAsB,GACjC,uBAAuB,CACrB,sCAAsC,CACvC,CAAC;AACJ,MAAM,CAAC,MAAM,0BAA0B,GACrC,uBAAuB,CACrB,0CAA0C,CAC3C,CAAC;AAEJ,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAuB,CACzD,8BAA8B,CAC/B,CAAC;AACF,MAAM,CAAC,MAAM,UAAU,GAAG,uBAAuB,CAC/C,uBAAuB,CACxB,CAAC;AACF,MAAM,CAAC,MAAM,uBAAuB,GAAG,uBAAuB,CAC5D,6BAA6B,CAC9B,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,uBAAuB,CAC7D,8BAA8B,CAC/B,CAAC;AACF,MAAM,CAAC,MAAM,yBAAyB,GAAG,uBAAuB,CAC9D,+BAA+B,CAChC,CAAC;AACF,MAAM,CAAC,MAAM,8BAA8B,GACzC,uBAAuB,CACrB,oCAAoC,CACrC,CAAC;AACJ,MAAM,CAAC,MAAM,+BAA+B,GAC1C,uBAAuB,CACrB,qCAAqC,CACtC,CAAC;AACJ,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAC1D,2BAA2B,CAC5B,CAAC;AACF,MAAM,CAAC,MAAM,sBAAsB,GAAG,uBAAuB,CAC3D,4BAA4B,CAC7B,CAAC;AACF,MAAM,CAAC,MAAM,mBAAmB,GAAG,uBAAuB,CACxD,yBAAyB,CAC1B,CAAC;AACF,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAuB,CACzD,0BAA0B,CAC3B,CAAC;AACF,MAAM,CAAC,MAAM,uBAAuB,GAAG,uBAAuB,CAC5D,6BAA6B,CAC9B,CAAC;AACF,MAAM,CAAC,MAAM,wBAAwB,GAAG,uBAAuB,CAC7D,8BAA8B,CAC/B,CAAC;AACF,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAC1D,2BAA2B,CAC5B,CAAC;AACF,MAAM,CAAC,MAAM,sBAAsB,GAAG,uBAAuB,CAC3D,4BAA4B,CAC7B,CAAC;AACF,MAAM,CAAC,MAAM,yBAAyB,GAAG,uBAAuB,CAC9D,+BAA+B,CAChC,CAAC;AACF,MAAM,CAAC,MAAM,0BAA0B,GAAG,uBAAuB,CAC/D,gCAAgC,CACjC,CAAC;AACF,MAAM,CAAC,MAAM,gBAAgB,GAAG,uBAAuB,CACrD,sBAAsB,CACvB,CAAC;AACF,MAAM,CAAC,MAAM,kBAAkB,GAAG,uBAAuB,CACvD,wBAAwB,CACzB,CAAC;AACF,MAAM,CAAC,MAAM,aAAa,GAAG,uBAAuB,CAClD,mBAAmB,CACpB,CAAC;AACF,MAAM,CAAC,MAAM,iBAAiB,GAAG,uBAAuB,CACtD,uBAAuB,CACxB,CAAC;AAEF,gFAAgF;AAChF,MAAM,CAAC,MAAM,iBAAiB,GAAG,uBAAuB,CACtD,sBAAsB,CACvB,CAAC;AACF,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAC1D,8CAA8C,CAC/C,CAAC;AACF,MAAM,CAAC,MAAM,uBAAuB,GAAG,uBAAuB,CAC5D,oDAAoD,CACrD,CAAC;AACF,MAAM,CAAC,MAAM,2BAA2B,GACtC,uBAAuB,CACrB,kDAAkD,CACnD,CAAC;AACJ,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAC1D,oDAAoD,CACrD,CAAC;AACF,MAAM,CAAC,MAAM,4BAA4B,GACvC,uBAAuB,CACrB,uDAAuD,CACxD,CAAC;AACJ,MAAM,CAAC,MAAM,2BAA2B,GACtC,uBAAuB,CACrB,iCAAiC,CAClC,CAAC;AACJ,MAAM,CAAC,MAAM,4BAA4B,GACvC,uBAAuB,CACrB,kCAAkC,CACnC,CAAC;AACJ,MAAM,CAAC,MAAM,2BAA2B,GACtC,uBAAuB,CACrB,iCAAiC,CAClC,CAAC;AACJ,MAAM,CAAC,MAAM,4BAA4B,GACvC,uBAAuB,CACrB,kCAAkC,CACnC,CAAC;AACJ,MAAM,CAAC,MAAM,+BAA+B,GAC1C,uBAAuB,CACrB,qCAAqC,CACtC,CAAC;AACJ,MAAM,CAAC,MAAM,gCAAgC,GAC3C,uBAAuB,CACrB,sCAAsC,CACvC,CAAC;AACJ,MAAM,CAAC,MAAM,oCAAoC,GAC/C,uBAAuB,CACrB,0CAA0C,CAC3C,CAAC;AACJ,MAAM,CAAC,MAAM,qCAAqC,GAChD,uBAAuB,CACrB,2CAA2C,CAC5C,CAAC;AACJ,MAAM,CAAC,MAAM,gCAAgC,GAC3C,uBAAuB,CACrB,sCAAsC,CACvC,CAAC;AACJ,MAAM,CAAC,MAAM,iCAAiC,GAC5C,uBAAuB,CACrB,uCAAuC,CACxC,CAAC;AACJ,MAAM,CAAC,MAAM,6BAA6B,GACxC,uBAAuB,CACrB,mCAAmC,CACpC,CAAC;AACJ,MAAM,CAAC,MAAM,8BAA8B,GACzC,uBAAuB,CACrB,oCAAoC,CACrC,CAAC;AAEJ,MAAM,CAAC,MAAM,yBAAyB,GAAG,uBAAuB,CAC9D,4BAA4B,CAC7B,CAAC;AACF,MAAM,CAAC,MAAM,mBAAmB,GAAG,uBAAuB,CACxD,sBAAsB,CACvB,CAAC;AAEF,yDAAyD;AACzD,MAAM,CAAC,MAAM,wBAAwB,GAAG,uBAAuB,CAC7D,oBAAoB,CACrB,CAAC;AACF,MAAM,CAAC,MAAM,0BAA0B,GAAG,uBAAuB,CAC/D,sBAAsB,CACvB,CAAC;AACF,MAAM,CAAC,MAAM,uBAAuB,GAAG,uBAAuB,CAC5D,mBAAmB,CACpB,CAAC;AACF,MAAM,CAAC,MAAM,0BAA0B,GAAG,uBAAuB,CAC/D,sBAAsB,CACvB,CAAC;AACF,MAAM,CAAC,MAAM,8BAA8B,GACzC,uBAAuB,CAAwC,0BAA0B,CAAC,CAAC;AAC7F,MAAM,CAAC,MAAM,yBAAyB,GAAG,uBAAuB,CAC9D,qBAAqB,CACtB,CAAC;AACF,MAAM,CAAC,MAAM,sBAAsB,GAAG,uBAAuB,CAC3D,kBAAkB,CACnB,CAAC;AACF,MAAM,CAAC,MAAM,iCAAiC,GAC5C,uBAAuB,CACrB,6BAA6B,CAC9B,CAAC;AACJ,MAAM,CAAC,MAAM,gCAAgC,GAC3C,uBAAuB,CAA0C,4BAA4B,CAAC,CAAC;AACjG,MAAM,CAAC,MAAM,sBAAsB,GACjC,uBAAuB,CAAgC,kBAAkB,CAAC,CAAC;AAC7E,MAAM,CAAC,MAAM,uCAAuC,GAClD,uBAAuB,CACrB,mCAAmC,CACpC,CAAC;AACJ,MAAM,CAAC,MAAM,wBAAwB,GAAG,uBAAuB,CAC7D,oBAAoB,CACrB,CAAC;AACF,MAAM,CAAC,MAAM,qCAAqC,GAChD,uBAAuB,CACrB,iCAAiC,CAClC,CAAC;AACJ,MAAM,CAAC,MAAM,qCAAqC,GAChD,uBAAuB,CACrB,iCAAiC,CAClC,CAAC;AACJ,MAAM,CAAC,MAAM,oCAAoC,GAC/C,uBAAuB,CACrB,gCAAgC,CACjC,CAAC;AACJ,MAAM,CAAC,MAAM,4BAA4B,GACvC,uBAAuB,CAAsC,wBAAwB,CAAC,CAAC;AACzF,MAAM,CAAC,MAAM,mCAAmC,GAC9C,uBAAuB,CACrB,+BAA+B,CAChC,CAAC;AACJ,MAAM,CAAC,MAAM,gDAAgD,GAC3D,uBAAuB,CACrB,4CAA4C,CAC7C,CAAC;AAEJ,8DAA8D;AAC9D,MAAM,CAAC,MAAM,4BAA4B,GACvC,uBAAuB,CAAsC,wBAAwB,CAAC,CAAC;AACzF,MAAM,CAAC,MAAM,iCAAiC,GAC5C,uBAAuB,CACrB,6BAA6B,CAC9B,CAAC;AACJ,MAAM,CAAC,MAAM,8BAA8B,GACzC,uBAAuB,CAAwC,0BAA0B,CAAC,CAAC;AAC7F,MAAM,CAAC,MAAM,yCAAyC,GACpD,uBAAuB,CACrB,qCAAqC,CACtC,CAAC;AACJ,MAAM,CAAC,MAAM,oCAAoC,GAC/C,uBAAuB,CACrB,gCAAgC,CACjC,CAAC;AACJ,MAAM,CAAC,MAAM,uCAAuC,GAClD,uBAAuB,CACrB,mCAAmC,CACpC,CAAC;AACJ,MAAM,CAAC,MAAM,gDAAgD,GAC3D,uBAAuB,CACrB,4CAA4C,CAC7C,CAAC;AACJ,MAAM,CAAC,MAAM,yCAAyC,GACpD,uBAAuB,CACrB,qCAAqC,CACtC,CAAC;AACJ,MAAM,CAAC,MAAM,kCAAkC,GAC7C,uBAAuB,CACrB,8BAA8B,CAC/B,CAAC;AACJ,MAAM,CAAC,MAAM,4BAA4B,GACvC,uBAAuB,CAAsC,wBAAwB,CAAC,CAAC;AACzF,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAuB,CACzD,gBAAgB,CACjB,CAAC;AACF,MAAM,CAAC,MAAM,qCAAqC,GAChD,uBAAuB,CACrB,iCAAiC,CAClC,CAAC;AACJ,MAAM,CAAC,MAAM,+BAA+B,GAC1C,uBAAuB,CAAyC,2BAA2B,CAAC,CAAC;AAC/F,MAAM,CAAC,MAAM,iCAAiC,GAC5C,uBAAuB,CACrB,6BAA6B,CAC9B,CAAC;AACJ,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAC1D,iBAAiB,CAClB,CAAC;AACF,MAAM,CAAC,MAAM,kCAAkC,GAC7C,uBAAuB,CACrB,8BAA8B,CAC/B,CAAC;AACJ,MAAM,CAAC,MAAM,kCAAkC,GAC7C,uBAAuB,CACrB,8BAA8B,CAC/B,CAAC;AACJ,MAAM,CAAC,MAAM,iCAAiC,GAC5C,uBAAuB,CACrB,6BAA6B,CAC9B,CAAC;AACJ,MAAM,CAAC,MAAM,mCAAmC,GAC9C,uBAAuB,CACrB,+BAA+B,CAChC,CAAC;AAEJ,6EAA6E;AAC7E,MAAM,CAAC,MAAM,kCAAkC,GAC7C,uBAAuB,CACrB,8BAA8B,CAC/B,CAAC;AACJ,MAAM,CAAC,MAAM,gCAAgC,GAC3C,uBAAuB,CAA0C,4BAA4B,CAAC,CAAC;AACjG,MAAM,CAAC,MAAM,gCAAgC,GAC3C,uBAAuB,CACrB,4BAA4B,CAC7B,CAAC;AACJ,MAAM,CAAC,MAAM,gCAAgC,GAC3C,uBAAuB,CAA0C,4BAA4B,CAAC,CAAC;AACjG,MAAM,CAAC,MAAM,4BAA4B,GACvC,uBAAuB,CAAsC,wBAAwB,CAAC,CAAC;AACzF,MAAM,CAAC,MAAM,gCAAgC,GAC3C,uBAAuB,CAA0C,4BAA4B,CAAC,CAAC;AACjG,0EAA0E;AAC1E,MAAM,CAAC,MAAM,6BAA6B,GACxC,uBAAuB,CAAuC,yBAAyB,CAAC,CAAC;AAE3F,oEAAoE;AACpE,MAAM,CAAC,MAAM,8BAA8B,GACzC,uBAAuB,CAAwC,0BAA0B,CAAC,CAAC;AAC7F,MAAM,CAAC,MAAM,8BAA8B,GACzC,uBAAuB,CAAwC,0BAA0B,CAAC,CAAC;AAC7F,MAAM,CAAC,MAAM,2CAA2C,GACtD,uBAAuB,CACrB,uCAAuC,CACxC,CAAC;AACJ,MAAM,CAAC,MAAM,4CAA4C,GACvD,uBAAuB,CACrB,wCAAwC,CACzC,CAAC;AACJ,MAAM,CAAC,MAAM,+BAA+B,GAC1C,uBAAuB,CAAyC,2BAA2B,CAAC,CAAC;AAC/F,MAAM,CAAC,MAAM,kCAAkC,GAC7C,uBAAuB,CACrB,8BAA8B,CAC/B,CAAC;AACJ,MAAM,CAAC,MAAM,4BAA4B,GACvC,uBAAuB,CAAsC,wBAAwB,CAAC,CAAC;AACzF,MAAM,CAAC,MAAM,mCAAmC,GAC9C,uBAAuB,CACrB,+BAA+B,CAChC,CAAC;AACJ,MAAM,CAAC,MAAM,oCAAoC,GAC/C,uBAAuB,CACrB,gCAAgC,CACjC,CAAC;AACJ,MAAM,CAAC,MAAM,8BAA8B,GACzC,uBAAuB,CAAwC,0BAA0B,CAAC,CAAC;AAC7F,MAAM,CAAC,MAAM,gCAAgC,GAC3C,uBAAuB,CAA0C,4BAA4B,CAAC,CAAC;AACjG,MAAM,CAAC,MAAM,qCAAqC,GAChD,uBAAuB,CACrB,iCAAiC,CAClC,CAAC;AACJ,MAAM,CAAC,MAAM,4BAA4B,GACvC,uBAAuB,CAAsC,wBAAwB,CAAC,CAAC;AACzF,MAAM,CAAC,MAAM,oCAAoC,GAC/C,uBAAuB,CACrB,gCAAgC,CACjC,CAAC;AACJ,MAAM,CAAC,MAAM,0CAA0C,GACrD,uBAAuB,CACrB,sCAAsC,CACvC,CAAC;AACJ,MAAM,CAAC,MAAM,qCAAqC,GAChD,uBAAuB,CACrB,iCAAiC,CAClC,CAAC;AACJ,MAAM,CAAC,MAAM,yCAAyC,GACpD,uBAAuB,CACrB,qCAAqC,CACtC,CAAC;AAEJ,+CAA+C;AAC/C,MAAM,CAAC,MAAM,8BAA8B,GACzC,uBAAuB,CAAwC,0BAA0B,CAAC,CAAC;AAC7F,MAAM,CAAC,MAAM,8BAA8B,GACzC,uBAAuB,CAAwC,0BAA0B,CAAC,CAAC;AAC7F,MAAM,CAAC,MAAM,6BAA6B,GACxC,uBAAuB,CAAuC,yBAAyB,CAAC,CAAC;AAC3F,MAAM,CAAC,MAAM,+BAA+B,GAC1C,uBAAuB,CAAyC,2BAA2B,CAAC,CAAC;AAC/F,MAAM,CAAC,MAAM,8BAA8B,GACzC,uBAAuB,CAAwC,0BAA0B,CAAC,CAAC;AAC7F,MAAM,CAAC,MAAM,+BAA+B,GAC1C,uBAAuB,CAAyC,2BAA2B,CAAC,CAAC;AAC/F,MAAM,CAAC,MAAM,+BAA+B,GAC1C,uBAAuB,CAAyC,2BAA2B,CAAC,CAAC;AAC/F,MAAM,CAAC,MAAM,4BAA4B,GACvC,uBAAuB,CAAsC,wBAAwB,CAAC,CAAC;AACzF,MAAM,CAAC,MAAM,uBAAuB,GAAG,uBAAuB,CAC5D,mBAAmB,CACpB,CAAC;AACF,MAAM,CAAC,MAAM,oCAAoC,GAC/C,uBAAuB,CACrB,gCAAgC,CACjC,CAAC;AACJ,MAAM,CAAC,MAAM,oCAAoC,GAC/C,uBAAuB,CACrB,gCAAgC,CACjC,CAAC;AACJ,MAAM,CAAC,MAAM,2BAA2B,GACtC,uBAAuB,CAAqC,uBAAuB,CAAC,CAAC;AACvF,MAAM,CAAC,MAAM,wBAAwB,GAAG,uBAAuB,CAC7D,oBAAoB,CACrB,CAAC;AACF,MAAM,CAAC,MAAM,qCAAqC,GAChD,uBAAuB,CACrB,iCAAiC,CAClC,CAAC;AACJ,MAAM,CAAC,MAAM,qCAAqC,GAChD,uBAAuB,CACrB,iCAAiC,CAClC,CAAC;AACJ,MAAM,CAAC,MAAM,4BAA4B,GACvC,uBAAuB,CAAsC,wBAAwB,CAAC,CAAC;AAEzF,sDAAsD;AACtD,MAAM,CAAC,MAAM,qCAAqC,GAChD,uBAAuB,CACrB,iCAAiC,CAClC,CAAC;AACJ,MAAM,CAAC,MAAM,kCAAkC,GAC7C,uBAAuB,CACrB,8BAA8B,CAC/B,CAAC;AACJ,MAAM,CAAC,MAAM,+BAA+B,GAC1C,uBAAuB,CAAyC,2BAA2B,CAAC,CAAC;AAC/F,MAAM,CAAC,MAAM,mCAAmC,GAC9C,uBAAuB,CACrB,+BAA+B,CAChC,CAAC;AACJ,MAAM,CAAC,MAAM,iCAAiC,GAC5C,uBAAuB,CACrB,6BAA6B,CAC9B,CAAC;AACJ,MAAM,CAAC,MAAM,8BAA8B,GACzC,uBAAuB,CAAwC,0BAA0B,CAAC,CAAC;AAC7F,MAAM,CAAC,MAAM,8BAA8B,GACzC,uBAAuB,CAAwC,0BAA0B,CAAC,CAAC;AAC7F,MAAM,CAAC,MAAM,yCAAyC,GACpD,uBAAuB,CACrB,qCAAqC,CACtC,CAAC;AACJ,MAAM,CAAC,MAAM,sCAAsC,GACjD,uBAAuB,CACrB,kCAAkC,CACnC,CAAC;AACJ,MAAM,CAAC,MAAM,mCAAmC,GAC9C,uBAAuB,CACrB,+BAA+B,CAChC,CAAC;AACJ,MAAM,CAAC,MAAM,gCAAgC,GAC3C,uBAAuB,CAA0C,4BAA4B,CAAC,CAAC;AACjG,MAAM,CAAC,MAAM,4BAA4B,GACvC,uBAAuB,CAAsC,wBAAwB,CAAC,CAAC;AACzF,MAAM,CAAC,MAAM,oCAAoC,GAC/C,uBAAuB,CACrB,gCAAgC,CACjC,CAAC;AACJ,MAAM,CAAC,MAAM,gCAAgC,GAC3C,uBAAuB,CACrB,4BAA4B,CAC7B,CAAC;AACJ,MAAM,CAAC,MAAM,0CAA0C,GACrD,uBAAuB,CACrB,sCAAsC,CACvC,CAAC;AACJ,MAAM,CAAC,MAAM,uCAAuC,GAClD,uBAAuB,CACrB,mCAAmC,CACpC,CAAC;AACJ,MAAM,CAAC,MAAM,sCAAsC,GACjD,uBAAuB,CACrB,kCAAkC,CACnC,CAAC;AACJ,MAAM,CAAC,MAAM,qCAAqC,GAChD,uBAAuB,CACrB,iCAAiC,CAClC,CAAC;AACJ,MAAM,CAAC,MAAM,qCAAqC,GAChD,uBAAuB,CACrB,iCAAiC,CAClC,CAAC;AACJ,MAAM,CAAC,MAAM,sCAAsC,GACjD,uBAAuB,CACrB,kCAAkC,CACnC,CAAC;AACJ,MAAM,CAAC,MAAM,+BAA+B,GAC1C,uBAAuB,CAAyC,2BAA2B,CAAC,CAAC;AAC/F,MAAM,CAAC,MAAM,0CAA0C,GACrD,uBAAuB,CACrB,sCAAsC,CACvC,CAAC;AACJ,MAAM,CAAC,MAAM,4CAA4C,GACvD,uBAAuB,CACrB,wCAAwC,CACzC,CAAC;AACJ,MAAM,CAAC,MAAM,sCAAsC,GACjD,uBAAuB,CACrB,kCAAkC,CACnC,CAAC;AACJ,MAAM,CAAC,MAAM,uCAAuC,GAClD,uBAAuB,CACrB,mCAAmC,CACpC,CAAC;AACJ,MAAM,CAAC,MAAM,uCAAuC,GAClD,uBAAuB,CACrB,mCAAmC,CACpC,CAAC;AAEJ,2EAA2E;AAC3E,MAAM,CAAC,MAAM,uBAAuB,GAAG,uBAAuB,CAC5D,iCAAiC,CAClC,CAAC;AACF,MAAM,CAAC,MAAM,oBAAoB,GAAG,uBAAuB,CACzD,8BAA8B,CAC/B,CAAC;AACF,MAAM,CAAC,MAAM,mBAAmB,GAAG,uBAAuB,CACxD,6BAA6B,CAC9B,CAAC;AACF,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAC1D,+BAA+B,CAChC,CAAC;AACF,MAAM,CAAC,MAAM,mBAAmB,GAAG,uBAAuB,CACxD,6BAA6B,CAC9B,CAAC;AACF,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAC1D,+BAA+B,CAChC,CAAC;AACF,MAAM,CAAC,MAAM,6BAA6B,GACxC,uBAAuB,CACrB,uCAAuC,CACxC,CAAC;AACJ,MAAM,CAAC,MAAM,yBAAyB,GACpC,uBAAuB,CACrB,mCAAmC,CACpC,CAAC"}
1
+ {"version":3,"file":"contract-validation.js","sourceRoot":"","sources":["../src/contract-validation.ts"],"names":[],"mappings":"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"}