skillscript-runtime 0.20.2 → 0.21.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.
@@ -76,7 +76,10 @@ async function refresh() {
76
76
  state.blockedShellAttempts = blocked;
77
77
  state.lastUpdate = ts;
78
78
  renderSecuredBanner();
79
- document.getElementById("poll-status").textContent = `last updated ${ts.toLocaleTimeString()}`;
79
+ // v0.21.0 surface the running runtime version next to the poll timestamp.
80
+ const ver = state.capabilities?.runtimeVersion;
81
+ document.getElementById("poll-status").textContent =
82
+ `last updated ${ts.toLocaleTimeString()}${ver ? ` · skillscript v${ver}` : ""}`;
80
83
  renderCurrentView();
81
84
  } catch (err) {
82
85
  document.getElementById("poll-status").textContent = `poll failed: ${err.message}`;
@@ -350,7 +353,7 @@ function renderSkills() {
350
353
  ${state.skills.map((s) => `
351
354
  <tr onclick="window.location.hash='#skill/${encodeURIComponent(s.name)}'">
352
355
  <td><strong>${esc(s.name)}</strong></td>
353
- <td><span class="badge ${esc(s.status)}">${esc(s.status)}</span></td>
356
+ <td>${skillStatusBadge(s)}</td>
354
357
  <td>${esc(s.description ?? "—")}</td>
355
358
  <td><code>${esc(s.version?.slice(0, 8) ?? "—")}</code></td>
356
359
  </tr>
@@ -361,16 +364,28 @@ function renderSkills() {
361
364
  `;
362
365
  }
363
366
 
367
+ // v0.21.0 — gate-aware status badge (adopter finding 576632ca). A legacy skill
368
+ // stored `Approved` but failing the secured gate (e.g. a v1 stamp) WON'T run —
369
+ // badging it a plain green "Approved" while the Approvals tab lists it as
370
+ // "needs approval" reads as a contradiction. Show "re-approval needed" here too
371
+ // so both views agree on the truth (what the gate will actually do).
372
+ function skillStatusBadge(s) {
373
+ if (s.status === "Approved" && s.gate_ok === false) {
374
+ return `<span class="badge error" title="Approved status, but the body lacks a valid signature — won't run until re-approved">re-approval needed</span>`;
375
+ }
376
+ return `<span class="badge ${esc(s.status)}">${esc(s.status)}</span>`;
377
+ }
378
+
364
379
  async function renderSkillDetail(name) {
365
380
  try {
366
- // v0.13.3 — source moved out of skill_metadata into dedicated skill_read.
381
+ // v0.13.3 — source moved out of skill_preflight into dedicated skill_read.
367
382
  // Call both in parallel; skill_read may fail if the skill name doesn't
368
383
  // resolve (load() throws), so guard it to keep the detail view rendering.
369
384
  const [meta, readResult] = await Promise.all([
370
- callTool("skill_metadata", { name }),
385
+ callTool("skill_preflight", { name }),
371
386
  callTool("skill_read", { name }).catch(() => null),
372
387
  ]);
373
- const { metadata, versions, recent_fires, approval } = meta;
388
+ const { metadata, versions, recent_fires, approval, contract } = meta;
374
389
  const source = readResult?.source ?? null;
375
390
  const metrics = state.metrics?.perSkill?.[name];
376
391
  const triggersForSkill = state.triggers.filter((t) => t.skillName === name);
@@ -397,6 +412,8 @@ async function renderSkillDetail(name) {
397
412
  ${renderStatusActions(name, metadata, approval)}
398
413
  </section>
399
414
 
415
+ ${renderEffectfulFootprintPanel(contract?.effectful_footprint)}
416
+
400
417
  ${source ? renderSecuritySignalsPanel(source) : ""}
401
418
 
402
419
  <section>
@@ -626,6 +643,49 @@ function renderHighlightedSkillBody(source) {
626
643
  // showing aggregated counts so a reviewer knows WHAT to look for before
627
644
  // scanning the body. Pairs with renderHighlightedSkillBody() (the
628
645
  // WHERE).
646
+ // v0.21.0 — the authoritative "what does it touch" least-privilege checklist
647
+ // for the human approver. Unlike renderSecuritySignalsPanel (regex over the
648
+ // source), this is the AST-derived effectful_footprint from skill_preflight —
649
+ // the SAME op enumeration the capability gate authorizes — so it's the truth of
650
+ // what the skill can do when signed, not a textual approximation. Surfaced right
651
+ // at the approve action so the operator sees the surface they're signing off.
652
+ function renderEffectfulFootprintPanel(fp) {
653
+ if (!fp) return ""; // source not loadable / parse failed → no contract to show
654
+ const items = [];
655
+ if (fp.connectors.length > 0) {
656
+ items.push(`<li class="sig-medium-text">Dispatches to ${fp.connectors.length} MCP connector${fp.connectors.length === 1 ? "" : "s"}: ${fp.connectors.map((c) => `<code>${esc(c)}</code>`).join(", ")}</li>`);
657
+ }
658
+ if (fp.builtins.length > 0) {
659
+ items.push(`<li class="sig-info-text">Uses ${fp.builtins.length} built-in op${fp.builtins.length === 1 ? "" : "s"}: ${fp.builtins.map((b) => `<code>${esc(b)}</code>`).join(", ")}</li>`);
660
+ }
661
+ if (fp.file_writes > 0) {
662
+ items.push(`<li class="sig-high-text">${fp.file_writes} <code>file_write</code> op${fp.file_writes === 1 ? "" : "s"} <small>(writes to the filesystem allowlist)</small></li>`);
663
+ }
664
+ if (fp.file_reads > 0) {
665
+ items.push(`<li class="sig-medium-text">${fp.file_reads} <code>file_read</code> op${fp.file_reads === 1 ? "" : "s"}</li>`);
666
+ }
667
+ if (fp.unsafe_shell > 0) {
668
+ items.push(`<li class="sig-high-text">${fp.unsafe_shell} unsafe (full-bash) shell op${fp.unsafe_shell === 1 ? "" : "s"}</li>`);
669
+ }
670
+ const safeShellBins = fp.shell_binaries.filter((b) => b !== "bash" || fp.unsafe_shell === 0);
671
+ if (safeShellBins.length > 0) {
672
+ items.push(`<li class="sig-medium-text">Runs shell ${safeShellBins.length === 1 ? "binary" : "binaries"}: ${safeShellBins.map((b) => `<code>${esc(b)}</code>`).join(", ")} <small>(allowlist-gated)</small></li>`);
673
+ }
674
+ if (fp.notifies > 0) {
675
+ items.push(`<li class="sig-medium-text">${fp.notifies} <code>notify</code> agent-wake op${fp.notifies === 1 ? "" : "s"}</li>`);
676
+ }
677
+ const body = items.length === 0
678
+ ? `<p class="empty">Pure — no connector, shell, file, or notify ops. Nothing effectful to authorize.</p>`
679
+ : `<ul class="security-signals">${items.join("")}</ul>
680
+ <p><small>This is the AST-derived footprint the capability gate authorizes — the surface this skill can touch once approved. Confirm every line is least-privilege before signing.</small></p>`;
681
+ return `
682
+ <section>
683
+ <h2>What this skill touches</h2>
684
+ ${body}
685
+ </section>
686
+ `;
687
+ }
688
+
629
689
  function renderSecuritySignalsPanel(source) {
630
690
  const sig = collectSecuritySignals(source);
631
691
  const items = [];
@@ -957,7 +1017,7 @@ async function loadComposeContract(detailsEl) {
957
1017
  panel.dataset.loaded = "true";
958
1018
  const [kind, name] = detailsEl.dataset.composeRef.split(":");
959
1019
  try {
960
- const meta = await callTool("skill_metadata", { name });
1020
+ const meta = await callTool("skill_preflight", { name });
961
1021
  const m = meta.metadata;
962
1022
  // For inline (data-only), also fetch the body since it bakes at
963
1023
  // compile time — reviewer sees what literally lands in the
@@ -14,23 +14,24 @@ import type { Registry } from "./connectors/registry.js";
14
14
  * protocol conforms to MCP — real MCP clients (Claude Desktop, Cursor,
15
15
  * future tools) can consume the server unchanged.
16
16
  *
17
- * Surface: tools wrapping existing T6 primitives.
17
+ * Surface: tools wrapping existing T6 primitives, ordered by the cold-author
18
+ * workflow loop the descriptions teach (learn → discover → draft → commit →
19
+ * approve → run → automate → observe).
18
20
  *
19
- * skill_list({filter?}) SkillCatalog (v0.9.8 pre-grouped by audience)
20
- * skill_metadata({name}) metadata + version history + recent_fires + approval (no source — see skill_read)
21
- * skill_read({name, version?}) {name, version, status, source} (v0.13.3 symmetric peer to skill_write)
22
- * data_read({id, store?}) PortableData | null (v0.13.8 direct lookup; no data_write MCP by design)
23
- * skill_status({name, new_state})→ SkillStatus update (write)
24
- * list_triggers({filter?}) TriggerRegistration[]
25
- * register_trigger({...}) TriggerRegistration (write)
26
- * unregister_trigger({trigger_id})→ boolean (write)
27
- * health_metrics({filter?}) HealthMetrics
28
- * runtime_capabilities({include?})→ wired connectors + shell-exec mode (v0.2.1)
29
- * lint_skill({source?|name}) diagnostics across tiers (v0.2.3)
30
- * compile_skill({source?|name, inputs?})→ rendered artifact + errors (v0.2.3)
31
- * skill_write({name, source, overwrite?})→ commit to SkillStore (write, v0.2.3)
32
- * execute_skill({skill_name, inputs?, mechanical?})→ run + return result (write, v0.2.8)
33
- * help({topic?}) → cold-agent language discovery (read, v0.2.8)
21
+ * LEARN help({topic?}) language quickstart + deep topics
22
+ * runtime_capabilities({include?})→ wired connectors + shell-exec mode
23
+ * DISCOVER skill_list({filter?}) SkillCatalog (grouped by audience; entries carry the full contract)
24
+ * skill_preflight({name}) one skill's contract: takes/returns/requires/touches + approval + lifecycle
25
+ * skill_read({name, version?}) {name, version, status, source} (the body itself)
26
+ * data_read({id, store?}) PortableData | null (direct lookup; no data_write MCP by design)
27
+ * DRAFT lint_skill({source?|name}) tiered diagnostics (inner loop)
28
+ * compile_skill({source?|name, inputs?})→ rendered artifact + errors + exec order (pre-commit)
29
+ * COMMIT skill_write({name, source, overwrite?})→ store the body (write; secured mode forces unsigned→Draft)
30
+ * APPROVE skill_status({name, new_state}) Draft/Approved/Disabled (write; secured promote needs a signature)
31
+ * RUN execute_skill({name|source, inputs?, mechanical?})→ run + return result (write)
32
+ * AUTOMATE register_trigger / list_triggers / set_trigger_enabled / unregister_trigger → autonomous dispatch
33
+ * OBSERVE health_metrics({filter?}) per-skill/connector aggregates
34
+ * blocked_shell_attempts() allowlist-refused shell ops (observe→promote loop)
34
35
  */
35
36
  export interface JsonRpcRequest {
36
37
  jsonrpc: "2.0";
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { healthMetrics } from "./metrics.js";
4
4
  import { lint } from "./lint.js";
5
5
  import { compile } from "./compile.js";
6
6
  import { parse as parseSkill } from "./parser.js";
7
+ import { extractEffectfulFootprint } from "./skill-surface.js";
7
8
  import { listKnownConnectorClasses } from "./connectors/config.js";
8
9
  import { LintFailureError, MissingSkillReferenceError, OpError } from "./errors.js";
9
10
  import { executeSkillByName, executeSkillFromSource, RecursionDepthExceededError, SkillNotFoundForCompositionError, } from "./composition.js";
@@ -118,7 +119,7 @@ export class McpServer {
118
119
  registerBuiltinTools() {
119
120
  this.registerTool({
120
121
  name: "skill_list",
121
- description: "Discover skills in the configured SkillStore (v0.9.8). Returns a `SkillCatalog` pre-grouped by audience-derived category: `receives` (skills that push to the calling agent via `# Output: agent:`), `skills` (skills the agent can invoke), `headless` (admin-view only). Category derived from each skill's `# Output:` declarations. Filter by audience / status / trigger_kind / domain_tags / name_prefix / author (AND-composed). Default: audience=\"agent\", status=\"Approved\". v0.18.6 — `author` filter narrows to skills authored by a specific identity; entries carry `author` for substrates that track it (null when not).",
122
+ description: "Discover skills in the configured SkillStore. Returns a `SkillCatalog` pre-grouped by audience-derived category: `receives` (skills that push to the calling agent via `# Output: agent:`), `skills` (skills the agent can invoke), `headless` (admin-view only). Category derived from each skill's `# Output:` declarations. Filter by audience / status / trigger_kind / domain_tags / name_prefix / author (AND-composed). Default: audience=\"agent\", status=\"Approved\". Every entry carries the full preflight contract — `vars` (inputs), `returns` (exported vars), `requires` (capability needs), `effectful_footprint` (which connectors / shell binaries / file + notify ops it touches), plus `gate_ok` (cleared-to-run under the current mode) and `author` (when the substrate tracks it). So you can read a skill's whole I/O + effect contract here without a per-skill `skill_preflight` call; reach for `skill_preflight` when you want one skill's contract + version/lifecycle detail, or `skill_read` for the body.",
122
123
  inputSchema: {
123
124
  type: "object",
124
125
  properties: {
@@ -143,7 +144,7 @@ export class McpServer {
143
144
  });
144
145
  this.registerTool({
145
146
  name: "blocked_shell_attempts",
146
- description: "v0.18.9 — list shell op dispatches refused by the binary allowlist gate. Queries the trace store cross-skill, filters to op records carrying `blocked_reason: \"binary-not-allowed\"`. Returns flat list ready for the dashboard's observe→promote loop (operator sees what binaries skills tried to invoke; decides whether to add any to `SKILLSCRIPT_SHELL_ALLOWLIST`).",
147
+ description: "List shell op dispatches refused by the binary allowlist gate. Queries the trace store cross-skill, filtering to op records carrying `blocked_reason: \"binary-not-allowed\"`. Returns a flat list for the dashboard's observe→promote loop: the operator sees what binaries skills tried to invoke, then decides whether to add any to `SKILLSCRIPT_SHELL_ALLOWLIST`. Read-only.",
147
148
  inputSchema: {
148
149
  type: "object",
149
150
  properties: {
@@ -196,8 +197,8 @@ export class McpServer {
196
197
  },
197
198
  });
198
199
  this.registerTool({
199
- name: "skill_metadata",
200
- description: "Get metadata + version history + recent fires + approval-gate state for a specific skill by name. For the source body itself, call skill_read.",
200
+ name: "skill_preflight",
201
+ description: "PRE-EXECUTION CONTRACT CHECK call this BEFORE executing or composing a skill to see what it takes, returns, requires, and touches: its inputs (vars), exported variables (returns), capability requirements, and effectful footprint (which connectors / shell binaries / write + notify ops it dispatches). Also reports whether it's cleared to run (approval-gate state) + version/lifecycle. The least-privilege checklist for a human approver, and the contract surface for a cold author composing against it. Discover skills with skill_list (its entries already carry this same contract); call skill_preflight for one skill's contract plus version/lifecycle detail, or skill_read for the source body.",
201
202
  inputSchema: {
202
203
  type: "object",
203
204
  properties: {
@@ -219,15 +220,28 @@ export class McpServer {
219
220
  // stale-Approved skills (body edited since approval, token no
220
221
  // longer verifies). `null` when the source isn't loadable.
221
222
  let approval = null;
223
+ // v0.21.0 — the contract surface: what the skill TAKES (vars, via the
224
+ // parser's frontmatter), RETURNS (exported vars), REQUIRES (capability
225
+ // clauses), and TOUCHES (effectful footprint). Derived statically from
226
+ // the body. Null when the source isn't loadable.
227
+ let contract = null;
222
228
  if (loaded?.source !== undefined) {
223
229
  const g = evaluateApprovalGate(loaded.source);
224
230
  approval = g.ok ? { gate_ok: true } : { gate_ok: false, reason: g.reason };
231
+ const parsed = parseSkill(loaded.source);
232
+ contract = {
233
+ vars: parsed.vars.map((v) => v.name),
234
+ returns: parsed.returns,
235
+ requires: parsed.requires,
236
+ effectful_footprint: extractEffectfulFootprint(parsed),
237
+ };
225
238
  }
226
239
  return {
227
240
  metadata,
241
+ contract,
242
+ approval,
228
243
  versions,
229
244
  recent_fires,
230
- approval,
231
245
  };
232
246
  },
233
247
  });
@@ -277,7 +291,7 @@ export class McpServer {
277
291
  });
278
292
  this.registerTool({
279
293
  name: "skill_status",
280
- description: "Transition a skill's status. Valid states: Draft, Approved, Disabled. Write operation.",
294
+ description: "Transition a skill's lifecycle status: Draft, Approved, Disabled. Approved is the only status that executes and lets triggers fire; Draft is the editing state; Disabled retires a skill without deleting it (re-enable by transitioning back to Approved/Draft). In secured mode you CANNOT promote to Approved here without a valid signature — approve via the dashboard or `skillfile approve` (which signs the body); a bare status flip can't grant approval. Write operation.",
281
295
  inputSchema: {
282
296
  type: "object",
283
297
  properties: {
@@ -296,6 +310,19 @@ export class McpServer {
296
310
  if (!isSkillStatus(newState)) {
297
311
  throw new OpError(`\`skill_status\` requires \`new_state\` to be one of ${VALID_SKILL_STATUSES.map((s) => `"${s}"`).join(", ")}; got ${JSON.stringify(newState)}.`, "skill_status", `Pass \`new_state\` as one of: ${VALID_SKILL_STATUSES.join(" | ")}.`, name);
298
312
  }
313
+ // v0.21.0 — store-agnostic secured-mode closure (red-team 33bf53d3).
314
+ // skill_status cannot GRANT approval in secured mode: promotion to
315
+ // Approved is refused unless the stored body already carries a valid v3
316
+ // signature. The per-store guard (FilesystemSkillStore/SqliteSkillStore)
317
+ // didn't cover custom adopter stores (e.g. AMP-backed), so an agent could
318
+ // flip Draft→Approved with no signature — a forgeable trust-state lie.
319
+ // Enforce HERE, at the ingress, regardless of substrate.
320
+ if (newState === "Approved" && isSecuredMode()) {
321
+ const loaded = await this.deps.skillStore.load(name).catch(() => null);
322
+ if (loaded === null || !evaluateApprovalGate(loaded.source).ok) {
323
+ throw new OpError(`cannot promote '${name}' to Approved in secured mode — the skill carries no valid signature. Approve it via the dashboard or \`skillfile approve\` (which signs the body); a status change alone cannot grant approval.`, "skill_status", `Sign the skill with the operator's key, then it can be Approved.`, name);
324
+ }
325
+ }
299
326
  const result = await this.deps.skillStore.update_status(name, newState);
300
327
  // v0.19.1 — sync declarative triggers on status transition.
301
328
  // Approved → register the skill's declared triggers; Draft or
@@ -307,7 +334,7 @@ export class McpServer {
307
334
  });
308
335
  this.registerTool({
309
336
  name: "list_triggers",
310
- description: "List registered triggers. Optionally filter by skill name or trigger source.",
337
+ description: "List registered triggers — the autonomous-dispatch registry. Optionally filter by skill name or trigger source (cron / event). Read-only. Pairs with register_trigger / set_trigger_enabled / unregister_trigger to manage how Approved skills fire on their own.",
311
338
  inputSchema: {
312
339
  type: "object",
313
340
  properties: {
@@ -326,7 +353,7 @@ export class McpServer {
326
353
  });
327
354
  this.registerTool({
328
355
  name: "register_trigger",
329
- description: "Register a new trigger for a skill. Returns the registration. Write operation.",
356
+ description: "Register an autonomous-dispatch trigger for a skill — cron (time-based) or event (HTTP POST /event ingress, named). Only Approved skills fire; the scheduler re-verifies the approval gate at fire time, so registering a trigger never bypasses approval. Skills can also declare triggers inline via `# Triggers:` frontmatter (synced automatically on approval) — use this tool for imperative / dynamic registration. Returns the registration. Write operation.",
330
357
  inputSchema: {
331
358
  type: "object",
332
359
  properties: {
@@ -374,7 +401,7 @@ export class McpServer {
374
401
  });
375
402
  this.registerTool({
376
403
  name: "unregister_trigger",
377
- description: "Unregister a trigger by id. Returns boolean (true if removed, false if id not found). Write operation.",
404
+ description: "Remove a registered trigger by id (see list_triggers for ids). Returns true if removed, false if the id wasn't found. Write operation.",
378
405
  inputSchema: {
379
406
  type: "object",
380
407
  properties: { trigger_id: { type: "string" } },
@@ -387,7 +414,7 @@ export class McpServer {
387
414
  });
388
415
  this.registerTool({
389
416
  name: "set_trigger_enabled",
390
- description: "v0.9.0 — toggle a trigger's enabled state. Disabled triggers stay registered but the scheduler skips firing them (vacation / maintenance windows). State persists via the onTriggersChanged hook for imperative triggers. Returns the updated registration, or null if no trigger has that id. Write operation.",
417
+ description: "Toggle a trigger's enabled state without unregistering it — disabled triggers stay in the registry but the scheduler skips firing them (vacation / maintenance windows). State persists via the onTriggersChanged hook for imperative triggers. Returns the updated registration, or null if no trigger has that id. Write operation.",
391
418
  inputSchema: {
392
419
  type: "object",
393
420
  properties: {
@@ -449,7 +476,7 @@ export class McpServer {
449
476
  // ─── v0.2.3 — over-the-wire authoring lifecycle ────────────────────────
450
477
  this.registerTool({
451
478
  name: "lint_skill",
452
- description: "Run static lint against a skill source body or stored skill name. Returns diagnostics across tier-1 (errors that block compile), tier-2 (warnings), tier-3 (advisories). Read-only. Inner-loop affordance for cold authors iterating on a draft.",
479
+ description: "Run static lint against a skill source body or stored skill name. Returns diagnostics across tier-1 (errors that block compile), tier-2 (warnings), tier-3 (advisories). Read-only. The inner-loop affordance while drafting — lint as you iterate, then compile_skill for the full pre-commit check before skill_write.",
453
480
  inputSchema: {
454
481
  type: "object",
455
482
  properties: {
@@ -461,7 +488,7 @@ export class McpServer {
461
488
  });
462
489
  this.registerTool({
463
490
  name: "compile_skill",
464
- description: "Compile a skill source body or stored skill name. Returns the rendered artifact + parse/compile errors + resolved variables + topological execution order. Read-only. Pre-commit validation affordance.",
491
+ description: "Compile a skill source body or stored skill name. Returns the rendered artifact + parse/compile errors + resolved variables + topological execution order. Read-only. The pre-commit check after lint_skill passes and before skill_write — confirms the body compiles and shows the execution order without running effects (use execute_skill `mechanical: true` for a no-fire dispatch preview).",
465
492
  inputSchema: {
466
493
  type: "object",
467
494
  properties: {
@@ -478,7 +505,7 @@ export class McpServer {
478
505
  });
479
506
  this.registerTool({
480
507
  name: "skill_write",
481
- description: "Write a skill body into the configured SkillStore. Tier-1 lint runs at write time (SkillStore contract); throws on rejection. Returns version + content_hash. The `# Status:` header in the source body is honored — write with `# Status: Approved` and the skill lands Approved (otherwise defaults to Draft). Promote/demote later via skill_status. Write operation.",
508
+ description: "Write a skill body into the configured SkillStore. Tier-1 lint runs at write time (SkillStore contract) and throws on rejection run lint_skill / compile_skill first to iterate cleanly. The `# Status:` header is honored: `# Status: Approved` lands Approved in unsecured mode, but in secured mode an unsigned body is forced to Draft (a write can't grant approval). Promote later via skill_status, or the dashboard / `skillfile approve` in secured mode. Returns version + content_hash. Write operation.",
482
509
  inputSchema: {
483
510
  type: "object",
484
511
  properties: {
@@ -533,7 +560,7 @@ export class McpServer {
533
560
  async executeSkill(args, callerCtx = {}) {
534
561
  // v0.15.2 — `name` is the canonical kwarg; `skill_name` is a silent
535
562
  // back-compat alias. Aligns the surface with the other skill_* tools
536
- // (skill_read / skill_metadata / skill_status / skill_write all take
563
+ // (skill_read / skill_preflight / skill_status / skill_write all take
537
564
  // `name`). Per Perry signoff (thread 75abc8c0): silent alias — no
538
565
  // tier-3 advisory, no deprecation warn. If both are supplied with
539
566
  // different values, that's ambiguous; reject so the caller picks one.
@@ -817,7 +844,21 @@ export class McpServer {
817
844
  // posture (every write requires explicit human promotion regardless
818
845
  // of body claim) opt in via the flag at runtime startup. Per Perry's
819
846
  // `787b6b95` Option A.
820
- const bodyToStore = this.deps.forceAlwaysDraft === true ? forceDraftStatus(source) : source;
847
+ // v0.21.0 store-agnostic secured-mode closure (red-team 33bf53d3).
848
+ // skill_write cannot GRANT approval: if the body claims Approved without a
849
+ // valid v3 signature, force Draft — regardless of the SkillStore impl. The
850
+ // per-store guard didn't cover custom adopter stores (AMP-backed), letting an
851
+ // agent write status=Approved with no signature (a forgeable trust-state lie
852
+ // that misleads skill_list / skill_preflight / the dashboard). evaluateApproval
853
+ // -Gate is not-ok for any Draft OR unsigned-Approved body, so a genuine
854
+ // approve-flow write (signed body) is honored; everything else lands Draft.
855
+ let bodyToStore = source;
856
+ if (this.deps.forceAlwaysDraft === true) {
857
+ bodyToStore = forceDraftStatus(source);
858
+ }
859
+ else if (isSecuredMode() && !evaluateApprovalGate(source).ok) {
860
+ bodyToStore = forceDraftStatus(source);
861
+ }
821
862
  // v0.17.0 — thread host-attested caller identity into `store({author})`
822
863
  // so MCP-authored skills stamp `SkillMeta.author = <calling agent>`,
823
864
  // not the runtime's wiring identity. When ctx.callerIdentity is
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAIvD,OAAO,EAAE,aAAa,EAAsB,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,KAAK,IAAI,UAAU,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACpF,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,2BAA2B,EAC3B,gCAAgC,GACjC,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAC1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AA0JnE,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAC1C,MAAM,WAAW,GAAG,qBAAqB,CAAC;AAE1C,MAAM,OAAO,SAAS;IAIS;IAHZ,KAAK,GAAyB,IAAI,GAAG,EAAE,CAAC;IACxC,OAAO,CAAS;IAEjC,YAA6B,IAAmB;QAAnB,SAAI,GAAJ,IAAI,CAAe;QAC9C,sEAAsE;QACtE,sEAAsE;QACtE,iEAAiE;QACjE,kEAAkE;QAClE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,aAAa,IAAI,eAAe,CAAC;QACrD,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAED,YAAY,CAAC,IAAa;QACxB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,SAAS;QACP,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAmB,EAAE,MAAqB,EAAE;QACvD,MAAM,EAAE,GAAG,GAAG,CAAC,EAAE,IAAI,IAAI,CAAC;QAC1B,IAAI,CAAC;YACH,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;gBACnB,KAAK,YAAY;oBACf,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,EAAE;wBACF,MAAM,EAAE;4BACN,eAAe,EAAE,oBAAoB;4BACrC,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;4BAC3B,UAAU,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;yBACzD;qBACF,CAAC;gBACJ,KAAK,YAAY;oBACf,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,EAAE;wBACF,MAAM,EAAE;4BACN,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gCACjD,IAAI,EAAE,CAAC,CAAC,IAAI;gCACZ,WAAW,EAAE,CAAC,CAAC,WAAW;gCAC1B,WAAW,EAAE,CAAC,CAAC,WAAW;6BAC3B,CAAC,CAAC;yBACJ;qBACF,CAAC;gBACJ,KAAK,YAAY,CAAC,CAAC,CAAC;oBAClB,MAAM,MAAM,GAAG,GAAG,CAAC,MAA4E,CAAC;oBAChG,IAAI,MAAM,KAAK,SAAS,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC5D,OAAO,aAAa,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,0DAA0D,CAAC,CAAC;oBAC/F,CAAC;oBACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACzC,IAAI,CAAC,IAAI,EAAE,CAAC;wBACV,OAAO,aAAa,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,SAAS,MAAM,CAAC,IAAI,aAAa,CAAC,CAAC;oBACtE,CAAC;oBACD,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;oBACpC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;oBAC7C,OAAO;wBACL,OAAO,EAAE,KAAK;wBACd,EAAE;wBACF,MAAM,EAAE;4BACN,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;yBAC1D;qBACF,CAAC;gBACJ,CAAC;gBACD;oBACE,OAAO,aAAa,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,WAAW,GAAG,CAAC,MAAM,aAAa,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,aAAa,CAAC,EAAE,EAAE,CAAC,KAAK,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,QAAQ;QACN,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC;YAChB,IAAI,EAAU,CAAC;YACf,OAAO,CAAC,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACjC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;gBAC9B,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE;oBAAE,SAAS;gBACjC,IAAI,GAAmB,CAAC;gBACxB,IAAI,CAAC;oBACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAmB,CAAC;gBAC3C,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS;gBACX,CAAC;gBACD,KAAK,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;oBAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;gBACpD,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,2EAA2E;IAEnE,oBAAoB;QAC1B,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,6mBAA6mB;YAC1nB,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE;4BAChE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE;4BACnE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;4BACzD,WAAW,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;4BACzD,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;4BAC/B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sNAAsN,EAAE;yBAChQ;wBACD,oBAAoB,EAAE,KAAK;qBAC5B;iBACF;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,MAAM,GAAI,IAAI,CAAC,QAAQ,CAAiC,IAAI,EAAE,CAAC;gBACrE,OAAO,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACzD,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,wBAAwB;YAC9B,WAAW,EAAE,4WAA4W;YACzX,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+DAA+D,EAAE;oBAC1G,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uCAAuC,EAAE;iBAChF;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,QAAQ;oBAClD,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;oBAClB,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;gBACzC,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBACtE,6DAA6D;gBAC7D,gEAAgE;gBAChE,6DAA6D;gBAC7D,gEAAgE;gBAChE,4BAA4B;gBAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;gBACnF,MAAM,QAAQ,GAMT,EAAE,CAAC;gBACR,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;wBAC3B,IAAI,EAAE,CAAC,cAAc,KAAK,oBAAoB;4BAAE,SAAS;wBACzD,wDAAwD;wBACxD,2DAA2D;wBAC3D,2DAA2D;wBAC3D,wDAAwD;wBACxD,6DAA6D;wBAC7D,iDAAiD;wBACjD,MAAM,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;wBAC/B,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC;4BAClE,CAAC,CAAC,MAAM;4BACR,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC;wBACpD,QAAQ,CAAC,IAAI,CAAC;4BACZ,UAAU,EAAE,KAAK,CAAC,UAAU;4BAC5B,MAAM,EAAE,EAAE,CAAC,MAAM;4BACjB,MAAM;4BACN,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI;4BACpE,WAAW,EAAE,EAAE,CAAC,aAAa;yBAC9B,CAAC,CAAC;wBACH,IAAI,QAAQ,CAAC,MAAM,IAAI,KAAK;4BAAE,MAAM;oBACtC,CAAC;oBACD,IAAI,QAAQ,CAAC,MAAM,IAAI,KAAK;wBAAE,MAAM;gBACtC,CAAC;gBACD,uEAAuE;gBACvE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC;gBACvD,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC9C,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,gJAAgJ;YAC7J,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,EAAE;iBAC5C;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAW,CAAC;gBACpC,MAAM,SAAS,GAAG,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnF,MAAM,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;oBACnE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;oBACnC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;oBACnC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;oBACjD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;iBACnE,CAAC,CAAC;gBACH,iEAAiE;gBACjE,8DAA8D;gBAC9D,2DAA2D;gBAC3D,IAAI,QAAQ,GAAiD,IAAI,CAAC;gBAClE,IAAI,MAAM,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;oBACjC,MAAM,CAAC,GAAG,oBAAoB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC9C,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;gBAC7E,CAAC;gBACD,OAAO;oBACL,QAAQ;oBACR,QAAQ;oBACR,YAAY;oBACZ,QAAQ;iBACT,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,uKAAuK;YACpL,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC5B;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAW,CAAC;gBACpC,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBAClF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC9D,OAAO;oBACL,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;oBAC9B,MAAM,EAAE,MAAM,CAAC,MAAM;iBACtB,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,6VAA6V;YAC1W,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACtB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sCAAsC,EAAE;iBAC/E;gBACD,QAAQ,EAAE,CAAC,IAAI,CAAC;aACjB;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAW,CAAC;gBAChC,MAAM,SAAS,GAAG,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBAChF,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;oBACpF,MAAM,IAAI,OAAO,CACf,qDAAqD,SAAS,4BAA4B,EAC1F,WAAW,EACX,mIAAmI,SAAS,UAAU,EACtJ,EAAE,CACH,CAAC;gBACJ,CAAC;gBACD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBAC7D,OAAO,MAAM,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACjC,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,wFAAwF;YACrG,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE;iBACvE;gBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;aAChC;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAW,CAAC;gBACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;gBACnC,mEAAmE;gBACnE,sEAAsE;gBACtE,kEAAkE;gBAClE,iEAAiE;gBACjE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC7B,MAAM,IAAI,OAAO,CACf,wDAAwD,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,EAChJ,cAAc,EACd,iCAAiC,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EACpE,IAAI,CACL,CAAC;gBACJ,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACxE,4DAA4D;gBAC5D,8DAA8D;gBAC9D,6DAA6D;gBAC7D,+DAA+D;gBAC/D,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBAChD,OAAO,MAAM,CAAC;YAChB,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,8EAA8E;YAC3F,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;iBACpD;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,MAAM,GAA6D,EAAE,CAAC;gBAC5E,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ;oBAAE,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;gBACxE,IAAI,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,QAAQ;oBAAE,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAA4B,CAAC;gBAClG,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;YAClD,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,gFAAgF;YAC7F,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC9B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;oBACnD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxB,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC/B;gBACD,QAAQ,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,MAAM,CAAC;aAC3C;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAW,CAAC;gBAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAA4B,CAAC;gBACzD,4DAA4D;gBAC5D,yDAAyD;gBACzD,8DAA8D;gBAC9D,+DAA+D;gBAC/D,2DAA2D;gBAC3D,mEAAmE;gBACnE,kDAAkD;gBAClD,IAAI,MAA4B,CAAC;gBACjC,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;oBACvB,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBAC1D,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;wBACzC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBAC1C,CAAC;oBAAC,MAAM,CAAC;wBACP,0DAA0D;wBAC1D,uDAAuD;wBACvD,qDAAqD;wBACrD,qDAAqD;oBACvD,CAAC;gBACH,CAAC;gBACD,MAAM,GAAG,GAAiE;oBACxE,SAAS;oBACT,MAAM;oBACN,IAAI,EAAE,IAAI,CAAC,MAAM,CAAW;oBAC5B,WAAW,EAAE,KAAK;oBAClB,GAAG,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACpF,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC5C,CAAC;gBACF,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YAClD,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,wGAAwG;YACrH,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAC9C,QAAQ,EAAE,CAAC,YAAY,CAAC;aACzB;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAW,CAAC;gBACxC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,CAAC;YAChE,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,qBAAqB;YAC3B,WAAW,EAAE,iTAAiT;YAC9T,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC9B,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;iBAC7B;gBACD,QAAQ,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC;aACpC;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAW,CAAC;gBACxC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAY,CAAC;gBAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;gBACnE,OAAO,OAAO,IAAI,IAAI,CAAC;YACzB,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,oGAAoG;YACjH,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oBACpD,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;oBACxD,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC7B;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAA0B,EAAE;gBAC9C,MAAM,MAAM,GAAuF,EAAE,CAAC;gBACtG,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAAE,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAa,CAAC;gBAC9E,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;oBAAE,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,CAAa,CAAC;gBAC1F,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,QAAQ;oBAAE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC7E,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,QAAQ;oBAAE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC7E,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACrD,CAAC;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,sBAAsB;YAC5B,WAAW,EAAE,iLAAiL;YAC9L,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE;wBACP,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,IAAI,EAAE,CAAC,aAAa,EAAE,eAAe,EAAE,qBAAqB,EAAE,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,aAAa,EAAE,kBAAkB,CAAC;yBACxM;wBACD,WAAW,EAAE,kDAAkD;qBAChE;iBACF;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC;SACxD,CAAC,CAAC;QAEH,0EAA0E;QAE1E,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,YAAY;YAClB,WAAW,EAAE,kPAAkP;YAC/P,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yDAAyD,EAAE;oBAClG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wEAAwE,EAAE;iBAChH;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC9C,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,yMAAyM;YACtN,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4DAA4D,EAAE;oBACrG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wEAAwE,EAAE;oBAC/G,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACxC,WAAW,EAAE,sDAAsD;qBACpE;iBACF;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;SACjD,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,0WAA0W;YACvX,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kEAAkE,EAAE;oBACzG,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;oBAC7D,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,sHAAsH,EAAE,OAAO,EAAE,KAAK,EAAE;iBACpL;gBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;aAC7B;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC;SACzD,CAAC,CAAC;QAEH,0EAA0E;QAE1E,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,owBAAowB;YACjxB,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wKAAwK,EAAE;oBAC/M,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+IAA+I,EAAE;oBACxL,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0DAA0D,EAAE;oBACvG,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,oBAAoB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACxC,WAAW,EAAE,sDAAsD;qBACpE;oBACD,UAAU,EAAE;wBACV,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE,2GAA2G;wBACxH,OAAO,EAAE,KAAK;qBACf;iBACF;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,CAAC;SAC3D,CAAC,CAAC;QAEH,IAAI,CAAC,YAAY,CAAC;YAChB,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,6MAA6M;YAC1N,WAAW,EAAE;gBACX,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,aAAa,CAAC;wBACnF,WAAW,EAAE,+DAA+D;qBAC7E;iBACF;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;SACzC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,IAA6B,EAAE,YAA2B,EAAE;QACrF,oEAAoE;QACpE,qEAAqE;QACrE,qEAAqE;QACrE,kEAAkE;QAClE,kEAAkE;QAClE,sEAAsE;QACtE,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAC/B,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1C,MAAM,YAAY,GAAG,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,EAAE,CAAC;QACvE,MAAM,iBAAiB,GAAG,OAAO,cAAc,KAAK,QAAQ,IAAI,cAAc,KAAK,EAAE,CAAC;QACtF,IAAI,YAAY,IAAI,iBAAiB,IAAI,SAAS,KAAK,cAAc,EAAE,CAAC;YACtE,MAAM,IAAI,KAAK,CACb,8GAA8G,CAC/G,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC;QAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,OAAO,GAAG,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,EAAE,CAAC;QAClE,MAAM,SAAS,GAAG,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,EAAE,CAAC;QACpE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;QACnF,CAAC;QACD,MAAM,MAAM,GAAI,IAAI,CAAC,QAAQ,CAAwC,IAAI,EAAE,CAAC;QAC5E,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC;QAE/C,kEAAkE;QAClE,+DAA+D;QAC/D,+CAA+C;QAC/C,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,kFAAkF,CAAC,CAAC;QACtG,CAAC;QACD,0EAA0E;QAC1E,oEAAoE;QACpE,oEAAoE;QACpE,yEAAyE;QACzE,sEAAsE;QACtE,oEAAoE;QACpE,gEAAgE;QAChE,oEAAoE;QACpE,EAAE;QACF,kEAAkE;QAClE,oEAAoE;QACpE,mEAAmE;QACnE,oEAAoE;QACpE,gEAAgE;QAChE,6DAA6D;QAC7D,iEAAiE;QACjE,gEAAgE;QAChE,mEAAmE;QACnE,kCAAkC;QAClC,IAAI,OAA2B,CAAC;QAChC,IAAI,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAmB,CAAC,CAAC;gBACtE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;oBAAE,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;YACvD,CAAC;YAAC,MAAM,CAAC;gBACP,4DAA4D;gBAC5D,+DAA+D;gBAC/D,+DAA+D;YACjE,CAAC;QACH,CAAC;QACD,qEAAqE;QACrE,mEAAmE;QACnE,oEAAoE;QACpE,2DAA2D;QAC3D,+DAA+D;QAC/D,2DAA2D;QAC3D,iEAAiE;QACjE,iEAAiE;QACjE,MAAM,GAAG,GAAG;YACV,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;YAC5B,UAAU;YACV,cAAc,EAAE,CAAC;YACjB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/F,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtF,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7C,GAAG,CAAC,SAAS,EAAE,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,SAAS,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChD,CAAC;QAElD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,SAAS;gBACtB,CAAC,CAAC,MAAM,sBAAsB,CAAC,SAAmB,EAAE,MAAM,EAAE;oBACxD,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;oBAChC,GAAG;iBACJ,CAAC;gBACJ,CAAC,CAAC,MAAM,kBAAkB,CAAC,SAAmB,EAAE,MAAM,EAAE;oBACpD,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;oBAChC,GAAG;iBACJ,CAAC,CAAC;YACP,OAAO;gBACL,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,8DAA8D;gBAC9D,sEAAsE;gBACtE,mEAAmE;gBACnE,4BAA4B;gBAC5B,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,uBAAuB,EAAE,MAAM,CAAC,uBAAuB;gBACvD,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;gBAC/C,UAAU;aACX,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,wEAAwE;YACxE,uEAAuE;YACvE,wEAAwE;YACxE,uEAAuE;YACvE,qEAAqE;YACrE,kEAAkE;YAClE,sEAAsE;YACtE,IAAI,GAAG,YAAY,0BAA0B,IAAI,GAAG,YAAY,gCAAgC,EAAE,CAAC;gBACjG,OAAO;oBACL,UAAU,EAAE,IAAI;oBAChB,UAAU,EAAE,EAAE;oBACd,UAAU,EAAE,EAAE;oBACd,OAAO,EAAE,EAAE;oBACX,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;oBAC1G,YAAY,EAAE,EAAE;oBAChB,UAAU;iBACX,CAAC;YACJ,CAAC;YACD,IAAI,GAAG,YAAY,2BAA2B,EAAE,CAAC;gBAC/C,OAAO;oBACL,UAAU,EAAE,SAAS;oBACrB,UAAU,EAAE,EAAE;oBACd,UAAU,EAAE,EAAE;oBACd,OAAO,EAAE,EAAE;oBACX,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,6BAA6B,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;oBACrI,YAAY,EAAE,EAAE;oBAChB,UAAU;iBACX,CAAC;YACJ,CAAC;YACD,IAAI,GAAG,YAAY,gBAAgB,EAAE,CAAC;gBACpC,OAAO;oBACL,UAAU,EAAE,SAAS;oBACrB,UAAU,EAAE,EAAE;oBACd,UAAU,EAAE,EAAE;oBACd,OAAO,EAAE,EAAE;oBACX,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;oBACxG,YAAY,EAAE,EAAE;oBAChB,UAAU;iBACX,CAAC;YACJ,CAAC;YACD,gEAAgE;YAChE,OAAO;gBACL,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,EAAE;gBACd,UAAU,EAAE,EAAE;gBACd,OAAO,EAAE,EAAE;gBACX,MAAM,EAAE,CAAC,EAAE,KAAK,EAAG,GAAa,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAG,GAAa,CAAC,OAAO,EAAE,CAAC;gBACpH,YAAY,EAAE,EAAE;gBAChB,UAAU;aACX,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,IAAI,CAAC,IAA6B;QAC9C,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACvE,OAAO,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/D,CAAC;IAED,8EAA8E;IAEtE,KAAK,CAAC,SAAS,CAAC,IAA6B;QACnD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC9C,mEAAmE;QACnE,6DAA6D;QAC7D,gEAAgE;QAChE,kEAAkE;QAClE,0CAA0C;QAC1C,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE;YACpC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;YAChC,QAAQ,EAAE,KAAK;YACf,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/F,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtF,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9E,CAAC,CAAC;QACH,OAAO;YACL,WAAW,EAAE,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC3C,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAChC,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,MAAM,EAAE,CAAC,CAAC,MAAM;aACjB,CAAC,CAAC;YACH,WAAW,EAAE,UAAU,CAAC,UAAU;YAClC,aAAa,EAAE,UAAU,CAAC,YAAY;YACtC,UAAU,EAAE,UAAU,CAAC,SAAS;YAChC,aAAa,EAAE,UAAU,CAAC,UAAU,KAAK,CAAC;YAC1C,aAAa,EAAE,UAAU,CAAC,YAAY,KAAK,CAAC;YAC5C,aAAa,EAAE,UAAU,CAAC,SAAS,KAAK,CAAC;SAC1C,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,IAA6B;QACtD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,MAAM,GAAI,IAAI,CAAC,QAAQ,CAAwC,IAAI,SAAS,CAAC;QACnF,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE;gBACrC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;gBAChC,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3C,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1G,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/F,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpF,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9E,CAAC,CAAC;YACH,OAAO;gBACL,UAAU,EAAE,QAAQ,CAAC,SAAS;gBAC9B,QAAQ,EAAE,QAAQ,CAAC,MAAM;gBACzB,kBAAkB,EAAE,QAAQ,CAAC,iBAAiB;gBAC9C,YAAY,EAAE,QAAQ,CAAC,WAAW;gBAClC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,QAAQ,EAAE,QAAQ,CAAC,OAAO;gBAC1B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;gBAC3B,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,MAAM,EAAE,EAAE;aACX,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,oFAAoF;YACpF,8EAA8E;YAC9E,yCAAyC;YACzC,MAAM,OAAO,GAAI,GAAa,CAAC,OAAO,CAAC;YACvC,IAAI,GAAG,YAAY,gBAAgB,EAAE,CAAC;gBACpC,OAAO;oBACL,UAAU,EAAE,IAAI;oBAChB,QAAQ,EAAE,IAAI;oBACd,kBAAkB,EAAE,EAAE;oBACtB,YAAY,EAAE,EAAE;oBAChB,QAAQ,EAAE,EAAE;oBACZ,OAAO,EAAE,EAAE;oBACX,QAAQ,EAAE,IAAI;oBACd,QAAQ,EAAE,EAAE;oBACZ,UAAU,EAAE,EAAE;oBACd,MAAM,EAAE,CAAC,OAAO,CAAC;oBACjB,aAAa,EAAE,GAAG,CAAC,WAAW;iBAC/B,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,IAAI;gBACd,kBAAkB,EAAE,EAAE;gBACtB,YAAY,EAAE,EAAE;gBAChB,QAAQ,EAAE,EAAE;gBACZ,OAAO,EAAE,EAAE;gBACX,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,EAAE;gBACZ,UAAU,EAAE,EAAE;gBACd,MAAM,EAAE,CAAC,OAAO,CAAC;aAClB,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,IAA6B,EAAE,MAAqB,EAAE;QAC7E,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;QAC7C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC1C,sEAAsE;gBACtE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,mDAAmD,CAAC,CAAC;YAC5F,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,iFAAiF;gBACjF,MAAM,GAAG,GAAI,GAAa,CAAC,OAAO,CAAC;gBACnC,IAAI,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC;oBAAE,MAAM,GAAG,CAAC;YAChD,CAAC;QACH,CAAC;QACD,mEAAmE;QACnE,oEAAoE;QACpE,6DAA6D;QAC7D,2DAA2D;QAC3D,qEAAqE;QACrE,oEAAoE;QACpE,qEAAqE;QACrE,uBAAuB;QACvB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QAC5F,wEAAwE;QACxE,qEAAqE;QACrE,gEAAgE;QAChE,sEAAsE;QACtE,qEAAqE;QACrE,sEAAsE;QACtE,iEAAiE;QACjE,MAAM,QAAQ,GAAG,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/F,yEAAyE;QACzE,sEAAsE;QACtE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;QAClF,iEAAiE;QACjE,mEAAmE;QACnE,8DAA8D;QAC9D,iEAAiE;QACjE,+DAA+D;QAC/D,oCAAoC;QACpC,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QAC1D,OAAO;YACL,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,YAAY,EAAE,WAAW,CAAC,YAAY;YACtC,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,UAAU,EAAE,WAAW,CAAC,UAAU;SACnC,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,KAAK,CAAC,oBAAoB,CAAC,IAAY,EAAE,MAAmB;QAClE,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,KAAK,SAAS;YAAE,OAAO;QAC9C,IAAI,MAAM,CAAC;QACX,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;YACP,kEAAkE;YAClE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,+BAA+B,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;YAC3E,OAAO;QACT,CAAC;QACD,IAAI,cAAc,GAAoD,EAAE,CAAC;QACzE,IAAI,UAAU,GAAa,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACzC,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC;YACjC,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;QAAC,MAAM,CAAC;YACP,gDAAgD;YAChD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,+BAA+B,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;YAC3E,OAAO;QACT,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,+BAA+B,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC;IAChG,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,aAAa,CAAC,IAA6B;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,EAAE;YAAE,OAAO,MAAM,CAAC;QAC/D,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YAC5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrD,OAAO,MAAM,CAAC,MAAM,CAAC;QACvB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,IAA6B;QAC7D,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5F,MAAM,IAAI,GAAG,CAAC,GAAW,EAAW,EAAE,CAAC,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC1E,MAAM,GAAG,GAA4B,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC/B,IAAI,IAAI,CAAC,gBAAgB,CAAC;YAAE,GAAG,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;QACjE,IAAI,IAAI,CAAC,aAAa,CAAC;YAAE,GAAG,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC;QACnF,IAAI,IAAI,CAAC,kBAAkB,CAAC;YAAE,GAAG,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC;QAC3F,IAAI,IAAI,CAAC,aAAa,CAAC;YAAE,GAAG,CAAC,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/H,IAAI,IAAI,CAAC,YAAY,CAAC;YAAE,GAAG,CAAC,YAAY,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5H,IAAI,IAAI,CAAC,aAAa,CAAC;YAAE,GAAG,CAAC,aAAa,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/H,IAAI,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YAC1B,2EAA2E;YAC3E,GAAG,CAAC,eAAe,CAAC,GAAG,GAAG;gBACxB,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC1D,GAAG,CAAC,MAAM,aAAa,CAAC,CAAC,CAAC,CAAC;oBAC3B,aAAa,EAAE,CAAC,CAAC,YAAY,IAAI,IAAI;iBACtC,CAAC,CAAC,CAAC;gBACN,CAAC,CAAC,EAAE,CAAC;QACT,CAAC;QACD,IAAI,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC;YAChC,iEAAiE;YACjE,gEAAgE;YAChE,+DAA+D;YAC/D,0DAA0D;YAC1D,sCAAsC;YACtC,GAAG,CAAC,qBAAqB,CAAC,GAAG,yBAAyB,EAAE,CAAC;QAC3D,CAAC;QACD,IAAI,IAAI,CAAC,iBAAiB,CAAC;YAAE,GAAG,CAAC,iBAAiB,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3I,IAAI,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC5B,sEAAsE;YACtE,wEAAwE;YACxE,+DAA+D;YAC/D,yEAAyE;YACzE,uEAAuE;YACvE,0EAA0E;YAC1E,uEAAuE;YACvE,uEAAuE;YACvE,GAAG,CAAC,iBAAiB,CAAC,GAAG;gBACvB,OAAO,EAAE,aAAa,EAAE;gBACxB,kBAAkB,EAAE,oBAAoB,EAAE;aAC3C,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC3B,0DAA0D;YAC1D,+DAA+D;YAC/D,4DAA4D;YAC5D,4DAA4D;YAC5D,iEAAiE;YACjE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;YAC3C,GAAG,CAAC,gBAAgB,CAAC,GAAG;gBACtB,IAAI,EAAE,kBAAkB;gBACxB,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,KAAK,IAAI;gBACpD,SAAS,EAAE,SAAS,KAAK,SAAS;oBAChC,CAAC,CAAC,+CAA+C;oBACjD,CAAC,CAAC,SAAS;gBACb,WAAW,EACT,4EAA4E;oBAC5E,mFAAmF;oBACnF,kFAAkF;oBAClF,iFAAiF;oBACjF,kEAAkE;oBAClE,iFAAiF;oBACjF,qFAAqF;oBACrF,2FAA2F;oBAC3F,8EAA8E;oBAC9E,+EAA+E;oBAC/E,6EAA6E;oBAC7E,0EAA0E;oBAC1E,+CAA+C;aAClD,CAAC;QACJ,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;CACF;AAED,SAAS,cAAc,CAAC,QAAsC;IAC5D,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC;QACvB,KAAK,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;QACzB,KAAK,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC;AACH,CAAC;AAoBD,KAAK,UAAU,aAAa,CAC1B,KAAoD;IAEpD,IAAI,IAAwB,CAAC;IAC7B,IAAI,CAAC;QACH,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,cAAc,EAAG,KAAK,CAAC,IAA0B,CAAC,IAAI,IAAI,SAAS;YACnE,gBAAgB,EAAE,SAAS;YAC3B,cAAc,EAAE,SAAS;YACzB,QAAQ,EAAE,EAAE;YACZ,QAAQ,EAAE,IAAI;YACd,cAAc,EAAE,4BAA4B;SAC7C,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG;QACX,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;QACvC,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ;KACxB,CAAC;IACF,MAAM,aAAa,GAAI,KAAK,CAAC,QAA+C,EAAE,QAAQ,CAAC;IACvF,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE,CAAC;QACxC,OAAO,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;IACjE,CAAC;IACD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,CAAC,MAAO,aAA6C,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAiB,CAAC;QAC7G,OAAO,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC/B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,OAAO,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC;IAC9D,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,EAA0B,EAAE,IAAY,EAAE,OAAe;IAC9E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC;AAC1D,CAAC"}
1
+ {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@
8
8
  * domain_tags + name_prefix.
9
9
  */
10
10
  import type { SkillCatalog, SkillEntry, SkillListFilter, SkillStore } from "./connectors/types.js";
11
- import type { TriggerDecl, OutputDecl } from "./parser.js";
11
+ import type { ParsedSkill } from "./parser.js";
12
12
  /**
13
13
  * Build the catalog for a given SkillStore + filter.
14
14
  *
@@ -26,13 +26,5 @@ export declare function buildSkillCatalog(skillStore: SkillStore, filter?: Skill
26
26
  * a single entry without going through buildSkillCatalog (e.g., unit-test
27
27
  * fixtures).
28
28
  */
29
- export declare function buildEntry(name: string, description: string, status: SkillEntry["status"], parsed: {
30
- outputs: OutputDecl[];
31
- triggers: TriggerDecl[];
32
- vars: Array<{
33
- name: string;
34
- default?: string;
35
- required?: boolean;
36
- }>;
37
- }, author?: string): SkillEntry;
29
+ export declare function buildEntry(name: string, description: string, status: SkillEntry["status"], parsed: ParsedSkill, author?: string): SkillEntry;
38
30
  //# sourceMappingURL=skill-catalog.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"skill-catalog.d.ts","sourceRoot":"","sources":["../src/skill-catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnG,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAM3D;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,UAAU,EACtB,MAAM,GAAE,eAAoB,GAC3B,OAAO,CAAC,YAAY,CAAC,CAsEvB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,EAC5B,MAAM,EAAE;IAAE,OAAO,EAAE,UAAU,EAAE,CAAC;IAAC,QAAQ,EAAE,WAAW,EAAE,CAAC;IAAC,IAAI,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;CAAE,EAC/H,MAAM,CAAC,EAAE,MAAM,GACd,UAAU,CAgBZ"}
1
+ {"version":3,"file":"skill-catalog.d.ts","sourceRoot":"","sources":["../src/skill-catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnG,OAAO,KAAK,EAAE,WAAW,EAA2B,MAAM,aAAa,CAAC;AAaxE;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CACrC,UAAU,EAAE,UAAU,EACtB,MAAM,GAAE,eAAoB,GAC3B,OAAO,CAAC,YAAY,CAAC,CAyEvB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,EAC5B,MAAM,EAAE,WAAW,EACnB,MAAM,CAAC,EAAE,MAAM,GACd,UAAU,CAsBZ"}
@@ -1,5 +1,11 @@
1
1
  import { parse } from "./parser.js";
2
2
  import { evaluateApprovalGate } from "./approval.js";
3
+ import { extractEffectfulFootprint } from "./skill-surface.js";
4
+ /** Empty effectful footprint — the parse-fail fallback (no AST to walk). */
5
+ const EMPTY_FOOTPRINT = {
6
+ connectors: [], builtins: [], shell_binaries: [],
7
+ unsafe_shell: 0, file_writes: 0, file_reads: 0, notifies: 0,
8
+ };
3
9
  const DEFAULT_AUDIENCE = "agent";
4
10
  const DEFAULT_STATUS = "Approved";
5
11
  /**
@@ -65,6 +71,9 @@ export async function buildSkillCatalog(skillStore, filter = {}) {
65
71
  vars: [],
66
72
  output: [],
67
73
  triggers: [],
74
+ returns: [],
75
+ requires: [],
76
+ effectful_footprint: EMPTY_FOOTPRINT,
68
77
  ...(meta.author !== undefined ? { author: meta.author } : { author: null }),
69
78
  });
70
79
  continue;
@@ -97,6 +106,12 @@ export function buildEntry(name, description, status, parsed, author) {
97
106
  vars: renderVars(parsed.vars),
98
107
  output: renderOutputs(parsed.outputs),
99
108
  triggers: renderTriggers(parsed.triggers),
109
+ // v0.21.0 — preflight contract mirror. returns/requires straight off the
110
+ // frontmatter; effectful_footprint walks the AST (same op enumeration the
111
+ // capability gate uses). All free — the source is already parsed.
112
+ returns: parsed.returns,
113
+ requires: parsed.requires,
114
+ effectful_footprint: extractEffectfulFootprint(parsed),
100
115
  // v0.18.6 — surface author when the substrate populated it; null
101
116
  // when not (substrate-neutral graceful degradation).
102
117
  author: author ?? null,