{
  "ok": true,
  "schema": "kelly-lens-artifact-spine-v1",
  "lensId": "hypothesis",
  "service": "Hypothesis Lab",
  "readOnly": true,
  "publicMutationAllowed": false,
  "publicUserWriteAllowed": false,
  "groundTruthWriteAllowed": false,
  "glassLabArtifactBase": "https://glass-lab.up.railway.app?artifact=hypothesis",
  "forecastShowcaseUrl": "/api/kelly/forecast-showcase",
  "steps": [
    {
      "key": "source",
      "label": "Source",
      "description": "Approved data feed, document, event, price, weather, policy, research, or odds source.",
      "required": true,
      "status": "actively_checked_or_pending",
      "glassLabArtifactUrl": "https://glass-lab.up.railway.app?artifact=hypothesis%3Asource"
    },
    {
      "key": "observation",
      "label": "Observation",
      "description": "A tagged fact candidate KELLY can inspect without trusting blindly.",
      "required": true,
      "status": "actively_checked_or_pending",
      "glassLabArtifactUrl": "https://glass-lab.up.railway.app?artifact=hypothesis%3Aobservation"
    },
    {
      "key": "hypothesis",
      "label": "Hypothesis",
      "description": "The causal question, bridge, or forecast KELLY wants reality to test.",
      "required": true,
      "status": "actively_checked_or_pending",
      "glassLabArtifactUrl": "https://glass-lab.up.railway.app?artifact=hypothesis%3Ahypothesis"
    },
    {
      "key": "proof",
      "label": "Proof receipt",
      "description": "The evidence packet that explains what KELLY saw and why it moved.",
      "required": true,
      "status": "linked_when_kelly_emits_receipt",
      "glassLabArtifactUrl": "https://glass-lab.up.railway.app?artifact=hypothesis%3Aproof"
    },
    {
      "key": "replay",
      "label": "Replay",
      "description": "The reconstruction path that proves the chain can be rebuilt later.",
      "required": true,
      "status": "linked_when_kelly_emits_receipt",
      "glassLabArtifactUrl": "https://glass-lab.up.railway.app?artifact=hypothesis%3Areplay"
    },
    {
      "key": "settlement",
      "label": "Settlement",
      "description": "The reality-close record: what happened, when, and from which authority.",
      "required": true,
      "status": "linked_when_kelly_emits_receipt",
      "glassLabArtifactUrl": "https://glass-lab.up.railway.app?artifact=hypothesis%3Asettlement"
    },
    {
      "key": "calibration",
      "label": "Calibration",
      "description": "The score that separates accuracy from confident language.",
      "required": true,
      "status": "linked_when_kelly_emits_receipt",
      "glassLabArtifactUrl": "https://glass-lab.up.railway.app?artifact=hypothesis%3Acalibration"
    },
    {
      "key": "memory",
      "label": "Memory eligibility",
      "description": "A replay-backed candidate that may influence future KELLY work.",
      "required": true,
      "status": "linked_when_kelly_emits_receipt",
      "glassLabArtifactUrl": "https://glass-lab.up.railway.app?artifact=hypothesis%3Amemory"
    }
  ],
  "proofPresets": [
    {
      "id": "hypothesis-preset-1",
      "title": "24-hour hypothesis closure",
      "horizon": "24 hours",
      "question": "Which fresh hypothesis can be checked against reality fastest?",
      "value": "Short-term proof that KELLY can generate and close its own questions.",
      "signal": "new observation, hypothesis, reality check, closure receipt",
      "artifact": "artifact pending until KELLY emits proof",
      "glassLabArtifactUrl": "https://glass-lab.up.railway.app?artifact=artifact%20pending%20until%20KELLY%20emits%20proof"
    },
    {
      "id": "hypothesis-preset-2",
      "title": "Causal bridge discovery",
      "horizon": "7-60 days",
      "question": "Which two systems appear linked, and what hidden loop could connect them?",
      "value": "Medium-term proof that KELLY can discover useful causal structure.",
      "signal": "two loops, bridge hypothesis, falsifier, settlement plan",
      "artifact": "artifact pending until KELLY emits proof",
      "glassLabArtifactUrl": "https://glass-lab.up.railway.app?artifact=artifact%20pending%20until%20KELLY%20emits%20proof"
    },
    {
      "id": "hypothesis-preset-3",
      "title": "Recursive theory refinement",
      "horizon": "90+ days",
      "question": "Which theory has mutated the most under evidence while remaining replayable?",
      "value": "Long-term proof that KELLY can self-correct without losing lineage.",
      "signal": "theory lineage, confirmations, weakenings, memory cell trail",
      "artifact": "artifact pending until KELLY emits proof",
      "glassLabArtifactUrl": "https://glass-lab.up.railway.app?artifact=artifact%20pending%20until%20KELLY%20emits%20proof"
    }
  ],
  "boundary": "This endpoint describes the proof spine this lens must expose. It does not create proof, write memory, mutate GraphState, or settle outcomes.",
  "generatedAt": "2026-07-08T07:22:02.575Z"
}