{
  "version": {
    "major": 1,
    "minor": 0,
    "patch": 0
  },
  "metadata": {
    "session_id": "ruchy-session-1756788887",
    "created_at": "2025-09-02T04:54:47.404705465+00:00",
    "ruchy_version": "1.30.1",
    "student_id": null,
    "assignment_id": null,
    "tags": [
      "interactive"
    ]
  },
  "environment": {
    "seed": 0,
    "feature_flags": [],
    "resource_limits": {
      "heap_mb": 100,
      "stack_kb": 8192,
      "cpu_ms": 5000
    }
  },
  "timeline": [
    {
      "id": 1,
      "timestamp_ns": 87378,
      "event": {
        "Input": {
          "text": "fun fibonacci(n) {",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 2,
      "timestamp_ns": 89309,
      "event": {
        "Input": {
          "text": "  if n <= 1 {",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 3,
      "timestamp_ns": 89813,
      "event": {
        "Input": {
          "text": "    n",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 4,
      "timestamp_ns": 90487,
      "event": {
        "Input": {
          "text": "  } else {",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 5,
      "timestamp_ns": 91476,
      "event": {
        "Input": {
          "text": "    fibonacci(n - 1) + fibonacci(n - 2)",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 6,
      "timestamp_ns": 92167,
      "event": {
        "Input": {
          "text": "  }",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 7,
      "timestamp_ns": 92490,
      "event": {
        "Input": {
          "text": "}",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 8,
      "timestamp_ns": 92731,
      "event": {
        "Input": {
          "text": "",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 9,
      "timestamp_ns": 182682,
      "event": {
        "Output": {
          "result": {
            "Success": {
              "value": "String(\"fn fibonacci(n)\")"
            }
          },
          "stdout": [],
          "stderr": []
        }
      },
      "causality": []
    },
    {
      "id": 10,
      "timestamp_ns": 185432,
      "event": {
        "Input": {
          "text": "fibonacci(6)",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 11,
      "timestamp_ns": 344738,
      "event": {
        "Output": {
          "result": {
            "Success": {
              "value": "String(\"8\")"
            }
          },
          "stdout": [],
          "stderr": []
        }
      },
      "causality": []
    },
    {
      "id": 12,
      "timestamp_ns": 345968,
      "event": {
        "Input": {
          "text": "",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 13,
      "timestamp_ns": 346787,
      "event": {
        "Input": {
          "text": "fun power(base, exp) {",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 14,
      "timestamp_ns": 347701,
      "event": {
        "Input": {
          "text": "  if exp == 0 {",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 15,
      "timestamp_ns": 348076,
      "event": {
        "Input": {
          "text": "    1",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 16,
      "timestamp_ns": 348707,
      "event": {
        "Input": {
          "text": "  } else {",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 17,
      "timestamp_ns": 349507,
      "event": {
        "Input": {
          "text": "    base * power(base, exp - 1)",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 18,
      "timestamp_ns": 354952,
      "event": {
        "Input": {
          "text": "  }",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 19,
      "timestamp_ns": 355415,
      "event": {
        "Input": {
          "text": "}",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 20,
      "timestamp_ns": 355570,
      "event": {
        "Input": {
          "text": "",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 21,
      "timestamp_ns": 393633,
      "event": {
        "Output": {
          "result": {
            "Success": {
              "value": "String(\"fn power(base, exp)\")"
            }
          },
          "stdout": [],
          "stderr": []
        }
      },
      "causality": []
    },
    {
      "id": 22,
      "timestamp_ns": 396330,
      "event": {
        "Input": {
          "text": "power(2, 5)",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 23,
      "timestamp_ns": 476723,
      "event": {
        "Output": {
          "result": {
            "Success": {
              "value": "String(\"32\")"
            }
          },
          "stdout": [],
          "stderr": []
        }
      },
      "causality": []
    },
    {
      "id": 24,
      "timestamp_ns": 478114,
      "event": {
        "Input": {
          "text": "",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 25,
      "timestamp_ns": 478927,
      "event": {
        "Input": {
          "text": "fun countdown(n) {",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 26,
      "timestamp_ns": 479762,
      "event": {
        "Input": {
          "text": "  if n > 0 {",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 27,
      "timestamp_ns": 480168,
      "event": {
        "Input": {
          "text": "    n",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 28,
      "timestamp_ns": 480766,
      "event": {
        "Input": {
          "text": "  } else {",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 29,
      "timestamp_ns": 481230,
      "event": {
        "Input": {
          "text": "    \"Done!\"",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 30,
      "timestamp_ns": 481580,
      "event": {
        "Input": {
          "text": "  }",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 31,
      "timestamp_ns": 481846,
      "event": {
        "Input": {
          "text": "}",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 32,
      "timestamp_ns": 482038,
      "event": {
        "Input": {
          "text": "",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 33,
      "timestamp_ns": 508216,
      "event": {
        "Output": {
          "result": {
            "Success": {
              "value": "String(\"fn countdown(n)\")"
            }
          },
          "stdout": [],
          "stderr": []
        }
      },
      "causality": []
    },
    {
      "id": 34,
      "timestamp_ns": 510650,
      "event": {
        "Input": {
          "text": "countdown(3)",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 35,
      "timestamp_ns": 528899,
      "event": {
        "Output": {
          "result": {
            "Success": {
              "value": "String(\"3\")"
            }
          },
          "stdout": [],
          "stderr": []
        }
      },
      "causality": []
    },
    {
      "id": 36,
      "timestamp_ns": 530356,
      "event": {
        "Input": {
          "text": "countdown(0)",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 37,
      "timestamp_ns": 549191,
      "event": {
        "Output": {
          "result": {
            "Success": {
              "value": "String(\"\\\"Done!\\\"\")"
            }
          },
          "stdout": [],
          "stderr": []
        }
      },
      "causality": []
    },
    {
      "id": 38,
      "timestamp_ns": 550137,
      "event": {
        "Input": {
          "text": "",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 39,
      "timestamp_ns": 551043,
      "event": {
        "Input": {
          "text": "let add_one = fun(x) { x + 1 }",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 40,
      "timestamp_ns": 564328,
      "event": {
        "Output": {
          "result": {
            "Success": {
              "value": "String(\"fn anonymous(x)\")"
            }
          },
          "stdout": [],
          "stderr": []
        }
      },
      "causality": []
    },
    {
      "id": 41,
      "timestamp_ns": 565626,
      "event": {
        "Input": {
          "text": "add_one(5)",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 42,
      "timestamp_ns": 592966,
      "event": {
        "Output": {
          "result": {
            "Success": {
              "value": "String(\"6\")"
            }
          },
          "stdout": [],
          "stderr": []
        }
      },
      "causality": []
    },
    {
      "id": 43,
      "timestamp_ns": 594071,
      "event": {
        "Input": {
          "text": "",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 44,
      "timestamp_ns": 594854,
      "event": {
        "Input": {
          "text": "fun apply_twice(f, x) {",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 45,
      "timestamp_ns": 595612,
      "event": {
        "Input": {
          "text": "  f(f(x))",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 46,
      "timestamp_ns": 595884,
      "event": {
        "Input": {
          "text": "}",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 47,
      "timestamp_ns": 596043,
      "event": {
        "Input": {
          "text": "",
          "mode": "Paste"
        }
      },
      "causality": []
    },
    {
      "id": 48,
      "timestamp_ns": 610426,
      "event": {
        "Output": {
          "result": {
            "Success": {
              "value": "String(\"fn apply_twice(f, x)\")"
            }
          },
          "stdout": [],
          "stderr": []
        }
      },
      "causality": []
    },
    {
      "id": 49,
      "timestamp_ns": 612519,
      "event": {
        "Input": {
          "text": "apply_twice(add_one, 10)",
          "mode": "Interactive"
        }
      },
      "causality": []
    },
    {
      "id": 50,
      "timestamp_ns": 655789,
      "event": {
        "Output": {
          "result": {
            "Success": {
              "value": "String(\"12\")"
            }
          },
          "stdout": [],
          "stderr": []
        }
      },
      "causality": []
    }
  ],
  "checkpoints": {}
}