@ifc-lite/mcp 0.18.0 → 0.22.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/README.md +5 -0
- package/dist/backend-query.d.ts +2 -1
- package/dist/backend-query.d.ts.map +1 -1
- package/dist/backend-query.js +14 -35
- package/dist/backend-query.js.map +1 -1
- package/dist/context.d.ts +8 -0
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js.map +1 -1
- package/dist/effective-entity-membership.d.ts +8 -0
- package/dist/effective-entity-membership.d.ts.map +1 -0
- package/dist/effective-entity-membership.js +23 -0
- package/dist/effective-entity-membership.js.map +1 -0
- package/dist/headless-backend-store-stubs.d.ts +12 -0
- package/dist/headless-backend-store-stubs.d.ts.map +1 -0
- package/dist/headless-backend-store-stubs.js +9 -0
- package/dist/headless-backend-store-stubs.js.map +1 -0
- package/dist/headless-backend-structural-store.d.ts +21 -0
- package/dist/headless-backend-structural-store.d.ts.map +1 -0
- package/dist/headless-backend-structural-store.js +20 -0
- package/dist/headless-backend-structural-store.js.map +1 -0
- package/dist/headless-backend.d.ts +2 -1
- package/dist/headless-backend.d.ts.map +1 -1
- package/dist/headless-backend.js +7 -9
- package/dist/headless-backend.js.map +1 -1
- package/dist/index.d.ts +9 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +12 -1
- package/dist/index.js.map +1 -1
- package/dist/loader.d.ts +8 -0
- package/dist/loader.d.ts.map +1 -1
- package/dist/loader.js +24 -8
- package/dist/loader.js.map +1 -1
- package/dist/overlay.d.ts +13 -6
- package/dist/overlay.d.ts.map +1 -1
- package/dist/overlay.js +42 -24
- package/dist/overlay.js.map +1 -1
- package/dist/protocol/types.d.ts +0 -1
- package/dist/protocol/types.d.ts.map +1 -1
- package/dist/schema-tables.d.ts.map +1 -1
- package/dist/schema-tables.js +4 -2
- package/dist/schema-tables.js.map +1 -1
- package/dist/server.js +2 -2
- package/dist/server.js.map +1 -1
- package/dist/spatial-tree.d.ts.map +1 -1
- package/dist/spatial-tree.js +3 -9
- package/dist/spatial-tree.js.map +1 -1
- package/dist/tools/check-rules.d.ts +3 -0
- package/dist/tools/check-rules.d.ts.map +1 -0
- package/dist/tools/check-rules.js +75 -0
- package/dist/tools/check-rules.js.map +1 -0
- package/dist/tools/diff-authored-keys.d.ts +4 -2
- package/dist/tools/diff-authored-keys.d.ts.map +1 -1
- package/dist/tools/diff-authored-keys.js +39 -17
- package/dist/tools/diff-authored-keys.js.map +1 -1
- package/dist/tools/diff-content.js +2 -2
- package/dist/tools/diff-content.js.map +1 -1
- package/dist/tools/diff-entity-scope.d.ts +53 -0
- package/dist/tools/diff-entity-scope.d.ts.map +1 -0
- package/dist/tools/diff-entity-scope.js +94 -0
- package/dist/tools/diff-entity-scope.js.map +1 -0
- package/dist/tools/diff-fingerprints.d.ts +1 -1
- package/dist/tools/diff-fingerprints.d.ts.map +1 -1
- package/dist/tools/diff-fingerprints.js +63 -117
- package/dist/tools/diff-fingerprints.js.map +1 -1
- package/dist/tools/diff.d.ts.map +1 -1
- package/dist/tools/diff.js +7 -8
- package/dist/tools/diff.js.map +1 -1
- package/dist/tools/entity-create.d.ts +3 -0
- package/dist/tools/entity-create.d.ts.map +1 -0
- package/dist/tools/entity-create.js +93 -0
- package/dist/tools/entity-create.js.map +1 -0
- package/dist/tools/entity-target-schema.d.ts +16 -0
- package/dist/tools/entity-target-schema.d.ts.map +1 -0
- package/dist/tools/entity-target-schema.js +32 -0
- package/dist/tools/entity-target-schema.js.map +1 -0
- package/dist/tools/flow-host.d.ts +13 -0
- package/dist/tools/flow-host.d.ts.map +1 -0
- package/dist/tools/flow-host.js +43 -0
- package/dist/tools/flow-host.js.map +1 -0
- package/dist/tools/flow.d.ts +3 -0
- package/dist/tools/flow.d.ts.map +1 -0
- package/dist/tools/flow.js +269 -0
- package/dist/tools/flow.js.map +1 -0
- package/dist/tools/ids-accessor.d.ts +9 -1
- package/dist/tools/ids-accessor.d.ts.map +1 -1
- package/dist/tools/ids-accessor.js +9 -2
- package/dist/tools/ids-accessor.js.map +1 -1
- package/dist/tools/index.d.ts +4 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +7 -1
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/mutate.d.ts.map +1 -1
- package/dist/tools/mutate.js +18 -75
- package/dist/tools/mutate.js.map +1 -1
- package/dist/tools/structural.d.ts +11 -0
- package/dist/tools/structural.d.ts.map +1 -0
- package/dist/tools/structural.js +23 -0
- package/dist/tools/structural.js.map +1 -0
- package/dist/tools/util.d.ts.map +1 -1
- package/dist/tools/util.js +15 -18
- package/dist/tools/util.js.map +1 -1
- package/dist/tools/validation.d.ts.map +1 -1
- package/dist/tools/validation.js +40 -41
- package/dist/tools/validation.js.map +1 -1
- package/dist/tools/viewer.d.ts.map +1 -1
- package/dist/tools/viewer.js +10 -29
- package/dist/tools/viewer.js.map +1 -1
- package/dist/validate.d.ts +22 -1
- package/dist/validate.d.ts.map +1 -1
- package/dist/validate.js +45 -10
- package/dist/validate.js.map +1 -1
- package/dist/viewer-manager.d.ts.map +1 -1
- package/dist/viewer-manager.js +1 -0
- package/dist/viewer-manager.js.map +1 -1
- package/package.json +25 -20
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
2
|
+
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
3
|
+
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
|
4
|
+
/**
|
|
5
|
+
* `describe_flow` / `run_flow` (#5167 Phase 4.3): expose `.flow.json` graphs
|
|
6
|
+
* to MCP agents, mirroring `ifc-lite flow describe|run` (`@ifc-lite/cli`'s
|
|
7
|
+
* `flow.ts`) exactly — same registry, same registry-aware wiring validation,
|
|
8
|
+
* same "unknown --input key is refused, not dropped" rule. Both tools reuse
|
|
9
|
+
* `@ifc-lite/flow`'s `describeFlowIO` / `resolveDeclaredParam` /
|
|
10
|
+
* `unknownInputKeys` rather than a second copy, so the CLI and MCP surfaces
|
|
11
|
+
* cannot drift on what counts as a declared parameter (see `introspect.ts`'s
|
|
12
|
+
* module doc for the regression that rule exists to prevent).
|
|
13
|
+
*
|
|
14
|
+
* `describe_flow` never throws for a graph that parses but fails
|
|
15
|
+
* registry-aware validation (`validateFlowWiring`): a declared output naming
|
|
16
|
+
* a port no node has is exactly the defect an agent calls this tool to find,
|
|
17
|
+
* so it comes back as `ok: false` with `diagnostics`, not an opaque error.
|
|
18
|
+
* `parseFlowDocument` alone cannot see that defect (it is registry-free),
|
|
19
|
+
* which is why this file runs wiring validation itself rather than reusing
|
|
20
|
+
* the CLI's `loadDocument`.
|
|
21
|
+
*
|
|
22
|
+
* `run_flow` has no persistent tracking sidecar (unlike the CLI's
|
|
23
|
+
* `FileTrackingStore`): each call gets a fresh `MemoryTrackingStore`, so a
|
|
24
|
+
* tracked write node always plans its lanes as `create`. A flow that needs
|
|
25
|
+
* update-in-place semantics across MCP calls has nowhere to remember its
|
|
26
|
+
* tracked set yet — out of scope here; a future MCP-side sidecar (keyed per
|
|
27
|
+
* session or per model) would close that gap.
|
|
28
|
+
*
|
|
29
|
+
* Element-creation node types (`element.column`, `model.addElement`, …)
|
|
30
|
+
* currently fail when run through MCP: `HeadlessLikeBackend`'s
|
|
31
|
+
* `store.addColumn`/`addWall`/`addSlab`/`addBeam`/… all throw "not supported
|
|
32
|
+
* in MCP v0.1; use entity_create" (`headless-backend.ts`). That is a
|
|
33
|
+
* pre-existing MCP limitation, not something this change introduces — a
|
|
34
|
+
* property-writing graph (like the shipped fire-rating-audit example) runs
|
|
35
|
+
* fine; a column-authoring graph will report a failed node until that
|
|
36
|
+
* backend gap is closed separately.
|
|
37
|
+
*
|
|
38
|
+
* `run_flow` is the OTHER caller (besides `ifc-lite flow run`) allowed to
|
|
39
|
+
* read `process.env` for a flow graph (#5167 phase 3.5), following the same
|
|
40
|
+
* shared `@ifc-lite/flow-nodes` `secrets.ts` pipeline the CLI uses:
|
|
41
|
+
* `validateSecretReferences` runs before anything else touches the graph
|
|
42
|
+
* (an undeclared or unset `{{secret:NAME}}` is a `ToolExecutionError`, not a
|
|
43
|
+
* silent empty string), `interpolateSecrets` substitutes into a throwaway
|
|
44
|
+
* document, and `redactDeep` scrubs the whole tool result — outputs, logs,
|
|
45
|
+
* errors — right before it crosses the MCP response boundary, so a secret
|
|
46
|
+
* that comes back inside a response body a node fetched is still caught.
|
|
47
|
+
* `networkGrants` is always the graph's own declared `network.fetch:<host>`
|
|
48
|
+
* capabilities, independent of the (absent, here) general capability gate —
|
|
49
|
+
* see `FlowHost.networkGrants`'s doc comment.
|
|
50
|
+
*/
|
|
51
|
+
import { readFile } from 'node:fs/promises';
|
|
52
|
+
import { declaredInputKeys, describeFlowIO, migrateFlowDocument, MemoryTrackingStore, runFlow, unknownInputKeys, validateFlowDocument, validateFlowWiring, } from '@ifc-lite/flow';
|
|
53
|
+
import { parseCapabilities } from '@ifc-lite/extensions';
|
|
54
|
+
import { buildRedactionMap, createStandardRegistry, headlessFeatures, interpolateSecrets, redactDeep, resolveSecretValues, usableSecretNames, validateSecretReferences, } from '@ifc-lite/flow-nodes';
|
|
55
|
+
import { createMcpFlowHost } from './flow-host.js';
|
|
56
|
+
import { okResult, paginate, resolveModel } from './util.js';
|
|
57
|
+
import { ToolErrorCode, ToolExecutionError } from '../errors.js';
|
|
58
|
+
import { resolveSafePath } from '../safe-path.js';
|
|
59
|
+
const flowInputSchema = {
|
|
60
|
+
flow: { description: 'Inline flow document (the parsed *.flow.json object). Provide this or flow_path.' },
|
|
61
|
+
flow_path: { type: 'string', description: 'Path to a .flow.json file (subject to allowedPaths).' },
|
|
62
|
+
};
|
|
63
|
+
/** Read the flow document value (object or JSON text) from `flow` / `flow_path`, whichever was given. */
|
|
64
|
+
async function loadFlowValue(input, ctx) {
|
|
65
|
+
if (input.flow !== undefined) {
|
|
66
|
+
if (typeof input.flow !== 'string')
|
|
67
|
+
return input.flow;
|
|
68
|
+
try {
|
|
69
|
+
return JSON.parse(input.flow);
|
|
70
|
+
}
|
|
71
|
+
catch (err) {
|
|
72
|
+
throw new ToolExecutionError({ code: ToolErrorCode.PARSE_FAILED, message: `flow is not valid JSON: ${err.message}` });
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
if (typeof input.flow_path === 'string') {
|
|
76
|
+
const abs = await resolveSafePath(input.flow_path, ctx, 'read');
|
|
77
|
+
const text = await readFile(abs, 'utf-8');
|
|
78
|
+
try {
|
|
79
|
+
return JSON.parse(text);
|
|
80
|
+
}
|
|
81
|
+
catch (err) {
|
|
82
|
+
throw new ToolExecutionError({ code: ToolErrorCode.PARSE_FAILED, message: `${input.flow_path} is not valid JSON: ${err.message}` });
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
throw new ToolExecutionError({ code: ToolErrorCode.INVALID_INPUT, message: 'Provide `flow` (inline document) or `flow_path`.' });
|
|
86
|
+
}
|
|
87
|
+
/** Structural validation only (registry-free) — `migrateFlowDocument` + `validateFlowDocument`, without `parseFlowDocument`'s string-joined throw, so callers get a `DocumentProblem[]` back instead of one opaque message. */
|
|
88
|
+
function parseGraphValue(value) {
|
|
89
|
+
const migrated = migrateFlowDocument(value);
|
|
90
|
+
const problems = validateFlowDocument(migrated);
|
|
91
|
+
if (problems.length > 0)
|
|
92
|
+
return { ok: false, problems };
|
|
93
|
+
return { ok: true, doc: migrated };
|
|
94
|
+
}
|
|
95
|
+
const describeFlow = {
|
|
96
|
+
name: 'describe_flow',
|
|
97
|
+
description: 'Describe a .flow.json graph\'s typed interface: declared inputs (name, kind, default) and outputs ' +
|
|
98
|
+
'(node/port, value kind, access), plus registry-aware validation diagnostics. Never throws for an ' +
|
|
99
|
+
'invalid graph — check `ok` and `diagnostics` in the result.',
|
|
100
|
+
scope: 'read',
|
|
101
|
+
inputSchema: { type: 'object', properties: flowInputSchema, additionalProperties: false },
|
|
102
|
+
async handler(input, ctx) {
|
|
103
|
+
const value = await loadFlowValue(input, ctx);
|
|
104
|
+
const parsed = parseGraphValue(value);
|
|
105
|
+
if (!parsed.ok) {
|
|
106
|
+
return okResult(`Flow document is structurally invalid: ${parsed.problems.length} problem(s).`, {
|
|
107
|
+
ok: false,
|
|
108
|
+
diagnostics: parsed.problems,
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
const registry = createStandardRegistry();
|
|
112
|
+
const doc = parsed.doc;
|
|
113
|
+
// Registry-aware: `validateFlowDocument` alone cannot see a declared
|
|
114
|
+
// output naming a port no node has (#5167) — it never looks at a
|
|
115
|
+
// registry. This is what makes that defect show up here instead of
|
|
116
|
+
// validating clean and producing nothing at run time.
|
|
117
|
+
const diagnostics = validateFlowWiring(doc, registry);
|
|
118
|
+
const io = describeFlowIO(doc, registry);
|
|
119
|
+
const ok = diagnostics.length === 0;
|
|
120
|
+
return okResult(ok
|
|
121
|
+
? `Flow '${io.name}' (${io.id}): ${io.inputs.length} input(s), ${io.outputs.length} output(s).`
|
|
122
|
+
: `Flow '${io.name}' (${io.id}) has ${diagnostics.length} wiring problem(s).`, { ok, ...io, diagnostics });
|
|
123
|
+
},
|
|
124
|
+
};
|
|
125
|
+
const DEFAULT_ROW_CAP = 1000;
|
|
126
|
+
function isTableValue(v) {
|
|
127
|
+
return !!v && typeof v === 'object' && Array.isArray(v.columns) && Array.isArray(v.rows) && typeof v.key === 'string';
|
|
128
|
+
}
|
|
129
|
+
/** Bound a value before it crosses the tool-result boundary: a table's rows are capped with a truncation flag, everything else passes through (already plain data — see `values.ts`). */
|
|
130
|
+
function serializeCell(v) {
|
|
131
|
+
if (!isTableValue(v))
|
|
132
|
+
return v;
|
|
133
|
+
const page = paginate(v.rows, DEFAULT_ROW_CAP);
|
|
134
|
+
return { columns: v.columns, key: v.key, rows: page.items, rowCount: page.total, truncated: page.truncated };
|
|
135
|
+
}
|
|
136
|
+
function serializeFlowData(data) {
|
|
137
|
+
if (data === undefined)
|
|
138
|
+
return undefined;
|
|
139
|
+
switch (data.kind) {
|
|
140
|
+
case 'item':
|
|
141
|
+
return serializeCell(data.value);
|
|
142
|
+
case 'list':
|
|
143
|
+
return data.items.map(serializeCell);
|
|
144
|
+
case 'group':
|
|
145
|
+
return Object.fromEntries([...data.branches.entries()].map(([k, items]) => [k, items.map(serializeCell)]));
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
/** Sum every tracked node's create/update/keep/remove counts — "writes" an agent decides whether to publish. */
|
|
149
|
+
function trackingSummary(result) {
|
|
150
|
+
let created = 0, updated = 0, kept = 0, removed = 0;
|
|
151
|
+
for (const r of result.reports) {
|
|
152
|
+
if (!r.tracking)
|
|
153
|
+
continue;
|
|
154
|
+
created += r.tracking.created;
|
|
155
|
+
updated += r.tracking.updated;
|
|
156
|
+
kept += r.tracking.kept;
|
|
157
|
+
removed += r.tracking.removed;
|
|
158
|
+
}
|
|
159
|
+
return { created, updated, kept, removed };
|
|
160
|
+
}
|
|
161
|
+
const runFlowTool = {
|
|
162
|
+
name: 'run_flow',
|
|
163
|
+
description: 'Run a .flow.json graph headlessly against a loaded model, exactly as `ifc-lite flow run` does. ' +
|
|
164
|
+
'`inputs` overrides Player parameters as `{ "nodeId.param": value }`; a key naming no declared ' +
|
|
165
|
+
'parameter is rejected, never silently dropped. A failed node marks the whole run failed (`ok: false`) ' +
|
|
166
|
+
'and outputs downstream of it come back without data — the half-applied model is never reported as success.',
|
|
167
|
+
scope: 'mutate',
|
|
168
|
+
inputSchema: {
|
|
169
|
+
type: 'object',
|
|
170
|
+
properties: {
|
|
171
|
+
...flowInputSchema,
|
|
172
|
+
model_id: { type: 'string', description: 'Loaded model id; required when multiple models are loaded.' },
|
|
173
|
+
inputs: {
|
|
174
|
+
type: 'object',
|
|
175
|
+
description: 'Player parameter overrides, keyed "nodeId.param".',
|
|
176
|
+
additionalProperties: true,
|
|
177
|
+
},
|
|
178
|
+
},
|
|
179
|
+
additionalProperties: false,
|
|
180
|
+
},
|
|
181
|
+
async handler(input, ctx) {
|
|
182
|
+
const value = await loadFlowValue(input, ctx);
|
|
183
|
+
const parsed = parseGraphValue(value);
|
|
184
|
+
if (!parsed.ok) {
|
|
185
|
+
throw new ToolExecutionError({
|
|
186
|
+
code: ToolErrorCode.INVALID_INPUT,
|
|
187
|
+
message: `Flow document is structurally invalid: ${parsed.problems.length} problem(s).`,
|
|
188
|
+
details: { diagnostics: parsed.problems },
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
const registry = createStandardRegistry();
|
|
192
|
+
const doc = parsed.doc;
|
|
193
|
+
const wiring = validateFlowWiring(doc, registry);
|
|
194
|
+
if (wiring.length > 0) {
|
|
195
|
+
throw new ToolExecutionError({
|
|
196
|
+
code: ToolErrorCode.INVALID_INPUT,
|
|
197
|
+
message: `Flow document has ${wiring.length} wiring problem(s); call describe_flow first.`,
|
|
198
|
+
details: { diagnostics: wiring },
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
const rawInputs = input.inputs ?? {};
|
|
202
|
+
// The CLI bug this guards against: an `--input` key naming no declared
|
|
203
|
+
// parameter (e.g. missing the node id) used to be dropped silently, so
|
|
204
|
+
// the graph ran on its defaults and reported success anyway (#5167).
|
|
205
|
+
const unknown = unknownInputKeys(rawInputs, doc, registry);
|
|
206
|
+
if (unknown.length > 0) {
|
|
207
|
+
const known = declaredInputKeys(doc);
|
|
208
|
+
throw new ToolExecutionError({
|
|
209
|
+
code: ToolErrorCode.INVALID_INPUT,
|
|
210
|
+
message: `inputs key(s) ${unknown.map((k) => `"${k}"`).join(', ')} name no declared parameter${known.length > 0 ? `; this graph declares ${known.join(', ')}` : ''}.`,
|
|
211
|
+
});
|
|
212
|
+
}
|
|
213
|
+
// Capabilities first, so a malformed one is reported as itself rather
|
|
214
|
+
// than as every secret being undeclared (#5446 review).
|
|
215
|
+
const capsResult = parseCapabilities(doc.capabilities);
|
|
216
|
+
if (!capsResult.ok) {
|
|
217
|
+
throw new ToolExecutionError({
|
|
218
|
+
code: ToolErrorCode.INVALID_INPUT,
|
|
219
|
+
message: `the graph declares malformed capabilities: ${capsResult.errors.map((e) => e.message).join('; ')}`,
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
// Secrets: validated against the real environment BEFORE anything else
|
|
223
|
+
// touches the graph (see module doc above).
|
|
224
|
+
const secretErrors = validateSecretReferences(doc, process.env);
|
|
225
|
+
if (secretErrors.length > 0) {
|
|
226
|
+
throw new ToolExecutionError({
|
|
227
|
+
code: ToolErrorCode.INVALID_INPUT,
|
|
228
|
+
message: `${secretErrors.length} secret reference problem(s): ${secretErrors.map((e) => e.message).join('; ')}`,
|
|
229
|
+
});
|
|
230
|
+
}
|
|
231
|
+
const secretValues = resolveSecretValues(doc, process.env);
|
|
232
|
+
const redaction = buildRedactionMap(secretValues);
|
|
233
|
+
const runDoc = interpolateSecrets(doc, secretValues);
|
|
234
|
+
const model = resolveModel(ctx, input.model_id);
|
|
235
|
+
// `networkGrants` is the graph's own declared capabilities (module doc);
|
|
236
|
+
// `model.openFromSource` can switch the host to a model it opened.
|
|
237
|
+
const host = createMcpFlowHost(model, ctx.registry, capsResult.value);
|
|
238
|
+
const result = await runFlow(runDoc, {
|
|
239
|
+
host,
|
|
240
|
+
registry,
|
|
241
|
+
inputs: rawInputs,
|
|
242
|
+
features: headlessFeatures(usableSecretNames(process.env)),
|
|
243
|
+
modelRevisions: { [model.id]: 0 },
|
|
244
|
+
tracking: new MemoryTrackingStore(),
|
|
245
|
+
signal: ctx.signal,
|
|
246
|
+
});
|
|
247
|
+
const outputs = result.graphOutputs.map((o) => ({ label: o.label, key: `${o.nodeId}.${o.port}`, data: serializeFlowData(o.data) }));
|
|
248
|
+
const statuses = {};
|
|
249
|
+
for (const r of result.reports)
|
|
250
|
+
statuses[r.status] = (statuses[r.status] ?? 0) + 1;
|
|
251
|
+
// Redacted at the OUTER boundary — the whole tool result, right before
|
|
252
|
+
// it crosses back to the MCP client — so a secret that came back inside
|
|
253
|
+
// a fetched response body (an output or an error message) is caught
|
|
254
|
+
// too, not just the literal param it was interpolated into.
|
|
255
|
+
return okResult(result.ok
|
|
256
|
+
? `Flow '${doc.name}' ran: ${outputs.length} output(s).`
|
|
257
|
+
: `Flow '${doc.name}' FAILED.`, redactDeep({
|
|
258
|
+
ok: result.ok,
|
|
259
|
+
nodes: statuses,
|
|
260
|
+
writes: result.writes,
|
|
261
|
+
tracking: trackingSummary(result),
|
|
262
|
+
outputs,
|
|
263
|
+
errors: result.log.filter((l) => l.level === 'error'),
|
|
264
|
+
warnings: result.log.filter((l) => l.level === 'warn'),
|
|
265
|
+
}, redaction));
|
|
266
|
+
},
|
|
267
|
+
};
|
|
268
|
+
export const flowTools = [describeFlow, runFlowTool];
|
|
269
|
+
//# sourceMappingURL=flow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flow.js","sourceRoot":"","sources":["../../src/tools/flow.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,5 +6,13 @@
|
|
|
6
6
|
* translation logic.
|
|
7
7
|
*/
|
|
8
8
|
import type { IfcDataStore } from '@ifc-lite/parser';
|
|
9
|
-
|
|
9
|
+
import type { MutablePropertyView } from '@ifc-lite/mutations';
|
|
10
|
+
/**
|
|
11
|
+
* `mutationView`, when supplied, is consulted for entity membership only.
|
|
12
|
+
* Enumeration excludes tombstones and includes overlay-created entities, and
|
|
13
|
+
* a retyped entity answers its new class (#5184). It satisfies the bridge's
|
|
14
|
+
* `EntityVisibilityView` structurally, so no adapter is needed. Omitting it
|
|
15
|
+
* leaves the accessor answering for the file as parsed.
|
|
16
|
+
*/
|
|
17
|
+
export declare function buildIdsAccessor(store: IfcDataStore, mutationView?: MutablePropertyView | null): unknown;
|
|
10
18
|
//# sourceMappingURL=ids-accessor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ids-accessor.d.ts","sourceRoot":"","sources":["../../src/tools/ids-accessor.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"ids-accessor.d.ts","sourceRoot":"","sources":["../../src/tools/ids-accessor.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAG/D;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,YAAY,EACnB,YAAY,CAAC,EAAE,mBAAmB,GAAG,IAAI,GACxC,OAAO,CAET"}
|
|
@@ -2,7 +2,14 @@
|
|
|
2
2
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
3
3
|
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
|
|
4
4
|
import { createDataAccessor } from '@ifc-lite/ids/bridge';
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
/**
|
|
6
|
+
* `mutationView`, when supplied, is consulted for entity membership only.
|
|
7
|
+
* Enumeration excludes tombstones and includes overlay-created entities, and
|
|
8
|
+
* a retyped entity answers its new class (#5184). It satisfies the bridge's
|
|
9
|
+
* `EntityVisibilityView` structurally, so no adapter is needed. Omitting it
|
|
10
|
+
* leaves the accessor answering for the file as parsed.
|
|
11
|
+
*/
|
|
12
|
+
export function buildIdsAccessor(store, mutationView) {
|
|
13
|
+
return createDataAccessor(store, undefined, mutationView ?? undefined);
|
|
7
14
|
}
|
|
8
15
|
//# sourceMappingURL=ids-accessor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ids-accessor.js","sourceRoot":"","sources":["../../src/tools/ids-accessor.ts"],"names":[],"mappings":"AAAA;;+DAE+D;
|
|
1
|
+
{"version":3,"file":"ids-accessor.js","sourceRoot":"","sources":["../../src/tools/ids-accessor.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAY/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAmB,EACnB,YAAyC;IAEzC,OAAO,kBAAkB,CAAC,KAAK,EAAE,SAAS,EAAE,YAAY,IAAI,SAAS,CAAC,CAAC;AACzE,CAAC"}
|
package/dist/tools/index.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ import { queryTools } from './query.js';
|
|
|
4
4
|
import { geometryTools } from './geometry.js';
|
|
5
5
|
import { clashTools } from './clash.js';
|
|
6
6
|
import { validationTools } from './validation.js';
|
|
7
|
+
import { checkRulesTools } from './check-rules.js';
|
|
7
8
|
import { mutationTools } from './mutate.js';
|
|
8
9
|
import { bcfTools } from './bcf.js';
|
|
9
10
|
import { bsddTools } from './bsdd.js';
|
|
@@ -11,11 +12,13 @@ import { diffTools } from './diff.js';
|
|
|
11
12
|
import { exportTools } from './export.js';
|
|
12
13
|
import { viewerTools } from './viewer.js';
|
|
13
14
|
import { costTools } from './cost.js';
|
|
15
|
+
import { structuralTools } from './structural.js';
|
|
16
|
+
import { flowTools } from './flow.js';
|
|
14
17
|
/** Agent draft-layer family (06-agents.md): draft lifecycle + review loop. */
|
|
15
18
|
export declare const layerTools: import("./types.js").Tool[];
|
|
16
19
|
export { ToolRegistry } from './types.js';
|
|
17
20
|
export type { Tool } from './types.js';
|
|
18
|
-
export { discoveryTools, queryTools, geometryTools, clashTools, validationTools, mutationTools, bcfTools, bsddTools, diffTools, exportTools, viewerTools, costTools, };
|
|
21
|
+
export { discoveryTools, queryTools, geometryTools, clashTools, validationTools, checkRulesTools, mutationTools, bcfTools, bsddTools, diffTools, exportTools, viewerTools, costTools, structuralTools, flowTools, };
|
|
19
22
|
export { resetLayerWorkspace, getLayerWorkspace, disposeLayerWorkspace } from './layer-store.js';
|
|
20
23
|
/**
|
|
21
24
|
* Build a ToolRegistry pre-loaded with every tool ifc-lite-mcp ships in v0.1.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,8EAA8E;AAC9E,eAAO,MAAM,UAAU,6BAA4C,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,YAAY,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EACL,cAAc,EACd,UAAU,EACV,aAAa,EACb,UAAU,EACV,eAAe,EACf,aAAa,EACb,QAAQ,EACR,SAAS,EACT,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,GACV,CAAC;AACF,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEjG;;;;GAIG;AACH,wBAAgB,wBAAwB,IAAI,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG1C,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,8EAA8E;AAC9E,eAAO,MAAM,UAAU,6BAA4C,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,YAAY,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,EACL,cAAc,EACd,UAAU,EACV,aAAa,EACb,UAAU,EACV,eAAe,EACf,eAAe,EACf,aAAa,EACb,QAAQ,EACR,SAAS,EACT,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,EACT,eAAe,EACf,SAAS,GACV,CAAC;AACF,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEjG;;;;GAIG;AACH,wBAAgB,wBAAwB,IAAI,YAAY,CAmBvD"}
|
package/dist/tools/index.js
CHANGED
|
@@ -7,6 +7,7 @@ import { queryTools } from './query.js';
|
|
|
7
7
|
import { geometryTools } from './geometry.js';
|
|
8
8
|
import { clashTools } from './clash.js';
|
|
9
9
|
import { validationTools } from './validation.js';
|
|
10
|
+
import { checkRulesTools } from './check-rules.js';
|
|
10
11
|
import { mutationTools } from './mutate.js';
|
|
11
12
|
import { bcfTools } from './bcf.js';
|
|
12
13
|
import { bsddTools } from './bsdd.js';
|
|
@@ -16,10 +17,12 @@ import { viewerTools } from './viewer.js';
|
|
|
16
17
|
import { draftLayerTools } from './layer.js';
|
|
17
18
|
import { layerReviewTools } from './layer-review.js';
|
|
18
19
|
import { costTools } from './cost.js';
|
|
20
|
+
import { structuralTools } from './structural.js';
|
|
21
|
+
import { flowTools } from './flow.js';
|
|
19
22
|
/** Agent draft-layer family (06-agents.md): draft lifecycle + review loop. */
|
|
20
23
|
export const layerTools = [...draftLayerTools, ...layerReviewTools];
|
|
21
24
|
export { ToolRegistry } from './types.js';
|
|
22
|
-
export { discoveryTools, queryTools, geometryTools, clashTools, validationTools, mutationTools, bcfTools, bsddTools, diffTools, exportTools, viewerTools, costTools, };
|
|
25
|
+
export { discoveryTools, queryTools, geometryTools, clashTools, validationTools, checkRulesTools, mutationTools, bcfTools, bsddTools, diffTools, exportTools, viewerTools, costTools, structuralTools, flowTools, };
|
|
23
26
|
export { resetLayerWorkspace, getLayerWorkspace, disposeLayerWorkspace } from './layer-store.js';
|
|
24
27
|
/**
|
|
25
28
|
* Build a ToolRegistry pre-loaded with every tool ifc-lite-mcp ships in v0.1.
|
|
@@ -33,6 +36,7 @@ export function buildDefaultToolRegistry() {
|
|
|
33
36
|
registry.registerAll(geometryTools);
|
|
34
37
|
registry.registerAll(clashTools);
|
|
35
38
|
registry.registerAll(validationTools);
|
|
39
|
+
registry.registerAll(checkRulesTools);
|
|
36
40
|
registry.registerAll(mutationTools);
|
|
37
41
|
registry.registerAll(bcfTools);
|
|
38
42
|
registry.registerAll(bsddTools);
|
|
@@ -40,6 +44,8 @@ export function buildDefaultToolRegistry() {
|
|
|
40
44
|
registry.registerAll(exportTools);
|
|
41
45
|
registry.registerAll(viewerTools);
|
|
42
46
|
registry.registerAll(costTools);
|
|
47
|
+
registry.registerAll(structuralTools);
|
|
48
|
+
registry.registerAll(flowTools);
|
|
43
49
|
registry.registerAll(layerTools);
|
|
44
50
|
return registry;
|
|
45
51
|
}
|
package/dist/tools/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,8EAA8E;AAC9E,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAG,eAAe,EAAE,GAAG,gBAAgB,CAAC,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EACL,cAAc,EACd,UAAU,EACV,aAAa,EACb,UAAU,EACV,eAAe,EACf,aAAa,EACb,QAAQ,EACR,SAAS,EACT,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,GACV,CAAC;AACF,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEjG;;;;GAIG;AACH,MAAM,UAAU,wBAAwB;IACtC,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;IACpC,QAAQ,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IACrC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACjC,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IACpC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACjC,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IACtC,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IACpC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAClC,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAClC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACjC,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;+DAE+D;AAE/D,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,8EAA8E;AAC9E,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAG,eAAe,EAAE,GAAG,gBAAgB,CAAC,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EACL,cAAc,EACd,UAAU,EACV,aAAa,EACb,UAAU,EACV,eAAe,EACf,eAAe,EACf,aAAa,EACb,QAAQ,EACR,SAAS,EACT,SAAS,EACT,WAAW,EACX,WAAW,EACX,SAAS,EACT,eAAe,EACf,SAAS,GACV,CAAC;AACF,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEjG;;;;GAIG;AACH,MAAM,UAAU,wBAAwB;IACtC,MAAM,QAAQ,GAAG,IAAI,YAAY,EAAE,CAAC;IACpC,QAAQ,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;IACrC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACjC,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IACpC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACjC,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IACtC,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IACtC,QAAQ,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;IACpC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC/B,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAClC,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;IAClC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;IACtC,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAChC,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACjC,OAAO,QAAQ,CAAC;AAClB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutate.d.ts","sourceRoot":"","sources":["../../src/tools/mutate.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mutate.d.ts","sourceRoot":"","sources":["../../src/tools/mutate.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AA8XvC,eAAO,MAAM,aAAa,EAAE,IAAI,EAU/B,CAAC"}
|
package/dist/tools/mutate.js
CHANGED
|
@@ -26,6 +26,8 @@
|
|
|
26
26
|
* undo themselves.
|
|
27
27
|
*/
|
|
28
28
|
import { writeFile } from 'node:fs/promises';
|
|
29
|
+
import { entityTargetSchema } from './entity-target-schema.js';
|
|
30
|
+
import { entityCreate } from './entity-create.js';
|
|
29
31
|
import { findByGlobalId, okResult, resolveModel } from './util.js';
|
|
30
32
|
import { ToolErrorCode, ToolExecutionError } from '../errors.js';
|
|
31
33
|
import { resolveSafePath } from '../safe-path.js';
|
|
@@ -58,8 +60,8 @@ function resolveExpressId(m, input) {
|
|
|
58
60
|
* was then dropped by the exporter (which only visits entities the effective
|
|
59
61
|
* model holds) with no diagnostic anywhere in the round trip (#3764).
|
|
60
62
|
*
|
|
61
|
-
* `entity_create` is the one write tool not routed
|
|
62
|
-
* to check yet.
|
|
63
|
+
* `entity_create` (`./entity-create.ts`) is the one write tool not routed
|
|
64
|
+
* through this: it has no id to check yet.
|
|
63
65
|
*/
|
|
64
66
|
function resolveWritableExpressId(m, input) {
|
|
65
67
|
const expressId = resolveExpressId(m, input);
|
|
@@ -90,19 +92,11 @@ const entitySetProperty = {
|
|
|
90
92
|
name: 'entity_set_property',
|
|
91
93
|
description: 'Set or create a property on an entity. Mutations are queued; call `export_ifc` to persist.',
|
|
92
94
|
scope: 'mutate',
|
|
93
|
-
inputSchema: {
|
|
94
|
-
type: '
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
express_id: { type: 'integer' },
|
|
99
|
-
pset: { type: 'string', description: 'Property set name, e.g. "Pset_WallCommon".' },
|
|
100
|
-
name: { type: 'string', description: 'Property name within the pset.' },
|
|
101
|
-
value: { description: 'Boolean / number / string value.' },
|
|
102
|
-
},
|
|
103
|
-
required: ['pset', 'name'],
|
|
104
|
-
additionalProperties: false,
|
|
105
|
-
},
|
|
95
|
+
inputSchema: entityTargetSchema({
|
|
96
|
+
pset: { type: 'string', description: 'Property set name, e.g. "Pset_WallCommon".' },
|
|
97
|
+
name: { type: 'string', description: 'Property name within the pset.' },
|
|
98
|
+
value: { description: 'Boolean / number / string value.' },
|
|
99
|
+
}, ['pset', 'name']),
|
|
106
100
|
handler(input, ctx) {
|
|
107
101
|
const m = resolveModel(ctx, input.model_id);
|
|
108
102
|
const backend = getBackend(m);
|
|
@@ -122,18 +116,10 @@ const entityDeleteProperty = {
|
|
|
122
116
|
name: 'entity_delete_property',
|
|
123
117
|
description: 'Delete a property from a Pset. Queued — persist via `export_ifc`.',
|
|
124
118
|
scope: 'mutate',
|
|
125
|
-
inputSchema: {
|
|
126
|
-
type: '
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
global_id: { type: 'string' },
|
|
130
|
-
express_id: { type: 'integer' },
|
|
131
|
-
pset: { type: 'string' },
|
|
132
|
-
name: { type: 'string' },
|
|
133
|
-
},
|
|
134
|
-
required: ['pset', 'name'],
|
|
135
|
-
additionalProperties: false,
|
|
136
|
-
},
|
|
119
|
+
inputSchema: entityTargetSchema({
|
|
120
|
+
pset: { type: 'string' },
|
|
121
|
+
name: { type: 'string' },
|
|
122
|
+
}, ['pset', 'name']),
|
|
137
123
|
handler(input, ctx) {
|
|
138
124
|
const m = resolveModel(ctx, input.model_id);
|
|
139
125
|
const backend = getBackend(m);
|
|
@@ -154,18 +140,10 @@ const entitySetAttribute = {
|
|
|
154
140
|
name: 'entity_set_attribute',
|
|
155
141
|
description: 'Set a top-level IFC attribute (Name, Description, ObjectType, Tag).',
|
|
156
142
|
scope: 'mutate',
|
|
157
|
-
inputSchema: {
|
|
158
|
-
type: '
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
global_id: { type: 'string' },
|
|
162
|
-
express_id: { type: 'integer' },
|
|
163
|
-
attribute: { type: 'string', enum: ['Name', 'Description', 'ObjectType', 'Tag'] },
|
|
164
|
-
value: { type: 'string' },
|
|
165
|
-
},
|
|
166
|
-
required: ['attribute', 'value'],
|
|
167
|
-
additionalProperties: false,
|
|
168
|
-
},
|
|
143
|
+
inputSchema: entityTargetSchema({
|
|
144
|
+
attribute: { type: 'string', enum: ['Name', 'Description', 'ObjectType', 'Tag'] },
|
|
145
|
+
value: { type: 'string' },
|
|
146
|
+
}, ['attribute', 'value']),
|
|
169
147
|
handler(input, ctx) {
|
|
170
148
|
const m = resolveModel(ctx, input.model_id);
|
|
171
149
|
const backend = getBackend(m);
|
|
@@ -189,46 +167,11 @@ const entitySetAttribute = {
|
|
|
189
167
|
return okResult(`Set ${input.attribute} on #${expressId}.`, { expressId, attribute: input.attribute, value: input.value });
|
|
190
168
|
},
|
|
191
169
|
};
|
|
192
|
-
const entityCreate = {
|
|
193
|
-
name: 'entity_create',
|
|
194
|
-
description: 'Create a new IFC entity with raw positional attributes. Returns the new expressId.',
|
|
195
|
-
scope: 'mutate',
|
|
196
|
-
inputSchema: {
|
|
197
|
-
type: 'object',
|
|
198
|
-
properties: {
|
|
199
|
-
model_id: { type: 'string' },
|
|
200
|
-
type: { type: 'string', description: 'IFC entity name, e.g. IfcWall.' },
|
|
201
|
-
attributes: {
|
|
202
|
-
type: 'array',
|
|
203
|
-
description: 'Positional STEP attributes (strings, numbers, booleans, or refs of form "#42").',
|
|
204
|
-
items: {},
|
|
205
|
-
},
|
|
206
|
-
},
|
|
207
|
-
required: ['type'],
|
|
208
|
-
additionalProperties: false,
|
|
209
|
-
},
|
|
210
|
-
handler(input, ctx) {
|
|
211
|
-
const m = resolveModel(ctx, input.model_id);
|
|
212
|
-
const backend = getBackend(m);
|
|
213
|
-
const editor = backend.ensureEditor();
|
|
214
|
-
const attrs = input.attributes ?? [];
|
|
215
|
-
const ref = editor.addEntity(input.type, attrs);
|
|
216
|
-
return okResult(`Created ${input.type} as #${ref.expressId}.`, { expressId: ref.expressId, type: input.type });
|
|
217
|
-
},
|
|
218
|
-
};
|
|
219
170
|
const entityDelete = {
|
|
220
171
|
name: 'entity_delete',
|
|
221
172
|
description: 'Delete an entity. Note: cascades are NOT applied automatically — caller must remove dependent relationships first.',
|
|
222
173
|
scope: 'mutate',
|
|
223
|
-
inputSchema: {
|
|
224
|
-
type: 'object',
|
|
225
|
-
properties: {
|
|
226
|
-
model_id: { type: 'string' },
|
|
227
|
-
global_id: { type: 'string' },
|
|
228
|
-
express_id: { type: 'integer' },
|
|
229
|
-
},
|
|
230
|
-
additionalProperties: false,
|
|
231
|
-
},
|
|
174
|
+
inputSchema: entityTargetSchema({}),
|
|
232
175
|
handler(input, ctx) {
|
|
233
176
|
const m = resolveModel(ctx, input.model_id);
|
|
234
177
|
const backend = getBackend(m);
|
package/dist/tools/mutate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutate.js","sourceRoot":"","sources":["../../src/tools/mutate.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mutate.js","sourceRoot":"","sources":["../../src/tools/mutate.ts"],"names":[],"mappings":"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"}
|