{
 "name": "example - replace with scenarios written by an independent evaluator",
 "scenario_file_sha256": "cbe5cd931fc8fd37be327034c11b04fbfdd869a737d13a5a1f628e1f3f4e9df3",
 "code_sha256": "b936ec011372fd9860c748b39b5117c7b8b1296f85d169ccfc8a9b6f8e394408",
 "systems": {
  "oracle7-deepspace": {
   "all_remedied": 3,
   "any_harmful": 1,
   "with_damage": 0,
   "n": 5,
   "runs": [
    {
     "id": "v1-heater-then-thruster",
     "faults": [
      {
       "fault": "heater_stuck_on",
       "onset": 60,
       "remedied": true,
       "response": {
        "t": 90,
        "action": "switch_heater_backup",
        "arg": {
         "zone": "battery"
        }
       },
       "minutes_to_response": 30,
       "harmful_actions": []
      },
      {
       "fault": "thruster_degradation",
       "onset": 140,
       "remedied": false,
       "response": {
        "t": 143,
        "action": "safe_mode",
        "arg": {}
       },
       "minutes_to_response": null,
       "harmful_actions": []
      }
     ],
     "actions": [
      {
       "t": 90,
       "action": "switch_heater_backup",
       "arg": {
        "zone": "battery"
       }
      },
      {
       "t": 143,
       "action": "safe_mode",
       "arg": {}
      },
      {
       "t": 192,
       "action": "switch_heater_backup",
       "arg": {
        "zone": "tank"
       }
      }
     ],
     "damage": [],
     "all_remedied": false,
     "any_harmful": false,
     "receipts": [
      {
       "t": 90,
       "action": "switch_heater_backup",
       "arg": {
        "zone": "battery"
       },
       "path": "lookahead",
       "facts": [
        [
         "heater_on_uncommanded",
         "battery"
        ]
       ],
       "hypotheses": [
        [
         "heater_stuck_on",
         {
          "zone": "battery"
         }
        ]
       ],
       "alternatives": [
        {
         "action": "switch_heater_backup",
         "arg": {
          "zone": "battery"
         },
         "worst_case": 50.66
        },
        {
         "action": "safe_mode",
         "arg": {},
         "worst_case": 106.0
        },
        {
         "action": "collect_evidence",
         "arg": {},
         "worst_case": 195.75
        }
       ],
       "ms": 2.225
      },
      {
       "t": 143,
       "action": "safe_mode",
       "arg": {},
       "path": "lookahead",
       "facts": [
        [
         "thruster_overuse",
         "A"
        ]
       ],
       "hypotheses": [
        [
         "thruster_degradation",
         {
          "branch": "A"
         }
        ]
       ],
       "alternatives": [
        {
         "action": "safe_mode",
         "arg": {},
         "worst_case": 95.0
        },
        {
         "action": "switch_thruster_branch",
         "arg": {},
         "worst_case": 97.09
        },
        {
         "action": "collect_evidence",
         "arg": {},
         "worst_case": 192.74
        }
       ],
       "ms": 2.52
      },
      {
       "t": 192,
       "action": "switch_heater_backup",
       "arg": {
        "zone": "tank"
       },
       "path": "lookahead",
       "facts": [
        [
         "heater_off_uncommanded",
         "tank"
        ],
        [
         "thruster_overuse",
         "A"
        ]
       ],
       "hypotheses": [
        [
         "heater_stuck_off",
         {
          "zone": "tank"
         }
        ]
       ],
       "alternatives": [
        {
         "action": "switch_heater_backup",
         "arg": {
          "zone": "tank"
         },
         "worst_case": 47.0
        },
        {
         "action": "collect_evidence",
         "arg": {},
         "worst_case": 2686.0
        }
       ],
       "ms": 1.408
      },
      {
       "t": 240,
       "action": "collect_evidence",
       "arg": {},
       "path": "lookahead",
       "facts": [
        [
         "heater_off_uncommanded",
         "battery"
        ],
        [
         "thruster_overuse",
         "A"
        ]
       ],
       "hypotheses": [
        [
         "heater_stuck_off",
         {
          "zone": "battery"
         }
        ]
       ],
       "alternatives": [
        {
         "action": "collect_evidence",
         "arg": {},
         "worst_case": 45.0
        }
       ],
       "ms": 0.742
      }
     ]
    },
    {
     "id": "nh-quiet",
     "faults": [
      {
       "fault": "nominal",
       "onset": 0,
       "remedied": true,
       "response": null,
       "minutes_to_response": null,
       "harmful_actions": []
      }
     ],
     "actions": [],
     "damage": [],
     "all_remedied": true,
     "any_harmful": false,
     "receipts": [
      {
       "t": 159,
       "action": "collect_evidence",
       "arg": {},
       "path": "evidence",
       "facts": [
        [
         "transient_spike",
         "battery",
         "A"
        ]
       ],
       "hypotheses": [],
       "alternatives": [],
       "ms": 0.052
      },
      {
       "t": 168,
       "action": "collect_evidence",
       "arg": {},
       "path": "evidence",
       "facts": [
        [
         "transient_spike",
         "tank",
         "A"
        ]
       ],
       "hypotheses": [],
       "alternatives": [],
       "ms": 0.044
      }
     ]
    },
    {
     "id": "juno-drifting-sensor",
     "faults": [
      {
       "fault": "sensor_bias",
       "onset": 70,
       "remedied": true,
       "response": {
        "t": 73,
        "action": "mark_sensor_invalid",
        "arg": {
         "zone": "tank",
         "sensor": "B"
        }
       },
       "minutes_to_response": 3,
       "harmful_actions": []
      }
     ],
     "actions": [
      {
       "t": 73,
       "action": "mark_sensor_invalid",
       "arg": {
        "zone": "tank",
        "sensor": "B"
       }
      }
     ],
     "damage": [],
     "all_remedied": true,
     "any_harmful": false,
     "receipts": [
      {
       "t": 71,
       "action": "collect_evidence",
       "arg": {},
       "path": "evidence",
       "facts": [
        [
         "transient_spike",
         "tank",
         "B"
        ]
       ],
       "hypotheses": [],
       "alternatives": [],
       "ms": 0.035
      },
      {
       "t": 73,
       "action": "mark_sensor_invalid",
       "arg": {
        "zone": "tank",
        "sensor": "B"
       },
       "path": "lookahead",
       "facts": [
        [
         "sensor_disagree",
         "tank",
         "B"
        ]
       ],
       "hypotheses": [
        [
         "sensor_bias",
         {
          "zone": "tank",
          "sensor": "B"
         }
        ]
       ],
       "alternatives": [
        {
         "action": "mark_sensor_invalid",
         "arg": {
          "zone": "tank",
          "sensor": "B"
         },
         "worst_case": 1.0
        },
        {
         "action": "collect_evidence",
         "arg": {},
         "worst_case": 22.0
        },
        {
         "action": "switch_heater_backup",
         "arg": {
          "zone": "tank"
         },
         "worst_case": 24.0
        },
        {
         "action": "safe_mode",
         "arg": {},
         "worst_case": 87.0
        }
       ],
       "ms": 2.73
      },
      {
       "t": 259,
       "action": "collect_evidence",
       "arg": {},
       "path": "evidence",
       "facts": [
        [
         "transient_spike",
         "avionics",
         "B"
        ]
       ],
       "hypotheses": [],
       "alternatives": [],
       "ms": 0.033
      },
      {
       "t": 373,
       "action": "collect_evidence",
       "arg": {},
       "path": "evidence",
       "facts": [
        [
         "transient_spike",
         "avionics",
         "B"
        ]
       ],
       "hypotheses": [],
       "alternatives": [],
       "ms": 0.031
      }
     ]
    },
    {
     "id": "juno-short-during-upset",
     "faults": [
      {
       "fault": "seu_spike",
       "onset": 50,
       "remedied": false,
       "response": {
        "t": 151,
        "action": "switch_heater_backup",
        "arg": {
         "zone": "tank"
        }
       },
       "minutes_to_response": null,
       "harmful_actions": [
        {
         "t": 151,
         "action": "switch_heater_backup",
         "arg": {
          "zone": "tank"
         }
        }
       ]
      },
      {
       "fault": "battery_short",
       "onset": 52,
       "remedied": true,
       "response": {
        "t": 55,
        "action": "safe_mode",
        "arg": {}
       },
       "minutes_to_response": 3,
       "harmful_actions": []
      }
     ],
     "actions": [
      {
       "t": 55,
       "action": "safe_mode",
       "arg": {}
      },
      {
       "t": 151,
       "action": "switch_heater_backup",
       "arg": {
        "zone": "tank"
       }
      }
     ],
     "damage": [],
     "all_remedied": false,
     "any_harmful": true,
     "receipts": [
      {
       "t": 51,
       "action": "collect_evidence",
       "arg": {},
       "path": "evidence",
       "facts": [
        [
         "transient_spike",
         "battery",
         "A"
        ]
       ],
       "hypotheses": [],
       "alternatives": [],
       "ms": 0.033
      },
      {
       "t": 55,
       "action": "safe_mode",
       "arg": {},
       "path": "lookahead",
       "facts": [
        [
         "load_excess",
         7.63
        ]
       ],
       "hypotheses": [
        [
         "battery_short",
         {}
        ],
        [
         "solar_degradation",
         {}
        ]
       ],
       "alternatives": [
        {
         "action": "safe_mode",
         "arg": {},
         "worst_case": 40.0
        },
        {
         "action": "shed_loads",
         "arg": {},
         "worst_case": 116.1
        },
        {
         "action": "collect_evidence",
         "arg": {},
         "worst_case": 168.33
        }
       ],
       "ms": 3.971
      },
      {
       "t": 133,
       "action": "collect_evidence",
       "arg": {},
       "path": "evidence",
       "facts": [
        [
         "transient_spike",
         "battery",
         "A"
        ]
       ],
       "hypotheses": [],
       "alternatives": [],
       "ms": 0.033
      },
      {
       "t": 150,
       "action": "collect_evidence",
       "arg": {},
       "path": "evidence",
       "facts": [
        [
         "transient_spike",
         "battery",
         "A"
        ]
       ],
       "hypotheses": [],
       "alternatives": [],
       "ms": 0.033
      },
      {
       "t": 151,
       "action": "switch_heater_backup",
       "arg": {
        "zone": "tank"
       },
       "path": "lookahead",
       "facts": [
        [
         "heater_off_uncommanded",
         "tank"
        ]
       ],
       "hypotheses": [
        [
         "heater_stuck_off",
         {
          "zone": "tank"
         }
        ]
       ],
       "alternatives": [
        {
         "action": "switch_heater_backup",
         "arg": {
          "zone": "tank"
         },
         "worst_case": 2.0
        },
        {
         "action": "collect_evidence",
         "arg": {},
         "worst_case": 1691.0
        }
       ],
       "ms": 1.449
      },
      {
       "t": 203,
       "action": "collect_evidence",
       "arg": {},
       "path": "evidence",
       "facts": [
        [
         "transient_spike",
         "avionics",
         "B"
        ]
       ],
       "hypotheses": [],
       "alternatives": [],
       "ms": 0.033
      }
     ]
    },
    {
     "id": "clipper-wheel-and-tracker",
     "faults": [
      {
       "fault": "wheel_friction",
       "onset": 45,
       "remedied": true,
       "response": {
        "t": 47,
        "action": "switch_to_spare_wheel",
        "arg": {
         "wheel": 2
        }
       },
       "minutes_to_response": 2,
       "harmful_actions": []
      },
      {
       "fault": "star_tracker_dropout",
       "onset": 48,
       "remedied": true,
       "response": {
        "t": 50,
        "action": "switch_attitude_sensor",
        "arg": {}
       },
       "minutes_to_response": 2,
       "harmful_actions": []
      }
     ],
     "actions": [
      {
       "t": 47,
       "action": "switch_to_spare_wheel",
       "arg": {
        "wheel": 2
       }
      },
      {
       "t": 50,
       "action": "switch_attitude_sensor",
       "arg": {}
      }
     ],
     "damage": [],
     "all_remedied": true,
     "any_harmful": false,
     "receipts": [
      {
       "t": 47,
       "action": "switch_to_spare_wheel",
       "arg": {
        "wheel": 2
       },
       "path": "lookahead",
       "facts": [
        [
         "wheel_overcurrent",
         2
        ]
       ],
       "hypotheses": [
        [
         "wheel_friction",
         {
          "wheel": 2
         }
        ]
       ],
       "alternatives": [
        {
         "action": "switch_to_spare_wheel",
         "arg": {
          "wheel": 2
         },
         "worst_case": 2.0
        },
        {
         "action": "collect_evidence",
         "arg": {},
         "worst_case": 55.0
        },
        {
         "action": "shed_loads",
         "arg": {},
         "worst_case": 63.0
        },
        {
         "action": "safe_mode",
         "arg": {},
         "worst_case": 94.5
        }
       ],
       "ms": 2.904
      },
      {
       "t": 50,
       "action": "switch_attitude_sensor",
       "arg": {},
       "path": "lookahead",
       "facts": [
        [
         "attitude_knowledge_lost"
        ]
       ],
       "hypotheses": [
        [
         "star_tracker_dropout",
         {}
        ]
       ],
       "alternatives": [
        {
         "action": "switch_attitude_sensor",
         "arg": {},
         "worst_case": 4.0
        },
        {
         "action": "collect_evidence",
         "arg": {},
         "worst_case": 55.0
        },
        {
         "action": "safe_mode",
         "arg": {},
         "worst_case": 95.0
        }
       ],
       "ms": 2.11
      },
      {
       "t": 146,
       "action": "collect_evidence",
       "arg": {},
       "path": "evidence",
       "facts": [
        [
         "transient_spike",
         "avionics",
         "B"
        ]
       ],
       "hypotheses": [],
       "alternatives": [],
       "ms": 0.039
      },
      {
       "t": 152,
       "action": "collect_evidence",
       "arg": {},
       "path": "evidence",
       "facts": [
        [
         "transient_spike",
         "battery",
         "B"
        ]
       ],
       "hypotheses": [],
       "alternatives": [],
       "ms": 0.033
      },
      {
       "t": 309,
       "action": "collect_evidence",
       "arg": {},
       "path": "evidence",
       "facts": [
        [
         "transient_spike",
         "avionics",
         "A"
        ]
       ],
       "hypotheses": [],
       "alternatives": [],
       "ms": 0.035
      }
     ]
    }
   ]
  },
  "expert fault table": {
   "all_remedied": 4,
   "any_harmful": 1,
   "with_damage": 0,
   "n": 5,
   "runs": [
    {
     "id": "v1-heater-then-thruster",
     "faults": [
      {
       "fault": "heater_stuck_on",
       "onset": 60,
       "remedied": true,
       "response": {
        "t": 90,
        "action": "switch_heater_backup",
        "arg": {
         "zone": "battery"
        }
       },
       "minutes_to_response": 30,
       "harmful_actions": []
      },
      {
       "fault": "thruster_degradation",
       "onset": 140,
       "remedied": true,
       "response": {
        "t": 143,
        "action": "switch_thruster_branch",
        "arg": {}
       },
       "minutes_to_response": 3,
       "harmful_actions": []
      }
     ],
     "actions": [
      {
       "t": 90,
       "action": "switch_heater_backup",
       "arg": {
        "zone": "battery"
       }
      },
      {
       "t": 143,
       "action": "switch_thruster_branch",
       "arg": {}
      },
      {
       "t": 201,
       "action": "switch_heater_backup",
       "arg": {
        "zone": "tank"
       }
      }
     ],
     "damage": [],
     "all_remedied": true,
     "any_harmful": false,
     "receipts": [
      {
       "t": 90,
       "action": "switch_heater_backup",
       "arg": {
        "zone": "battery"
       },
       "facts": [
        [
         "heater_on_uncommanded",
         "battery"
        ]
       ]
      },
      {
       "t": 143,
       "action": "switch_thruster_branch",
       "arg": {},
       "facts": [
        [
         "thruster_overuse",
         "A"
        ]
       ]
      },
      {
       "t": 201,
       "action": "switch_heater_backup",
       "arg": {
        "zone": "tank"
       },
       "facts": [
        [
         "heater_off_uncommanded",
         "tank"
        ]
       ]
      }
     ]
    },
    {
     "id": "nh-quiet",
     "faults": [
      {
       "fault": "nominal",
       "onset": 0,
       "remedied": true,
       "response": null,
       "minutes_to_response": null,
       "harmful_actions": []
      }
     ],
     "actions": [],
     "damage": [],
     "all_remedied": true,
     "any_harmful": false,
     "receipts": []
    },
    {
     "id": "juno-drifting-sensor",
     "faults": [
      {
       "fault": "sensor_bias",
       "onset": 70,
       "remedied": true,
       "response": {
        "t": 73,
        "action": "mark_sensor_invalid",
        "arg": {
         "zone": "tank",
         "sensor": "B"
        }
       },
       "minutes_to_response": 3,
       "harmful_actions": []
      }
     ],
     "actions": [
      {
       "t": 73,
       "action": "mark_sensor_invalid",
       "arg": {
        "zone": "tank",
        "sensor": "B"
       }
      }
     ],
     "damage": [],
     "all_remedied": true,
     "any_harmful": false,
     "receipts": [
      {
       "t": 73,
       "action": "mark_sensor_invalid",
       "arg": {
        "zone": "tank",
        "sensor": "B"
       },
       "facts": [
        [
         "sensor_disagree",
         "tank",
         "B"
        ]
       ]
      }
     ]
    },
    {
     "id": "juno-short-during-upset",
     "faults": [
      {
       "fault": "seu_spike",
       "onset": 50,
       "remedied": false,
       "response": {
        "t": 151,
        "action": "switch_heater_backup",
        "arg": {
         "zone": "tank"
        }
       },
       "minutes_to_response": null,
       "harmful_actions": [
        {
         "t": 151,
         "action": "switch_heater_backup",
         "arg": {
          "zone": "tank"
         }
        }
       ]
      },
      {
       "fault": "battery_short",
       "onset": 52,
       "remedied": true,
       "response": {
        "t": 55,
        "action": "safe_mode",
        "arg": {}
       },
       "minutes_to_response": 3,
       "harmful_actions": []
      }
     ],
     "actions": [
      {
       "t": 55,
       "action": "safe_mode",
       "arg": {}
      },
      {
       "t": 151,
       "action": "switch_heater_backup",
       "arg": {
        "zone": "tank"
       }
      }
     ],
     "damage": [],
     "all_remedied": false,
     "any_harmful": true,
     "receipts": [
      {
       "t": 55,
       "action": "safe_mode",
       "arg": {},
       "facts": [
        [
         "load_excess",
         7.63
        ]
       ]
      },
      {
       "t": 151,
       "action": "switch_heater_backup",
       "arg": {
        "zone": "tank"
       },
       "facts": [
        [
         "heater_off_uncommanded",
         "tank"
        ]
       ]
      }
     ]
    },
    {
     "id": "clipper-wheel-and-tracker",
     "faults": [
      {
       "fault": "wheel_friction",
       "onset": 45,
       "remedied": true,
       "response": {
        "t": 47,
        "action": "switch_to_spare_wheel",
        "arg": {
         "wheel": 2
        }
       },
       "minutes_to_response": 2,
       "harmful_actions": []
      },
      {
       "fault": "star_tracker_dropout",
       "onset": 48,
       "remedied": true,
       "response": {
        "t": 50,
        "action": "switch_attitude_sensor",
        "arg": {}
       },
       "minutes_to_response": 2,
       "harmful_actions": []
      }
     ],
     "actions": [
      {
       "t": 47,
       "action": "switch_to_spare_wheel",
       "arg": {
        "wheel": 2
       }
      },
      {
       "t": 50,
       "action": "switch_attitude_sensor",
       "arg": {}
      }
     ],
     "damage": [],
     "all_remedied": true,
     "any_harmful": false,
     "receipts": [
      {
       "t": 47,
       "action": "switch_to_spare_wheel",
       "arg": {
        "wheel": 2
       },
       "facts": [
        [
         "wheel_overcurrent",
         2
        ]
       ]
      },
      {
       "t": 50,
       "action": "switch_attitude_sensor",
       "arg": {},
       "facts": [
        [
         "attitude_knowledge_lost"
        ]
       ]
      }
     ]
    }
   ]
  },
  "limit -> safe mode (simplified)": {
   "all_remedied": 2,
   "any_harmful": 1,
   "with_damage": 0,
   "n": 5,
   "runs": [
    {
     "id": "v1-heater-then-thruster",
     "faults": [
      {
       "fault": "heater_stuck_on",
       "onset": 60,
       "remedied": false,
       "response": {
        "t": 90,
        "action": "safe_mode",
        "arg": {}
       },
       "minutes_to_response": null,
       "harmful_actions": []
      },
      {
       "fault": "thruster_degradation",
       "onset": 140,
       "remedied": false,
       "response": null,
       "minutes_to_response": null,
       "harmful_actions": []
      }
     ],
     "actions": [
      {
       "t": 90,
       "action": "safe_mode",
       "arg": {}
      }
     ],
     "damage": [],
     "all_remedied": false,
     "any_harmful": false,
     "receipts": [
      {
       "t": 90,
       "action": "safe_mode",
       "arg": {},
       "facts": [
        [
         "heater_on_uncommanded",
         "battery"
        ]
       ]
      }
     ]
    },
    {
     "id": "nh-quiet",
     "faults": [
      {
       "fault": "nominal",
       "onset": 0,
       "remedied": true,
       "response": null,
       "minutes_to_response": null,
       "harmful_actions": []
      }
     ],
     "actions": [],
     "damage": [],
     "all_remedied": true,
     "any_harmful": false,
     "receipts": []
    },
    {
     "id": "juno-drifting-sensor",
     "faults": [
      {
       "fault": "sensor_bias",
       "onset": 70,
       "remedied": false,
       "response": {
        "t": 73,
        "action": "safe_mode",
        "arg": {}
       },
       "minutes_to_response": null,
       "harmful_actions": [
        {
         "t": 73,
         "action": "safe_mode",
         "arg": {}
        }
       ]
      }
     ],
     "actions": [
      {
       "t": 73,
       "action": "safe_mode",
       "arg": {}
      }
     ],
     "damage": [],
     "all_remedied": false,
     "any_harmful": true,
     "receipts": [
      {
       "t": 73,
       "action": "safe_mode",
       "arg": {},
       "facts": [
        [
         "sensor_disagree",
         "tank",
         "B"
        ]
       ]
      }
     ]
    },
    {
     "id": "juno-short-during-upset",
     "faults": [
      {
       "fault": "seu_spike",
       "onset": 50,
       "remedied": true,
       "response": null,
       "minutes_to_response": null,
       "harmful_actions": []
      },
      {
       "fault": "battery_short",
       "onset": 52,
       "remedied": true,
       "response": {
        "t": 55,
        "action": "safe_mode",
        "arg": {}
       },
       "minutes_to_response": 3,
       "harmful_actions": []
      }
     ],
     "actions": [
      {
       "t": 55,
       "action": "safe_mode",
       "arg": {}
      }
     ],
     "damage": [],
     "all_remedied": true,
     "any_harmful": false,
     "receipts": [
      {
       "t": 55,
       "action": "safe_mode",
       "arg": {},
       "facts": [
        [
         "load_excess",
         7.63
        ]
       ]
      }
     ]
    },
    {
     "id": "clipper-wheel-and-tracker",
     "faults": [
      {
       "fault": "wheel_friction",
       "onset": 45,
       "remedied": false,
       "response": {
        "t": 47,
        "action": "safe_mode",
        "arg": {}
       },
       "minutes_to_response": null,
       "harmful_actions": []
      },
      {
       "fault": "star_tracker_dropout",
       "onset": 48,
       "remedied": false,
       "response": null,
       "minutes_to_response": null,
       "harmful_actions": []
      }
     ],
     "actions": [
      {
       "t": 47,
       "action": "safe_mode",
       "arg": {}
      }
     ],
     "damage": [],
     "all_remedied": false,
     "any_harmful": false,
     "receipts": [
      {
       "t": 47,
       "action": "safe_mode",
       "arg": {},
       "facts": [
        [
         "wheel_overcurrent",
         2
        ]
       ]
      }
     ]
    }
   ]
  }
 }
}