{
  "handle": "Plan",
  "gloss": "An ordered sequence of steps to achieve a goal",
  "mechanism": "An {{artifact}} containing a structured {{sequence}} of {{step}}s designed to transition a {{system}} from a current {{state}} to a target {{goal}}. Unlike a simple list, a Plan enforces causal dependency between steps and resource allocation, and tracks the attached {{risk}}s that may derail it.",
  "signature": [
    "Artifact(Step)"
  ],
  "data_schema": {
    "type": "object",
    "required": [
      "plan_id",
      "goal_ref",
      "initial_state",
      "steps",
      "status"
    ],
    "properties": {
      "plan_id": {
        "type": "string"
      },
      "goal_ref": {
        "type": "string",
        "description": "Pointer to the Goal this plan serves"
      },
      "steps": {
        "type": "array",
        "items": {
          "type": "object"
        },
        "description": "Ordered sequence of Steps"
      },
      "status": {
        "type": "string",
        "enum": [
          "Draft",
          "Approved",
          "In_Progress",
          "Done"
        ]
      },
      "estimated_cost": {
        "type": "object",
        "description": "Total resource budget required"
      },
      "created_at": {
        "type": "string",
        "format": "date-time"
      },
      "risks": {
        "type": "array",
        "description": "Attached {{risk}}s that may derail the plan."
      },
      "initial_state": {
        "type": "object",
        "description": "The state the plan transitions from."
      }
    }
  },
  "invariants": [
    "Ordering: Steps must be causally sortable.",
    "Termination: Plan must have a defined end state."
  ],
  "_meta": {
    "tier": 0,
    "ring": 0,
    "supersedes": [
      "sema:Plan#mh:SHA-256:64f273fc1710ca9d5b52a39758cf8e68279778d32856de4629a44ad7a7f5a4bc",
      "sema:Plan#mh:SHA-256:02b62f57c699bb389876d147d715a7ce074f7838a1800226c165ffc601522c3d",
      "sema:Plan#mh:SHA-256:d544bbb525f0decdfc92cf7b1ef61cadfd1f335d56ba1cbed0734a63c25140cd"
    ],
    "path": [
      "Infrastructure",
      "Data Structures"
    ],
    "related": [
      "Reachsense#f71c"
    ]
  },
  "sema_id": "sema:Plan#mh:SHA-256:246db278c5db286fcd78d824d85054fafb3348565ef584599b63900000c43b32",
  "sema_ref": "Plan#246d",
  "sema_stub": "246d",
  "dependencies": {
    "references": {
      "artifact": "sema:Artifact#mh:SHA-256:b533ad2674ec00c5e9a5f1e3920f1097e2bc1eea7263f89e8f46563fa319a0ee",
      "goal": "sema:Goal#mh:SHA-256:986beec5f7aea2c89962d1e93806de83c61eee9bd7364d9ce1d20bd479fa5e70",
      "risk": "sema:Risk#mh:SHA-256:e7f601ff0058d606ea87ab5f196f78f469a3133f8324617ff8a25d8072422e91",
      "sequence": "sema:Sequence#mh:SHA-256:0cae6b0951c4e93742259ff81ded009a85283d250c948f97cce3b9b3b8e58e1a",
      "state": "sema:State#mh:SHA-256:4f25e6a16ccd37dc0bc154cccc7055cb504d49daa8b712f372a425eb6c7b8cb2",
      "step": "sema:Step#mh:SHA-256:fa207e6f70e14a67e3baa7e4ad4df9ece59ba4d07083fbbcc992332959e1520a",
      "system": "sema:System#mh:SHA-256:f8eb318a1113a10fead02fbf14ae433767ac1a69c9579cdb584cc622068e90b3"
    }
  },
  "sema_layer": "Infrastructure",
  "sema_category": "Data Structures",
  "used_by": {
    "references": {
      "BackwardChain": "sema:BackwardChain#mh:SHA-256:92c0e4700ff6bc202bd16dc4c77fd0b826605462cdc30d8b4230c36f61df0bb3",
      "Build": "sema:Build#mh:SHA-256:e2c44670a03fffee712f69a847aae0b6959ba58f9c7a14513cd8759d3921d5e3",
      "ContingencyPlan": "sema:ContingencyPlan#mh:SHA-256:9311f7e9a098667a61408384dc9bc2c62c184bae7b3d63beed5c4443c7f3bd54",
      "DepthGovernor": "sema:DepthGovernor#mh:SHA-256:5b24d810ede53e7e6716e3e20e7c28cf578f171845af2358344c25f0c56b7b75",
      "ManifestPlanning": "sema:ManifestPlanning#mh:SHA-256:8bd4fc5ad5c604cd4814a96d23565a07d890e78800281c81abdfeafe02473896",
      "Outcome": "sema:Outcome#mh:SHA-256:753768dae28040f1291ee2849d2aac2a08bbffd836cfab679bdbea9a6ff7ec03",
      "Reachsense": "sema:Reachsense#mh:SHA-256:f71cb6c4378b9d00403fde6aa3ebef85212a37c7437108cd7b1fe911a473ef29",
      "Realizable": "sema:Realizable#mh:SHA-256:2ed7d7f05fe50ff38d46631e5334f2229c4c1f1118e0576d88388b23a586d622",
      "Reflexion": "sema:Reflexion#mh:SHA-256:81eb9140703ea95f53556741df731af84c1cada66cc1e0f3a1d88e4de5fe54d8",
      "Roadmap": "sema:Roadmap#mh:SHA-256:959d72fa090e38c0600aa4fc3db975a0a957b94913638a70da91351a18e733ae",
      "Spec": "sema:Spec#mh:SHA-256:c9537551b2bfa2639c15270994fdbb5a52a41d098f499c5ed5d61945a7c50da7",
      "Strategy": "sema:Strategy#mh:SHA-256:3dc598d0c6af12389df445c204e17df03950dbc886656b85700e6c87c31b2eef"
    }
  }
}
