{
  "handle": "FrameSpec",
  "mechanism": "A structured {{spec}} of the {{problem}} space, {{constraint}}s, and success criteria derived from a raw request via interpretation. It is an {{artifact}} that acts as the contract defining the boundaries for execution.",
  "gloss": "Structured problem definition artifact",
  "invariants": [
    "Contains explicit, testable {{constraint}}s.",
    "States success criteria that are testable — an observation that would show the work succeeded."
  ],
  "_meta": {
    "ring": 0,
    "tier": 1,
    "supersedes": [
      "sema:FrameSpec#mh:SHA-256:d5b8e71aa9d57b941df3f914b941bfb8fe6c58f62d6c6db28532defcd2237d75",
      "sema:FrameSpec#mh:SHA-256:c9bc3b38bb41a0bcde26967aaebf526a344444a4f516da4fa056f8c0c347a72e",
      "sema:FrameSpec#mh:SHA-256:7f9a34c3950770be588ba74b062bf9d3d998f0d15db7ba60a8c82e6baa4fd631"
    ],
    "path": [
      "Infrastructure",
      "Data Structures"
    ]
  },
  "data_schema": {
    "type": "object",
    "description": "Structured problem definition.",
    "required": [
      "problem_statement",
      "constraints",
      "success_criteria"
    ],
    "properties": {
      "problem_statement": {
        "type": "string"
      },
      "constraints": {
        "type": "array",
        "items": {
          "type": "string"
        }
      },
      "success_criteria": {
        "type": "array",
        "items": {
          "type": "string"
        }
      },
      "hidden_assumptions": {
        "type": "array",
        "items": {
          "type": "string"
        }
      }
    }
  },
  "signature": [
    "Artifact(Constraint)"
  ],
  "sema_id": "sema:FrameSpec#mh:SHA-256:3c202cc3416eadb2215857b542e4fc54660d5253fca9c2d42cb999929ad18c42",
  "sema_ref": "FrameSpec#3c20",
  "sema_stub": "3c20",
  "failure_modes": [
    "Frozen contract, moved request: the request changed, the spec was not re-derived, and its {{constraint}}s stay authoritative."
  ],
  "dependencies": {
    "references": {
      "artifact": "sema:Artifact#mh:SHA-256:b533ad2674ec00c5e9a5f1e3920f1097e2bc1eea7263f89e8f46563fa319a0ee",
      "constraint": "sema:Constraint#mh:SHA-256:70136d525260a10eedf156aad1fe6c50510eadb10a89d063c7a85575b15708fc",
      "problem": "sema:Problem#mh:SHA-256:2580c43677ec78ee7ee428d200662c6096e4eab38c2c5a868154979074cc0f08",
      "spec": "sema:Spec#mh:SHA-256:c9537551b2bfa2639c15270994fdbb5a52a41d098f499c5ed5d61945a7c50da7"
    }
  },
  "sema_layer": "Infrastructure",
  "sema_category": "Data Structures",
  "used_by": {
    "accepts": {
      "ManifestPlanning": "sema:ManifestPlanning#mh:SHA-256:8bd4fc5ad5c604cd4814a96d23565a07d890e78800281c81abdfeafe02473896"
    },
    "references": {
      "OrchestrationLoop": "sema:OrchestrationLoop#mh:SHA-256:e8ba5873bab7bc8a60c971462d4c5a19d86ecf67c4526a516242e20aa388762e",
      "RealizationProtocol": "sema:RealizationProtocol#mh:SHA-256:68fbd05d6135b73ef53db0366e69f4927e5f92f9dd88fa7b79c0a6022e4962ca"
    },
    "yields": {
      "RequestFraming": "sema:RequestFraming#mh:SHA-256:2280a35647a93cf3f8b03ee5fb63f8c2ec6faf19ec9627e1d9144ffa231f551e"
    }
  }
}
