sysprom 1.15.0 → 1.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/schema.json +18 -1
  2. package/dist/src/cli/commands/infer.js +31 -2
  3. package/dist/src/endpoint-types.js +23 -0
  4. package/dist/src/index.d.ts +2 -2
  5. package/dist/src/index.js +2 -2
  6. package/dist/src/mcp/server.js +42 -4
  7. package/dist/src/operations/add-node.d.ts +51 -9
  8. package/dist/src/operations/add-plan-task.d.ts +34 -6
  9. package/dist/src/operations/add-relationship.d.ts +48 -8
  10. package/dist/src/operations/check.d.ts +17 -3
  11. package/dist/src/operations/graph.d.ts +17 -3
  12. package/dist/src/operations/index.d.ts +1 -1
  13. package/dist/src/operations/index.js +1 -1
  14. package/dist/src/operations/infer-completeness.d.ts +17 -3
  15. package/dist/src/operations/infer-derived.d.ts +17 -3
  16. package/dist/src/operations/infer-impact.d.ts +1066 -13
  17. package/dist/src/operations/infer-impact.js +157 -39
  18. package/dist/src/operations/infer-lifecycle.d.ts +17 -3
  19. package/dist/src/operations/init-document.d.ts +17 -3
  20. package/dist/src/operations/json-to-markdown.d.ts +17 -3
  21. package/dist/src/operations/mark-task-done.d.ts +34 -6
  22. package/dist/src/operations/mark-task-undone.d.ts +34 -6
  23. package/dist/src/operations/markdown-to-json.d.ts +17 -3
  24. package/dist/src/operations/next-id.d.ts +17 -3
  25. package/dist/src/operations/node-history.d.ts +17 -3
  26. package/dist/src/operations/plan-add-task.d.ts +34 -6
  27. package/dist/src/operations/plan-gate.d.ts +17 -3
  28. package/dist/src/operations/plan-init.d.ts +17 -3
  29. package/dist/src/operations/plan-progress.d.ts +17 -3
  30. package/dist/src/operations/plan-status.d.ts +17 -3
  31. package/dist/src/operations/query-node.d.ts +107 -17
  32. package/dist/src/operations/query-nodes.d.ts +34 -6
  33. package/dist/src/operations/query-relationships.d.ts +31 -5
  34. package/dist/src/operations/remove-node.d.ts +51 -9
  35. package/dist/src/operations/remove-relationship.d.ts +36 -7
  36. package/dist/src/operations/rename.d.ts +34 -6
  37. package/dist/src/operations/search.d.ts +34 -6
  38. package/dist/src/operations/speckit-diff.d.ts +17 -3
  39. package/dist/src/operations/speckit-export.d.ts +17 -3
  40. package/dist/src/operations/speckit-import.d.ts +17 -3
  41. package/dist/src/operations/speckit-sync.d.ts +51 -9
  42. package/dist/src/operations/state-at.d.ts +17 -3
  43. package/dist/src/operations/stats.d.ts +17 -3
  44. package/dist/src/operations/sync.d.ts +51 -9
  45. package/dist/src/operations/task-list.d.ts +17 -3
  46. package/dist/src/operations/timeline.d.ts +17 -3
  47. package/dist/src/operations/trace-from-node.d.ts +51 -9
  48. package/dist/src/operations/update-metadata.d.ts +34 -6
  49. package/dist/src/operations/update-node.d.ts +48 -8
  50. package/dist/src/operations/update-plan-task.d.ts +34 -6
  51. package/dist/src/operations/validate.d.ts +17 -3
  52. package/dist/src/schema.d.ts +70 -10
  53. package/dist/src/schema.js +21 -0
  54. package/package.json +1 -1
  55. package/schema.json +18 -1
package/dist/schema.json CHANGED
@@ -458,6 +458,22 @@
458
458
  "description": "Source node ID.",
459
459
  "type": "string"
460
460
  },
461
+ "polarity": {
462
+ "description": "Impact polarity — positive, negative, neutral, or uncertain.",
463
+ "enum": [
464
+ "positive",
465
+ "negative",
466
+ "neutral",
467
+ "uncertain"
468
+ ],
469
+ "type": "string"
470
+ },
471
+ "strength": {
472
+ "description": "Relationship strength as a number between 0 and 1.",
473
+ "maximum": 1,
474
+ "minimum": 0,
475
+ "type": "number"
476
+ },
461
477
  "to": {
462
478
  "description": "Target node ID.",
463
479
  "type": "string"
@@ -487,7 +503,8 @@
487
503
  "transforms_into",
488
504
  "selects",
489
505
  "requires",
490
- "disables"
506
+ "disables",
507
+ "influence"
491
508
  ],
492
509
  "type": "string"
493
510
  }
@@ -48,6 +48,20 @@ function printDerivedRelationship(r) {
48
48
  // ---------------------------------------------------------------------------
49
49
  const impactArgs = z.object({
50
50
  id: z.string().describe("node ID to start impact analysis from"),
51
+ direction: z
52
+ .enum(["outgoing", "incoming", "bidirectional"])
53
+ .optional()
54
+ .describe("traversal direction: outgoing (default) | incoming | bidirectional"),
55
+ maxDepth: z
56
+ .number()
57
+ .int()
58
+ .positive()
59
+ .optional()
60
+ .describe("maximum traversal depth"),
61
+ filter: z
62
+ .string()
63
+ .optional()
64
+ .describe("comma-separated list of relationship types to follow"),
51
65
  });
52
66
  // ---------------------------------------------------------------------------
53
67
  // Subcommands
@@ -115,12 +129,27 @@ const impactSubcommand = {
115
129
  const args = impactArgs.parse(rawArgs);
116
130
  const opts = readOpts.parse(rawOpts);
117
131
  const { doc } = loadDoc(opts.path);
118
- const result = inferImpactOp({ doc, startId: args.id });
132
+ // Parse relationship filter if provided
133
+ const relationshipFilter = args.filter
134
+ ? args.filter.split(",").map((s) => s.trim())
135
+ : undefined;
136
+ const result = inferImpactOp({
137
+ doc,
138
+ startId: args.id,
139
+ direction: args.direction,
140
+ maxDepth: args.maxDepth,
141
+ relationshipFilter,
142
+ });
119
143
  if (opts.json) {
120
144
  console.log(JSON.stringify(result, null, 2));
121
145
  }
122
146
  else {
123
- console.log(pc.bold(`\nImpact Analysis from ${args.id}\n`) +
147
+ const directionLabel = args.direction ? ` (${args.direction})` : "";
148
+ const depthLabel = args.maxDepth
149
+ ? ` [depth: ${String(args.maxDepth)}]`
150
+ : "";
151
+ const filterLabel = args.filter ? ` [filter: ${args.filter}]` : "";
152
+ console.log(pc.bold(`\nImpact Analysis from ${args.id}${directionLabel}${depthLabel}${filterLabel}\n`) +
124
153
  pc.dim(`Direct: ${String(result.summary.direct)} | Transitive: ${String(result.summary.transitive)} | Potential: ${String(result.summary.potential)} | Total: ${String(result.summary.total)}`) +
125
154
  "\n");
126
155
  if (result.impactedNodes.length === 0) {
@@ -286,6 +286,29 @@ export const RELATIONSHIP_ENDPOINT_TYPES = {
286
286
  from: ["decision", "mode"],
287
287
  to: ["capability", "stage"],
288
288
  },
289
+ // Influence — soft dependency between decisions and across nodes (CHG40)
290
+ influence: {
291
+ from: [
292
+ "intent",
293
+ "concept",
294
+ "capability",
295
+ "element",
296
+ "realisation",
297
+ "decision",
298
+ "change",
299
+ "stage",
300
+ ],
301
+ to: [
302
+ "intent",
303
+ "concept",
304
+ "capability",
305
+ "element",
306
+ "realisation",
307
+ "decision",
308
+ "change",
309
+ "stage",
310
+ ],
311
+ },
289
312
  };
290
313
  /**
291
314
  * Check if a relationship type is valid for the given endpoint node types.
@@ -5,8 +5,8 @@
5
5
  * system came from, what decisions shaped it, and how it reached its current form.
6
6
  * @packageDocumentation
7
7
  */
8
- export { SysProMDocument, Node, Relationship, NodeType, NodeStatus, RelationshipType, Text, Option, Operation, Task, ExternalReference, ExternalReferenceRole, Metadata, NODE_TYPE_LABELS, NODE_LABEL_TO_TYPE, RELATIONSHIP_TYPE_LABELS, RELATIONSHIP_LABEL_TO_TYPE, EXTERNAL_REFERENCE_ROLE_LABELS, EXTERNAL_REFERENCE_LABEL_TO_ROLE, NODE_STATUSES, NODE_FILE_MAP, NODE_ID_PREFIX, toJSONSchema, } from "./schema.js";
9
- export { defineOperation, type OperationDef, type DefinedOperation, addNodeOp, removeNodeOp, updateNodeOp, addRelationshipOp, removeRelationshipOp, updateMetadataOp, nextIdOp, initDocumentOp, addPlanTaskOp, updatePlanTaskOp, markTaskDoneOp, markTaskUndoneOp, taskListOp, planInitOp, planAddTaskOp, planStatusOp, planProgressOp, planGateOp, queryNodesOp, queryNodeOp, queryRelationshipsOp, traceFromNodeOp, timelineOp, nodeHistoryOp, stateAtOp, validateOp, statsOp, searchOp, checkOp, graphOp, renameOp, jsonToMarkdownOp, markdownToJsonOp, speckitImportOp, speckitExportOp, speckitSyncOp, speckitDiffOp, inferCompletenessOp, inferLifecycleOp, inferImpactOp, inferDerivedOp, type RemoveResult, type ValidationResult, type DocumentStats, type NodeDetail, type TraceNode, type TimelineEvent, type NodeState, type PlanStatusResult, type PhaseProgressResult, type GateResultOutput, type SyncResult, type DiffResult, type CompletenessOutput, type LifecycleOutput, type ImpactOutput, type DerivedOutput, } from "./operations/index.js";
8
+ export { SysProMDocument, Node, Relationship, NodeType, NodeStatus, RelationshipType, ImpactPolarity, Text, Option, Operation, Task, ExternalReference, ExternalReferenceRole, Metadata, NODE_TYPE_LABELS, NODE_LABEL_TO_TYPE, RELATIONSHIP_TYPE_LABELS, RELATIONSHIP_LABEL_TO_TYPE, IMPACT_POLARITY_LABELS, EXTERNAL_REFERENCE_ROLE_LABELS, EXTERNAL_REFERENCE_LABEL_TO_ROLE, NODE_STATUSES, NODE_FILE_MAP, NODE_ID_PREFIX, toJSONSchema, } from "./schema.js";
9
+ export { defineOperation, type OperationDef, type DefinedOperation, addNodeOp, removeNodeOp, updateNodeOp, addRelationshipOp, removeRelationshipOp, updateMetadataOp, nextIdOp, initDocumentOp, addPlanTaskOp, updatePlanTaskOp, markTaskDoneOp, markTaskUndoneOp, taskListOp, planInitOp, planAddTaskOp, planStatusOp, planProgressOp, planGateOp, queryNodesOp, queryNodeOp, queryRelationshipsOp, traceFromNodeOp, timelineOp, nodeHistoryOp, stateAtOp, validateOp, statsOp, searchOp, checkOp, graphOp, renameOp, jsonToMarkdownOp, markdownToJsonOp, speckitImportOp, speckitExportOp, speckitSyncOp, speckitDiffOp, inferCompletenessOp, inferLifecycleOp, inferImpactOp, impactSummaryOp, inferDerivedOp, type RemoveResult, type ValidationResult, type DocumentStats, type NodeDetail, type TraceNode, type TimelineEvent, type NodeState, type PlanStatusResult, type PhaseProgressResult, type GateResultOutput, type SyncResult, type DiffResult, type CompletenessOutput, type LifecycleOutput, type ImpactOutput, type ImpactSummaryOutput, type DerivedOutput, } from "./operations/index.js";
10
10
  export { jsonToMarkdownSingle, jsonToMarkdownMultiDoc, jsonToMarkdown, type ConvertOptions, } from "./json-to-md.js";
11
11
  export { markdownSingleToJson, markdownMultiDocToJson, markdownToJson, } from "./md-to-json.js";
12
12
  export { RELATIONSHIP_ENDPOINT_TYPES, isValidEndpointPair, } from "./endpoint-types.js";
package/dist/src/index.js CHANGED
@@ -6,9 +6,9 @@
6
6
  * @packageDocumentation
7
7
  */
8
8
  // Schema types and validators
9
- export { SysProMDocument, Node, Relationship, NodeType, NodeStatus, RelationshipType, Text, Option, Operation, Task, ExternalReference, ExternalReferenceRole, Metadata, NODE_TYPE_LABELS, NODE_LABEL_TO_TYPE, RELATIONSHIP_TYPE_LABELS, RELATIONSHIP_LABEL_TO_TYPE, EXTERNAL_REFERENCE_ROLE_LABELS, EXTERNAL_REFERENCE_LABEL_TO_ROLE, NODE_STATUSES, NODE_FILE_MAP, NODE_ID_PREFIX, toJSONSchema, } from "./schema.js";
9
+ export { SysProMDocument, Node, Relationship, NodeType, NodeStatus, RelationshipType, ImpactPolarity, Text, Option, Operation, Task, ExternalReference, ExternalReferenceRole, Metadata, NODE_TYPE_LABELS, NODE_LABEL_TO_TYPE, RELATIONSHIP_TYPE_LABELS, RELATIONSHIP_LABEL_TO_TYPE, IMPACT_POLARITY_LABELS, EXTERNAL_REFERENCE_ROLE_LABELS, EXTERNAL_REFERENCE_LABEL_TO_ROLE, NODE_STATUSES, NODE_FILE_MAP, NODE_ID_PREFIX, toJSONSchema, } from "./schema.js";
10
10
  // Operations (single source of truth for domain logic + metadata)
11
- export { defineOperation, addNodeOp, removeNodeOp, updateNodeOp, addRelationshipOp, removeRelationshipOp, updateMetadataOp, nextIdOp, initDocumentOp, addPlanTaskOp, updatePlanTaskOp, markTaskDoneOp, markTaskUndoneOp, taskListOp, planInitOp, planAddTaskOp, planStatusOp, planProgressOp, planGateOp, queryNodesOp, queryNodeOp, queryRelationshipsOp, traceFromNodeOp, timelineOp, nodeHistoryOp, stateAtOp, validateOp, statsOp, searchOp, checkOp, graphOp, renameOp, jsonToMarkdownOp, markdownToJsonOp, speckitImportOp, speckitExportOp, speckitSyncOp, speckitDiffOp, inferCompletenessOp, inferLifecycleOp, inferImpactOp, inferDerivedOp, } from "./operations/index.js";
11
+ export { defineOperation, addNodeOp, removeNodeOp, updateNodeOp, addRelationshipOp, removeRelationshipOp, updateMetadataOp, nextIdOp, initDocumentOp, addPlanTaskOp, updatePlanTaskOp, markTaskDoneOp, markTaskUndoneOp, taskListOp, planInitOp, planAddTaskOp, planStatusOp, planProgressOp, planGateOp, queryNodesOp, queryNodeOp, queryRelationshipsOp, traceFromNodeOp, timelineOp, nodeHistoryOp, stateAtOp, validateOp, statsOp, searchOp, checkOp, graphOp, renameOp, jsonToMarkdownOp, markdownToJsonOp, speckitImportOp, speckitExportOp, speckitSyncOp, speckitDiffOp, inferCompletenessOp, inferLifecycleOp, inferImpactOp, impactSummaryOp, inferDerivedOp, } from "./operations/index.js";
12
12
  // Conversion
13
13
  export { jsonToMarkdownSingle, jsonToMarkdownMultiDoc, jsonToMarkdown, } from "./json-to-md.js";
14
14
  export { markdownSingleToJson, markdownMultiDocToJson, markdownToJson, } from "./md-to-json.js";
@@ -4,7 +4,7 @@ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"
4
4
  import * as z from "zod";
5
5
  import { loadDocument, saveDocument } from "../io.js";
6
6
  import { NodeType, RelationshipType } from "../schema.js";
7
- import { validateOp, statsOp, queryNodesOp, queryNodeOp, queryRelationshipsOp, traceFromNodeOp, addNodeOp, removeNodeOp, updateNodeOp, addRelationshipOp, removeRelationshipOp, nextIdOp, inferCompletenessOp, inferLifecycleOp, inferImpactOp, inferDerivedOp, } from "../operations/index.js";
7
+ import { validateOp, statsOp, queryNodesOp, queryNodeOp, queryRelationshipsOp, traceFromNodeOp, addNodeOp, removeNodeOp, updateNodeOp, addRelationshipOp, removeRelationshipOp, nextIdOp, inferCompletenessOp, inferLifecycleOp, inferImpactOp, impactSummaryOp, inferDerivedOp, } from "../operations/index.js";
8
8
  // Create MCP server instance
9
9
  const server = new McpServer({
10
10
  name: "sysprom-mcp",
@@ -356,14 +356,52 @@ server.registerTool("infer-lifecycle", {
356
356
  });
357
357
  // Register infer-impact tool
358
358
  server.registerTool("infer-impact", {
359
- description: "Infer impact from a node through the graph following impact relationships",
359
+ description: "Infer impact from a node through the graph following impact relationships (CHG40 with bidirectional traversal)",
360
360
  inputSchema: z.object({
361
361
  path: z.string().describe("Path to SysProM file"),
362
362
  startId: z.string().describe("Node ID to start impact analysis from"),
363
+ direction: z
364
+ .enum(["outgoing", "incoming", "bidirectional"])
365
+ .optional()
366
+ .describe("Traversal direction (default: outgoing)"),
367
+ maxDepth: z
368
+ .number()
369
+ .int()
370
+ .positive()
371
+ .optional()
372
+ .describe("Maximum traversal depth"),
373
+ relationshipFilter: z
374
+ .array(z.string())
375
+ .optional()
376
+ .describe("Relationship types to follow"),
363
377
  }),
364
- }, ({ path, startId }) => {
378
+ }, ({ path, startId, direction, maxDepth, relationshipFilter }) => {
365
379
  const { doc } = loadDocument(path);
366
- const result = inferImpactOp({ doc, startId });
380
+ const result = inferImpactOp({
381
+ doc,
382
+ startId,
383
+ direction,
384
+ maxDepth,
385
+ relationshipFilter,
386
+ });
387
+ return {
388
+ content: [
389
+ {
390
+ type: "text",
391
+ text: JSON.stringify(result, null, 2),
392
+ },
393
+ ],
394
+ };
395
+ });
396
+ // Register infer-impact-summary tool (CHG40 hotspot analysis)
397
+ server.registerTool("infer-impact-summary", {
398
+ description: "Analyse document for impact hotspots — nodes with high incoming/outgoing impact (CHG40)",
399
+ inputSchema: z.object({
400
+ path: z.string().describe("Path to SysProM file"),
401
+ }),
402
+ }, ({ path }) => {
403
+ const { doc } = loadDocument(path);
404
+ const result = impactSummaryOp({ doc });
367
405
  return {
368
406
  content: [
369
407
  {
@@ -193,19 +193,31 @@ export declare const addNodeOp: import("./define-operation.js").DefinedOperation
193
193
  selects: "selects";
194
194
  requires: "requires";
195
195
  disables: "disables";
196
+ influence: "influence";
196
197
  }> & {
197
- is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
198
+ is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
198
199
  };
199
200
  description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
200
201
  is(value: unknown): value is string | string[];
201
202
  }>;
203
+ polarity: z.ZodOptional<z.ZodEnum<{
204
+ positive: "positive";
205
+ negative: "negative";
206
+ neutral: "neutral";
207
+ uncertain: "uncertain";
208
+ }> & {
209
+ is(value: unknown): value is "positive" | "negative" | "neutral" | "uncertain";
210
+ }>;
211
+ strength: z.ZodOptional<z.ZodNumber>;
202
212
  }, z.core.$loose> & {
203
213
  is(value: unknown): value is {
204
214
  [x: string]: unknown;
205
215
  from: string;
206
216
  to: string;
207
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
217
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
208
218
  description?: string | string[] | undefined;
219
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
220
+ strength?: number | undefined;
209
221
  };
210
222
  }>>;
211
223
  external_references: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -293,8 +305,10 @@ export declare const addNodeOp: import("./define-operation.js").DefinedOperation
293
305
  [x: string]: unknown;
294
306
  from: string;
295
307
  to: string;
296
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
308
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
297
309
  description?: string | string[] | undefined;
310
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
311
+ strength?: number | undefined;
298
312
  }[] | undefined;
299
313
  external_references?: {
300
314
  role: "output" | "input" | "context" | "evidence" | "source" | "standard" | "prior_art";
@@ -487,19 +501,31 @@ export declare const addNodeOp: import("./define-operation.js").DefinedOperation
487
501
  selects: "selects";
488
502
  requires: "requires";
489
503
  disables: "disables";
504
+ influence: "influence";
490
505
  }> & {
491
- is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
506
+ is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
492
507
  };
493
508
  description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
494
509
  is(value: unknown): value is string | string[];
495
510
  }>;
511
+ polarity: z.ZodOptional<z.ZodEnum<{
512
+ positive: "positive";
513
+ negative: "negative";
514
+ neutral: "neutral";
515
+ uncertain: "uncertain";
516
+ }> & {
517
+ is(value: unknown): value is "positive" | "negative" | "neutral" | "uncertain";
518
+ }>;
519
+ strength: z.ZodOptional<z.ZodNumber>;
496
520
  }, z.core.$loose> & {
497
521
  is(value: unknown): value is {
498
522
  [x: string]: unknown;
499
523
  from: string;
500
524
  to: string;
501
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
525
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
502
526
  description?: string | string[] | undefined;
527
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
528
+ strength?: number | undefined;
503
529
  };
504
530
  }>>;
505
531
  external_references: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -587,8 +613,10 @@ export declare const addNodeOp: import("./define-operation.js").DefinedOperation
587
613
  [x: string]: unknown;
588
614
  from: string;
589
615
  to: string;
590
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
616
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
591
617
  description?: string | string[] | undefined;
618
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
619
+ strength?: number | undefined;
592
620
  }[] | undefined;
593
621
  external_references?: {
594
622
  role: "output" | "input" | "context" | "evidence" | "source" | "standard" | "prior_art";
@@ -786,19 +814,31 @@ export declare const addNodeOp: import("./define-operation.js").DefinedOperation
786
814
  selects: "selects";
787
815
  requires: "requires";
788
816
  disables: "disables";
817
+ influence: "influence";
789
818
  }> & {
790
- is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
819
+ is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
791
820
  };
792
821
  description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
793
822
  is(value: unknown): value is string | string[];
794
823
  }>;
824
+ polarity: z.ZodOptional<z.ZodEnum<{
825
+ positive: "positive";
826
+ negative: "negative";
827
+ neutral: "neutral";
828
+ uncertain: "uncertain";
829
+ }> & {
830
+ is(value: unknown): value is "positive" | "negative" | "neutral" | "uncertain";
831
+ }>;
832
+ strength: z.ZodOptional<z.ZodNumber>;
795
833
  }, z.core.$loose> & {
796
834
  is(value: unknown): value is {
797
835
  [x: string]: unknown;
798
836
  from: string;
799
837
  to: string;
800
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
838
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
801
839
  description?: string | string[] | undefined;
840
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
841
+ strength?: number | undefined;
802
842
  };
803
843
  }>>;
804
844
  external_references: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -886,8 +926,10 @@ export declare const addNodeOp: import("./define-operation.js").DefinedOperation
886
926
  [x: string]: unknown;
887
927
  from: string;
888
928
  to: string;
889
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
929
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
890
930
  description?: string | string[] | undefined;
931
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
932
+ strength?: number | undefined;
891
933
  }[] | undefined;
892
934
  external_references?: {
893
935
  role: "output" | "input" | "context" | "evidence" | "source" | "standard" | "prior_art";
@@ -187,19 +187,31 @@ export declare const addPlanTaskOp: import("./define-operation.js").DefinedOpera
187
187
  selects: "selects";
188
188
  requires: "requires";
189
189
  disables: "disables";
190
+ influence: "influence";
190
191
  }> & {
191
- is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
192
+ is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
192
193
  };
193
194
  description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
194
195
  is(value: unknown): value is string | string[];
195
196
  }>;
197
+ polarity: z.ZodOptional<z.ZodEnum<{
198
+ positive: "positive";
199
+ negative: "negative";
200
+ neutral: "neutral";
201
+ uncertain: "uncertain";
202
+ }> & {
203
+ is(value: unknown): value is "positive" | "negative" | "neutral" | "uncertain";
204
+ }>;
205
+ strength: z.ZodOptional<z.ZodNumber>;
196
206
  }, z.core.$loose> & {
197
207
  is(value: unknown): value is {
198
208
  [x: string]: unknown;
199
209
  from: string;
200
210
  to: string;
201
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
211
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
202
212
  description?: string | string[] | undefined;
213
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
214
+ strength?: number | undefined;
203
215
  };
204
216
  }>>;
205
217
  external_references: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -287,8 +299,10 @@ export declare const addPlanTaskOp: import("./define-operation.js").DefinedOpera
287
299
  [x: string]: unknown;
288
300
  from: string;
289
301
  to: string;
290
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
302
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
291
303
  description?: string | string[] | undefined;
304
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
305
+ strength?: number | undefined;
292
306
  }[] | undefined;
293
307
  external_references?: {
294
308
  role: "output" | "input" | "context" | "evidence" | "source" | "standard" | "prior_art";
@@ -484,19 +498,31 @@ export declare const addPlanTaskOp: import("./define-operation.js").DefinedOpera
484
498
  selects: "selects";
485
499
  requires: "requires";
486
500
  disables: "disables";
501
+ influence: "influence";
487
502
  }> & {
488
- is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
503
+ is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
489
504
  };
490
505
  description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
491
506
  is(value: unknown): value is string | string[];
492
507
  }>;
508
+ polarity: z.ZodOptional<z.ZodEnum<{
509
+ positive: "positive";
510
+ negative: "negative";
511
+ neutral: "neutral";
512
+ uncertain: "uncertain";
513
+ }> & {
514
+ is(value: unknown): value is "positive" | "negative" | "neutral" | "uncertain";
515
+ }>;
516
+ strength: z.ZodOptional<z.ZodNumber>;
493
517
  }, z.core.$loose> & {
494
518
  is(value: unknown): value is {
495
519
  [x: string]: unknown;
496
520
  from: string;
497
521
  to: string;
498
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
522
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
499
523
  description?: string | string[] | undefined;
524
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
525
+ strength?: number | undefined;
500
526
  };
501
527
  }>>;
502
528
  external_references: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -584,8 +610,10 @@ export declare const addPlanTaskOp: import("./define-operation.js").DefinedOpera
584
610
  [x: string]: unknown;
585
611
  from: string;
586
612
  to: string;
587
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
613
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
588
614
  description?: string | string[] | undefined;
615
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
616
+ strength?: number | undefined;
589
617
  }[] | undefined;
590
618
  external_references?: {
591
619
  role: "output" | "input" | "context" | "evidence" | "source" | "standard" | "prior_art";
@@ -187,19 +187,31 @@ export declare const addRelationshipOp: import("./define-operation.js").DefinedO
187
187
  selects: "selects";
188
188
  requires: "requires";
189
189
  disables: "disables";
190
+ influence: "influence";
190
191
  }> & {
191
- is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
192
+ is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
192
193
  };
193
194
  description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
194
195
  is(value: unknown): value is string | string[];
195
196
  }>;
197
+ polarity: z.ZodOptional<z.ZodEnum<{
198
+ positive: "positive";
199
+ negative: "negative";
200
+ neutral: "neutral";
201
+ uncertain: "uncertain";
202
+ }> & {
203
+ is(value: unknown): value is "positive" | "negative" | "neutral" | "uncertain";
204
+ }>;
205
+ strength: z.ZodOptional<z.ZodNumber>;
196
206
  }, z.core.$loose> & {
197
207
  is(value: unknown): value is {
198
208
  [x: string]: unknown;
199
209
  from: string;
200
210
  to: string;
201
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
211
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
202
212
  description?: string | string[] | undefined;
213
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
214
+ strength?: number | undefined;
203
215
  };
204
216
  }>>;
205
217
  external_references: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -287,8 +299,10 @@ export declare const addRelationshipOp: import("./define-operation.js").DefinedO
287
299
  [x: string]: unknown;
288
300
  from: string;
289
301
  to: string;
290
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
302
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
291
303
  description?: string | string[] | undefined;
304
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
305
+ strength?: number | undefined;
292
306
  }[] | undefined;
293
307
  external_references?: {
294
308
  role: "output" | "input" | "context" | "evidence" | "source" | "standard" | "prior_art";
@@ -327,19 +341,31 @@ export declare const addRelationshipOp: import("./define-operation.js").DefinedO
327
341
  selects: "selects";
328
342
  requires: "requires";
329
343
  disables: "disables";
344
+ influence: "influence";
330
345
  }> & {
331
- is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
346
+ is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
332
347
  };
333
348
  description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
334
349
  is(value: unknown): value is string | string[];
335
350
  }>;
351
+ polarity: z.ZodOptional<z.ZodEnum<{
352
+ positive: "positive";
353
+ negative: "negative";
354
+ neutral: "neutral";
355
+ uncertain: "uncertain";
356
+ }> & {
357
+ is(value: unknown): value is "positive" | "negative" | "neutral" | "uncertain";
358
+ }>;
359
+ strength: z.ZodOptional<z.ZodNumber>;
336
360
  }, z.core.$loose> & {
337
361
  is(value: unknown): value is {
338
362
  [x: string]: unknown;
339
363
  from: string;
340
364
  to: string;
341
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
365
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
342
366
  description?: string | string[] | undefined;
367
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
368
+ strength?: number | undefined;
343
369
  };
344
370
  };
345
371
  }, z.core.$strip>, z.ZodObject<{
@@ -525,19 +551,31 @@ export declare const addRelationshipOp: import("./define-operation.js").DefinedO
525
551
  selects: "selects";
526
552
  requires: "requires";
527
553
  disables: "disables";
554
+ influence: "influence";
528
555
  }> & {
529
- is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
556
+ is(value: unknown): value is "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
530
557
  };
531
558
  description: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]> & {
532
559
  is(value: unknown): value is string | string[];
533
560
  }>;
561
+ polarity: z.ZodOptional<z.ZodEnum<{
562
+ positive: "positive";
563
+ negative: "negative";
564
+ neutral: "neutral";
565
+ uncertain: "uncertain";
566
+ }> & {
567
+ is(value: unknown): value is "positive" | "negative" | "neutral" | "uncertain";
568
+ }>;
569
+ strength: z.ZodOptional<z.ZodNumber>;
534
570
  }, z.core.$loose> & {
535
571
  is(value: unknown): value is {
536
572
  [x: string]: unknown;
537
573
  from: string;
538
574
  to: string;
539
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
575
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
540
576
  description?: string | string[] | undefined;
577
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
578
+ strength?: number | undefined;
541
579
  };
542
580
  }>>;
543
581
  external_references: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -625,8 +663,10 @@ export declare const addRelationshipOp: import("./define-operation.js").DefinedO
625
663
  [x: string]: unknown;
626
664
  from: string;
627
665
  to: string;
628
- type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables";
666
+ type: "refines" | "realises" | "implements" | "depends_on" | "constrained_by" | "affects" | "supersedes" | "must_preserve" | "performs" | "part_of" | "precedes" | "must_follow" | "blocks" | "routes_to" | "governed_by" | "modifies" | "triggered_by" | "applies_to" | "produces" | "consumes" | "transforms_into" | "selects" | "requires" | "disables" | "influence";
629
667
  description?: string | string[] | undefined;
668
+ polarity?: "positive" | "negative" | "neutral" | "uncertain" | undefined;
669
+ strength?: number | undefined;
630
670
  }[] | undefined;
631
671
  external_references?: {
632
672
  role: "output" | "input" | "context" | "evidence" | "source" | "standard" | "prior_art";