{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "pipelineId": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "document": {
      "type": "object",
      "properties": {"version":{"type":"number","const":1},"kind":{"type":"string","const":"studio-plan"},"metadata":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":128},"description":{"type":"string","maxLength":2048},"projectId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"workspaceId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"tags":{"type":"array","items":{"type":"string","minLength":1}}},"required":["name","description","projectId","workspaceId"]},"graph":{"type":"object","properties":{"id":{"type":"string","minLength":1},"nodes":{"type":"array","items":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"description":{"type":"string"},"position":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"inputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"outputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"policy":{"type":"object","properties":{"write":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["id","version"],"additionalProperties":false},"approval":{"type":"object","properties":{"required":{"type":"boolean"},"level":{"type":"string","enum":["node","branch","workflow"]}},"required":["required"]},"runtimeGate":{"type":"object","properties":{"enabled":{"type":"boolean"},"reason":{"type":"string","minLength":1}},"required":["enabled"]},"access":{"type":"object","properties":{"allowedIntegrationIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedMcpServerIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedSecretProviderIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}}},"sensitivity":{"type":"object","properties":{"classification":{"type":"string","enum":["low","moderate","high"]}}}}},"status":{"type":"object","properties":{"level":{"type":"string","enum":["ok","warning","error"]},"issues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"scope":{"type":"string","enum":["graph","node","edge"]},"nodeId":{"type":"string","minLength":1},"edgeId":{"type":"string","minLength":1},"severity":{"type":"string","enum":["info","warning","error"]},"code":{"type":"string","minLength":1},"message":{"type":"string","minLength":1}},"required":["id","scope","severity","code","message"]}}},"required":["level"]},"attachedSkillIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"kind":{"type":"string","const":"ingress"},"ingress":{"type":"object","properties":{"dataEndpointId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"dataEndpointName":{"type":"string","minLength":1},"mode":{"type":"string","enum":["full","incremental"]},"output":{"type":"string","minLength":1},"flow":{"type":"object","properties":{"checkpoint":{"type":"object","properties":{"enabled":{"default":true,"type":"boolean"},"resetPolicy":{"default":"manual","type":"string","enum":["manual"]}}},"batch":{"type":"object","properties":{"size":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}}},"retry":{"type":"object","properties":{"maxAttempts":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"backoff":{"type":"string","enum":["fixed","exponential"]}}}}},"concurrency":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"anomaly":{"type":"object","properties":{"rowCountDropThreshold":{"type":"number","exclusiveMinimum":0}}},"strategy":{"type":"string","enum":["llm","parser","hybrid"]},"prompt":{"type":"string","minLength":1}},"required":["strategy"],"additionalProperties":false}},"required":["id","label","inputs","outputs","policy","kind","ingress"]},{"type":"object","properties":{"id":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"description":{"type":"string"},"position":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"inputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"outputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"policy":{"type":"object","properties":{"write":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["id","version"],"additionalProperties":false},"approval":{"type":"object","properties":{"required":{"type":"boolean"},"level":{"type":"string","enum":["node","branch","workflow"]}},"required":["required"]},"runtimeGate":{"type":"object","properties":{"enabled":{"type":"boolean"},"reason":{"type":"string","minLength":1}},"required":["enabled"]},"access":{"type":"object","properties":{"allowedIntegrationIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedMcpServerIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedSecretProviderIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}}},"sensitivity":{"type":"object","properties":{"classification":{"type":"string","enum":["low","moderate","high"]}}}}},"status":{"type":"object","properties":{"level":{"type":"string","enum":["ok","warning","error"]},"issues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"scope":{"type":"string","enum":["graph","node","edge"]},"nodeId":{"type":"string","minLength":1},"edgeId":{"type":"string","minLength":1},"severity":{"type":"string","enum":["info","warning","error"]},"code":{"type":"string","minLength":1},"message":{"type":"string","minLength":1}},"required":["id","scope","severity","code","message"]}}},"required":["level"]},"attachedSkillIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"kind":{"type":"string","const":"transform"},"transform":{"type":"object","properties":{"capabilityRefId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"function":{"type":"string","minLength":1},"input":{"anyOf":[{"type":"string","minLength":1},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","minLength":1}}]},"output":{"type":"string","minLength":1},"params":{"default":{},"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["function"]}},"required":["id","label","inputs","outputs","policy","kind","transform"]},{"type":"object","properties":{"id":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"description":{"type":"string"},"position":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"inputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"outputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"policy":{"type":"object","properties":{"write":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["id","version"],"additionalProperties":false},"approval":{"type":"object","properties":{"required":{"type":"boolean"},"level":{"type":"string","enum":["node","branch","workflow"]}},"required":["required"]},"runtimeGate":{"type":"object","properties":{"enabled":{"type":"boolean"},"reason":{"type":"string","minLength":1}},"required":["enabled"]},"access":{"type":"object","properties":{"allowedIntegrationIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedMcpServerIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedSecretProviderIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}}},"sensitivity":{"type":"object","properties":{"classification":{"type":"string","enum":["low","moderate","high"]}}}}},"status":{"type":"object","properties":{"level":{"type":"string","enum":["ok","warning","error"]},"issues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"scope":{"type":"string","enum":["graph","node","edge"]},"nodeId":{"type":"string","minLength":1},"edgeId":{"type":"string","minLength":1},"severity":{"type":"string","enum":["info","warning","error"]},"code":{"type":"string","minLength":1},"message":{"type":"string","minLength":1}},"required":["id","scope","severity","code","message"]}}},"required":["level"]},"attachedSkillIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"kind":{"type":"string","const":"asset"},"asset":{"type":"object","properties":{"assetName":{"type":"string","minLength":1},"dataEndpointId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"dataEndpointName":{"type":"string","minLength":1},"source":{"type":"string","minLength":1},"output":{"type":"string","minLength":1},"stage":{"type":"string","enum":["raw","clean","enriched","semantic","analytics"]},"mapping":{"type":"object","properties":{"outputColumns":{"type":"array","items":{"type":"string","minLength":1}},"rules":{"type":"array","items":{"type":"object","properties":{"target":{"type":"string","minLength":1},"source":{"type":"string","minLength":1},"mode":{"type":"string","enum":["map","ignore"]}},"required":["target"]}}}},"storage":{"type":"object","properties":{"writeMode":{"type":"string","enum":["append","replace","upsert"]}}}}}},"required":["id","label","inputs","outputs","policy","kind","asset"]},{"type":"object","properties":{"id":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"description":{"type":"string"},"position":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"inputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"outputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"policy":{"type":"object","properties":{"write":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["id","version"],"additionalProperties":false},"approval":{"type":"object","properties":{"required":{"type":"boolean"},"level":{"type":"string","enum":["node","branch","workflow"]}},"required":["required"]},"runtimeGate":{"type":"object","properties":{"enabled":{"type":"boolean"},"reason":{"type":"string","minLength":1}},"required":["enabled"]},"access":{"type":"object","properties":{"allowedIntegrationIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedMcpServerIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedSecretProviderIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}}},"sensitivity":{"type":"object","properties":{"classification":{"type":"string","enum":["low","moderate","high"]}}}}},"status":{"type":"object","properties":{"level":{"type":"string","enum":["ok","warning","error"]},"issues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"scope":{"type":"string","enum":["graph","node","edge"]},"nodeId":{"type":"string","minLength":1},"edgeId":{"type":"string","minLength":1},"severity":{"type":"string","enum":["info","warning","error"]},"code":{"type":"string","minLength":1},"message":{"type":"string","minLength":1}},"required":["id","scope","severity","code","message"]}}},"required":["level"]},"attachedSkillIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"kind":{"type":"string","const":"ontology-mapping"},"ontologyMapping":{"type":"object","properties":{"packageId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"inputs":{"default":{},"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","minLength":1}},"output":{"type":"string","minLength":1},"mode":{"default":"upsert","type":"string","enum":["upsert","snapshot","delta"]},"entities":{"default":[],"type":"array","items":{"type":"object","properties":{"class":{"type":"string","minLength":1},"id":{"anyOf":[{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"transform":{"type":"object","properties":{"function":{"type":"string","minLength":1},"input":{"anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","minLength":1}}]}},"required":["function","input"]}},"required":["transform"]}]},"properties":{"default":{},"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1},"as":{"type":"string","enum":["string","number","integer","boolean","dateTime"]}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"transform":{"type":"object","properties":{"function":{"type":"string","minLength":1},"input":{"anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","minLength":1}}]}},"required":["function","input"]}},"required":["transform"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]}},"identities":{"default":[],"type":"array","items":{"type":"object","properties":{"sourceNamespace":{"type":"string","minLength":1},"source_namespace":{"type":"string","minLength":1},"sourceKey":{"type":"string","minLength":1},"source_key":{"type":"string","minLength":1},"sourceId":{"anyOf":[{"type":"string","minLength":1},{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1},"as":{"type":"string","enum":["string","number","integer","boolean","dateTime"]}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"transform":{"type":"object","properties":{"function":{"type":"string","minLength":1},"input":{"anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","minLength":1}}]}},"required":["function","input"]}},"required":["transform"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]}]},"source_id":{"anyOf":[{"type":"string","minLength":1},{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1},"as":{"type":"string","enum":["string","number","integer","boolean","dateTime"]}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"transform":{"type":"object","properties":{"function":{"type":"string","minLength":1},"input":{"anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","minLength":1}}]}},"required":["function","input"]}},"required":["transform"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]}]},"validFrom":{"type":"string","minLength":1},"validTo":{"type":"string","minLength":1}}}},"provenance":{"default":{},"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]}}},"required":["class","id"]}},"relationships":{"default":[],"type":"array","items":{"type":"object","properties":{"predicate":{"type":"string","minLength":1},"subject":{"anyOf":[{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"transform":{"type":"object","properties":{"function":{"type":"string","minLength":1},"input":{"anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","minLength":1}}]}},"required":["function","input"]}},"required":["transform"]}]},"object":{"anyOf":[{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"transform":{"type":"object","properties":{"function":{"type":"string","minLength":1},"input":{"anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","minLength":1}}]}},"required":["function","input"]}},"required":["transform"]}]},"properties":{"default":{},"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1},"as":{"type":"string","enum":["string","number","integer","boolean","dateTime"]}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"transform":{"type":"object","properties":{"function":{"type":"string","minLength":1},"input":{"anyOf":[{"type":"string","minLength":1},{"type":"array","items":{"type":"string","minLength":1}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","minLength":1}}]}},"required":["function","input"]}},"required":["transform"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]}},"provenance":{"default":{},"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"}]}}},"required":["predicate","subject","object"]}},"mappingUri":{"type":"string","minLength":1},"mappingSha256":{"type":"string","minLength":1}}}},"required":["id","label","inputs","outputs","policy","kind","ontologyMapping"]},{"type":"object","properties":{"id":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"description":{"type":"string"},"position":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"inputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"outputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"policy":{"type":"object","properties":{"write":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["id","version"],"additionalProperties":false},"approval":{"type":"object","properties":{"required":{"type":"boolean"},"level":{"type":"string","enum":["node","branch","workflow"]}},"required":["required"]},"runtimeGate":{"type":"object","properties":{"enabled":{"type":"boolean"},"reason":{"type":"string","minLength":1}},"required":["enabled"]},"access":{"type":"object","properties":{"allowedIntegrationIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedMcpServerIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedSecretProviderIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}}},"sensitivity":{"type":"object","properties":{"classification":{"type":"string","enum":["low","moderate","high"]}}}}},"status":{"type":"object","properties":{"level":{"type":"string","enum":["ok","warning","error"]},"issues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"scope":{"type":"string","enum":["graph","node","edge"]},"nodeId":{"type":"string","minLength":1},"edgeId":{"type":"string","minLength":1},"severity":{"type":"string","enum":["info","warning","error"]},"code":{"type":"string","minLength":1},"message":{"type":"string","minLength":1}},"required":["id","scope","severity","code","message"]}}},"required":["level"]},"attachedSkillIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"kind":{"type":"string","const":"assertion-mapping"},"assertionMapping":{"type":"object","properties":{"inputs":{"default":{},"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","minLength":1}},"output":{"type":"string","minLength":1},"assertions":{"default":[],"type":"array","items":{"type":"object","properties":{"source":{"type":"string","minLength":1},"subjectRef":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"predicate":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"objectRef":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"value":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"assertionType":{"default":"claim","type":"string","enum":["entity","property","relationship","classification","claim"]},"confidence":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"sourceReliability":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"matchConfidence":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"forecastProbability":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"canonicalEntityId":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"identityRevision":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"validFrom":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"validTo":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"evidenceLinks":{"default":[],"type":"array","items":{"type":"object","properties":{"captureId":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"relation":{"default":"supports","type":"string","enum":["supports","contradicts","repeats"]},"selector":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"sourceReliability":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]}},"required":["captureId","selector"],"additionalProperties":false}},"sourceArtifactId":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"sourceRecordId":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"citationUrl":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]},"evidence":{"default":{},"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]}},"metadata":{"default":{},"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"template":{"type":"string","minLength":1}},"required":["template"]},{"type":"object","properties":{"literal":{}},"required":["literal"]}]}}},"required":["source","subjectRef","predicate"]}}}}},"required":["id","label","inputs","outputs","policy","kind","assertionMapping"]},{"type":"object","properties":{"id":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"description":{"type":"string"},"position":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"inputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"outputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"policy":{"type":"object","properties":{"write":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["id","version"],"additionalProperties":false},"approval":{"type":"object","properties":{"required":{"type":"boolean"},"level":{"type":"string","enum":["node","branch","workflow"]}},"required":["required"]},"runtimeGate":{"type":"object","properties":{"enabled":{"type":"boolean"},"reason":{"type":"string","minLength":1}},"required":["enabled"]},"access":{"type":"object","properties":{"allowedIntegrationIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedMcpServerIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedSecretProviderIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}}},"sensitivity":{"type":"object","properties":{"classification":{"type":"string","enum":["low","moderate","high"]}}}}},"status":{"type":"object","properties":{"level":{"type":"string","enum":["ok","warning","error"]},"issues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"scope":{"type":"string","enum":["graph","node","edge"]},"nodeId":{"type":"string","minLength":1},"edgeId":{"type":"string","minLength":1},"severity":{"type":"string","enum":["info","warning","error"]},"code":{"type":"string","minLength":1},"message":{"type":"string","minLength":1}},"required":["id","scope","severity","code","message"]}}},"required":["level"]},"attachedSkillIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"kind":{"type":"string","const":"query"},"query":{"type":"object","properties":{}}},"required":["id","label","inputs","outputs","policy","kind","query"]},{"type":"object","properties":{"id":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"description":{"type":"string"},"position":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"inputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"outputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"policy":{"type":"object","properties":{"write":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["id","version"],"additionalProperties":false},"approval":{"type":"object","properties":{"required":{"type":"boolean"},"level":{"type":"string","enum":["node","branch","workflow"]}},"required":["required"]},"runtimeGate":{"type":"object","properties":{"enabled":{"type":"boolean"},"reason":{"type":"string","minLength":1}},"required":["enabled"]},"access":{"type":"object","properties":{"allowedIntegrationIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedMcpServerIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedSecretProviderIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}}},"sensitivity":{"type":"object","properties":{"classification":{"type":"string","enum":["low","moderate","high"]}}}}},"status":{"type":"object","properties":{"level":{"type":"string","enum":["ok","warning","error"]},"issues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"scope":{"type":"string","enum":["graph","node","edge"]},"nodeId":{"type":"string","minLength":1},"edgeId":{"type":"string","minLength":1},"severity":{"type":"string","enum":["info","warning","error"]},"code":{"type":"string","minLength":1},"message":{"type":"string","minLength":1}},"required":["id","scope","severity","code","message"]}}},"required":["level"]},"attachedSkillIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"kind":{"type":"string","const":"predict"},"predict":{"type":"object","properties":{"forecasterId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"forecasterSlug":{"type":"string","minLength":1},"subjectRef":{"anyOf":[{"type":"string","minLength":1},{"type":"object","properties":{"from":{"type":"string","minLength":1}},"required":["from"]},{"type":"object","properties":{"literal":{"type":"string","minLength":1}},"required":["literal"]}]},"horizon":{"anyOf":[{"type":"string","minLength":1},{"type":"null"}]},"horizonEndsAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"params":{"default":{},"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["subjectRef","horizonEndsAt"]}},"required":["id","label","inputs","outputs","policy","kind","predict"]},{"type":"object","properties":{"id":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"description":{"type":"string"},"position":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"inputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"outputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"policy":{"type":"object","properties":{"write":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["id","version"],"additionalProperties":false},"approval":{"type":"object","properties":{"required":{"type":"boolean"},"level":{"type":"string","enum":["node","branch","workflow"]}},"required":["required"]},"runtimeGate":{"type":"object","properties":{"enabled":{"type":"boolean"},"reason":{"type":"string","minLength":1}},"required":["enabled"]},"access":{"type":"object","properties":{"allowedIntegrationIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedMcpServerIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedSecretProviderIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}}},"sensitivity":{"type":"object","properties":{"classification":{"type":"string","enum":["low","moderate","high"]}}}}},"status":{"type":"object","properties":{"level":{"type":"string","enum":["ok","warning","error"]},"issues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"scope":{"type":"string","enum":["graph","node","edge"]},"nodeId":{"type":"string","minLength":1},"edgeId":{"type":"string","minLength":1},"severity":{"type":"string","enum":["info","warning","error"]},"code":{"type":"string","minLength":1},"message":{"type":"string","minLength":1}},"required":["id","scope","severity","code","message"]}}},"required":["level"]},"attachedSkillIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"kind":{"type":"string","const":"skill"},"skill":{"type":"object","properties":{"skillIds":{"minItems":1,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"mode":{"type":"string","enum":["authoring-assist","execution-assist","validation-assist"]}},"required":["skillIds","mode"]}},"required":["id","label","inputs","outputs","policy","kind","skill"]},{"type":"object","properties":{"id":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"description":{"type":"string"},"position":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"inputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"outputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"policy":{"type":"object","properties":{"write":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["id","version"],"additionalProperties":false},"approval":{"type":"object","properties":{"required":{"type":"boolean"},"level":{"type":"string","enum":["node","branch","workflow"]}},"required":["required"]},"runtimeGate":{"type":"object","properties":{"enabled":{"type":"boolean"},"reason":{"type":"string","minLength":1}},"required":["enabled"]},"access":{"type":"object","properties":{"allowedIntegrationIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedMcpServerIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedSecretProviderIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}}},"sensitivity":{"type":"object","properties":{"classification":{"type":"string","enum":["low","moderate","high"]}}}}},"status":{"type":"object","properties":{"level":{"type":"string","enum":["ok","warning","error"]},"issues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"scope":{"type":"string","enum":["graph","node","edge"]},"nodeId":{"type":"string","minLength":1},"edgeId":{"type":"string","minLength":1},"severity":{"type":"string","enum":["info","warning","error"]},"code":{"type":"string","minLength":1},"message":{"type":"string","minLength":1}},"required":["id","scope","severity","code","message"]}}},"required":["level"]},"attachedSkillIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"kind":{"type":"string","const":"egress"},"egress":{"type":"object","properties":{"dataEndpointId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"dataEndpointName":{"type":"string","minLength":1},"source":{"type":"string","minLength":1},"writeMode":{"type":"string","enum":["append","replace","upsert"]}}}},"required":["id","label","inputs","outputs","policy","kind","egress"]},{"type":"object","properties":{"id":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"description":{"type":"string"},"position":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"inputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"outputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"policy":{"type":"object","properties":{"write":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["id","version"],"additionalProperties":false},"approval":{"type":"object","properties":{"required":{"type":"boolean"},"level":{"type":"string","enum":["node","branch","workflow"]}},"required":["required"]},"runtimeGate":{"type":"object","properties":{"enabled":{"type":"boolean"},"reason":{"type":"string","minLength":1}},"required":["enabled"]},"access":{"type":"object","properties":{"allowedIntegrationIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedMcpServerIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedSecretProviderIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}}},"sensitivity":{"type":"object","properties":{"classification":{"type":"string","enum":["low","moderate","high"]}}}}},"status":{"type":"object","properties":{"level":{"type":"string","enum":["ok","warning","error"]},"issues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"scope":{"type":"string","enum":["graph","node","edge"]},"nodeId":{"type":"string","minLength":1},"edgeId":{"type":"string","minLength":1},"severity":{"type":"string","enum":["info","warning","error"]},"code":{"type":"string","minLength":1},"message":{"type":"string","minLength":1}},"required":["id","scope","severity","code","message"]}}},"required":["level"]},"attachedSkillIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"kind":{"type":"string","const":"ontology_materializer"},"ontologyMaterializer":{"type":"object","properties":{"packageId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"inputs":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","minLength":1}},"dataEndpointId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"dataEndpointName":{"type":"string","minLength":1},"mode":{"type":"string","enum":["upsert","snapshot","delta"]},"atomicity":{"type":"string","enum":["transactional","per_unit"]},"validation":{"type":"object","properties":{"unknownTerms":{"type":"string","enum":["reject_fact_set","quarantine_record","allow_draft"]},"invalidRecords":{"type":"string","enum":["reject_fact_set","quarantine"]},"cardinality":{"type":"string","enum":["enforce","warn","skip"]},"datatype":{"type":"string","enum":["enforce","warn","skip"]}}},"conflictPolicy":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","properties":{"strategy":{"type":"string","enum":["source_priority","override_first"]},"priority":{"type":"array","items":{"type":"string","minLength":1}}}}}}}},"required":["id","label","inputs","outputs","policy","kind","ontologyMaterializer"]},{"type":"object","properties":{"id":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"description":{"type":"string"},"position":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"inputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"outputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"policy":{"type":"object","properties":{"write":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["id","version"],"additionalProperties":false},"approval":{"type":"object","properties":{"required":{"type":"boolean"},"level":{"type":"string","enum":["node","branch","workflow"]}},"required":["required"]},"runtimeGate":{"type":"object","properties":{"enabled":{"type":"boolean"},"reason":{"type":"string","minLength":1}},"required":["enabled"]},"access":{"type":"object","properties":{"allowedIntegrationIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedMcpServerIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedSecretProviderIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}}},"sensitivity":{"type":"object","properties":{"classification":{"type":"string","enum":["low","moderate","high"]}}}}},"status":{"type":"object","properties":{"level":{"type":"string","enum":["ok","warning","error"]},"issues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"scope":{"type":"string","enum":["graph","node","edge"]},"nodeId":{"type":"string","minLength":1},"edgeId":{"type":"string","minLength":1},"severity":{"type":"string","enum":["info","warning","error"]},"code":{"type":"string","minLength":1},"message":{"type":"string","minLength":1}},"required":["id","scope","severity","code","message"]}}},"required":["level"]},"attachedSkillIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"kind":{"type":"string","const":"assertion_materializer"},"assertionMaterializer":{"type":"object","properties":{"inputs":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","minLength":1}},"mode":{"default":"insert","type":"string","const":"insert"},"invalidRecords":{"default":"reject_batch","type":"string","enum":["reject_batch","skip"]},"atomicity":{"default":"per_unit","type":"string","enum":["transactional","per_unit"]},"policy":{"default":{"duplicate":"merge","unreviewedConflict":"supersede","reviewedConflict":"preserve_and_flag","correction":"mark_original_corrected"},"type":"object","properties":{"duplicate":{"default":"merge","type":"string","enum":["merge","keep","reject"]},"unreviewedConflict":{"default":"supersede","type":"string","enum":["supersede","keep","reject"]},"reviewedConflict":{"default":"preserve_and_flag","type":"string","enum":["preserve_and_flag","reject"]},"correction":{"default":"mark_original_corrected","type":"string","enum":["mark_original_corrected","link_only"]}}}}}},"required":["id","label","inputs","outputs","policy","kind","assertionMaterializer"]},{"type":"object","properties":{"id":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"description":{"type":"string"},"position":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"inputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"outputs":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"direction":{"type":"string","enum":["input","output"]},"interface":{"type":"object","properties":{"shape":{"type":"string","enum":["record","collection","document","blob","ontology-entity","ontology-relationship","ont-fact-set","assertions"]},"schemaRef":{"type":"string","minLength":1},"semantics":{"type":"array","items":{"type":"string","minLength":1}}},"required":["shape"]},"required":{"type":"boolean"}},"required":["key","label","direction","interface"],"additionalProperties":false}},"policy":{"type":"object","properties":{"write":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["id","version"],"additionalProperties":false},"approval":{"type":"object","properties":{"required":{"type":"boolean"},"level":{"type":"string","enum":["node","branch","workflow"]}},"required":["required"]},"runtimeGate":{"type":"object","properties":{"enabled":{"type":"boolean"},"reason":{"type":"string","minLength":1}},"required":["enabled"]},"access":{"type":"object","properties":{"allowedIntegrationIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedMcpServerIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"allowedSecretProviderIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}}},"sensitivity":{"type":"object","properties":{"classification":{"type":"string","enum":["low","moderate","high"]}}}}},"status":{"type":"object","properties":{"level":{"type":"string","enum":["ok","warning","error"]},"issues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"scope":{"type":"string","enum":["graph","node","edge"]},"nodeId":{"type":"string","minLength":1},"edgeId":{"type":"string","minLength":1},"severity":{"type":"string","enum":["info","warning","error"]},"code":{"type":"string","minLength":1},"message":{"type":"string","minLength":1}},"required":["id","scope","severity","code","message"]}}},"required":["level"]},"attachedSkillIds":{"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"kind":{"type":"string","const":"mcp-tool"},"mcpTool":{"type":"object","properties":{"capabilityRefId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"toolName":{"type":"string","minLength":1},"input":{"type":"string","minLength":1},"output":{"type":"string","minLength":1},"arguments":{"default":{},"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"field":{"type":"string","minLength":1}},"required":["field"],"additionalProperties":false},{"type":"object","properties":{"value":{}},"required":["value"],"additionalProperties":false}]}},"resultField":{"default":"mcp_result","type":"string","minLength":1},"concurrency":{"type":"integer","minimum":1,"maximum":8}}}},"required":["id","label","inputs","outputs","policy","kind","mcpTool"]}]}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"fromNodeId":{"type":"string","minLength":1},"fromOutput":{"type":"string","minLength":1},"toNodeId":{"type":"string","minLength":1},"toInput":{"type":"string","minLength":1},"status":{"type":"string","enum":["valid","warning","invalid"]}},"required":["id","fromNodeId","fromOutput","toNodeId","toInput"]}},"perspectives":{"type":"object","properties":{"defaultView":{"type":"string","enum":["workflow","data","permissions","health","assets","ai"]},"availableViews":{"minItems":1,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","enum":["workflow","data","permissions","health","assets","ai"]},"label":{"type":"string","minLength":1},"description":{"type":"string","minLength":1},"defaultVisiblePanels":{"type":"array","items":{"type":"string","enum":["graph","inspector","ai-rail","impact","history"]}},"enabledOverlays":{"type":"array","items":{"type":"string","enum":["interfaces","policies","health","assets","ai-suggestions"]}}},"required":["id","label"]}}},"required":["defaultView","availableViews"]},"policySummary":{"type":"object","properties":{"approvalRequiredNodeIds":{"type":"array","items":{"type":"string","minLength":1}},"runtimeGatedNodeIds":{"type":"array","items":{"type":"string","minLength":1}},"highSensitivityNodeIds":{"type":"array","items":{"type":"string","minLength":1}}},"required":["approvalRequiredNodeIds","runtimeGatedNodeIds","highSensitivityNodeIds"]},"validationSummary":{"type":"object","properties":{"valid":{"type":"boolean"},"issues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"scope":{"type":"string","enum":["graph","node","edge"]},"nodeId":{"type":"string","minLength":1},"edgeId":{"type":"string","minLength":1},"severity":{"type":"string","enum":["info","warning","error"]},"code":{"type":"string","minLength":1},"message":{"type":"string","minLength":1}},"required":["id","scope","severity","code","message"]}}},"required":["valid","issues"]},"draftState":{"type":"object","properties":{"dirty":{"type":"boolean"},"basedOnVersionId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"unsavedPatchCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["dirty","unsavedPatchCount"]}},"required":["id","nodes","edges"]}},
      "required": ["version","kind","metadata","graph"]
    },
    "workspaceState": {
      "type": "object",
      "properties": {"currentMode":{"type":"string","enum":["authoring","lineage"]},"currentView":{"type":"string","enum":["workflow","data","permissions","health","assets","ai"]},"selection":{"oneOf":[{"type":"object","properties":{"scope":{"type":"string","const":"graph"}},"required":["scope"]},{"type":"object","properties":{"scope":{"type":"string","const":"node"},"nodeId":{"type":"string","minLength":1}},"required":["scope","nodeId"]},{"type":"object","properties":{"scope":{"type":"string","const":"edge"},"edgeId":{"type":"string","minLength":1}},"required":["scope","edgeId"]}]},"viewport":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"},"zoom":{"type":"number","exclusiveMinimum":0}},"required":["x","y","zoom"]},"pinnedPanels":{"type":"array","items":{"type":"string","enum":["inspector","ai-rail","impact","history"]}},"expandedNodeIds":{"type":"array","items":{"type":"string","minLength":1}},"highlightedNodeIds":{"type":"array","items":{"type":"string","minLength":1}},"highlightedEdgeIds":{"type":"array","items":{"type":"string","minLength":1}},"availableActions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1},"label":{"type":"string","minLength":1},"kind":{"type":"string","enum":["fixed","ai-suggested"]},"scope":{"type":"string","enum":["graph","node","edge"]},"targetNodeId":{"type":"string","minLength":1},"targetEdgeId":{"type":"string","minLength":1},"intent":{"type":"string","minLength":1},"rationale":{"type":"string","minLength":1},"suggestedPrompt":{"type":"string","minLength":1}},"required":["id","label","kind","scope"]}}},
      "required": ["currentView"]
    },
    "basedOnVersionId": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    },
    "idempotencyKey": {
      "type": "string",
      "minLength": 8,
      "maxLength": 200
    },
    "projectId": {
      "type": "string",
      "format": "uuid",
      "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
    }
  },
  "required": [
    "pipelineId",
    "document",
    "idempotencyKey",
    "projectId"
  ],
  "additionalProperties": false
}
