{
  "title": "Group around an alternative",
  "subtitle": "Keep an option together with its constraints and the tradeoffs it introduces.",
  "width": 1000,
  "height": 875,
  "eyebrow": "ILLUSTRATIVE GROUPING PATTERN",
  "footer": "Authored grouping example · one native research frame and three illustrative cards · no model call",
  "nodes": [
    {
      "id": "G",
      "kind": "frame",
      "title": "Compare one option",
      "body": "Illustrative group · keep related evidence and reasoning together.",
      "x": 35,
      "y": 25,
      "width": 930,
      "height": 815,
      "memberCount": 3,
      "origin": "human",
      "metadata": {
        "nodeIds": [
          "A",
          "B",
          "C"
        ],
        "illustrative": true
      }
    },
    {
      "id": "A",
      "kind": "idea",
      "title": "Option",
      "body": "Describe one possible direction before choosing.",
      "x": 374,
      "y": 145,
      "parentId": "G",
      "origin": "human"
    },
    {
      "id": "B",
      "kind": "note",
      "title": "Constraints",
      "body": "Limits this option must respect.",
      "x": 70,
      "y": 545,
      "parentId": "G",
      "origin": "human"
    },
    {
      "id": "C",
      "kind": "insight",
      "title": "Tradeoffs",
      "body": "Benefits, costs and consequences to compare.",
      "x": 678,
      "y": 545,
      "parentId": "G",
      "origin": "human"
    }
  ],
  "edges": [
    {
      "id": "B-A",
      "from": "B",
      "to": "A",
      "channel": "support",
      "fromPort": "out",
      "fromSide": "top",
      "labelX": 325,
      "labelY": 450,
      "relation": "limits",
      "annotation": "What the option must stay within",
      "toPort": "in"
    },
    {
      "id": "C-A",
      "from": "C",
      "to": "A",
      "channel": "support",
      "fromPort": "out",
      "fromSide": "top",
      "labelX": 675,
      "labelY": 450,
      "relation": "qualifies",
      "annotation": "When this option is a good fit",
      "toPort": "in",
      "toSide": "bottom"
    }
  ],
  "provenance": {
    "authorship": "Entirely authored illustrative grouping pattern, captured using native Synatrail ResearchNode/frame and relationship components. Not a model response or executed investigation.",
    "definition": {
      "path": "scripts/cookbook-group-graphs.mjs",
      "sha256": "f38e74ead79a30fc573c6029ba73ad044fdc61b4c9e29080da268bae7aee1a2d"
    },
    "liveInvestigationChanged": false,
    "illustrativeFrameCount": 1,
    "illustrativeCardCount": 3,
    "providerCalls": 0
  }
}
