@sensigo/realm-cli 0.12.1 → 0.14.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.
- package/dist/agent/gate/slack-gate-notifier.d.ts +1 -1
- package/dist/agent/gate/slack-gate-notifier.d.ts.map +1 -1
- package/dist/agent/gate/slack-gate-notifier.js +1 -1
- package/dist/agent/gate/slack-gate-notifier.js.map +1 -1
- package/dist/agent/gate/slack-gate-server.d.ts +1 -1
- package/dist/agent/gate/slack-gate-server.d.ts.map +1 -1
- package/dist/agent/gate/slack-socket-client.d.ts +1 -1
- package/dist/agent/gate/slack-socket-client.d.ts.map +1 -1
- package/dist/agent/providers/agent-utils.d.ts +7 -2
- package/dist/agent/providers/agent-utils.d.ts.map +1 -1
- package/dist/agent/providers/agent-utils.js +20 -6
- package/dist/agent/providers/agent-utils.js.map +1 -1
- package/dist/agent/run-agent.d.ts +6 -0
- package/dist/agent/run-agent.d.ts.map +1 -1
- package/dist/agent/run-agent.js +5 -0
- package/dist/agent/run-agent.js.map +1 -1
- package/dist/agent/run-attach.d.ts +23 -0
- package/dist/agent/run-attach.d.ts.map +1 -0
- package/dist/agent/run-attach.js +81 -0
- package/dist/agent/run-attach.js.map +1 -0
- package/dist/commands/agent.d.ts +14 -0
- package/dist/commands/agent.d.ts.map +1 -1
- package/dist/commands/agent.js +70 -81
- package/dist/commands/agent.js.map +1 -1
- package/dist/commands/init.d.ts +2 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +69 -2
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/inspect.d.ts +1 -0
- package/dist/commands/inspect.d.ts.map +1 -1
- package/dist/commands/inspect.js +104 -1
- package/dist/commands/inspect.js.map +1 -1
- package/dist/commands/listen.d.ts +11 -0
- package/dist/commands/listen.d.ts.map +1 -1
- package/dist/commands/listen.js +36 -1
- package/dist/commands/listen.js.map +1 -1
- package/dist/commands/mcp.d.ts +2 -1
- package/dist/commands/mcp.d.ts.map +1 -1
- package/dist/commands/mcp.js +16 -5
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/register.d.ts +6 -0
- package/dist/commands/register.d.ts.map +1 -1
- package/dist/commands/register.js +35 -1
- package/dist/commands/register.js.map +1 -1
- package/dist/commands/run.d.ts.map +1 -1
- package/dist/commands/run.js +18 -0
- package/dist/commands/run.js.map +1 -1
- package/dist/commands/serve.d.ts +6 -0
- package/dist/commands/serve.d.ts.map +1 -1
- package/dist/commands/serve.js +18 -4
- package/dist/commands/serve.js.map +1 -1
- package/dist/commands/test.d.ts.map +1 -1
- package/dist/commands/test.js +36 -1
- package/dist/commands/test.js.map +1 -1
- package/dist/commands/validate.d.ts.map +1 -1
- package/dist/commands/validate.js +58 -8
- package/dist/commands/validate.js.map +1 -1
- package/dist/commands/watch.d.ts.map +1 -1
- package/dist/commands/watch.js +6 -1
- package/dist/commands/watch.js.map +1 -1
- package/dist/extensions/extension-identity.d.ts +82 -0
- package/dist/extensions/extension-identity.d.ts.map +1 -0
- package/dist/extensions/extension-identity.js +242 -0
- package/dist/extensions/extension-identity.js.map +1 -0
- package/dist/extensions/load-project-extensions.d.ts +59 -0
- package/dist/extensions/load-project-extensions.d.ts.map +1 -0
- package/dist/extensions/load-project-extensions.js +654 -0
- package/dist/extensions/load-project-extensions.js.map +1 -0
- package/dist/extensions/manifest-secrets.d.ts +36 -0
- package/dist/extensions/manifest-secrets.d.ts.map +1 -0
- package/dist/extensions/manifest-secrets.js +126 -0
- package/dist/extensions/manifest-secrets.js.map +1 -0
- package/dist/index.js +1 -1
- package/package.json +4 -4
- package/dist/agent/preflight.d.ts +0 -36
- package/dist/agent/preflight.d.ts.map +0 -1
- package/dist/agent/preflight.js +0 -81
- package/dist/agent/preflight.js.map +0 -1
package/dist/commands/agent.js
CHANGED
|
@@ -1,13 +1,48 @@
|
|
|
1
1
|
// realm agent — autonomous CLI command that drives a workflow using an LLM provider.
|
|
2
2
|
// Core loop logic lives in packages/cli/src/agent/run-agent.ts for testability.
|
|
3
|
+
//
|
|
4
|
+
// v0.14: the legacy env-gated adapter tier (GITHUB_TOKEN/SLACK_WEBHOOK_URL) is GONE —
|
|
5
|
+
// adapters are constructed from the deployment manifest (realm.yaml); the loader registry
|
|
6
|
+
// (with its drift identity attached) flows directly into the run. Gate-notifier config is
|
|
7
|
+
// sourced from `manifest.notifiers.slack_gate` (the nine SLACK_* env reads are deleted).
|
|
3
8
|
import { Command } from 'commander';
|
|
4
9
|
import { join, resolve } from 'node:path';
|
|
5
10
|
import { pathToFileURL } from 'node:url';
|
|
6
|
-
import { loadWorkflowFromFile, JsonFileStore, JsonWorkflowStore
|
|
11
|
+
import { loadWorkflowFromFile, JsonFileStore, JsonWorkflowStore } from '@sensigo/realm';
|
|
7
12
|
import { LlmProvider, resolveProvider } from '../agent/providers/llm-provider.js';
|
|
8
13
|
import { runAgent } from '../agent/run-agent.js';
|
|
14
|
+
import { resolveRunAttach } from '../agent/run-attach.js';
|
|
15
|
+
import { loadProjectExtensions, } from '../extensions/load-project-extensions.js';
|
|
9
16
|
import { createSlackGateHandler } from '../agent/gate/slack-gate-notifier.js';
|
|
10
|
-
|
|
17
|
+
/**
|
|
18
|
+
* Builds the Slack gate handler from the deployment manifest's `notifiers.slack_gate`
|
|
19
|
+
* config (secret-resolved by the loader). Manifest presence IS the gate switch — no
|
|
20
|
+
* environment reads. Returns undefined when no notifier is configured (terminal fallback).
|
|
21
|
+
* Exported for the manifest-sourced-gate-config tests.
|
|
22
|
+
*/
|
|
23
|
+
export function buildManifestGateHandler(notifiers, deps) {
|
|
24
|
+
const slack = notifiers?.slack_gate;
|
|
25
|
+
if (slack === undefined)
|
|
26
|
+
return undefined;
|
|
27
|
+
const config = {
|
|
28
|
+
store: deps.store,
|
|
29
|
+
definition: deps.definition,
|
|
30
|
+
provider: deps.provider,
|
|
31
|
+
...(slack.webhook_url !== undefined && { webhookUrl: slack.webhook_url }),
|
|
32
|
+
...(slack.bot_token !== undefined && { botToken: slack.bot_token }),
|
|
33
|
+
...(slack.channel_id !== undefined && { channelId: slack.channel_id }),
|
|
34
|
+
...(slack.signing_secret !== undefined && { signingSecret: slack.signing_secret }),
|
|
35
|
+
...(slack.events_port !== undefined && { eventsPort: slack.events_port }),
|
|
36
|
+
...(slack.app_token !== undefined && { appToken: slack.app_token }),
|
|
37
|
+
...(slack.reminder_interval_ms !== undefined && {
|
|
38
|
+
reminderIntervalMs: slack.reminder_interval_ms,
|
|
39
|
+
}),
|
|
40
|
+
...(slack.escalation_threshold_ms !== undefined && {
|
|
41
|
+
escalationThresholdMs: slack.escalation_threshold_ms,
|
|
42
|
+
}),
|
|
43
|
+
};
|
|
44
|
+
return createSlackGateHandler(config);
|
|
45
|
+
}
|
|
11
46
|
export const agentCommand = new Command('agent')
|
|
12
47
|
.description('Run a workflow autonomously using an LLM provider')
|
|
13
48
|
.option('--workflow <path>', 'Path to workflow directory or workflow.yaml file')
|
|
@@ -18,6 +53,8 @@ export const agentCommand = new Command('agent')
|
|
|
18
53
|
.option('--base-url <url>', 'Base URL for OpenAI-compatible endpoints (e.g. DeepSeek, Qwen, Groq)')
|
|
19
54
|
.option('--provider-module <path>', 'Path to a custom LlmProvider module (default export must be an instance extending LlmProvider)')
|
|
20
55
|
.option('--register', 'Persist the workflow definition to ~/.realm/workflows/ (same as realm workflow register)')
|
|
56
|
+
.option('--extensions-module <path>', "CODE override: module that REPLACES the workflow's declared 'extensions' modules (repair tool)")
|
|
57
|
+
.option('--project <dir>', 'CONFIG anchor: deployment root whose realm.yaml applies to definitions without a stored trust_root (default: current directory)')
|
|
21
58
|
.action(async (opts) => {
|
|
22
59
|
if (!opts.workflow && !opts.runId) {
|
|
23
60
|
console.error('Error: one of --workflow or --run-id is required');
|
|
@@ -62,49 +99,33 @@ export const agentCommand = new Command('agent')
|
|
|
62
99
|
else {
|
|
63
100
|
provider = await resolveProvider(opts.provider, opts.model, opts.baseUrl);
|
|
64
101
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
102
|
+
// `realm agent` is operator-launched: cwd is a legitimate deployment-root default.
|
|
103
|
+
const projectDir = resolve(opts.project ?? process.cwd());
|
|
104
|
+
const extensionOpts = {
|
|
105
|
+
...(opts.extensionsModule !== undefined ? { overrideModule: opts.extensionsModule } : {}),
|
|
106
|
+
projectDir,
|
|
107
|
+
};
|
|
70
108
|
let result;
|
|
71
109
|
if (opts.runId !== undefined) {
|
|
72
110
|
// --run-id path: attach to existing run, load definition from store.
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
const
|
|
76
|
-
|
|
77
|
-
const slackConfig = {
|
|
111
|
+
// resolveRunAttach loads project extensions + manifest BEFORE the run is claimed
|
|
112
|
+
// and carries the extensions_load_failed write / re-attach semantics.
|
|
113
|
+
const { definition, ...loaded } = await resolveRunAttach(opts.runId, { store, workflowStore }, extensionOpts);
|
|
114
|
+
const gateHandler = buildManifestGateHandler(loaded.notifiers, {
|
|
78
115
|
store,
|
|
79
116
|
definition,
|
|
80
117
|
provider,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
...(
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
}),
|
|
93
|
-
...(process.env['SLACK_EVENTS_PORT'] !== undefined && {
|
|
94
|
-
eventsPort: parseInt(process.env['SLACK_EVENTS_PORT'], 10),
|
|
95
|
-
}),
|
|
96
|
-
...(process.env['SLACK_APP_TOKEN'] !== undefined && {
|
|
97
|
-
appToken: process.env['SLACK_APP_TOKEN'],
|
|
98
|
-
}),
|
|
99
|
-
...(process.env['SLACK_GATE_REMINDER_INTERVAL_MS'] !== undefined && {
|
|
100
|
-
reminderIntervalMs: parseInt(process.env['SLACK_GATE_REMINDER_INTERVAL_MS'], 10),
|
|
101
|
-
}),
|
|
102
|
-
...(process.env['SLACK_GATE_ESCALATION_THRESHOLD_MS'] !== undefined && {
|
|
103
|
-
escalationThresholdMs: parseInt(process.env['SLACK_GATE_ESCALATION_THRESHOLD_MS'], 10),
|
|
104
|
-
}),
|
|
105
|
-
};
|
|
106
|
-
const gateHandler = hasSlack ? createSlackGateHandler(slackConfig) : undefined;
|
|
107
|
-
result = await runAgent({ store, workflowStore, provider, registry, ...(gateHandler ? { gateHandler } : {}) }, {
|
|
118
|
+
});
|
|
119
|
+
result = await runAgent({
|
|
120
|
+
store,
|
|
121
|
+
workflowStore,
|
|
122
|
+
provider,
|
|
123
|
+
registry: loaded.registry,
|
|
124
|
+
...(gateHandler ? { gateHandler } : {}),
|
|
125
|
+
...(loaded.secretValues !== undefined
|
|
126
|
+
? { redactionValues: loaded.secretValues }
|
|
127
|
+
: {}),
|
|
128
|
+
}, {
|
|
108
129
|
existingRunId: opts.runId,
|
|
109
130
|
definition,
|
|
110
131
|
params: {},
|
|
@@ -118,55 +139,23 @@ export const agentCommand = new Command('agent')
|
|
|
118
139
|
? inputPath
|
|
119
140
|
: join(inputPath, 'workflow.yaml');
|
|
120
141
|
const definition = loadWorkflowFromFile(filePath);
|
|
121
|
-
//
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
process.exit(1);
|
|
126
|
-
}
|
|
127
|
-
// Print advisory warnings for incomplete Slack bidirectional config.
|
|
128
|
-
const slackWarnings = checkSlackBidirectionalConfig();
|
|
129
|
-
for (const warning of slackWarnings) {
|
|
130
|
-
console.warn(` ⚠ ${warning.message}`);
|
|
131
|
-
}
|
|
132
|
-
const hasSlack2 = process.env['SLACK_BOT_TOKEN'] !== undefined ||
|
|
133
|
-
process.env['SLACK_WEBHOOK_URL'] !== undefined;
|
|
134
|
-
const slackConfig2 = {
|
|
142
|
+
// Load project extensions + deployment manifest BEFORE the run is created
|
|
143
|
+
// (fail-before-create); the loader registry flows directly into the run.
|
|
144
|
+
const loaded = await loadProjectExtensions(definition, extensionOpts);
|
|
145
|
+
const gateHandler = buildManifestGateHandler(loaded.notifiers, {
|
|
135
146
|
store,
|
|
136
147
|
definition,
|
|
137
148
|
provider,
|
|
138
|
-
|
|
139
|
-
webhookUrl: process.env['SLACK_WEBHOOK_URL'],
|
|
140
|
-
}),
|
|
141
|
-
...(process.env['SLACK_BOT_TOKEN'] !== undefined && {
|
|
142
|
-
botToken: process.env['SLACK_BOT_TOKEN'],
|
|
143
|
-
}),
|
|
144
|
-
...(process.env['SLACK_CHANNEL_ID'] !== undefined && {
|
|
145
|
-
channelId: process.env['SLACK_CHANNEL_ID'],
|
|
146
|
-
}),
|
|
147
|
-
...(process.env['SLACK_SIGNING_SECRET'] !== undefined && {
|
|
148
|
-
signingSecret: process.env['SLACK_SIGNING_SECRET'],
|
|
149
|
-
}),
|
|
150
|
-
...(process.env['SLACK_EVENTS_PORT'] !== undefined && {
|
|
151
|
-
eventsPort: parseInt(process.env['SLACK_EVENTS_PORT'], 10),
|
|
152
|
-
}),
|
|
153
|
-
...(process.env['SLACK_APP_TOKEN'] !== undefined && {
|
|
154
|
-
appToken: process.env['SLACK_APP_TOKEN'],
|
|
155
|
-
}),
|
|
156
|
-
...(process.env['SLACK_GATE_REMINDER_INTERVAL_MS'] !== undefined && {
|
|
157
|
-
reminderIntervalMs: parseInt(process.env['SLACK_GATE_REMINDER_INTERVAL_MS'], 10),
|
|
158
|
-
}),
|
|
159
|
-
...(process.env['SLACK_GATE_ESCALATION_THRESHOLD_MS'] !== undefined && {
|
|
160
|
-
escalationThresholdMs: parseInt(process.env['SLACK_GATE_ESCALATION_THRESHOLD_MS'], 10),
|
|
161
|
-
}),
|
|
162
|
-
};
|
|
163
|
-
const gateHandler2 = hasSlack2 ? createSlackGateHandler(slackConfig2) : undefined;
|
|
149
|
+
});
|
|
164
150
|
result = await runAgent({
|
|
165
151
|
store,
|
|
166
152
|
workflowStore,
|
|
167
153
|
provider,
|
|
168
|
-
registry,
|
|
169
|
-
...(
|
|
154
|
+
registry: loaded.registry,
|
|
155
|
+
...(gateHandler ? { gateHandler } : {}),
|
|
156
|
+
...(loaded.secretValues !== undefined
|
|
157
|
+
? { redactionValues: loaded.secretValues }
|
|
158
|
+
: {}),
|
|
170
159
|
}, {
|
|
171
160
|
definition,
|
|
172
161
|
params,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/commands/agent.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,gFAAgF;AAChF,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../../src/commands/agent.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/init.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Command } from 'commander';
|
|
2
2
|
/**
|
|
3
|
-
* Scaffolds a new workflow project at targetDir with
|
|
3
|
+
* Scaffolds a new workflow project at targetDir with five template files
|
|
4
|
+
* (workflow.yaml, schema.json, .env.example, README.md, registry.sample.js).
|
|
4
5
|
* Throws an error if targetDir already exists.
|
|
5
6
|
* @param name Workflow project name used in file contents.
|
|
6
7
|
* @param targetDir Directory to create (defaults to join(cwd, name) in the command action).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC;;;;;;GAMG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA2IjF;AAED,eAAO,MAAM,WAAW,SAqBpB,CAAC"}
|
package/dist/commands/init.js
CHANGED
|
@@ -4,7 +4,8 @@ import { join } from 'node:path';
|
|
|
4
4
|
import { existsSync } from 'node:fs';
|
|
5
5
|
import { Command } from 'commander';
|
|
6
6
|
/**
|
|
7
|
-
* Scaffolds a new workflow project at targetDir with
|
|
7
|
+
* Scaffolds a new workflow project at targetDir with five template files
|
|
8
|
+
* (workflow.yaml, schema.json, .env.example, README.md, registry.sample.js).
|
|
8
9
|
* Throws an error if targetDir already exists.
|
|
9
10
|
* @param name Workflow project name used in file contents.
|
|
10
11
|
* @param targetDir Directory to create (defaults to join(cwd, name) in the command action).
|
|
@@ -20,6 +21,8 @@ name: "${name}"
|
|
|
20
21
|
version: 1
|
|
21
22
|
initial_state: created
|
|
22
23
|
|
|
24
|
+
# extensions: ./registry.js — project extension modules (see docs/reference/project-extensions.md)
|
|
25
|
+
|
|
23
26
|
steps:
|
|
24
27
|
step_one:
|
|
25
28
|
description: "First step \u2014 replace with your own"
|
|
@@ -45,8 +48,37 @@ steps:
|
|
|
45
48
|
properties: {},
|
|
46
49
|
additionalProperties: true,
|
|
47
50
|
}, null, 2);
|
|
48
|
-
const envExample = `#
|
|
51
|
+
const envExample = `# Secret values referenced by realm.yaml (\${secret:NAME} bindings).
|
|
52
|
+
# This file is the default 'dotenv' secret source — see docs/reference/deployment-manifest.md
|
|
49
53
|
# EXAMPLE_API_KEY=your_key_here
|
|
54
|
+
`;
|
|
55
|
+
const realmYaml = `# realm.yaml — deployment manifest for this project (see docs/reference/deployment-manifest.md).
|
|
56
|
+
# The manifest owns deployment CONFIG: adapter construction, secret bindings
|
|
57
|
+
# (\${secret:NAME}), handler/processor config, and gate-notifier config.
|
|
58
|
+
# Workflows keep declaring CODE via 'extensions:' in workflow.yaml.
|
|
59
|
+
version: 1
|
|
60
|
+
|
|
61
|
+
# secrets:
|
|
62
|
+
# sources: [dotenv] # dotenv | env; default [dotenv]; order = precedence
|
|
63
|
+
# dotenv: ./.env # default: .env next to this file
|
|
64
|
+
|
|
65
|
+
# adapters:
|
|
66
|
+
# github:
|
|
67
|
+
# use: github # built-in catalog name, or ./dist/registry.js#myFactory
|
|
68
|
+
# config: { auth: { token: "\${secret:GITHUB_TOKEN}" } }
|
|
69
|
+
|
|
70
|
+
# handlers:
|
|
71
|
+
# my_handler:
|
|
72
|
+
# use: ./registry.js#myHandlerFactory
|
|
73
|
+
# config: { api_key: "\${secret:MY_API_KEY}" }
|
|
74
|
+
|
|
75
|
+
# notifiers:
|
|
76
|
+
# slack_gate:
|
|
77
|
+
# type: slack
|
|
78
|
+
# config:
|
|
79
|
+
# webhook_url: "\${secret:SLACK_WEBHOOK_URL}"
|
|
80
|
+
# bot_token: "\${secret:SLACK_BOT_TOKEN}"
|
|
81
|
+
# channel_id: C0XXXX
|
|
50
82
|
`;
|
|
51
83
|
const readmeMd = `# ${name}
|
|
52
84
|
|
|
@@ -67,11 +99,44 @@ Add fixtures to \`fixtures/\` and run:
|
|
|
67
99
|
\`\`\`bash
|
|
68
100
|
realm workflow test ./ --fixtures ./fixtures/
|
|
69
101
|
\`\`\`
|
|
102
|
+
`;
|
|
103
|
+
// Project extensions sample: the documented declarative contract shape, fully commented
|
|
104
|
+
// out — nothing is registered by default. Activate by uncommenting and declaring
|
|
105
|
+
// `extensions: ./registry.js` in workflow.yaml (then re-register the workflow).
|
|
106
|
+
const registrySampleJs = `// registry.sample.js — extension module template for ${name}.
|
|
107
|
+
// Docs: docs/reference/project-extensions.md (code) + docs/reference/deployment-manifest.md (config).
|
|
108
|
+
//
|
|
109
|
+
// TWO export shapes:
|
|
110
|
+
// 1. The workflow-declared DEFAULT export ('extensions:' in workflow.yaml) — a declarative
|
|
111
|
+
// object of ready instances (no config, no secrets — code only).
|
|
112
|
+
// 2. Named FACTORY exports for realm.yaml 'use:' refs — (ctx: { id, config }) => instance,
|
|
113
|
+
// where config arrives with \${secret:NAME} references already resolved.
|
|
114
|
+
|
|
115
|
+
// export function myAdapterFactory({ id, config }) {
|
|
116
|
+
// return {
|
|
117
|
+
// id,
|
|
118
|
+
// fetch: async (operation, params, cfg) => ({ status: 200, data: {} }),
|
|
119
|
+
// create: async (operation, params, cfg) => ({ status: 201, data: {} }),
|
|
120
|
+
// update: async (operation, params, cfg) => ({ status: 200, data: {} }),
|
|
121
|
+
// };
|
|
122
|
+
// }
|
|
123
|
+
|
|
124
|
+
// export function myHandlerFactory({ id, config }) {
|
|
125
|
+
// return { id, execute: async (inputs, context) => ({ data: { ok: true } }) };
|
|
126
|
+
// }
|
|
127
|
+
|
|
128
|
+
export default {
|
|
129
|
+
// adapters: { my_adapter: /* ready instance */ },
|
|
130
|
+
// handlers: { my_handler: /* ready instance */ },
|
|
131
|
+
// processors: { my_processor: /* ready instance */ },
|
|
132
|
+
};
|
|
70
133
|
`;
|
|
71
134
|
await writeFile(join(targetDir, 'workflow.yaml'), workflowYaml, 'utf8');
|
|
72
135
|
await writeFile(join(targetDir, 'schema.json'), schemaJson + '\n', 'utf8');
|
|
73
136
|
await writeFile(join(targetDir, '.env.example'), envExample, 'utf8');
|
|
74
137
|
await writeFile(join(targetDir, 'README.md'), readmeMd, 'utf8');
|
|
138
|
+
await writeFile(join(targetDir, 'registry.sample.js'), registrySampleJs, 'utf8');
|
|
139
|
+
await writeFile(join(targetDir, 'realm.yaml'), realmYaml, 'utf8');
|
|
75
140
|
}
|
|
76
141
|
export const initCommand = new Command('init')
|
|
77
142
|
.argument('<name>', 'Workflow project name (becomes the directory name)')
|
|
@@ -86,6 +151,8 @@ export const initCommand = new Command('init')
|
|
|
86
151
|
console.log(' schema.json');
|
|
87
152
|
console.log(' .env.example');
|
|
88
153
|
console.log(' README.md');
|
|
154
|
+
console.log(' registry.sample.js');
|
|
155
|
+
console.log(' realm.yaml');
|
|
89
156
|
console.log('');
|
|
90
157
|
console.log(`Next: realm workflow validate ./${name}/`);
|
|
91
158
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ import type { RunStore, WorkflowRegistrar } from '@sensigo/realm';
|
|
|
9
9
|
*/
|
|
10
10
|
export declare function inspectRun(runId: string, store: RunStore, workflowStore: WorkflowRegistrar, options?: {
|
|
11
11
|
verbose?: boolean;
|
|
12
|
+
checkDrift?: boolean;
|
|
12
13
|
}): Promise<string>;
|
|
13
14
|
export declare const inspectCommand: Command;
|
|
14
15
|
//# sourceMappingURL=inspect.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"inspect.d.ts","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EACV,QAAQ,EAER,iBAAiB,EAIlB,MAAM,gBAAgB,CAAC;AAoJxB;;;;;;GAMG;AACH,wBAAsB,UAAU,CAC9B,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,QAAQ,EACf,aAAa,EAAE,iBAAiB,EAChC,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,GACpD,OAAO,CAAC,MAAM,CAAC,CA6MjB;AAED,eAAO,MAAM,cAAc,SAsBvB,CAAC"}
|
package/dist/commands/inspect.js
CHANGED
|
@@ -1,6 +1,95 @@
|
|
|
1
1
|
// inspect command — displays the full evidence chain and diagnostics for a run.
|
|
2
|
+
//
|
|
3
|
+
// Read-only invariant: this command must never gain the capability to execute project
|
|
4
|
+
// code. The drift-evidence rendering and --check-drift recomputation below therefore use
|
|
5
|
+
// ONLY the pure fingerprint module (extension-identity.ts — fs reads + sha256, no dynamic
|
|
6
|
+
// import, no createRequire), never the extensions loader.
|
|
2
7
|
import chalk from 'chalk';
|
|
3
8
|
import { Command } from 'commander';
|
|
9
|
+
import { recomputeIdentity } from '../extensions/extension-identity.js';
|
|
10
|
+
/**
|
|
11
|
+
* Renders the run's extension-code identity history (drift evidence, issue #119) plus,
|
|
12
|
+
* with `checkDrift`, a pure-fs recomputation of the LAST entry against current disk state
|
|
13
|
+
* under the entry's RECORDED rules — no code loading, ever.
|
|
14
|
+
*/
|
|
15
|
+
function renderExtensionIdentity(history, checkDrift, trustRoot) {
|
|
16
|
+
const lines = [];
|
|
17
|
+
lines.push('');
|
|
18
|
+
lines.push(`Extension Identity (${history.length} ${history.length === 1 ? 'entry' : 'entries'}):`);
|
|
19
|
+
history.forEach((entry, idx) => {
|
|
20
|
+
const flags = [
|
|
21
|
+
entry.override_active === true ? chalk.yellow('[override]') : '',
|
|
22
|
+
entry.error !== undefined ? chalk.red('[error]') : '',
|
|
23
|
+
]
|
|
24
|
+
.filter((f) => f !== '')
|
|
25
|
+
.join(' ');
|
|
26
|
+
lines.push(` ${idx + 1}. captured ${entry.captured_at}${entry.pid !== undefined ? ` (pid ${entry.pid})` : ''}${flags ? ` ${flags}` : ''}`);
|
|
27
|
+
if (entry.error !== undefined) {
|
|
28
|
+
lines.push(chalk.red(` error: ${entry.error}`));
|
|
29
|
+
}
|
|
30
|
+
for (const mod of entry.modules) {
|
|
31
|
+
lines.push(` module: ${mod.declared} -> ${mod.resolved} (${mod.format})`);
|
|
32
|
+
lines.push(` entry_hash ${mod.entry_hash}`);
|
|
33
|
+
}
|
|
34
|
+
lines.push(` tree: ${entry.tree.file_count} files, ${entry.tree.total_bytes} bytes${entry.tree.truncated ? ', TRUNCATED' : ''}`);
|
|
35
|
+
lines.push(` tree_hash ${entry.tree.tree_hash || '(none)'}`);
|
|
36
|
+
if (entry.signals !== undefined) {
|
|
37
|
+
const sig = [];
|
|
38
|
+
if (entry.signals.package_version !== undefined)
|
|
39
|
+
sig.push(`package_version ${entry.signals.package_version}`);
|
|
40
|
+
if (entry.signals.git_head !== undefined)
|
|
41
|
+
sig.push(`git_head ${entry.signals.git_head}`);
|
|
42
|
+
lines.push(` signals: ${sig.join(', ')}`);
|
|
43
|
+
}
|
|
44
|
+
lines.push(chalk.dim(` coverage (${entry.coverage}): covers files under ${entry.tree.roots.join(', ') || '(none)'} matching ${entry.tree.rules}; imports outside these roots, node_modules, and runtime dynamic imports are NOT covered.`));
|
|
45
|
+
});
|
|
46
|
+
if (checkDrift) {
|
|
47
|
+
lines.push('');
|
|
48
|
+
lines.push('Drift check (pure recompute of the last entry under its recorded rules):');
|
|
49
|
+
const last = history[history.length - 1];
|
|
50
|
+
if (last.error !== undefined) {
|
|
51
|
+
lines.push(chalk.yellow(' last entry records a load/capture error — nothing to compare against current disk state.'));
|
|
52
|
+
return lines;
|
|
53
|
+
}
|
|
54
|
+
const result = recomputeIdentity(last, trustRoot !== undefined ? { trustRoot } : {});
|
|
55
|
+
if (!result.comparable) {
|
|
56
|
+
lines.push(chalk.yellow(` ${result.reason}`));
|
|
57
|
+
return lines;
|
|
58
|
+
}
|
|
59
|
+
for (const mod of result.modules) {
|
|
60
|
+
if (mod.current_hash === undefined) {
|
|
61
|
+
lines.push(chalk.red(` module ${mod.resolved}: MISSING (unreadable on current disk)`));
|
|
62
|
+
}
|
|
63
|
+
else if (mod.current_hash === mod.recorded_hash) {
|
|
64
|
+
lines.push(chalk.green(` module ${mod.resolved}: same`));
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
lines.push(chalk.yellow(` module ${mod.resolved}: DIFFERS (recorded ${mod.recorded_hash}, current ${mod.current_hash})`));
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
if (result.manifest !== undefined) {
|
|
71
|
+
if (result.manifest.current_hash === undefined) {
|
|
72
|
+
lines.push(chalk.red(` manifest ${result.manifest.path}: MISSING (unreadable on current disk)`));
|
|
73
|
+
}
|
|
74
|
+
else if (result.manifest.current_hash === result.manifest.recorded_hash) {
|
|
75
|
+
lines.push(chalk.green(` manifest ${result.manifest.path}: same`));
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
lines.push(chalk.yellow(` manifest ${result.manifest.path}: DIFFERS (recorded ${result.manifest.recorded_hash}, current ${result.manifest.current_hash})`));
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
if (result.tree.current_hash === result.tree.recorded_hash) {
|
|
82
|
+
lines.push(chalk.green(' tree: same'));
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
lines.push(chalk.yellow(` tree: DIFFERS (recorded ${result.tree.recorded_hash || '(none)'}, current ${result.tree.current_hash}${result.tree.current_truncated ? ', current truncated' : ''})`));
|
|
86
|
+
}
|
|
87
|
+
if (result.signals !== undefined || last.signals !== undefined) {
|
|
88
|
+
lines.push(chalk.dim(` signals (informational): recorded ${JSON.stringify(last.signals ?? {})}, current ${JSON.stringify(result.signals ?? {})}`));
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
return lines;
|
|
92
|
+
}
|
|
4
93
|
/** Truncates a JSON-serialised summary to a readable single line. */
|
|
5
94
|
function formatSummary(value, maxLength = 120) {
|
|
6
95
|
const raw = JSON.stringify(value);
|
|
@@ -39,9 +128,11 @@ export async function inspectRun(runId, store, workflowStore, options) {
|
|
|
39
128
|
// Try to load workflow definition; gracefully handle missing definition.
|
|
40
129
|
let workflowLabel;
|
|
41
130
|
let definitionMissing = false;
|
|
131
|
+
let trustRoot;
|
|
42
132
|
try {
|
|
43
133
|
const def = await workflowStore.get(run.workflow_id);
|
|
44
134
|
workflowLabel = `${def.id} v${def.version}`;
|
|
135
|
+
trustRoot = def.trust_root;
|
|
45
136
|
}
|
|
46
137
|
catch {
|
|
47
138
|
workflowLabel = run.workflow_id;
|
|
@@ -115,6 +206,14 @@ export async function inspectRun(runId, store, workflowStore, options) {
|
|
|
115
206
|
lines.push(` top_events: ${topEvents.join(', ')}`);
|
|
116
207
|
}
|
|
117
208
|
}
|
|
209
|
+
// Drift evidence (issue #119): render the extension-identity history when present.
|
|
210
|
+
if (run.extension_identity !== undefined && run.extension_identity.length > 0) {
|
|
211
|
+
lines.push(...renderExtensionIdentity(run.extension_identity, options?.checkDrift === true, trustRoot));
|
|
212
|
+
}
|
|
213
|
+
else if (options?.checkDrift === true) {
|
|
214
|
+
lines.push('');
|
|
215
|
+
lines.push('Drift check: no extension identity recorded for this run.');
|
|
216
|
+
}
|
|
118
217
|
lines.push('');
|
|
119
218
|
lines.push(`Evidence (${stepOrder.length} steps):`);
|
|
120
219
|
stepOrder.forEach((stepId, idx) => {
|
|
@@ -208,12 +307,16 @@ export const inspectCommand = new Command('inspect')
|
|
|
208
307
|
.argument('<run-id>', 'ID of the run to inspect')
|
|
209
308
|
.description('Display the full evidence chain and diagnostics for a run')
|
|
210
309
|
.option('--verbose', 'Show full tool call args and results')
|
|
310
|
+
.option('--check-drift', 'Recompute the last recorded extension identity against current disk state (pure hashing — never loads code)')
|
|
211
311
|
.action(async (runId, cmdOpts) => {
|
|
212
312
|
const { JsonFileStore, JsonWorkflowStore } = await import('@sensigo/realm');
|
|
213
313
|
const store = new JsonFileStore();
|
|
214
314
|
const workflowStore = new JsonWorkflowStore();
|
|
215
315
|
try {
|
|
216
|
-
const output = await inspectRun(runId, store, workflowStore,
|
|
316
|
+
const output = await inspectRun(runId, store, workflowStore, {
|
|
317
|
+
...(cmdOpts.verbose === true ? { verbose: true } : {}),
|
|
318
|
+
...(cmdOpts.checkDrift === true ? { checkDrift: true } : {}),
|
|
319
|
+
});
|
|
217
320
|
console.log(output);
|
|
218
321
|
}
|
|
219
322
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,qEAAqE;AACrE,SAAS,aAAa,CAAC,KAAc,EAAE,SAAS,GAAG,GAAG;IACpD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAClC,IAAI,GAAG,CAAC,MAAM,IAAI,SAAS;QAAE,OAAO,GAAG,CAAC;IACxC,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAClD,CAAC;AAED,kFAAkF;AAClF,SAAS,iBAAiB,CAAC,IAAqB;IAC9C,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,oBAAoB,SAAS,CAAC;IACtD,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,OAAO,GAAG,MAAM,qBAAqB,CAAC;IACxC,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB;SACrC,GAAG,CACF,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAC7F;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,GAAG,MAAM,qBAAqB,QAAQ,EAAE,CAAC;AAClD,CAAC;AAED,mDAAmD;AACnD,SAAS,WAAW,CAAC,MAAc;IACjC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACrD,IAAI,MAAM,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjD,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAAa,EACb,KAAe,EACf,aAAgC,EAChC,OAA+B;IAE/B,MAAM,GAAG,GAAc,MAAM,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAE9C,yEAAyE;IACzE,IAAI,aAAqB,CAAC;IAC1B,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAC9B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACrD,aAAa,GAAG,GAAG,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,aAAa,GAAG,GAAG,CAAC,WAAW,CAAC;QAChC,iBAAiB,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,yBAAyB;IACzB,IAAI,UAAkB,CAAC;IACvB,IAAI,GAAG,CAAC,SAAS,KAAK,WAAW,EAAE,CAAC;QAClC,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,SAAS,UAAU,CAAC,CAAC;IACvD,CAAC;SAAM,IAAI,GAAG,CAAC,SAAS,KAAK,QAAQ,IAAI,GAAG,CAAC,SAAS,KAAK,WAAW,EAAE,CAAC;QACvE,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IAC7B,KAAK,CAAC,IAAI,CAAC,aAAa,aAAa,EAAE,CAAC,CAAC;IACzC,KAAK,CAAC,IAAI,CAAC,UAAU,UAAU,EAAE,CAAC,CAAC;IACnC,KAAK,CAAC,IAAI,CAAC,cAAc,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;IACvE,KAAK,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;IAC3E,KAAK,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;IACjE,KAAK,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;IACnE,KAAK,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;IACzC,KAAK,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;IAEzC,IAAI,iBAAiB,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;IAC/E,CAAC;IAED,0EAA0E;IAC1E,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,aAAa,GAAG,IAAI,GAAG,EAA8B,CAAC;IAC5D,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;QAChC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7B,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,yEAAyE;IACzE,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;IAC9B,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3F,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC;QAC7C,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QAChF,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM,CACxC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,aAAa,EAAE,cAAc,IAAI,CAAC,CAAC,EACxD,CAAC,CACF,CAAC;QACF,MAAM,qBAAqB,GAAG,QAAQ,CAAC,MAAM,CAC3C,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,aAAa,EAAE,iBAAiB,IAAI,CAAC,CAAC,EAC3D,CAAC,CACF,CAAC;QACF,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC;QAE1F,gFAAgF;QAChF,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC5C,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC5B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;gBACrC,IAAI,KAAK,CAAC,KAAK,KAAK,iBAAiB;oBAAE,SAAS;gBAChD,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QACD,MAAM,SAAS,GAAG,CAAC,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC;aACvC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;aACX,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,KAAK,KAAK,GAAG,CAAC,CAAC;QAElD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,8BAA8B,cAAc,EAAE,CAAC,CAAC;QAC3D,KAAK,CAAC,IAAI,CAAC,8BAA8B,oBAAoB,EAAE,CAAC,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,6BAA6B,kBAAkB,EAAE,CAAC,CAAC;QAC9D,KAAK,CAAC,IAAI,CAAC,6BAA6B,qBAAqB,EAAE,CAAC,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,6BAA6B,cAAc,EAAE,CAAC,CAAC;QAC1D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,6BAA6B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,aAAa,SAAS,CAAC,MAAM,UAAU,CAAC,CAAC;IAEpD,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QAChC,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;QACzC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC;QACnF,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC;QAEnC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEf,IAAI,WAAW,EAAE,CAAC;YAChB,6DAA6D;YAC7D,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC;YACtC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE;gBACzB,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;gBACvE,KAAK,CAAC,IAAI,CACR,iBAAiB,EAAE,GAAG,CAAC,IAAI,aAAa,MAAM,aAAa,MAAM,IAAI,CAAC,WAAW,QAAQ,SAAS,EAAE,CACrG,CAAC;YACJ,CAAC,CAAC,CAAC;YACH,sDAAsD;YACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,gBAAgB,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YACpE,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBAC3C,KAAK,CAAC,IAAI,CAAC,kBAAkB,aAAa,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;YAC1E,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,gBAAgB,aAAa,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YACrE,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBACjC,KAAK,CAAC,IAAI,CAAC,gBAAgB,QAAQ,CAAC,KAAK,CAAC,MAAM,wBAAwB,CAAC,CAAC;gBAC1E,IAAI,QAAQ,CAAC,aAAa,EAAE,SAAS,EAAE,CAAC;oBACtC,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC;oBACjC,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,MAAM,CACV,2BAA2B,CAAC,CAAC,iBAAiB,IAAI,SAAS,MAAM,CAAC,CAAC,cAAc,YAAY,CAAC,CAAC,iBAAiB,aAAa,CAC9H,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,QAAQ,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBACvC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;YACxF,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;YACvB,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACvE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACpF,MAAM,YAAY,GAChB,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1F,KAAK,CAAC,IAAI,CACR,KAAK,GAAG,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,YAAY,GAAG,SAAS,IAAI,aAAa,MAAM,IAAI,CAAC,WAAW,QAAQ,SAAS,EAAE,CACxH,CAAC;YACF,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;gBAClC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAC7E,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,KAAK,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACjD,CAAC;gBACD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;oBACpC,KAAK,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtD,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,kBAAkB,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YACrE,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,gBAAgB,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;gBAChE,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;oBACvC,KAAK,CAAC,IAAI,CAAC,kBAAkB,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;gBACtE,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,gBAAgB,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;gBACjE,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC7B,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,KAAK,CAAC,MAAM,wBAAwB,CAAC,CAAC;oBACtE,IAAI,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,CAAC;wBAClC,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC;wBAC7B,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,MAAM,CACV,2BAA2B,CAAC,CAAC,iBAAiB,IAAI,SAAS,MAAM,CAAC,CAAC,cAAc,YAAY,CAAC,CAAC,iBAAiB,aAAa,CAC9H,CACF,CAAC;oBACJ,CAAC;gBACH,CAAC;gBACD,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBAClC,gCAAgC;gBAClC,CAAC;qBAAM,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACxC,KAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;gBACjD,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;oBAC3D,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;wBACjC,MAAM,SAAS,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACzD,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC,CAAC;wBACnF,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;4BACrB,KAAK,CAAC,IAAI,CAAC,oBAAoB,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;4BACzD,MAAM,SAAS,GAAG,OAAO,EAAE,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;4BACvE,KAAK,CAAC,IAAI,CAAC,oBAAoB,SAAS,EAAE,CAAC,CAAC;wBAC9C,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;oBACnC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;gBACpF,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC;KACjD,QAAQ,CAAC,UAAU,EAAE,0BAA0B,CAAC;KAChD,WAAW,CAAC,2DAA2D,CAAC;KACxE,MAAM,CAAC,WAAW,EAAE,sCAAsC,CAAC;KAC3D,MAAM,CAAC,KAAK,EAAE,KAAa,EAAE,OAA8B,EAAE,EAAE;IAC9D,MAAM,EAAE,aAAa,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAC5E,MAAM,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;IAClC,MAAM,aAAa,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAC7B,KAAK,EACL,KAAK,EACL,aAAa,EACb,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CACzD,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../src/commands/inspect.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,EAAE;AACF,sFAAsF;AACtF,yFAAyF;AACzF,0FAA0F;AAC1F,0DAA0D;AAC1D,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAExE;;;;GAIG;AACH,SAAS,uBAAuB,CAC9B,OAAiC,EACjC,UAAmB,EACnB,SAA6B;IAE7B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CACR,uBAAuB,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,IAAI,CACxF,CAAC;IAEF,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QAC7B,MAAM,KAAK,GAAG;YACZ,KAAK,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE;YAChE,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;SACtD;aACE,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;aACvB,IAAI,CAAC,GAAG,CAAC,CAAC;QACb,KAAK,CAAC,IAAI,CACR,KAAK,GAAG,GAAG,CAAC,cAAc,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAChI,CAAC;QACF,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAChC,KAAK,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,QAAQ,OAAO,GAAG,CAAC,QAAQ,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;YAC9E,KAAK,CAAC,IAAI,CAAC,2BAA2B,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;QAC1D,CAAC;QACD,KAAK,CAAC,IAAI,CACR,cAAc,KAAK,CAAC,IAAI,CAAC,UAAU,WAAW,KAAK,CAAC,IAAI,CAAC,WAAW,SAAS,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CACzH,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,wBAAwB,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,QAAQ,EAAE,CAAC,CAAC;QACvE,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,GAAG,GAAa,EAAE,CAAC;YACzB,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,KAAK,SAAS;gBAC7C,GAAG,CAAC,IAAI,CAAC,mBAAmB,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;YAC/D,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS;gBAAE,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;YACzF,KAAK,CAAC,IAAI,CAAC,iBAAiB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChD,CAAC;QACD,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,GAAG,CACP,kBAAkB,KAAK,CAAC,QAAQ,yBAAyB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,aAAa,KAAK,CAAC,IAAI,CAAC,KAAK,2FAA2F,CACzN,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,IAAI,UAAU,EAAE,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAC;QACvF,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;QAC1C,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC7B,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,MAAM,CACV,4FAA4F,CAC7F,CACF,CAAC;YACF,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,EAAE,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACrF,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC/C,OAAO,KAAK,CAAC;QACf,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACjC,IAAI,GAAG,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBACnC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,GAAG,CAAC,QAAQ,wCAAwC,CAAC,CAAC,CAAC;YAC1F,CAAC;iBAAM,IAAI,GAAG,CAAC,YAAY,KAAK,GAAG,CAAC,aAAa,EAAE,CAAC;gBAClD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,QAAQ,QAAQ,CAAC,CAAC,CAAC;YAC5D,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,MAAM,CACV,YAAY,GAAG,CAAC,QAAQ,uBAAuB,GAAG,CAAC,aAAa,aAAa,GAAG,CAAC,YAAY,GAAG,CACjG,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAClC,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBAC/C,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,QAAQ,CAAC,IAAI,wCAAwC,CAAC,CACtF,CAAC;YACJ,CAAC;iBAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,YAAY,KAAK,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC;gBAC1E,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC;YACtE,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,MAAM,CACV,cAAc,MAAM,CAAC,QAAQ,CAAC,IAAI,uBAAuB,MAAM,CAAC,QAAQ,CAAC,aAAa,aAAa,MAAM,CAAC,QAAQ,CAAC,YAAY,GAAG,CACnI,CACF,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,KAAK,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YAC3D,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;QAC1C,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,MAAM,CACV,6BAA6B,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,QAAQ,aAAa,MAAM,CAAC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,GAAG,CACxK,CACF,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/D,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,GAAG,CACP,uCAAuC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,CAC7H,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,qEAAqE;AACrE,SAAS,aAAa,CAAC,KAAc,EAAE,SAAS,GAAG,GAAG;IACpD,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAClC,IAAI,GAAG,CAAC,MAAM,IAAI,SAAS;QAAE,OAAO,GAAG,CAAC;IACxC,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAClD,CAAC;AAED,kFAAkF;AAClF,SAAS,iBAAiB,CAAC,IAAqB;IAC9C,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,oBAAoB,SAAS,CAAC;IACtD,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,OAAO,GAAG,MAAM,qBAAqB,CAAC;IACxC,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB;SACrC,GAAG,CACF,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAC7F;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,GAAG,MAAM,qBAAqB,QAAQ,EAAE,CAAC;AAClD,CAAC;AAED,mDAAmD;AACnD,SAAS,WAAW,CAAC,MAAc;IACjC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACrD,IAAI,MAAM,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjD,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAAa,EACb,KAAe,EACf,aAAgC,EAChC,OAAqD;IAErD,MAAM,GAAG,GAAc,MAAM,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAE9C,yEAAyE;IACzE,IAAI,aAAqB,CAAC;IAC1B,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAC9B,IAAI,SAA6B,CAAC;IAClC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACrD,aAAa,GAAG,GAAG,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC;QAC5C,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,aAAa,GAAG,GAAG,CAAC,WAAW,CAAC;QAChC,iBAAiB,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,yBAAyB;IACzB,IAAI,UAAkB,CAAC;IACvB,IAAI,GAAG,CAAC,SAAS,KAAK,WAAW,EAAE,CAAC;QAClC,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,SAAS,UAAU,CAAC,CAAC;IACvD,CAAC;SAAM,IAAI,GAAG,CAAC,SAAS,KAAK,QAAQ,IAAI,GAAG,CAAC,SAAS,KAAK,WAAW,EAAE,CAAC;QACvE,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IAC7B,KAAK,CAAC,IAAI,CAAC,aAAa,aAAa,EAAE,CAAC,CAAC;IACzC,KAAK,CAAC,IAAI,CAAC,UAAU,UAAU,EAAE,CAAC,CAAC;IACnC,KAAK,CAAC,IAAI,CAAC,cAAc,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;IACvE,KAAK,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;IAC3E,KAAK,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;IACjE,KAAK,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;IACnE,KAAK,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;IACzC,KAAK,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;IAEzC,IAAI,iBAAiB,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;IAC/E,CAAC;IAED,0EAA0E;IAC1E,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,aAAa,GAAG,IAAI,GAAG,EAA8B,CAAC;IAC5D,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;QAChC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7B,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACtC,CAAC;QACD,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,yEAAyE;IACzE,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;IAC9B,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3F,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC;QAC7C,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QAChF,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM,CACxC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,aAAa,EAAE,cAAc,IAAI,CAAC,CAAC,EACxD,CAAC,CACF,CAAC;QACF,MAAM,qBAAqB,GAAG,QAAQ,CAAC,MAAM,CAC3C,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,aAAa,EAAE,iBAAiB,IAAI,CAAC,CAAC,EAC3D,CAAC,CACF,CAAC;QACF,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC,MAAM,CAAC;QAE1F,gFAAgF;QAChF,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC5C,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC5B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;gBACrC,IAAI,KAAK,CAAC,KAAK,KAAK,iBAAiB;oBAAE,SAAS;gBAChD,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QACD,MAAM,SAAS,GAAG,CAAC,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC;aACvC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;aACX,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,KAAK,KAAK,GAAG,CAAC,CAAC;QAElD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,8BAA8B,cAAc,EAAE,CAAC,CAAC;QAC3D,KAAK,CAAC,IAAI,CAAC,8BAA8B,oBAAoB,EAAE,CAAC,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,6BAA6B,kBAAkB,EAAE,CAAC,CAAC;QAC9D,KAAK,CAAC,IAAI,CAAC,6BAA6B,qBAAqB,EAAE,CAAC,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,6BAA6B,cAAc,EAAE,CAAC,CAAC;QAC1D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,CAAC,6BAA6B,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,mFAAmF;IACnF,IAAI,GAAG,CAAC,kBAAkB,KAAK,SAAS,IAAI,GAAG,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9E,KAAK,CAAC,IAAI,CACR,GAAG,uBAAuB,CAAC,GAAG,CAAC,kBAAkB,EAAE,OAAO,EAAE,UAAU,KAAK,IAAI,EAAE,SAAS,CAAC,CAC5F,CAAC;IACJ,CAAC;SAAM,IAAI,OAAO,EAAE,UAAU,KAAK,IAAI,EAAE,CAAC;QACxC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,aAAa,SAAS,CAAC,MAAM,UAAU,CAAC,CAAC;IAEpD,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QAChC,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;QACzC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC;QACnF,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC;QAEnC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEf,IAAI,WAAW,EAAE,CAAC;YAChB,6DAA6D;YAC7D,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC;YACtC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE;gBACzB,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;gBACvE,KAAK,CAAC,IAAI,CACR,iBAAiB,EAAE,GAAG,CAAC,IAAI,aAAa,MAAM,aAAa,MAAM,IAAI,CAAC,WAAW,QAAQ,SAAS,EAAE,CACrG,CAAC;YACJ,CAAC,CAAC,CAAC;YACH,sDAAsD;YACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,gBAAgB,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YACpE,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;gBAC3C,KAAK,CAAC,IAAI,CAAC,kBAAkB,aAAa,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;YAC1E,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,gBAAgB,aAAa,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YACrE,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBACjC,KAAK,CAAC,IAAI,CAAC,gBAAgB,QAAQ,CAAC,KAAK,CAAC,MAAM,wBAAwB,CAAC,CAAC;gBAC1E,IAAI,QAAQ,CAAC,aAAa,EAAE,SAAS,EAAE,CAAC;oBACtC,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC;oBACjC,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,MAAM,CACV,2BAA2B,CAAC,CAAC,iBAAiB,IAAI,SAAS,MAAM,CAAC,CAAC,cAAc,YAAY,CAAC,CAAC,iBAAiB,aAAa,CAC9H,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,QAAQ,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBACvC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;YACxF,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;YACvB,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC/C,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;YACvE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACpF,MAAM,YAAY,GAChB,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1F,KAAK,CAAC,IAAI,CACR,KAAK,GAAG,GAAG,CAAC,KAAK,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,YAAY,GAAG,SAAS,IAAI,aAAa,MAAM,IAAI,CAAC,WAAW,QAAQ,SAAS,EAAE,CACxH,CAAC;YACF,IAAI,IAAI,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;gBAClC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAC7E,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;oBACzB,KAAK,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACjD,CAAC;gBACD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;oBACpC,KAAK,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;gBACtD,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,kBAAkB,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YACrE,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,gBAAgB,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;gBAChE,IAAI,IAAI,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;oBACvC,KAAK,CAAC,IAAI,CAAC,kBAAkB,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;gBACtE,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,gBAAgB,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;gBACjE,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC7B,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,KAAK,CAAC,MAAM,wBAAwB,CAAC,CAAC;oBACtE,IAAI,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,CAAC;wBAClC,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC;wBAC7B,KAAK,CAAC,IAAI,CACR,KAAK,CAAC,MAAM,CACV,2BAA2B,CAAC,CAAC,iBAAiB,IAAI,SAAS,MAAM,CAAC,CAAC,cAAc,YAAY,CAAC,CAAC,iBAAiB,aAAa,CAC9H,CACF,CAAC;oBACJ,CAAC;gBACH,CAAC;gBACD,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;oBAClC,gCAAgC;gBAClC,CAAC;qBAAM,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACxC,KAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;gBACjD,CAAC;qBAAM,CAAC;oBACN,KAAK,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;oBAC3D,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;wBACjC,MAAM,SAAS,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACzD,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC,CAAC;wBACnF,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;4BACrB,KAAK,CAAC,IAAI,CAAC,oBAAoB,aAAa,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;4BACzD,MAAM,SAAS,GAAG,OAAO,EAAE,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;4BACvE,KAAK,CAAC,IAAI,CAAC,oBAAoB,SAAS,EAAE,CAAC,CAAC;wBAC9C,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;oBACnC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,iBAAiB,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;gBACpF,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC;KACjD,QAAQ,CAAC,UAAU,EAAE,0BAA0B,CAAC;KAChD,WAAW,CAAC,2DAA2D,CAAC;KACxE,MAAM,CAAC,WAAW,EAAE,sCAAsC,CAAC;KAC3D,MAAM,CACL,eAAe,EACf,6GAA6G,CAC9G;KACA,MAAM,CAAC,KAAK,EAAE,KAAa,EAAE,OAAoD,EAAE,EAAE;IACpF,MAAM,EAAE,aAAa,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAC5E,MAAM,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;IAClC,MAAM,aAAa,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE;YAC3D,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtD,GAAG,CAAC,OAAO,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7D,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -2,6 +2,7 @@ import { type Server, type IncomingMessage, type ServerResponse } from 'node:htt
|
|
|
2
2
|
import { Command } from 'commander';
|
|
3
3
|
import type { WorkflowDefinition, WebhookTrigger, TriggerFilter, RunStore, WorkflowRegistrar } from '@sensigo/realm';
|
|
4
4
|
import { type DedupStore } from '../lib/dedup-store.js';
|
|
5
|
+
import { loadProjectExtensions } from '../extensions/load-project-extensions.js';
|
|
5
6
|
export interface Logger {
|
|
6
7
|
debug(msg: string, data?: unknown): void;
|
|
7
8
|
info(msg: string, data?: unknown): void;
|
|
@@ -66,6 +67,16 @@ export declare function buildRouteTable(inputs: Array<{
|
|
|
66
67
|
env: Record<string, string | undefined>;
|
|
67
68
|
logger: Logger;
|
|
68
69
|
}): Map<string, WorkflowEntry>;
|
|
70
|
+
/**
|
|
71
|
+
* Startup preparation for the routed workflows (fail-fast — any error must abort startup):
|
|
72
|
+
* - registers each routed workflow ONCE (the per-webhook `workflowStore.register` was removed:
|
|
73
|
+
* it silently reverted fresher registrations; restart listen after re-registering);
|
|
74
|
+
* - loads each workflow's project extension modules. NOTE: the modules are imported in the
|
|
75
|
+
* LISTEN PARENT process here — top-level side effects run in the parent (the cost of
|
|
76
|
+
* fail-fast). Children re-resolve at spawn via `realm agent --run-id`; their failure branch
|
|
77
|
+
* writes terminal_reason 'extensions_load_failed' on the run.
|
|
78
|
+
*/
|
|
79
|
+
export declare function prepareListenWorkflows(routes: Map<string, WorkflowEntry>, deps: Pick<ListenDeps, 'workflowStore' | 'logger'>, loadExtensions?: typeof loadProjectExtensions): Promise<void>;
|
|
69
80
|
export interface ListenOptions {
|
|
70
81
|
port: number;
|
|
71
82
|
host: string;
|