@telora/mcp-products 0.22.73 → 0.22.75

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.
@@ -6,6 +6,11 @@ export interface ToolIndexEntry {
6
6
  actions: string[];
7
7
  keywords: string[];
8
8
  }
9
+ export interface ProjectedToolIndexEntry extends ToolIndexEntry {
10
+ domain: string;
11
+ loadCommand: string | null;
12
+ callableHint: string;
13
+ }
9
14
  /** Domain definitions: name -> description + registration thunk + tool index */
10
15
  export interface DomainDef {
11
16
  description: string;
@@ -40,12 +45,18 @@ export interface ProjectedDomain {
40
45
  alwaysLoaded: false;
41
46
  description: string;
42
47
  keywords: string[];
43
- toolIndex: ToolIndexEntry[];
48
+ toolIndex: ProjectedToolIndexEntry[];
44
49
  entryPoint?: {
45
50
  intentPhrase: string;
46
51
  rank: number;
47
52
  };
48
53
  }
54
+ export interface ToolLookupMatch {
55
+ domain: string;
56
+ loaded: boolean;
57
+ alwaysLoaded: boolean;
58
+ tool: ProjectedToolIndexEntry;
59
+ }
49
60
  /**
50
61
  * Pure projection of the on-demand `domains` registry into the list of entries
51
62
  * emitted by the `telora_discover` `list` action. Flagged entry points (by
@@ -57,6 +68,8 @@ export interface ProjectedDomain {
57
68
  * full McpServer; the registered `list` action calls this verbatim.
58
69
  */
59
70
  export declare function projectDomainsForList(domains: DomainRegistry, loaded: ReadonlySet<string>): ProjectedDomain[];
71
+ export declare function lookupTools(toolName: string, domains: DomainRegistry, loaded: ReadonlySet<string>, startupDomains?: Record<string, StartupDomain>): ToolLookupMatch[];
72
+ export declare function formatLookupRecovery(matches: ToolLookupMatch[]): string;
60
73
  /** Startup domains that are always loaded (shown in list for completeness) */
61
74
  export interface StartupDomain {
62
75
  description: string;
@@ -8,6 +8,38 @@
8
8
  // ---------------------------------------------------------------------------
9
9
  import { z } from "zod";
10
10
  import { successResult, validationError, wrapHandler } from "../shared.js";
11
+ /**
12
+ * Cross-cutting error-handling contract, surfaced on `telora_discover list` so a
13
+ * model reaches it at runtime (it otherwise lives only in source comments and
14
+ * the package CLAUDE.md, which a model never reads). Two points a weaker model
15
+ * needs to branch correctly: (1) every Telora error result carries a structured
16
+ * `code:` content block to branch on, and (2) an "EMPTY CONTENT" / "no content"
17
+ * condition is NOT a Telora error.
18
+ */
19
+ const ERROR_HANDLING_NOTE = {
20
+ structuredCodes: "Every failing Telora tool call returns the human message as the first text block AND a second `code: <CODE>` block. Branch on the code, not the prose: ERR_VALIDATION / ERR_INVALID_ID -> fix the call; ERR_NOT_FOUND / ERR_STATE_CONFLICT -> backtrack (re-read state, e.g. via a get/dump/list action); ERR_TIMEOUT / ERR_BACKEND -> transient, safe to retry; ERR_UNKNOWN -> ask.",
21
+ emptyContent: "An 'EMPTY CONTENT' / 'no content' condition is NOT a Telora error. Telora ALWAYS emits at least one text content block (success, error, and validation results all do). Empty content originates client/runner-side -- a malformed tool call the runner rejected before it reached the server, a transport hiccup, or an MCP-SDK schema rejection. Do not model it as a Telora backend failure; fix or re-issue the call.",
22
+ };
23
+ function buildLoadCommand(domain) {
24
+ return `telora_discover { "action": "load", "domain": "${domain}" }`;
25
+ }
26
+ function buildCallableHint(domain, toolName, loaded, alwaysLoaded) {
27
+ if (alwaysLoaded) {
28
+ return `${toolName} belongs to the always-loaded ${domain} domain and should already be callable.`;
29
+ }
30
+ if (loaded) {
31
+ return `${domain} is marked loaded on the server. If ${toolName} is still not callable, refresh the MCP tool list or reconnect this MCP session.`;
32
+ }
33
+ return `Load the ${domain} domain before calling ${toolName}.`;
34
+ }
35
+ function projectToolIndex(domain, toolIndex, loaded, alwaysLoaded) {
36
+ return toolIndex.map((tool) => ({
37
+ ...tool,
38
+ domain,
39
+ loadCommand: alwaysLoaded ? null : buildLoadCommand(domain),
40
+ callableHint: buildCallableHint(domain, tool.name, loaded, alwaysLoaded),
41
+ }));
42
+ }
11
43
  /**
12
44
  * Pure projection of the on-demand `domains` registry into the list of entries
13
45
  * emitted by the `telora_discover` `list` action. Flagged entry points (by
@@ -20,13 +52,14 @@ import { successResult, validationError, wrapHandler } from "../shared.js";
20
52
  */
21
53
  export function projectDomainsForList(domains, loaded) {
22
54
  const domainNames = Object.keys(domains);
55
+ const isLoaded = (domain) => loaded.has(domain);
23
56
  const entries = domainNames.map((d) => ({
24
57
  domain: d,
25
- loaded: loaded.has(d),
58
+ loaded: isLoaded(d),
26
59
  alwaysLoaded: false,
27
60
  description: domains[d].description,
28
61
  keywords: domains[d].keywords,
29
- toolIndex: domains[d].toolIndex,
62
+ toolIndex: projectToolIndex(d, domains[d].toolIndex, isLoaded(d), false),
30
63
  entryPoint: domains[d].entryPoint,
31
64
  }));
32
65
  // Stable sort: flagged entry points first by ascending rank; everything else
@@ -46,6 +79,39 @@ export function projectDomainsForList(domains, loaded) {
46
79
  })
47
80
  .map(({ e }) => e);
48
81
  }
82
+ export function lookupTools(toolName, domains, loaded, startupDomains) {
83
+ const matches = [];
84
+ for (const [domain, def] of Object.entries(startupDomains ?? {})) {
85
+ for (const tool of projectToolIndex(domain, def.toolIndex, true, true)) {
86
+ if (tool.name === toolName) {
87
+ matches.push({ domain, loaded: true, alwaysLoaded: true, tool });
88
+ }
89
+ }
90
+ }
91
+ for (const [domain, def] of Object.entries(domains)) {
92
+ const domainLoaded = loaded.has(domain);
93
+ for (const tool of projectToolIndex(domain, def.toolIndex, domainLoaded, false)) {
94
+ if (tool.name === toolName) {
95
+ matches.push({ domain, loaded: domainLoaded, alwaysLoaded: false, tool });
96
+ }
97
+ }
98
+ }
99
+ return matches;
100
+ }
101
+ export function formatLookupRecovery(matches) {
102
+ if (matches.length === 0)
103
+ return "";
104
+ return matches
105
+ .map((match) => {
106
+ if (match.alwaysLoaded)
107
+ return `${match.tool.name} is always loaded in domain '${match.domain}'.`;
108
+ if (match.loaded) {
109
+ return `${match.tool.name} belongs to loaded domain '${match.domain}'. If it is still not callable, refresh the MCP tool list or reconnect the MCP session.`;
110
+ }
111
+ return `${match.tool.name} belongs to deferred domain '${match.domain}'. Load it with ${match.tool.loadCommand}.`;
112
+ })
113
+ .join(" ");
114
+ }
49
115
  export function registerDiscoverTool(server, domains, startupDomains) {
50
116
  const loaded = new Set();
51
117
  const domainNames = Object.keys(domains);
@@ -65,10 +131,13 @@ export function registerDiscoverTool(server, domains, startupDomains) {
65
131
  [...allKeywords].join(", ") + ".\n\n" +
66
132
  "Available domains:\n" + domainCatalog + "\n\n" +
67
133
  "Use action 'list' to see all domains with their tool indexes (what tools and actions each domain provides). " +
134
+ "Use action 'lookup' with a toolName to find the owning domain and exact load command. " +
68
135
  "Use action 'load' with a domain name or 'all' to load tools.", {
69
- action: z.enum(["list", "load"]).describe("'list' shows domain status with tool indexes; 'load' registers tools for a domain"),
136
+ action: z.enum(["list", "load", "lookup"]).describe("'list' shows domain status with tool indexes; 'lookup' maps a tool name to its domain/load command; 'load' registers tools for a domain"),
70
137
  domain: z.string().optional()
71
138
  .describe("Domain to load (required for 'load' action). Use 'all' to load everything."),
139
+ toolName: z.string().optional()
140
+ .describe("Tool name to look up (required for 'lookup' action), e.g. telora_reality_tree."),
72
141
  }, wrapHandler(async (params) => {
73
142
  if (params.action === "list") {
74
143
  const alwaysLoaded = startupNames.map((d) => ({
@@ -77,17 +146,33 @@ export function registerDiscoverTool(server, domains, startupDomains) {
77
146
  alwaysLoaded: true,
78
147
  description: startupDomains[d].description,
79
148
  keywords: startupDomains[d].keywords,
80
- toolIndex: startupDomains[d].toolIndex,
149
+ toolIndex: projectToolIndex(d, startupDomains[d].toolIndex, true, true),
81
150
  }));
82
151
  const onDemand = projectDomainsForList(domains, loaded);
83
- return successResult({ domains: [...alwaysLoaded, ...onDemand] });
152
+ return successResult({ domains: [...alwaysLoaded, ...onDemand], errorHandling: ERROR_HANDLING_NOTE });
153
+ }
154
+ if (params.action === "lookup") {
155
+ if (!params.toolName) {
156
+ return validationError("toolName is required for lookup action");
157
+ }
158
+ const matches = lookupTools(params.toolName, domains, loaded, startupDomains);
159
+ if (matches.length === 0) {
160
+ return validationError(`Unknown tool '${params.toolName}'. Use action 'list' to inspect known domains and tool indexes.`);
161
+ }
162
+ return successResult({
163
+ toolName: params.toolName,
164
+ matches,
165
+ recovery: formatLookupRecovery(matches),
166
+ });
84
167
  }
85
168
  // action === "load"
86
169
  if (!params.domain) {
87
170
  return validationError("domain is required for load action");
88
171
  }
89
172
  if (params.domain !== "all" && !domainNames.includes(params.domain)) {
90
- return validationError(`Unknown domain '${params.domain}'. Available: ${domainNames.join(", ")}, all`);
173
+ const matches = lookupTools(params.domain, domains, loaded, startupDomains);
174
+ const recovery = matches.length > 0 ? ` ${formatLookupRecovery(matches)}` : "";
175
+ return validationError(`Unknown domain '${params.domain}'. Available domains: ${domainNames.join(", ")}, all.${recovery}`);
91
176
  }
92
177
  const toLoad = params.domain === "all"
93
178
  ? domainNames.filter((d) => !loaded.has(d))
@@ -97,8 +182,8 @@ export function registerDiscoverTool(server, domains, startupDomains) {
97
182
  if (toLoad.length === 0) {
98
183
  const msg = params.domain === "all"
99
184
  ? "All domains already loaded."
100
- : `Domain '${params.domain}' is already loaded.`;
101
- return successResult({ message: msg, loaded: [...loaded] });
185
+ : `Domain '${params.domain}' is already loaded. If its tools are still not callable, refresh the MCP tool list or reconnect this MCP session.`;
186
+ return successResult({ message: msg, loaded: [...loaded], callableAvailability: "server-domain-loaded-client-refresh-may-be-required" });
102
187
  }
103
188
  for (const d of toLoad) {
104
189
  domains[d].register();
@@ -114,6 +199,9 @@ export function registerDiscoverTool(server, domains, startupDomains) {
114
199
  return successResult({
115
200
  message: `Loaded ${toLoad.length} domain(s): ${toLoad.join(", ")}`,
116
201
  loaded: [...loaded],
202
+ loadedToolIndex: toLoad.flatMap((d) => projectToolIndex(d, domains[d].toolIndex, true, false)),
203
+ callableAvailability: "server-domain-loaded-client-refresh-may-be-required",
204
+ recovery: "The server registered the domain and sent a tool-list changed notification. If a listed tool is still absent from the callable tool surface, refresh the MCP tool list or reconnect this MCP session.",
117
205
  ...(guides.length > 0 ? { authoringGuides: guides } : {}),
118
206
  });
119
207
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"discoverHandler.js","sourceRoot":"","sources":["../../src/handlers/discoverHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discoverHandler.js","sourceRoot":"","sources":["../../src/handlers/discoverHandler.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,73 @@
1
+ import { z } from "zod";
1
2
  import type { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
3
  import { type GetCreds } from "../shared.js";
4
+ declare const batchDefinitionSchema: z.ZodObject<{
5
+ nodes: z.ZodArray<z.ZodObject<{
6
+ ref: z.ZodString;
7
+ statement: z.ZodString;
8
+ nodeType: z.ZodEnum<{
9
+ entity: "entity";
10
+ undesired_effect: "undesired_effect";
11
+ desired_effect: "desired_effect";
12
+ injection: "injection";
13
+ }>;
14
+ evidence: z.ZodOptional<z.ZodString>;
15
+ viewScope: z.ZodOptional<z.ZodEnum<{
16
+ both: "both";
17
+ crt_only: "crt_only";
18
+ frt_only: "frt_only";
19
+ }>>;
20
+ injectionStatus: z.ZodOptional<z.ZodEnum<{
21
+ proposed: "proposed";
22
+ in_progress: "in_progress";
23
+ realized: "realized";
24
+ verified: "verified";
25
+ }>>;
26
+ dissolvesObstacle: z.ZodOptional<z.ZodString>;
27
+ enablesNodeRef: z.ZodOptional<z.ZodString>;
28
+ }, z.core.$strip>>;
29
+ edges: z.ZodOptional<z.ZodArray<z.ZodObject<{
30
+ fromRef: z.ZodOptional<z.ZodString>;
31
+ fromNodeId: z.ZodOptional<z.ZodString>;
32
+ toRef: z.ZodOptional<z.ZodString>;
33
+ toNodeId: z.ZodOptional<z.ZodString>;
34
+ edgeType: z.ZodEnum<{
35
+ and: "and";
36
+ sufficient: "sufficient";
37
+ derived_from: "derived_from";
38
+ targets: "targets";
39
+ }>;
40
+ feedback: z.ZodOptional<z.ZodBoolean>;
41
+ }, z.core.$strip>>>;
42
+ targets: z.ZodOptional<z.ZodArray<z.ZodObject<{
43
+ injectionRef: z.ZodOptional<z.ZodString>;
44
+ injectionNodeId: z.ZodOptional<z.ZodString>;
45
+ targetRefs: z.ZodOptional<z.ZodArray<z.ZodString>>;
46
+ targetNodeIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
47
+ restatements: z.ZodOptional<z.ZodArray<z.ZodObject<{
48
+ ref: z.ZodOptional<z.ZodString>;
49
+ nodeId: z.ZodOptional<z.ZodString>;
50
+ frtStatement: z.ZodOptional<z.ZodString>;
51
+ }, z.core.$strip>>>;
52
+ }, z.core.$strip>>>;
53
+ }, z.core.$strip>;
54
+ export type BatchTreeDefinition = z.infer<typeof batchDefinitionSchema>;
3
55
  type CallApi = (body: Record<string, unknown>) => Promise<unknown>;
56
+ /**
57
+ * Extracted pure handler for reality_tree create_from_definition (atomic batch
58
+ * build). Validates treeId + a non-empty node set, then forwards the whole
59
+ * definition verbatim to product-api `reality_tree_build_batch`, returning the
60
+ * backend result (created seqs/ids + warnings). Tests inject a stub `callApi`.
61
+ */
62
+ export declare function handleRealityTreeBuildBatch(params: {
63
+ treeId?: string;
64
+ definition?: BatchTreeDefinition;
65
+ }, callApi: CallApi): Promise<{
66
+ content: {
67
+ type: "text";
68
+ text: string;
69
+ }[];
70
+ }>;
4
71
  /**
5
72
  * Extracted pure handler for reality_tree create. Tests inject a stub via
6
73
  * the `callApi` parameter so they can assert next_steps pass-through without
@@ -14,6 +14,66 @@ import { callProductApi, successResult, validationError, wrapHandler, compactEnt
14
14
  const nodeTypeEnum = z.enum(["entity", "undesired_effect", "desired_effect", "injection"]);
15
15
  const edgeTypeEnum = z.enum(["sufficient", "and", "derived_from", "targets"]);
16
16
  const linkEntityTypeEnum = z.enum(["focus", "delivery", "issue"]);
17
+ const viewScopeEnum = z.enum(["both", "crt_only", "frt_only"]);
18
+ const injectionStatusEnum = z.enum(["proposed", "in_progress", "realized", "verified"]);
19
+ // -- Batch tree-build definition (create_from_definition) --------------------
20
+ // A whole tree submitted in one all-or-nothing call. Nodes carry a CLIENT-local
21
+ // `ref` string; edges and targets reference batch-created nodes by ref, or
22
+ // pre-existing nodes by their UUID. Forwarded verbatim to product-api
23
+ // `reality_tree_build_batch`, which validates + commits with compensation.
24
+ const batchNodeSchema = z.object({
25
+ ref: z.string().min(1).describe("Client-local key for this node within the batch (referenced by edges/targets)"),
26
+ statement: z.string().max(2000),
27
+ nodeType: nodeTypeEnum,
28
+ evidence: z.string().max(5000).optional(),
29
+ viewScope: viewScopeEnum.optional(),
30
+ injectionStatus: injectionStatusEnum.optional(),
31
+ dissolvesObstacle: z.string().max(2000).optional(),
32
+ enablesNodeRef: z.string().optional().describe("ref of another batch node this node enables (PRT reasoning)"),
33
+ });
34
+ const batchEdgeSchema = z.object({
35
+ fromRef: z.string().optional().describe("ref of a batch node (source); use this OR fromNodeId"),
36
+ fromNodeId: z.string().uuid().optional().describe("UUID of a pre-existing node (source)"),
37
+ toRef: z.string().optional().describe("ref of a batch node (target); use this OR toNodeId"),
38
+ toNodeId: z.string().uuid().optional().describe("UUID of a pre-existing node (target)"),
39
+ edgeType: edgeTypeEnum,
40
+ feedback: z.boolean().optional(),
41
+ });
42
+ const batchTargetSchema = z.object({
43
+ injectionRef: z.string().optional().describe("ref of a batch injection node; use this OR injectionNodeId"),
44
+ injectionNodeId: z.string().uuid().optional(),
45
+ targetRefs: z.array(z.string()).optional().describe("refs of batch nodes the injection targets"),
46
+ targetNodeIds: z.array(z.string().uuid()).optional().describe("UUIDs of pre-existing nodes the injection targets"),
47
+ restatements: z.array(z.object({
48
+ ref: z.string().optional(),
49
+ nodeId: z.string().uuid().optional(),
50
+ frtStatement: z.string().max(2000).optional(),
51
+ })).optional(),
52
+ });
53
+ const batchDefinitionSchema = z.object({
54
+ nodes: z.array(batchNodeSchema).min(1).max(100),
55
+ edges: z.array(batchEdgeSchema).max(200).optional(),
56
+ targets: z.array(batchTargetSchema).max(100).optional(),
57
+ });
58
+ /**
59
+ * Extracted pure handler for reality_tree create_from_definition (atomic batch
60
+ * build). Validates treeId + a non-empty node set, then forwards the whole
61
+ * definition verbatim to product-api `reality_tree_build_batch`, returning the
62
+ * backend result (created seqs/ids + warnings). Tests inject a stub `callApi`.
63
+ */
64
+ export async function handleRealityTreeBuildBatch(params, callApi) {
65
+ if (!params.treeId)
66
+ return validationError("treeId required for create_from_definition");
67
+ if (!params.definition || !Array.isArray(params.definition.nodes) || params.definition.nodes.length === 0) {
68
+ return validationError("definition with at least one node required for create_from_definition");
69
+ }
70
+ const result = await callApi({
71
+ action: "reality_tree_build_batch",
72
+ treeId: params.treeId,
73
+ definition: params.definition,
74
+ });
75
+ return successResult(result);
76
+ }
17
77
  /**
18
78
  * Extracted pure handler for reality_tree create. Tests inject a stub via
19
79
  * the `callApi` parameter so they can assert next_steps pass-through without
@@ -42,31 +102,31 @@ export async function handleRealityTreeCreate(params, callApi) {
42
102
  }
43
103
  export function registerRealityTreeTools(server, getCreds) {
44
104
  // -- telora_reality_tree ---------------------------------------------------
45
- server.tool("telora_reality_tree", "Reality trees: CRT/FRT planning structures based on Goldratt's Thinking Processes. " +
46
- "One unified graph per focus -- CRT and FRT are views over the same graph, not two physical trees. " +
47
- "Entities and UDEs live in both views; injection nodes are FRT-only (view_scope='frt_only'); " +
48
- "UDE-to-DE transitions in the future state are captured as overlays on the existing UDE node " +
49
- "via frt_statement and frt_node_type, not as new standalone DE nodes. " +
50
- "Trees are focus-scoped: pass focusId on create and list. Product-scoped trees are no longer supported. " +
51
- "BUILD ITERATIVELY -- a flat fan-in of one-injection-per-UDE is a checklist, not a tree. " +
52
- "Multi-pass discipline: " +
105
+ server.tool("telora_reality_tree", "Reality trees: CRT/FRT planning structures (Goldratt Thinking Processes). One unified graph per focus; CRT and FRT are views over the SAME graph, not two physical trees. " +
106
+ "ACTIONS (required params in parens): " +
107
+ "list (focusId) -- trees for a focus; " +
108
+ "create (focusId + name) -- new tree; " +
109
+ "get (treeId) -- full graph: nodes + edges; " +
110
+ "update (treeId + fields) -- edit name/description/status; " +
111
+ "dump (treeId) -- structured TEXT view of the whole graph (node seq numbers, types, statements, edge connections); " +
112
+ "derive_frt (treeId) -- LIVE derived Future Reality Tree cascade (cleared set, flipped UDE node ids, per-node derived type/state; read-only); " +
113
+ "create_from_definition (treeId + definition) -- ATOMIC BATCH build: submit a whole nodes+edges+targets graph in ONE all-or-nothing call (no half-built tree on failure), returns the created seqs/ids + warnings. Convenience alongside iterative authoring, NOT a replacement -- it still warns on a flat one-injection-per-UDE fan-in, so reason out the relationships/leverage passes first, then commit the result in one call. " +
114
+ "VERIFY AS YOU GO: after each step, call dump (whole graph) or telora_reality_tree_node get (one node by seq) to SEE current tree state before the next call -- this is how you confirm the graph matches your intent. " +
115
+ "MODEL: entities and UDEs live in both views; injection nodes are FRT-only (view_scope='frt_only'); UDE-to-DE transitions are overlays on the existing UDE node (frt_statement/frt_node_type), NOT new standalone DE nodes. Trees are focus-scoped: pass focusId on create and list; product-scoped trees are not supported. " +
116
+ "DISCIPLINE (build iteratively -- a flat fan-in of one-injection-per-UDE is a checklist, not a tree). Multi-pass: " +
53
117
  "(1) Facts pass -- capture UDEs and entities first, no injections yet; let the obstacle picture stabilize. " +
54
- "(2) Relationships pass -- wire sufficient/and edges between UDEs and surface root entities upstream of multiple UDEs. " +
55
- "If the CRT view shows no edges between UDEs, this pass is incomplete and the systemic structure is being missed. " +
118
+ "(2) Relationships pass -- wire sufficient/and edges between UDEs and surface root entities upstream of multiple UDEs. If the CRT view shows no edges between UDEs, this pass is incomplete and the systemic structure is being missed. " +
56
119
  "(3) Leverage pass -- propose injections that target upstream causes so one intervention dissolves multiple downstream effects through causation; one injection retiring three UDEs beats three injections each retiring one. " +
57
120
  "Re-enter passes as more comes into view; the discipline is iterate-until-the-relational-structure-matches-reality, not draw-once. " +
58
- "Actions: list (focusId), create (focusId + name), " +
59
- "get (treeId -- returns full graph with nodes and edges), " +
60
- "update (treeId + fields), dump (treeId -- returns structured text view of the full graph with node seq numbers, types, statements, and edge connections for reasoning about the graph structure), " +
61
- "derive_frt (treeId -- returns the LIVE derived Future Reality Tree cascade computed by the shared causal engine: the cleared set, the flipped UDE node ids " +
62
- "(directly-targeted UDEs PLUS downstream consequences that lose all causes), and per-node derived node type/resolved state. Read-only; use this to enumerate which nodes an active injection flips without the canvas)." +
121
+ "derive_frt enumerates which nodes an active injection flips (directly-targeted UDEs PLUS downstream consequences that lose all causes) without the canvas." +
63
122
  LIST_INDEX_NOTE, {
64
- action: z.enum(["list", "create", "get", "update", "dump", "derive_frt"]).describe("Action to perform"),
123
+ action: z.enum(["list", "create", "get", "update", "dump", "derive_frt", "create_from_definition"]).describe("Action to perform"),
65
124
  focusId: z.string().uuid().optional().describe("Focus UUID. Required for list and create. One unified graph per focus; CRT and FRT are derived views."),
66
- treeId: z.string().uuid().optional().describe("Reality tree UUID (required for get, update)"),
125
+ treeId: z.string().uuid().optional().describe("Reality tree UUID (required for get, update, dump, derive_frt, create_from_definition)"),
67
126
  name: z.string().max(200).optional().describe("Tree name (required for create)"),
68
127
  description: z.string().max(2000).optional().describe("Tree description"),
69
128
  status: z.enum(["active", "archived"]).optional().describe("Tree status (update only)"),
129
+ definition: batchDefinitionSchema.optional().describe("Atomic batch build (create_from_definition): a whole tree as { nodes:[{ref,statement,nodeType,...}], edges:[{fromRef|fromNodeId,toRef|toNodeId,edgeType}], targets?:[{injectionRef|injectionNodeId,targetRefs|targetNodeIds,restatements?}] }. Nodes carry a client-local `ref`; edges/targets reference by ref (batch nodes) or nodeId (pre-existing). Commits all-or-nothing."),
70
130
  returnFull: z.boolean().optional().describe("Return full entity (default: compact)"),
71
131
  }, wrapHandler(async (params) => {
72
132
  switch (params.action) {
@@ -83,6 +143,9 @@ export function registerRealityTreeTools(server, getCreds) {
83
143
  case "create": {
84
144
  return handleRealityTreeCreate(params, (body) => callProductApi(getCreds(), body));
85
145
  }
146
+ case "create_from_definition": {
147
+ return handleRealityTreeBuildBatch(params, (body) => callProductApi(getCreds(), body));
148
+ }
86
149
  case "get": {
87
150
  if (!params.treeId)
88
151
  return validationError("treeId required for get");
@@ -134,31 +197,22 @@ export function registerRealityTreeTools(server, getCreds) {
134
197
  }
135
198
  }));
136
199
  // -- telora_reality_tree_node ----------------------------------------------
137
- server.tool("telora_reality_tree_node", "Reality tree nodes: assertions about the system. Four types: " +
138
- "entity (neutral fact), undesired_effect (UDE -- observable problem), " +
139
- "desired_effect (positive outcome, FRT only), injection (proposed change, FRT only). " +
140
- "Injection pattern: injections ANNOTATE the graph via 'targets' edges to the entities they address. " +
141
- "In CRT injections are hidden; in FRT they appear connected to their targets. " +
142
- "Downstream effects (e.g., UDE flipping to DE) are captured via FRT overlays " +
143
- "(frtStatement/frtNodeType) on existing nodes -- do NOT create standalone desired_effect nodes " +
144
- "to represent what a UDE becomes. " +
145
- "Before creating an injection: complete the relationships pass on existing UDEs first -- " +
146
- "wire sufficient/and causal edges so root entities and upstream UDEs become visible. " +
147
- "Aim injections at leverage points (root causes shared by multiple downstream UDEs), not symptoms. " +
148
- "If you find yourself adding one injection per UDE with no causal edges between UDEs, you are building a checklist, not a tree -- stop and walk the relationships first. " +
149
- "Soft delete via retire -- lineage must be preserved. " +
150
- "Actions: list (treeId, optional nodeType/status filter), get (treeId + seq -- lookup by display number, returns node + all connected edges with seq numbers), " +
151
- "create (treeId + statement + nodeType), " +
152
- "update (nodeId + fields -- use frtStatement/frtNodeType to set FRT overlays on both-scoped nodes), " +
153
- "retire (nodeId -- sets status to retired), " +
154
- "target (compound: create 'targets' edges from injection to target nodes; auto-sets frt_node_type='desired_effect' on UDE targets -- " +
155
- "a resolved UDE reads in the FRT view as the desired effect it becomes. EXPECTED: pass `restatements` (per-target frtStatement) to DECLARE each target's intended desired effect up front -- this is the intent of record (stored as declared, not machine-drafted). " +
156
- "Verify later RECONCILES that declared intent against evidence; it does not author it. A target flipped without a declared desired effect is an OMISSION -- the flip still happens, but the omitted target ids are returned in the response `omissions` array), " +
157
- "verify (compound operation: rewrite desired effects, split new nodes, advance injection to verified -- promotes FRT overlays to CRT reality on target nodes; " +
158
- "UDE targets lacking an frt overlay are auto-flipped to node_type='desired_effect' (mirrors targetInjection's default -- Goldratt FRT semantics). " +
159
- "Pass `restatements` (per-target statement) to set each flipped UDE's positive base statement -- authoring the desired-effect restatement is an OUTPUT of verify, gated by the same evidence as the verdict, not a deferred backstop), " +
160
- "demote (reverse a desired_effect back to undesired_effect -- the inverse of the verify/flip; for correcting an erroneous or regressed flip. Records a symmetric history snapshot and clears the FRT overlay; pass optional `statement` to restore the UDE text. " +
161
- "Runs a CASCADE revert: the same deriveFrtCascade derivation as the forward flip clears the FRT overlay on every downstream node that no longer un-flips as a result (a node still resolved by ANOTHER active injection keeps its overlay). The response includes `revertedNodeIds` for the downstream nodes swept. Human/agent-triggered only -- never auto-proposed)." +
200
+ server.tool("telora_reality_tree_node", "Reality tree nodes: assertions about the system. Types: entity (neutral fact), undesired_effect (UDE -- observable problem), desired_effect (FRT-only positive outcome), injection (FRT-only proposed change). " +
201
+ "ACTIONS (required params in parens): " +
202
+ "list (treeId [+ nodeType/status filter]); " +
203
+ "get (treeId + seq) -- lookup by the #N display number; returns the node + all connected edges; " +
204
+ "create (treeId + statement + nodeType); " +
205
+ "update (nodeId + fields) -- set frtStatement/frtNodeType to add FRT overlays on both-scoped nodes; " +
206
+ "retire (nodeId) -- soft delete, sets status=retired (lineage preserved); " +
207
+ "target (nodeId [injection] + targetNodeIds [+ restatements]) -- create 'targets' edges from the injection to the nodes it addresses; auto-sets frt_node_type='desired_effect' on UDE targets; " +
208
+ "verify (nodeId [injection] [+ restatements/rewrites/splits]) -- promote FRT overlays to CRT reality and advance the injection to verified; " +
209
+ "demote (nodeId [+ statement]) -- reverse a desired_effect back to undesired_effect (inverse of verify/flip; returns revertedNodeIds). " +
210
+ "VERIFY AS YOU GO: after create/target/verify, call get (treeId + seq) on the touched node -- or telora_reality_tree dump for the whole graph -- to confirm the change landed before the next call. " +
211
+ "DISCIPLINE: injections ANNOTATE the graph via 'targets' edges -- in CRT they are hidden, in FRT they appear connected to their targets. Capture UDE-to-DE flips as FRT overlays (frtStatement/frtNodeType) on existing nodes; do NOT create standalone desired_effect nodes to represent what a UDE becomes. " +
212
+ "Before creating an injection, finish the relationships pass: wire sufficient/and causal edges so root entities and upstream UDEs shared by multiple effects become visible, then aim injections at those leverage points, not symptoms. One injection per UDE with no causal edges between UDEs is a checklist, not a tree -- walk the relationships first. " +
213
+ "target detail: `restatements` (per-target frtStatement) DECLARE each target's intended desired effect up front -- the intent of record, stored as declared; verify later RECONCILES it against evidence, it does not author it. A target flipped without a declared desired effect is an OMISSION (the flip still happens; omitted target ids return in the response `omissions` array). " +
214
+ "verify detail: UDE targets lacking an frt overlay auto-flip to node_type='desired_effect' (Goldratt FRT semantics); pass `restatements` (per-target statement) to set each flipped UDE's positive base statement -- an OUTPUT of verify, gated by the same evidence as the verdict. " +
215
+ "demote detail: records a symmetric history snapshot and clears the FRT overlay; runs a CASCADE revert (same deriveFrtCascade derivation as the forward flip) clearing the overlay on every downstream node that no longer un-flips (a node still resolved by ANOTHER active injection keeps its overlay); `revertedNodeIds` lists the swept downstream nodes. Human/agent-triggered only, never auto-proposed." +
162
216
  LIST_INDEX_NOTE, {
163
217
  action: z.enum(["list", "get", "create", "update", "retire", "target", "verify", "demote"]).describe("Action to perform"),
164
218
  treeId: z.string().uuid().optional().describe("Reality tree UUID (required for list, get, create)"),
@@ -367,15 +421,19 @@ export function registerRealityTreeTools(server, getCreds) {
367
421
  }
368
422
  }));
369
423
  // -- telora_reality_tree_edge ----------------------------------------------
370
- server.tool("telora_reality_tree_edge", "Reality tree edges: causal and lineage connections between nodes. " +
371
- "Types: sufficient (single cause produces effect), and (multiple causes required together), " +
372
- "derived_from (lineage: rewritten node traces back to predecessor), " +
424
+ server.tool("telora_reality_tree_edge", "Reality tree edges: causal and lineage connections between nodes. Tree construction is N node + M edge calls -- this is the relationships pass that turns a list of facts into a tree. " +
425
+ "ACTIONS (required params in parens): " +
426
+ "list (treeId) -- all edges in the tree; " +
427
+ "create (treeId + fromNodeId + toNodeId + edgeType) -- wire one connection from cause to effect; " +
428
+ "update (edgeId + fields) -- edit an edge (e.g. toggle the feedback flag); " +
429
+ "delete (edgeId) -- remove an edge. " +
430
+ "VERIFY AS YOU GO: after each create, call telora_reality_tree_edge list (or telora_reality_tree dump for the whole graph) to confirm the edge landed before the next call -- this is how you see the relational structure forming. " +
431
+ "MODEL: edge types are sufficient (single cause produces effect), and (multiple causes required together), " +
432
+ "derived_from (lineage: rewritten node traces back to predecessor), and " +
373
433
  "targets (annotation: injection declares what it addresses). " +
374
434
  "Causal edges (sufficient/and) read bottom-up: from cause to effect. " +
375
- "Injection targeting is handled by the node tool's target action. " +
376
- "Edge visibility is derived from node visibility -- no view_scope on edges. " +
377
- "Actions: list (treeId), create (treeId + fromNodeId + toNodeId + edgeType), " +
378
- "update (edgeId + fields), delete (edgeId)." +
435
+ "Injection targeting is handled by the node tool's target action, not by creating a targets edge here. " +
436
+ "Edge visibility is derived from node visibility -- there is no view_scope on edges." +
379
437
  LIST_INDEX_NOTE, {
380
438
  action: z.enum(["list", "create", "update", "delete"]).describe("Action to perform"),
381
439
  treeId: z.string().uuid().optional().describe("Reality tree UUID (required for list, create)"),
@@ -437,12 +495,14 @@ export function registerRealityTreeTools(server, getCreds) {
437
495
  }
438
496
  }));
439
497
  // -- telora_reality_tree_link -----------------------------------------------
440
- server.tool("telora_reality_tree_link", "Reference links between reality tree nodes and execution entities. " +
441
- "Loose coupling: injection nodes link to focuses that implement them, " +
442
- "UDE nodes link to issues that track them, desired effects link to deliveries. " +
443
- "Actions: list (nodeId or entityType+entityId), create (nodeId + entityType + entityId), delete (linkId), " +
444
- "link_injection_to_delivery (Differential Focus Spec: sets injection_id on the delivery row -- materializes 1:1 binding -- " +
445
- "and mirrors a 'delivery' link for reverse lookup; pass unlink:true to clear)." +
498
+ server.tool("telora_reality_tree_link", "Reference links between reality tree nodes and execution entities (focuses, deliveries, issues). " +
499
+ "ACTIONS (required params in parens): " +
500
+ "list (nodeId OR entityType+entityId) -- links for a node or entity; " +
501
+ "create (nodeId + entityType + entityId) -- link a node to an execution entity; " +
502
+ "delete (linkId) -- remove a link; " +
503
+ "link_injection_to_delivery (injectionNodeId + deliveryId) -- sets injection_id on the delivery row (materializes the 1:1 Differential Focus Spec binding) and mirrors a 'delivery' link for reverse lookup; pass unlink:true to clear. " +
504
+ "VERIFY AS YOU GO: call list (by nodeId or entityType+entityId) to confirm a link landed before relying on it. " +
505
+ "MODEL: loose coupling -- injection nodes link to focuses that implement them, UDE nodes link to issues that track them, desired effects link to deliveries." +
446
506
  LIST_INDEX_NOTE, {
447
507
  action: z.enum(["list", "create", "delete", "link_injection_to_delivery"]).describe("Action to perform"),
448
508
  nodeId: z.string().uuid().optional().describe("Node UUID (required for create; optional filter for list)"),
@@ -505,13 +565,15 @@ export function registerRealityTreeTools(server, getCreds) {
505
565
  }
506
566
  }));
507
567
  // -- telora_reality_tree_traverse ------------------------------------------
508
- server.tool("telora_reality_tree_traverse", "Graph analysis operations on reality trees. " +
509
- "Actions: upstream (walk ancestors from nodeId -- surfaces root causes), " +
510
- "downstream (walk descendants from nodeId -- surfaces effects), " +
511
- "negative_branches (find injection->undesired_effect paths in treeId), " +
512
- "injection_plan (topological sort of injections for plan generation in treeId), " +
513
- "root_causes (all active nodes with no inbound causal edges in treeId), " +
514
- "lineage (trace derived_from history backward from nodeId -- shows how a node evolved).", {
568
+ server.tool("telora_reality_tree_traverse", "Graph analysis operations on reality trees (read-only). " +
569
+ "ACTIONS (required params in parens): " +
570
+ "upstream (nodeId) -- walk ancestors, surfaces root causes; " +
571
+ "downstream (nodeId) -- walk descendants, surfaces effects; " +
572
+ "negative_branches (treeId) -- find injection->undesired_effect paths; " +
573
+ "injection_plan (treeId) -- topological sort of injections for plan generation; " +
574
+ "root_causes (treeId) -- all active nodes with no inbound causal edges; " +
575
+ "lineage (nodeId) -- trace derived_from history backward, shows how a node evolved. " +
576
+ "MODEL: use these to inspect causal structure (where leverage is) without the canvas; root_causes + upstream find where one injection can dissolve many downstream effects.", {
515
577
  action: z.enum(["upstream", "downstream", "negative_branches", "injection_plan", "root_causes", "lineage"])
516
578
  .describe("Traversal operation"),
517
579
  treeId: z.string().uuid().optional()
@@ -1 +1 @@
1
- {"version":3,"file":"realityTreeHandlers.js","sourceRoot":"","sources":["../../src/handlers/realityTreeHandlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"realityTreeHandlers.js","sourceRoot":"","sources":["../../src/handlers/realityTreeHandlers.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -168,12 +168,12 @@ if (profile === 'human') {
168
168
  { name: "telora_loop_agent", summary: "Differential receiver: variance computation and loop evaluation",
169
169
  actions: ["brief", "evaluate"],
170
170
  keywords: ["loop", "agent", "variance", "evaluate", "brief", "differential", "receiver"] },
171
- { name: "telora_reality_tree", summary: "Focus-scoped reality tree (Goldratt's Thinking Processes) -- one unified graph per focus; CRT and FRT are views (FRT-as-overlay)",
172
- actions: ["list", "create", "get", "update", "dump"],
173
- keywords: ["reality", "tree", "CRT", "FRT", "Goldratt", "planning", "graph", "focus-scoped", "overlay"] },
174
- { name: "telora_reality_tree_node", summary: "Assertions: entity, undesired_effect, desired_effect, injection",
175
- actions: ["list", "create", "update", "retire", "verify"],
176
- keywords: ["node", "entity", "UDE", "injection", "desired effect", "assertion", "verify", "rewrite"] },
171
+ { name: "telora_reality_tree", summary: "Focus-scoped reality tree (Goldratt's Thinking Processes) -- one unified graph per focus; CRT and FRT are views (FRT-as-overlay). dump/get verify current state; create_from_definition commits a whole tree atomically",
172
+ actions: ["list", "create", "get", "update", "dump", "derive_frt", "create_from_definition"],
173
+ keywords: ["reality", "tree", "CRT", "FRT", "Goldratt", "planning", "graph", "focus-scoped", "overlay", "dump", "verify", "batch", "create_from_definition", "atomic"] },
174
+ { name: "telora_reality_tree_node", summary: "Assertions: entity, undesired_effect, desired_effect, injection. get (treeId + seq) verifies one node + its edges landed",
175
+ actions: ["list", "get", "create", "update", "retire", "target", "verify", "demote"],
176
+ keywords: ["node", "entity", "UDE", "injection", "desired effect", "assertion", "get", "dump", "verify", "target", "demote", "rewrite"] },
177
177
  { name: "telora_reality_tree_edge", summary: "Causal and lineage edges between nodes",
178
178
  actions: ["list", "create", "delete"],
179
179
  keywords: ["edge", "causal", "sufficient", "and", "derived_from", "lineage"] },
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,8EAA8E;AAC9E,wEAAwE;AACxE,8EAA8E;AAC9E,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACnC,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;IAC1B,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;IAClD,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,eAAe,EAAoB,MAAM,aAAa,CAAC;AAChE,OAAO,EACL,oBAAoB,EACpB,uBAAuB,EACvB,qBAAqB,EACrB,kBAAkB,EAClB,uBAAuB,EACvB,kBAAkB,EAClB,kBAAkB,EAClB,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,EACrB,2BAA2B,EAC3B,iBAAiB,EACjB,8BAA8B,EAC9B,2BAA2B,EAC3B,mBAAmB,EACnB,iBAAiB,EACjB,2BAA2B,EAC3B,8BAA8B,EAC9B,iBAAiB,EACjB,oBAAoB,EACpB,wBAAwB,EACxB,sCAAsC,EACtC,gBAAgB,EAChB,qBAAqB,EACrB,2BAA2B,EAC3B,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAA2C,MAAM,+BAA+B,CAAC;AAC9G,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,0BAA0B,EAAE,MAAM,uCAAuC,CAAC;AAEnF,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;IAC3B,IAAI,EAAE,iBAAiB;IACvB,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,sDAAsD;AACtD,SAAS,QAAQ;IACf,OAAO,eAAe,EAAE,CAAC;AAC3B,CAAC;AAED,8EAA8E;AAC9E,kCAAkC;AAClC,8EAA8E;AAE9E,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,OAAO,CAAgB,CAAC;AAE3E,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;IACxB,4EAA4E;IAC5E,sEAAsE;IACtE,4EAA4E;IAE5E,2DAA2D;IAC3D,gFAAgF;IAChF,oBAAoB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAChD,qBAAqB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACjD,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9C,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC1C,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9C,2BAA2B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC9C,2BAA2B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC9C,sBAAsB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAClD,wBAAwB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAE3C,2DAA2D;IAC3D,MAAM,OAAO,GAAmB;QAC9B,KAAK,EAAE;YACL,WAAW,EAAE,uEAAuE;YACpF,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC;YAClE,SAAS,EAAE,CAAC;oBACV,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,uDAAuD;oBACtF,OAAO,EAAE,CAAC,WAAW,EAAE,UAAU,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,mBAAmB,CAAC;oBAC5F,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC;iBACjE,CAAC;YACF,QAAQ,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC;SACrD;QACD,IAAI,EAAE;YACJ,WAAW,EAAE,+FAA+F;YAC5G,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC;YAClG,SAAS,EAAE;gBACT,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,+CAA+C;oBACpF,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE;gBAC/D,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,yEAAyE;oBAChH,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE;gBACtE,EAAE,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,+DAA+D;oBACzG,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE;gBAC5D,EAAE,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,oEAAoE;oBAC9G,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE;gBACxE,EAAE,IAAI,EAAE,wBAAwB,EAAE,OAAO,EAAE,mEAAmE;oBAC5G,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE;gBAClE,EAAE,IAAI,EAAE,wBAAwB,EAAE,OAAO,EAAE,6EAA6E;oBACtH,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE;gBACvE,EAAE,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,6CAA6C;oBACxF,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,EAAE;gBACnE,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,oEAAoE;oBACxG,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,EAAE;aAC7E;YACD,QAAQ,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC;SAC7D;QACD,SAAS,EAAE;YACT,WAAW,EAAE,0FAA0F;YACvG,QAAQ,EAAE,CAAC,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC;YAC9F,SAAS,EAAE,CAAC;oBACV,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,gEAAgE;oBAClG,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBACtD,QAAQ,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,CAAC;iBAC5F,CAAC;YACF,QAAQ,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC;SACxD;QACD,OAAO,EAAE;YACP,WAAW,EAAE,qHAAqH;YAClI,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC;YACrG,SAAS,EAAE,CAAC;oBACV,IAAI,EAAE,uBAAuB,EAAE,OAAO,EAAE,yCAAyC;oBACjF,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC;oBACjD,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC;iBAC/E,EAAE;oBACD,IAAI,EAAE,wBAAwB,EAAE,OAAO,EAAE,2DAA2D;oBACpG,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBAC/C,QAAQ,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,CAAC;iBACvE,CAAC;YACF,UAAU,EAAE,EAAE,YAAY,EAAE,yDAAyD,EAAE,IAAI,EAAE,CAAC,EAAE;YAChG,QAAQ,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC;SACtD;QACD,SAAS,EAAE;YACT,WAAW,EAAE,0EAA0E;YACvF,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,CAAC;YACnF,SAAS,EAAE,CAAC;oBACV,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,4DAA4D;oBAC9F,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,CAAC;oBACjD,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,SAAS,CAAC;iBACjF,CAAC;YACF,QAAQ,EAAE,GAAG,EAAE,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC;SACxD;QACD,QAAQ,EAAE;YACR,WAAW,EAAE,iFAAiF;YAC9F,QAAQ,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,QAAQ,CAAC;YACvF,SAAS,EAAE,CAAC;oBACV,IAAI,EAAE,2BAA2B,EAAE,OAAO,EAAE,sDAAsD;oBAClG,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,iBAAiB,CAAC;oBAC/D,QAAQ,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,QAAQ,CAAC;iBACxF,CAAC;YACF,QAAQ,EAAE,GAAG,EAAE,CAAC,8BAA8B,CAAC,MAAM,EAAE,QAAQ,CAAC;SACjE;QACD,KAAK,EAAE;YACL,WAAW,EAAE,kIAAkI;YAC/I,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,CAAC;YAC9G,SAAS,EAAE;gBACT,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,2EAA2E;oBACzG,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,CAAC;oBAChH,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE;gBAC5F,EAAE,IAAI,EAAE,wBAAwB,EAAE,OAAO,EAAE,oFAAoF;oBAC7H,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBAC/C,QAAQ,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC,EAAE;gBACrF,EAAE,IAAI,EAAE,2BAA2B,EAAE,OAAO,EAAE,0EAA0E;oBACtH,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBAC/C,QAAQ,EAAE,CAAC,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE;aACpF;YACD,UAAU,EAAE,EAAE,YAAY,EAAE,2DAA2D,EAAE,IAAI,EAAE,CAAC,EAAE;YAClG,QAAQ,EAAE,GAAG,EAAE;gBACb,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACpC,2BAA2B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBAC9C,8BAA8B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YACnD,CAAC;SACF;QACD,KAAK,EAAE;YACL,WAAW,EAAE,mOAAmO;YAChP,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,SAAS,CAAC;YAChR,SAAS,EAAE;gBACT,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,8DAA8D;oBACrG,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC;oBAC1D,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE;gBACjE,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,oDAAoD;oBAC3F,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC;oBAC1D,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE;gBAC7E,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,2CAA2C;oBAChF,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC;oBAC1B,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE;gBACxD,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,iDAAiD;oBACvF,OAAO,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC;oBACrC,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE;gBAClE,EAAE,IAAI,EAAE,wBAAwB,EAAE,OAAO,EAAE,wDAAwD;oBACjG,OAAO,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC;oBACzC,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,CAAC,EAAE;gBAClG,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,iEAAiE;oBACrG,OAAO,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC;oBAC9B,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,UAAU,CAAC,EAAE;gBAC5F,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,kIAAkI;oBACxK,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;oBACpD,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE;gBAC3G,EAAE,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,iEAAiE;oBAC5G,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBACzD,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE;gBACxG,EAAE,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,wCAAwC;oBACnF,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBACrC,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE;gBAChF,EAAE,IAAI,EAAE,8BAA8B,EAAE,OAAO,EAAE,kFAAkF;oBACjI,OAAO,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAE,SAAS,CAAC;oBACpG,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE;gBACnH,EAAE,IAAI,EAAE,uCAAuC,EAAE,OAAO,EAAE,8EAA8E;oBACtI,OAAO,EAAE,EAAE;oBACX,QAAQ,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,EAAE;gBACnH,EAAE,IAAI,EAAE,sCAAsC,EAAE,OAAO,EAAE,0GAA0G;oBACjK,OAAO,EAAE,EAAE;oBACX,QAAQ,EAAE,CAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE;aACvH;YACD,cAAc,EAAE,0BAA0B;YAC1C,UAAU,EAAE,EAAE,YAAY,EAAE,2DAA2D,EAAE,IAAI,EAAE,CAAC,EAAE;YAClG,QAAQ,EAAE,GAAG,EAAE;gBACb,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACpC,oBAAoB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACvC,wBAAwB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;gBAC3C,sCAAsC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC3D,CAAC;SACF;QACD,GAAG,EAAE;YACH,WAAW,EAAE,ghBAAghB;YAC7hB,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,qBAAqB,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,CAAC;YACvS,SAAS,EAAE;gBACT,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,4GAA4G;oBACzI,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBAC5C,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE;gBACxG,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,yKAAyK;oBAC3M,OAAO,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,sBAAsB,EAAE,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,CAAC;oBAC7L,QAAQ,EAAE,CAAC,mBAAmB,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,qBAAqB,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;aAClK;YACD,cAAc,EAAE,mBAAmB;YACnC,UAAU,EAAE,EAAE,YAAY,EAAE,4CAA4C,EAAE,IAAI,EAAE,CAAC,EAAE;YACnF,QAAQ,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC;SACnD;QACD,SAAS,EAAE;YACT,WAAW,EAAE,mFAAmF;YAChG,QAAQ,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC;YAClF,SAAS,EAAE;gBACT,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,qDAAqD;oBACvF,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC;oBAC5C,QAAQ,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,cAAc,EAAE,gBAAgB,EAAE,QAAQ,CAAC,EAAE;gBACnF,EAAE,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,oDAAoD;oBAC9F,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC;oBACvC,QAAQ,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE;aACpE;YACD,QAAQ,EAAE,GAAG,EAAE;gBACb,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC1C,CAAC;SACF;QACD,YAAY,EAAE;YACZ,WAAW,EAAE,2MAA2M;YACxN,QAAQ,EAAE,CAAC,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,CAAC;YACvJ,SAAS,EAAE,CAAC;oBACV,IAAI,EAAE,oBAAoB;oBAC1B,OAAO,EAAE,uHAAuH;oBAChI,OAAO,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBACtD,QAAQ,EAAE,CAAC,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,CAAC;iBACrH,CAAC;YACF,QAAQ,EAAE,GAAG,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC;SACnE;QACD,KAAK,EAAE;YACL,WAAW,EAAE,gHAAgH;YAC7H,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,cAAc,CAAC;YACtH,SAAS,EAAE,CAAC;oBACV,IAAI,EAAE,wBAAwB;oBAC9B,OAAO,EAAE,yHAAyH;oBAClI,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC;oBAC7E,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,CAAC;iBAC3H,CAAC;YACF,QAAQ,EAAE,GAAG,EAAE,CAAC,2BAA2B,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC;SACvE;KACF,CAAC;IAEF,MAAM,OAAO,GAAkC;QAC7C,gBAAgB,EAAE;YAChB,WAAW,EAAE,4DAA4D;YACzE,QAAQ,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,CAAC;YACzE,SAAS,EAAE,CAAC;oBACV,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,qDAAqD;oBAC/F,OAAO,EAAE,EAAE;oBACX,QAAQ,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,CAAC;iBACrF,CAAC;SACH;QACD,OAAO,EAAE;YACP,WAAW,EAAE,4DAA4D;YACzE,QAAQ,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC;YACxD,SAAS,EAAE,CAAC;oBACV,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,+DAA+D;oBAChG,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAC;oBACxD,QAAQ,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC;iBACnE,CAAC;SACH;QACD,KAAK,EAAE;YACL,WAAW,EAAE,iFAAiF;YAC9F,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC;YAClE,SAAS,EAAE,CAAC;oBACV,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,6DAA6D;oBACpG,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC;oBAChD,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,CAAC;iBAC5E,EAAE;oBACD,IAAI,EAAE,4BAA4B,EAAE,OAAO,EAAE,0FAA0F;oBACvI,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC;oBAChC,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC;iBACpE,CAAC;SACH;QACD,QAAQ,EAAE;YACR,WAAW,EAAE,kFAAkF;YAC/F,QAAQ,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,CAAC;YAC3D,SAAS,EAAE,CAAC;oBACV,IAAI,EAAE,yBAAyB,EAAE,OAAO,EAAE,+DAA+D;oBACzG,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,SAAS,CAAC;oBAC5E,QAAQ,EAAE,CAAC,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,CAAC;iBACxE,CAAC;SACH;QACD,KAAK,EAAE;YACL,WAAW,EAAE,2FAA2F;YACxG,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,UAAU,CAAC;YAC/D,SAAS,EAAE,CAAC;oBACV,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,uDAAuD;oBAC9F,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBAC/C,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,CAAC;iBAC1E,CAAC;SACH;KACF,CAAC;IAEF,MAAM,YAAY,GAAkC;QAClD,cAAc,EAAE;YACd,WAAW,EAAE,uFAAuF;YACpG,QAAQ,EAAE,CAAC,gBAAgB,EAAE,aAAa,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,CAAC;YACrG,SAAS,EAAE;gBACT,EAAE,IAAI,EAAE,0BAA0B,EAAE,OAAO,EAAE,qDAAqD;oBAChG,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBAC/C,QAAQ,EAAE,CAAC,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE;gBACvE,EAAE,IAAI,EAAE,oBAAoB,EAAE,OAAO,EAAE,wDAAwD;oBAC7F,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBAC/C,QAAQ,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE;gBAC3E,EAAE,IAAI,EAAE,2BAA2B,EAAE,OAAO,EAAE,gEAAgE;oBAC5G,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBACrC,QAAQ,EAAE,CAAC,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE;gBACpF,EAAE,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,mCAAmC;oBACzE,OAAO,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC;oBAC5C,QAAQ,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE;aAClE;SACF;KACF,CAAC;IAEF,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,YAAY,EAAE,CAAC,CAAC;AAEzE,CAAC;KAAM,CAAC;IACN,4EAA4E;IAC5E,0EAA0E;IAC1E,4EAA4E;IAE5E,uFAAuF;IACvF,oBAAoB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAChD,uBAAuB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEnD,sEAAsE;IACtE,oBAAoB;IACpB,iBAAiB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC7C,2BAA2B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAE9C,wBAAwB;IACxB,qBAAqB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACjD,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9C,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC1C,kBAAkB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9C,kBAAkB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAErC,iBAAiB;IACjB,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAExC,2BAA2B;IAC3B,8BAA8B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjD,2BAA2B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC9C,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAEtC,sCAAsC;IACtC,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACxC,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACpC,2BAA2B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC9C,8BAA8B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,kDAAkD;IAClD,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACpC,oBAAoB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACvC,wBAAwB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC3C,sCAAsC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACzD,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACnC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACxC,2BAA2B,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEvD,iDAAiD;IACjD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,sBAAsB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAED,wEAAwE;IACxE,wBAAwB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AAC7C,CAAC;AAED,8EAA8E;AAC9E,QAAQ;AACR,8EAA8E;AAE9E,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CAAC,2DAA2D,OAAO,GAAG,CAAC,CAAC;AACvF,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;IAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/shared.d.ts CHANGED
@@ -5,6 +5,38 @@ export interface TrackerConfig {
5
5
  }
6
6
  /** Credentials getter -- re-reads on each call so registration changes are picked up */
7
7
  export type GetCreds = () => TrackerConfig;
8
+ export declare const MCP_ERROR_CODES: {
9
+ /** A supplied id (usually a UUID) was malformed or unparseable. */
10
+ readonly ERR_INVALID_ID: "ERR_INVALID_ID";
11
+ /** The request was well-formed but conflicts with current state (e.g. invalid transition, duplicate). */
12
+ readonly ERR_STATE_CONFLICT: "ERR_STATE_CONFLICT";
13
+ /** The referenced entity does not exist (or is not visible to this tracker's org). */
14
+ readonly ERR_NOT_FOUND: "ERR_NOT_FOUND";
15
+ /** The call timed out or was aborted -- transient; safe to retry. */
16
+ readonly ERR_TIMEOUT: "ERR_TIMEOUT";
17
+ /** The request failed input validation (missing/invalid fields). Fix the call. */
18
+ readonly ERR_VALIDATION: "ERR_VALIDATION";
19
+ /** The backend errored (5xx / network failure). Transient or server-side. */
20
+ readonly ERR_BACKEND: "ERR_BACKEND";
21
+ /** Unclassified failure. */
22
+ readonly ERR_UNKNOWN: "ERR_UNKNOWN";
23
+ };
24
+ export type McpErrorCode = (typeof MCP_ERROR_CODES)[keyof typeof MCP_ERROR_CODES];
25
+ /**
26
+ * Error thrown by `callProductApi` (and re-thrown by handlers) that carries a
27
+ * structured `code` for deterministic branching. `errorResult` reads the code
28
+ * off this error so the code surfaces automatically through `wrapHandler`.
29
+ */
30
+ export declare class McpApiError extends Error {
31
+ readonly code: McpErrorCode;
32
+ readonly status?: number;
33
+ constructor(message: string, code: McpErrorCode, status?: number);
34
+ }
35
+ /**
36
+ * Map a backend product-api failure (HTTP status + human message shape) to a
37
+ * structured `McpErrorCode`. Pure -- safe to unit test.
38
+ */
39
+ export declare function classifyApiError(status: number, message: string): McpErrorCode;
8
40
  export declare function loadCredentials(): TrackerConfig;
9
41
  export declare function callProductApi(creds: TrackerConfig, body: Record<string, unknown>): Promise<unknown>;
10
42
  /**
@@ -34,14 +66,26 @@ export declare function successResult(data: unknown): {
34
66
  text: string;
35
67
  }[];
36
68
  };
37
- export declare function errorResult(err: unknown): {
69
+ /**
70
+ * Build an MCP error result. The human message is ALWAYS the first content
71
+ * block (content[0].text) so existing consumers are unchanged. When a
72
+ * structured code is available -- passed explicitly, or carried on a thrown
73
+ * `McpApiError` (or any error with a recognized `.code`) -- a second content
74
+ * block `code: <CODE>` is appended so an agent can branch deterministically.
75
+ */
76
+ export declare function errorResult(err: unknown, code?: McpErrorCode): {
38
77
  content: {
39
78
  type: "text";
40
79
  text: string;
41
80
  }[];
42
81
  isError: boolean;
43
82
  };
44
- export declare function validationError(message: string): {
83
+ /**
84
+ * Build an MCP validation error. Defaults to ERR_VALIDATION (the caller sent a
85
+ * malformed/incomplete request); pass a more specific code (e.g.
86
+ * ERR_INVALID_ID) when known. The human message stays content[0].
87
+ */
88
+ export declare function validationError(message: string, code?: McpErrorCode): {
45
89
  content: {
46
90
  type: "text";
47
91
  text: string;
package/dist/shared.js CHANGED
@@ -4,6 +4,88 @@
4
4
  import { existsSync, readFileSync } from "node:fs";
5
5
  import { join } from "node:path";
6
6
  import { homedir } from "node:os";
7
+ // ---------------------------------------------------------------------------
8
+ // Structured error codes
9
+ //
10
+ // Error results carry a machine-branchable `code` ALONGSIDE the human message
11
+ // so an agent can branch deterministically -- retry (ERR_TIMEOUT/ERR_BACKEND),
12
+ // backtrack (ERR_STATE_CONFLICT/ERR_NOT_FOUND), or ask/fix the call
13
+ // (ERR_VALIDATION/ERR_INVALID_ID) -- instead of pattern-matching a raw string.
14
+ //
15
+ // NOTE on "EMPTY CONTENT": the MCP layer ALWAYS emits at least one text
16
+ // content block -- successResult, errorResult, and validationError every one
17
+ // return a non-empty `content` array. Telora never returns truly empty
18
+ // content. So if a model observes an "EMPTY CONTENT" / "no content" condition,
19
+ // that originates CLIENT/RUNNER-side (a malformed tool call the runner
20
+ // rejected before it reached this server, a transport hiccup, or a schema
21
+ // validation failure in the MCP SDK), NOT from Telora. A model must not
22
+ // misclassify its own malformed call as a Telora backend error.
23
+ // ---------------------------------------------------------------------------
24
+ export const MCP_ERROR_CODES = {
25
+ /** A supplied id (usually a UUID) was malformed or unparseable. */
26
+ ERR_INVALID_ID: "ERR_INVALID_ID",
27
+ /** The request was well-formed but conflicts with current state (e.g. invalid transition, duplicate). */
28
+ ERR_STATE_CONFLICT: "ERR_STATE_CONFLICT",
29
+ /** The referenced entity does not exist (or is not visible to this tracker's org). */
30
+ ERR_NOT_FOUND: "ERR_NOT_FOUND",
31
+ /** The call timed out or was aborted -- transient; safe to retry. */
32
+ ERR_TIMEOUT: "ERR_TIMEOUT",
33
+ /** The request failed input validation (missing/invalid fields). Fix the call. */
34
+ ERR_VALIDATION: "ERR_VALIDATION",
35
+ /** The backend errored (5xx / network failure). Transient or server-side. */
36
+ ERR_BACKEND: "ERR_BACKEND",
37
+ /** Unclassified failure. */
38
+ ERR_UNKNOWN: "ERR_UNKNOWN",
39
+ };
40
+ /**
41
+ * Error thrown by `callProductApi` (and re-thrown by handlers) that carries a
42
+ * structured `code` for deterministic branching. `errorResult` reads the code
43
+ * off this error so the code surfaces automatically through `wrapHandler`.
44
+ */
45
+ export class McpApiError extends Error {
46
+ code;
47
+ status;
48
+ constructor(message, code, status) {
49
+ super(message);
50
+ this.name = "McpApiError";
51
+ this.code = code;
52
+ this.status = status;
53
+ }
54
+ }
55
+ /**
56
+ * Map a backend product-api failure (HTTP status + human message shape) to a
57
+ * structured `McpErrorCode`. Pure -- safe to unit test.
58
+ */
59
+ export function classifyApiError(status, message) {
60
+ const m = (message || "").toLowerCase();
61
+ if (status === 404 || m.includes("not found"))
62
+ return MCP_ERROR_CODES.ERR_NOT_FOUND;
63
+ if (status === 408 || m.includes("timed out") || m.includes("timeout"))
64
+ return MCP_ERROR_CODES.ERR_TIMEOUT;
65
+ if (status === 409 || m.includes("conflict") || m.includes("already exists") || m.includes("cannot transition")) {
66
+ return MCP_ERROR_CODES.ERR_STATE_CONFLICT;
67
+ }
68
+ if (status === 400 || status === 422) {
69
+ if (m.includes("uuid") || m.includes("invalid id") || m.includes("must be a valid")) {
70
+ return MCP_ERROR_CODES.ERR_INVALID_ID;
71
+ }
72
+ return MCP_ERROR_CODES.ERR_VALIDATION;
73
+ }
74
+ if (status >= 500)
75
+ return MCP_ERROR_CODES.ERR_BACKEND;
76
+ return MCP_ERROR_CODES.ERR_UNKNOWN;
77
+ }
78
+ /** Extract a structured code off an unknown thrown value, if it carries one. */
79
+ function codeFromError(err) {
80
+ if (err instanceof McpApiError)
81
+ return err.code;
82
+ if (err && typeof err === "object" && "code" in err) {
83
+ const c = err.code;
84
+ if (typeof c === "string" && c in MCP_ERROR_CODES)
85
+ return c;
86
+ }
87
+ return undefined;
88
+ }
7
89
  function resolveDaemonStateDir() {
8
90
  const env = process.env.TELORA_STATE_DIR;
9
91
  if (env)
@@ -64,17 +146,30 @@ export async function callProductApi(creds, body) {
64
146
  }
65
147
  }
66
148
  const url = `${creds.teloraUrl}/functions/v1/product-api`;
67
- const response = await fetch(url, {
68
- method: "POST",
69
- headers: {
70
- Authorization: `Bearer ${creds.accessToken}`,
71
- "Content-Type": "application/json",
72
- },
73
- body: JSON.stringify(body),
74
- });
149
+ let response;
150
+ try {
151
+ response = await fetch(url, {
152
+ method: "POST",
153
+ headers: {
154
+ Authorization: `Bearer ${creds.accessToken}`,
155
+ "Content-Type": "application/json",
156
+ },
157
+ body: JSON.stringify(body),
158
+ });
159
+ }
160
+ catch (err) {
161
+ // Network-level failure (DNS, connection refused, abort/timeout). Classify
162
+ // aborts/timeouts as retryable timeouts, everything else as a backend reach
163
+ // failure. The human message is preserved verbatim.
164
+ const msg = err instanceof Error ? err.message : String(err);
165
+ const isTimeout = err instanceof Error && (err.name === "AbortError" || /timed?\s*out|timeout/i.test(msg));
166
+ throw new McpApiError(msg || "Network error calling product-api", isTimeout ? MCP_ERROR_CODES.ERR_TIMEOUT : MCP_ERROR_CODES.ERR_BACKEND);
167
+ }
75
168
  const data = await response.json();
76
169
  if (!response.ok || !data.success) {
77
- throw new Error(data.error || `API error (${response.status})`);
170
+ // Keep the human message verbatim; attach a machine-branchable code.
171
+ const message = data.error || `API error (${response.status})`;
172
+ throw new McpApiError(message, classifyApiError(response.status, message), response.status);
78
173
  }
79
174
  return data;
80
175
  }
@@ -130,15 +225,32 @@ export function successResult(data) {
130
225
  ],
131
226
  };
132
227
  }
133
- export function errorResult(err) {
134
- return {
135
- content: [{ type: "text", text: err.message }],
136
- isError: true,
137
- };
228
+ /**
229
+ * Build an MCP error result. The human message is ALWAYS the first content
230
+ * block (content[0].text) so existing consumers are unchanged. When a
231
+ * structured code is available -- passed explicitly, or carried on a thrown
232
+ * `McpApiError` (or any error with a recognized `.code`) -- a second content
233
+ * block `code: <CODE>` is appended so an agent can branch deterministically.
234
+ */
235
+ export function errorResult(err, code) {
236
+ const message = err instanceof Error ? err.message : String(err);
237
+ const resolvedCode = code ?? codeFromError(err);
238
+ const content = [{ type: "text", text: message }];
239
+ if (resolvedCode)
240
+ content.push({ type: "text", text: `code: ${resolvedCode}` });
241
+ return { content, isError: true };
138
242
  }
139
- export function validationError(message) {
243
+ /**
244
+ * Build an MCP validation error. Defaults to ERR_VALIDATION (the caller sent a
245
+ * malformed/incomplete request); pass a more specific code (e.g.
246
+ * ERR_INVALID_ID) when known. The human message stays content[0].
247
+ */
248
+ export function validationError(message, code = MCP_ERROR_CODES.ERR_VALIDATION) {
140
249
  return {
141
- content: [{ type: "text", text: message }],
250
+ content: [
251
+ { type: "text", text: message },
252
+ { type: "text", text: `code: ${code}` },
253
+ ],
142
254
  isError: true,
143
255
  };
144
256
  }
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../src/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../src/shared.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAE9E,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAgBlC,8EAA8E;AAC9E,yBAAyB;AACzB,EAAE;AACF,8EAA8E;AAC9E,+EAA+E;AAC/E,oEAAoE;AACpE,+EAA+E;AAC/E,EAAE;AACF,wEAAwE;AACxE,6EAA6E;AAC7E,uEAAuE;AACvE,+EAA+E;AAC/E,uEAAuE;AACvE,0EAA0E;AAC1E,wEAAwE;AACxE,gEAAgE;AAChE,8EAA8E;AAE9E,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,mEAAmE;IACnE,cAAc,EAAE,gBAAgB;IAChC,yGAAyG;IACzG,kBAAkB,EAAE,oBAAoB;IACxC,sFAAsF;IACtF,aAAa,EAAE,eAAe;IAC9B,qEAAqE;IACrE,WAAW,EAAE,aAAa;IAC1B,kFAAkF;IAClF,cAAc,EAAE,gBAAgB;IAChC,6EAA6E;IAC7E,WAAW,EAAE,aAAa;IAC1B,4BAA4B;IAC5B,WAAW,EAAE,aAAa;CAClB,CAAC;AAIX;;;;GAIG;AACH,MAAM,OAAO,WAAY,SAAQ,KAAK;IAC3B,IAAI,CAAe;IACnB,MAAM,CAAU;IACzB,YAAY,OAAe,EAAE,IAAkB,EAAE,MAAe;QAC9D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAc,EAAE,OAAe;IAC9D,MAAM,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACxC,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,eAAe,CAAC,aAAa,CAAC;IACpF,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,eAAe,CAAC,WAAW,CAAC;IAC3G,IAAI,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAChH,OAAO,eAAe,CAAC,kBAAkB,CAAC;IAC5C,CAAC;IACD,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACrC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACpF,OAAO,eAAe,CAAC,cAAc,CAAC;QACxC,CAAC;QACD,OAAO,eAAe,CAAC,cAAc,CAAC;IACxC,CAAC;IACD,IAAI,MAAM,IAAI,GAAG;QAAE,OAAO,eAAe,CAAC,WAAW,CAAC;IACtD,OAAO,eAAe,CAAC,WAAW,CAAC;AACrC,CAAC;AAED,gFAAgF;AAChF,SAAS,aAAa,CAAC,GAAY;IACjC,IAAI,GAAG,YAAY,WAAW;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC;IAChD,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;QACpD,MAAM,CAAC,GAAI,GAA0B,CAAC,IAAI,CAAC;QAC3C,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,IAAI,eAAe;YAAE,OAAO,CAAiB,CAAC;IAC9E,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAmBD,SAAS,qBAAqB;IAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IACzC,IAAI,GAAG;QAAE,OAAO,GAAG,CAAC;IACpB,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,kBAAkB;IACzB,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,EAAE,EAAE,aAAa,CAAC,CAAC;IAC1D,IAAI,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAsB,CAAC;QAC5E,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,IAAI,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;IACnF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC;QACtE,OAAO,CAAC,KAAK,CAAC,8FAA8F,CAAC,CAAC;IAChH,CAAC;IACD,IAAI,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;IAEvC,IAAI,CAAC,WAAW,IAAI,CAAC,SAAS,EAAE,CAAC;QAC/B,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAC;QAC1C,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,WAAW,IAAI,YAAY,CAAC,SAAS;gBAAE,WAAW,GAAG,YAAY,CAAC,SAAS,CAAC;YACjF,IAAI,CAAC,SAAS,IAAI,YAAY,CAAC,SAAS;gBAAE,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC;QAC/E,CAAC;IACH,CAAC;IAED,IAAI,WAAW,IAAI,SAAS,EAAE,CAAC;QAC7B,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;IACpC,CAAC;IACD,MAAM,IAAI,KAAK,CACb,0FAA0F;QAC1F,mDAAmD,CACpD,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E,IAAI,UAAU,GAAG,KAAK,CAAC;AAEvB,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,KAAoB,EACpB,IAA6B;IAE7B,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACzD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC;YAClD,MAAM,OAAO,GAAG,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,KAAK,CAAC;YACxF,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,UAAU,GAAG,IAAI,CAAC;gBAClB,OAAO,CAAC,IAAI,CACV,kDAAkD;oBAClD,yFAAyF;oBACzF,uCAAuC,CACxC,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,0CAA0C;QAC5C,CAAC;IACH,CAAC;IAED,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,SAAS,2BAA2B,CAAC;IAE1D,IAAI,QAAkB,CAAC;IACvB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC1B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,KAAK,CAAC,WAAW,EAAE;gBAC5C,cAAc,EAAE,kBAAkB;aACnC;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,2EAA2E;QAC3E,4EAA4E;QAC5E,oDAAoD;QACpD,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,SAAS,GAAG,GAAG,YAAY,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,YAAY,IAAI,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3G,MAAM,IAAI,WAAW,CACnB,GAAG,IAAI,mCAAmC,EAC1C,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,WAAW,CACtE,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAEnC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAClC,qEAAqE;QACrE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,IAAI,cAAc,QAAQ,CAAC,MAAM,GAAG,CAAC;QAC/D,MAAM,IAAI,WAAW,CAAC,OAAO,EAAE,gBAAgB,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC9F,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,8EAA8E;AAC9E,qCAAqC;AACrC,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAC1B,+FAA+F,CAAC;AAGlG;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,eAAe,CAAC,IAAa;IAC3C,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACrE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,GAAG,GAAG,IAA+B,CAAC;IAC5C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;IACxB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,OAAO;QACL,GAAG,GAAG;QACN,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YAC3B,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtE,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,GAAI,IAAgC,EAAE,CAAC;YAChE,CAAC;YACD,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QACvC,CAAC,CAAC;KACH,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAa;IACzC,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IACtC,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAe;gBACrB,IAAI,EAAE,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;aAC/E;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,GAAY,EAAE,IAAmB;IAC3D,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjE,MAAM,YAAY,GAAG,IAAI,IAAI,aAAa,CAAC,GAAG,CAAC,CAAC;IAChD,MAAM,OAAO,GAAqC,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IAC7F,IAAI,YAAY;QAAE,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,SAAS,YAAY,EAAE,EAAE,CAAC,CAAC;IACzF,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACpC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,OAAe,EAAE,OAAqB,eAAe,CAAC,cAAc;IAClG,OAAO;QACL,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,OAAO,EAAE;YACxC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,SAAS,IAAI,EAAE,EAAE;SACjD;QACD,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,sEAAsE;AACtE,8EAA8E;AAE9E;;;GAGG;AACH,MAAM,UAAU,aAAa,CAC3B,MAA+B,EAC/B,eAAyB,EACzB,UAAoB;IAEpB,IAAI,UAAU;QAAE,OAAO,MAAM,CAAC;IAC9B,MAAM,OAAO,GAA4B,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;IAC3D,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QAClC,IAAI,GAAG,IAAI,MAAM;YAAE,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAQD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,WAAW,CACzB,MAA+B,EAC/B,UAAqB,EACrB,QAAmB;IAEnB,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,MAAM,IAAI,GAAG,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAE/C,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,mDAAmD;IACnD,IAAI,QAAQ,EAAE,CAAC;QACb,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;YAC3B,IAAI,CAAC,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,GAAG,IAAI,MAAM,EAAE,CAAC;gBACtC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,WAAW,CACzB,OAA2C;IAE3C,OAAO,KAAK,EAAE,MAAS,EAAE,EAAE;QACzB,IAAI,CAAC;YACH,OAAO,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
@@ -11,4 +11,12 @@ export interface NextSteps {
11
11
  instruction: string;
12
12
  next_tool: string | null;
13
13
  next_action: string | null;
14
+ tool_requirement?: NextStepsToolRequirement;
15
+ }
16
+ export interface NextStepsToolRequirement {
17
+ domain: string;
18
+ tool: string;
19
+ action: string | null;
20
+ load_command: string;
21
+ callable_hint: string;
14
22
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telora/mcp-products",
3
- "version": "0.22.73",
3
+ "version": "0.22.75",
4
4
  "description": "MCP server exposing Telora product operations to Claude Code",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",