{"meta":{"api_version":"v1","request_id":"7f5b65415fd84b1f","generated_at":"2026-07-23T16:14:03.493128+00:00","cache":{"hit":false,"key":null,"age_s":null},"duration_ms":null},"report":{"report_type":"decision-package","generated_at":"2026-07-23T16:14:03.492778+00:00","software_versions":{"data_platform":"0.1.0","terrain_pipeline":"terrain-pipeline-v1","rover_twin":"rover-twin-v1"},"scenario_id":"communication-blackout","decision":{"decision_id":"e48d85a5-5954-43cb-b7c6-52c007b79309","scenario_id":"communication-blackout","strategy":"baseline-weighted-v1","model_version":"baseline-weighted-v1","generated_at":"2026-07-23T16:14:03.489946Z","input_data_references":[],"ranked_actions":[{"id":"ridge-reroute","label":"Reroute via illuminated ridge corridor","predicted_science_value":0.68,"predicted_safety":0.91,"predicted_energy_efficiency":0.82,"predicted_reversibility":0.86,"uncertainty":0.16,"constraint_violations":[],"rank":1,"score":0.7282,"confidence_proxy":0.84,"confidence_derivation":"proxy = clamp(1 - uncertainty - 0.08*n_violations, 0, 1); heuristic, uncalibrated.","explanation":{"dominant_factors":[{"key":"safety","label":"Safety","contribution":0.3094},{"key":"science","label":"Science value","contribution":0.1496},{"key":"energy","label":"Energy efficiency","contribution":0.1476},{"key":"reversibility","label":"Reversibility","contribution":0.1376},{"key":"uncertainty","label":"Uncertainty penalty","contribution":-0.016}],"hard_constraints_satisfied":true,"hard_constraint_notes":["No hard-constraint violations."],"soft_constraint_notes":["Uncertainty 0.16 reduces the confidence proxy."],"counterfactuals":[],"sensitivity":[{"factor":"science","delta_weight":0.25,"score_delta":0.0374,"rank_changed":false},{"factor":"safety","delta_weight":0.25,"score_delta":0.0773,"rank_changed":false},{"factor":"energy","delta_weight":0.25,"score_delta":0.0369,"rank_changed":false},{"factor":"reversibility","delta_weight":0.25,"score_delta":0.0344,"rank_changed":false}],"rationale":["High predicted safety margin.","Preserves energy and thermal operating margin.","Action remains operationally reversible."]},"fallback_trigger":"Re-evaluate when a hard limit is approached or the confidence proxy falls below 0.55.","valid_until":"Next decision checkpoint or on any hard-constraint threshold crossing."},{"id":"safe-mode","label":"Enter conservative safe mode","predicted_science_value":0.12,"predicted_safety":0.97,"predicted_energy_efficiency":0.9,"predicted_reversibility":0.99,"uncertainty":0.08,"constraint_violations":[],"rank":2,"score":0.6686,"confidence_proxy":0.92,"confidence_derivation":"proxy = clamp(1 - uncertainty - 0.08*n_violations, 0, 1); heuristic, uncalibrated.","explanation":{"dominant_factors":[{"key":"safety","label":"Safety","contribution":0.3298},{"key":"energy","label":"Energy efficiency","contribution":0.162},{"key":"reversibility","label":"Reversibility","contribution":0.1584},{"key":"science","label":"Science value","contribution":0.0264},{"key":"uncertainty","label":"Uncertainty penalty","contribution":-0.008}],"hard_constraints_satisfied":true,"hard_constraint_notes":["No hard-constraint violations."],"soft_constraint_notes":["Uncertainty 0.08 reduces the confidence proxy."],"counterfactuals":[{"description":"Would need +0.060 score (e.g. resolve 0 violation(s) or raise safety) to reach rank 1.","would_change_rank_to":1}],"sensitivity":[],"rationale":["High predicted safety margin.","Preserves energy and thermal operating margin.","Action remains operationally reversible."]},"fallback_trigger":"Re-evaluate when a hard limit is approached or the confidence proxy falls below 0.55.","valid_until":"Next decision checkpoint or on any hard-constraint threshold crossing."},{"id":"relay-hold","label":"Hold position until relay window","predicted_science_value":0.52,"predicted_safety":0.84,"predicted_energy_efficiency":0.62,"predicted_reversibility":0.94,"uncertainty":0.22,"constraint_violations":[],"rank":3,"score":0.64,"confidence_proxy":0.78,"confidence_derivation":"proxy = clamp(1 - uncertainty - 0.08*n_violations, 0, 1); heuristic, uncalibrated.","explanation":{"dominant_factors":[{"key":"safety","label":"Safety","contribution":0.2856},{"key":"reversibility","label":"Reversibility","contribution":0.1504},{"key":"science","label":"Science value","contribution":0.1144},{"key":"energy","label":"Energy efficiency","contribution":0.1116},{"key":"uncertainty","label":"Uncertainty penalty","contribution":-0.022}],"hard_constraints_satisfied":true,"hard_constraint_notes":["No hard-constraint violations."],"soft_constraint_notes":["Uncertainty 0.22 reduces the confidence proxy."],"counterfactuals":[{"description":"Would need +0.088 score (e.g. resolve 0 violation(s) or raise safety) to reach rank 1.","would_change_rank_to":1}],"sensitivity":[],"rationale":["High predicted safety margin.","Action remains operationally reversible."]},"fallback_trigger":"Re-evaluate when a hard limit is approached or the confidence proxy falls below 0.55.","valid_until":"Next decision checkpoint or on any hard-constraint threshold crossing."},{"id":"direct-target","label":"Continue direct route to science target","predicted_science_value":0.95,"predicted_safety":0.49,"predicted_energy_efficiency":0.44,"predicted_reversibility":0.48,"uncertainty":0.39,"constraint_violations":["preferred battery reserve","terrain confidence threshold"],"rank":4,"score":0.2526,"confidence_proxy":0.45,"confidence_derivation":"proxy = clamp(1 - uncertainty - 0.08*n_violations, 0, 1); heuristic, uncalibrated.","explanation":{"dominant_factors":[{"key":"violations","label":"Constraint violations","contribution":-0.24},{"key":"science","label":"Science value","contribution":0.209},{"key":"safety","label":"Safety","contribution":0.1666},{"key":"energy","label":"Energy efficiency","contribution":0.0792},{"key":"reversibility","label":"Reversibility","contribution":0.0768},{"key":"uncertainty","label":"Uncertainty penalty","contribution":-0.039}],"hard_constraints_satisfied":false,"hard_constraint_notes":["Violates: preferred battery reserve, terrain confidence threshold"],"soft_constraint_notes":["Uncertainty 0.39 reduces the confidence proxy."],"counterfactuals":[{"description":"Would need +0.476 score (e.g. resolve 2 violation(s) or raise safety) to reach rank 1.","would_change_rank_to":1}],"sensitivity":[],"rationale":["Maintains strong expected science return.","Constraint exposure: preferred battery reserve, terrain confidence threshold."]},"fallback_trigger":"Re-evaluate when a hard limit is approached or the confidence proxy falls below 0.55.","valid_until":"Next decision checkpoint or on any hard-constraint threshold crossing."}],"dominant_tradeoffs":["Science value versus safety margin","Energy preservation versus mission progress","Autonomy duration versus operator observability"],"warnings":[],"data_class":"derived"},"simulation":{"run_id":"bb310f93-6391-47e9-b710-c2e179a65050","scenario_id":"communication-blackout","config":{"scenario_id":"communication-blackout","seed":42,"duration_s":3600.0,"step_s":60.0,"battery_capacity_wh":1200.0,"initial_soc":0.31,"nominal_speed_mps":0.05,"base_power_draw_w":90.0,"payload_power_w":40.0,"survival_heater_w":55.0,"safe_mode_soc":0.2},"model_version":"rover-twin-v1","seed":42,"input_datasets":[{"dataset_id":"LRO-L-LOLA-4-GDR-V1.0","product_id":"LDEM_SP_SYNTHETIC_FIXTURE","version":null,"doi":null,"url":null}],"started_at":"2026-07-23T16:14:03.489963Z","completed_at":"2026-07-23T16:14:03.490984Z","duration_ms":1.02,"states":[{"t_s":0.0,"battery_soc":0.3075,"battery_wh":369.0,"solar_input_w":15.9,"power_draw_w":198.6,"distance_m":1.85,"speed_mps":0.0308,"slope_deg":7.93,"wheel_slip":0.233,"thermal_state_c":-19.59,"comms_available":true,"sensor_confidence":0.86,"localization_sigma_m":0.819,"payload_active":true,"safe_mode":false},{"t_s":60.0,"battery_soc":0.3045,"battery_wh":365.4,"solar_input_w":14.7,"power_draw_w":230.7,"distance_m":3.38,"speed_mps":0.0256,"slope_deg":13.08,"wheel_slip":0.238,"thermal_state_c":-20.32,"comms_available":true,"sensor_confidence":0.897,"localization_sigma_m":0.709,"payload_active":true,"safe_mode":false},{"t_s":120.0,"battery_soc":0.3025,"battery_wh":363.0,"solar_input_w":18.1,"power_draw_w":161.1,"distance_m":5.16,"speed_mps":0.0297,"slope_deg":8.45,"wheel_slip":0.248,"thermal_state_c":-19.09,"comms_available":true,"sensor_confidence":0.85,"localization_sigma_m":0.849,"payload_active":false,"safe_mode":false},{"t_s":180.0,"battery_soc":0.3,"battery_wh":360.0,"solar_input_w":20.2,"power_draw_w":196.7,"distance_m":7.07,"speed_mps":0.0318,"slope_deg":6.58,"wheel_slip":0.239,"thermal_state_c":-18.42,"comms_available":true,"sensor_confidence":0.872,"localization_sigma_m":0.784,"payload_active":true,"safe_mode":false},{"t_s":240.0,"battery_soc":0.298,"battery_wh":357.6,"solar_input_w":18.3,"power_draw_w":164.6,"distance_m":8.68,"speed_mps":0.0269,"slope_deg":13.18,"wheel_slip":0.199,"thermal_state_c":-19.44,"comms_available":true,"sensor_confidence":0.858,"localization_sigma_m":0.827,"payload_active":false,"safe_mode":false},{"t_s":300.0,"battery_soc":0.2959,"battery_wh":355.1,"solar_input_w":19.9,"power_draw_w":167.5,"distance_m":10.26,"speed_mps":0.0263,"slope_deg":12.21,"wheel_slip":0.242,"thermal_state_c":-18.94,"comms_available":true,"sensor_confidence":0.888,"localization_sigma_m":0.737,"payload_active":false,"safe_mode":false},{"t_s":360.0,"battery_soc":0.2936,"battery_wh":352.3,"solar_input_w":23.4,"power_draw_w":193.1,"distance_m":12.25,"speed_mps":0.0331,"slope_deg":7.36,"wheel_slip":0.189,"thermal_state_c":-17.68,"comms_available":true,"sensor_confidence":0.857,"localization_sigma_m":0.829,"payload_active":true,"safe_mode":false},{"t_s":420.0,"battery_soc":0.2909,"battery_wh":349.1,"solar_input_w":21.0,"power_draw_w":212.9,"distance_m":13.67,"speed_mps":0.0236,"slope_deg":15.0,"wheel_slip":0.244,"thermal_state_c":-18.91,"comms_available":true,"sensor_confidence":0.876,"localization_sigma_m":0.773,"payload_active":true,"safe_mode":false},{"t_s":480.0,"battery_soc":0.2891,"battery_wh":347.0,"solar_input_w":26.1,"power_draw_w":154.6,"distance_m":15.63,"speed_mps":0.0326,"slope_deg":6.69,"wheel_slip":0.216,"thermal_state_c":-16.95,"comms_available":true,"sensor_confidence":0.863,"localization_sigma_m":0.812,"payload_active":false,"safe_mode":false},{"t_s":540.0,"battery_soc":0.2872,"battery_wh":344.6,"solar_input_w":24.1,"power_draw_w":164.2,"distance_m":17.24,"speed_mps":0.0269,"slope_deg":13.37,"wheel_slip":0.192,"thermal_state_c":-18.0,"comms_available":true,"sensor_confidence":0.853,"localization_sigma_m":0.841,"payload_active":false,"safe_mode":false},{"t_s":600.0,"battery_soc":0.2849,"battery_wh":341.8,"solar_input_w":27.4,"power_draw_w":195.2,"distance_m":19.15,"speed_mps":0.0318,"slope_deg":8.9,"wheel_slip":0.182,"thermal_state_c":-16.81,"comms_available":false,"sensor_confidence":0.88,"localization_sigma_m":1.561,"payload_active":true,"safe_mode":false},{"t_s":660.0,"battery_soc":0.2829,"battery_wh":339.5,"solar_input_w":26.2,"power_draw_w":166.8,"distance_m":20.7,"speed_mps":0.0259,"slope_deg":13.86,"wheel_slip":0.208,"thermal_state_c":-17.51,"comms_available":false,"sensor_confidence":0.859,"localization_sigma_m":1.624,"payload_active":false,"safe_mode":false},{"t_s":720.0,"battery_soc":0.2811,"battery_wh":337.4,"solar_input_w":30.6,"power_draw_w":158.0,"distance_m":22.57,"speed_mps":0.0312,"slope_deg":6.85,"wheel_slip":0.246,"thermal_state_c":-15.82,"comms_available":false,"sensor_confidence":0.858,"localization_sigma_m":1.627,"payload_active":false,"safe_mode":false},{"t_s":780.0,"battery_soc":0.2795,"battery_wh":335.3,"solar_input_w":31.7,"power_draw_w":152.6,"distance_m":24.58,"speed_mps":0.0334,"slope_deg":6.89,"wheel_slip":0.193,"thermal_state_c":-15.55,"comms_available":false,"sensor_confidence":0.853,"localization_sigma_m":1.642,"payload_active":false,"safe_mode":false},{"t_s":840.0,"battery_soc":0.2776,"battery_wh":333.1,"solar_input_w":30.6,"power_draw_w":164.6,"distance_m":26.23,"speed_mps":0.0275,"slope_deg":11.52,"wheel_slip":0.227,"thermal_state_c":-16.19,"comms_available":false,"sensor_confidence":0.897,"localization_sigma_m":1.51,"payload_active":false,"safe_mode":false},{"t_s":900.0,"battery_soc":0.2753,"battery_wh":330.4,"solar_input_w":32.4,"power_draw_w":196.2,"distance_m":28.09,"speed_mps":0.031,"slope_deg":9.98,"wheel_slip":0.173,"thermal_state_c":-15.6,"comms_available":false,"sensor_confidence":0.898,"localization_sigma_m":1.506,"payload_active":true,"safe_mode":false},{"t_s":960.0,"battery_soc":0.2727,"battery_wh":327.3,"solar_input_w":30.8,"power_draw_w":217.0,"distance_m":29.43,"speed_mps":0.0223,"slope_deg":15.66,"wheel_slip":0.268,"thermal_state_c":-16.46,"comms_available":false,"sensor_confidence":0.891,"localization_sigma_m":1.526,"payload_active":true,"safe_mode":false},{"t_s":1020.0,"battery_soc":0.2708,"battery_wh":325.0,"solar_input_w":33.3,"power_draw_w":170.4,"distance_m":30.95,"speed_mps":0.0253,"slope_deg":12.43,"wheel_slip":0.264,"thermal_state_c":-15.54,"comms_available":false,"sensor_confidence":0.854,"localization_sigma_m":1.638,"payload_active":false,"safe_mode":false},{"t_s":1080.0,"battery_soc":0.269,"battery_wh":322.8,"solar_input_w":34.7,"power_draw_w":165.0,"distance_m":32.59,"speed_mps":0.0274,"slope_deg":11.65,"wheel_slip":0.228,"thermal_state_c":-15.11,"comms_available":false,"sensor_confidence":0.89,"localization_sigma_m":1.529,"payload_active":false,"safe_mode":false},{"t_s":1140.0,"battery_soc":0.2673,"battery_wh":320.8,"solar_input_w":37.5,"power_draw_w":157.8,"distance_m":34.46,"speed_mps":0.0311,"slope_deg":7.76,"wheel_slip":0.228,"thermal_state_c":-14.06,"comms_available":false,"sensor_confidence":0.858,"localization_sigma_m":1.627,"payload_active":false,"safe_mode":false},{"t_s":1200.0,"battery_soc":0.2658,"battery_wh":319.0,"solar_input_w":39.2,"power_draw_w":148.6,"distance_m":36.58,"speed_mps":0.0353,"slope_deg":6.22,"wheel_slip":0.163,"thermal_state_c":-13.49,"comms_available":false,"sensor_confidence":0.867,"localization_sigma_m":1.598,"payload_active":false,"safe_mode":false},{"t_s":1260.0,"battery_soc":0.2635,"battery_wh":316.2,"solar_input_w":36.4,"power_draw_w":206.7,"distance_m":38.12,"speed_mps":0.0257,"slope_deg":14.35,"wheel_slip":0.199,"thermal_state_c":-14.86,"comms_available":false,"sensor_confidence":0.863,"localization_sigma_m":1.611,"payload_active":true,"safe_mode":false},{"t_s":1320.0,"battery_soc":0.2618,"battery_wh":314.2,"solar_input_w":39.7,"power_draw_w":157.2,"distance_m":39.97,"speed_mps":0.0309,"slope_deg":9.2,"wheel_slip":0.197,"thermal_state_c":-13.57,"comms_available":false,"sensor_confidence":0.856,"localization_sigma_m":1.633,"payload_active":false,"safe_mode":false},{"t_s":1380.0,"battery_soc":0.2595,"battery_wh":311.4,"solar_input_w":39.5,"power_draw_w":209.6,"distance_m":41.52,"speed_mps":0.0259,"slope_deg":11.51,"wheel_slip":0.274,"thermal_state_c":-13.78,"comms_available":false,"sensor_confidence":0.899,"localization_sigma_m":1.502,"payload_active":true,"safe_mode":false},{"t_s":1440.0,"battery_soc":0.2578,"battery_wh":309.3,"solar_input_w":41.1,"power_draw_w":164.3,"distance_m":43.21,"speed_mps":0.0281,"slope_deg":9.98,"wheel_slip":0.251,"thermal_state_c":-13.22,"comms_available":false,"sensor_confidence":0.871,"localization_sigma_m":1.586,"payload_active":false,"safe_mode":false},{"t_s":1500.0,"battery_soc":0.2561,"battery_wh":307.3,"solar_input_w":42.2,"power_draw_w":162.3,"distance_m":44.95,"speed_mps":0.029,"slope_deg":9.34,"wheel_slip":0.243,"thermal_state_c":-12.85,"comms_available":true,"sensor_confidence":0.855,"localization_sigma_m":0.834,"payload_active":false,"safe_mode":false},{"t_s":1560.0,"battery_soc":0.2544,"battery_wh":305.3,"solar_input_w":42.6,"power_draw_w":164.9,"distance_m":46.62,"speed_mps":0.0279,"slope_deg":10.15,"wheel_slip":0.254,"thermal_state_c":-12.77,"comms_available":true,"sensor_confidence":0.883,"localization_sigma_m":0.75,"payload_active":false,"safe_mode":false},{"t_s":1620.0,"battery_soc":0.2524,"battery_wh":302.8,"solar_input_w":44.7,"power_draw_w":190.2,"distance_m":48.68,"speed_mps":0.0343,"slope_deg":7.38,"wheel_slip":0.16,"thermal_state_c":-11.98,"comms_available":true,"sensor_confidence":0.88,"localization_sigma_m":0.759,"payload_active":true,"safe_mode":false},{"t_s":1680.0,"battery_soc":0.2506,"battery_wh":300.7,"solar_input_w":43.2,"power_draw_w":171.4,"distance_m":50.19,"speed_mps":0.0251,"slope_deg":12.13,"wheel_slip":0.279,"thermal_state_c":-12.69,"comms_available":true,"sensor_confidence":0.868,"localization_sigma_m":0.797,"payload_active":false,"safe_mode":false},{"t_s":1740.0,"battery_soc":0.2489,"battery_wh":298.7,"solar_input_w":44.0,"power_draw_w":167.0,"distance_m":51.78,"speed_mps":0.0266,"slope_deg":11.97,"wheel_slip":0.242,"thermal_state_c":-12.44,"comms_available":true,"sensor_confidence":0.894,"localization_sigma_m":0.717,"payload_active":false,"safe_mode":false},{"t_s":1800.0,"battery_soc":0.2471,"battery_wh":296.5,"solar_input_w":43.8,"power_draw_w":170.9,"distance_m":53.26,"speed_mps":0.0247,"slope_deg":13.85,"wheel_slip":0.244,"thermal_state_c":-12.59,"comms_available":true,"sensor_confidence":0.873,"localization_sigma_m":0.781,"payload_active":false,"safe_mode":false},{"t_s":1860.0,"battery_soc":0.2454,"battery_wh":294.4,"solar_input_w":45.1,"power_draw_w":172.1,"distance_m":54.75,"speed_mps":0.0248,"slope_deg":12.35,"wheel_slip":0.281,"thermal_state_c":-12.07,"comms_available":true,"sensor_confidence":0.892,"localization_sigma_m":0.725,"payload_active":false,"safe_mode":false},{"t_s":1920.0,"battery_soc":0.2438,"battery_wh":292.5,"solar_input_w":46.6,"power_draw_w":158.9,"distance_m":56.54,"speed_mps":0.0299,"slope_deg":10.5,"wheel_slip":0.19,"thermal_state_c":-11.49,"comms_available":true,"sensor_confidence":0.886,"localization_sigma_m":0.742,"payload_active":false,"safe_mode":false},{"t_s":1980.0,"battery_soc":0.2422,"battery_wh":290.7,"solar_input_w":46.9,"power_draw_w":159.7,"distance_m":58.31,"speed_mps":0.0294,"slope_deg":10.94,"wheel_slip":0.191,"thermal_state_c":-11.37,"comms_available":true,"sensor_confidence":0.873,"localization_sigma_m":0.78,"payload_active":false,"safe_mode":false},{"t_s":2040.0,"battery_soc":0.2404,"battery_wh":288.5,"solar_input_w":45.8,"power_draw_w":174.7,"distance_m":59.71,"speed_mps":0.0233,"slope_deg":14.51,"wheel_slip":0.268,"thermal_state_c":-11.89,"comms_available":true,"sensor_confidence":0.863,"localization_sigma_m":0.81,"payload_active":false,"safe_mode":false},{"t_s":2100.0,"battery_soc":0.2387,"battery_wh":286.5,"solar_input_w":47.2,"power_draw_w":168.8,"distance_m":61.25,"speed_mps":0.0258,"slope_deg":12.63,"wheel_slip":0.246,"thermal_state_c":-11.32,"comms_available":true,"sensor_confidence":0.857,"localization_sigma_m":0.83,"payload_active":false,"safe_mode":false},{"t_s":2160.0,"battery_soc":0.2372,"battery_wh":284.6,"solar_input_w":48.7,"power_draw_w":161.1,"distance_m":63.0,"speed_mps":0.0292,"slope_deg":10.24,"wheel_slip":0.216,"thermal_state_c":-10.65,"comms_available":true,"sensor_confidence":0.9,"localization_sigma_m":0.701,"payload_active":false,"safe_mode":false},{"t_s":2220.0,"battery_soc":0.2356,"battery_wh":282.7,"solar_input_w":48.3,"power_draw_w":161.1,"distance_m":64.71,"speed_mps":0.0285,"slope_deg":12.07,"wheel_slip":0.185,"thermal_state_c":-10.83,"comms_available":true,"sensor_confidence":0.887,"localization_sigma_m":0.738,"payload_active":false,"safe_mode":false},{"t_s":2280.0,"battery_soc":0.2341,"battery_wh":280.9,"solar_input_w":49.8,"power_draw_w":158.2,"distance_m":66.53,"speed_mps":0.0304,"slope_deg":9.72,"wheel_slip":0.197,"thermal_state_c":-10.18,"comms_available":true,"sensor_confidence":0.855,"localization_sigma_m":0.834,"payload_active":false,"safe_mode":false},{"t_s":2340.0,"battery_soc":0.2324,"battery_wh":278.9,"solar_input_w":49.0,"power_draw_w":168.8,"distance_m":68.09,"speed_mps":0.0259,"slope_deg":12.19,"wheel_slip":0.255,"thermal_state_c":-10.51,"comms_available":true,"sensor_confidence":0.854,"localization_sigma_m":0.838,"payload_active":false,"safe_mode":false},{"t_s":2400.0,"battery_soc":0.2301,"battery_wh":276.1,"solar_input_w":48.2,"power_draw_w":217.1,"distance_m":69.45,"speed_mps":0.0226,"slope_deg":14.6,"wheel_slip":0.287,"thermal_state_c":-10.82,"comms_available":true,"sensor_confidence":0.85,"localization_sigma_m":0.85,"payload_active":true,"safe_mode":false},{"t_s":2460.0,"battery_soc":0.2283,"battery_wh":274.0,"solar_input_w":48.2,"power_draw_w":176.3,"distance_m":70.8,"speed_mps":0.0226,"slope_deg":15.18,"wheel_slip":0.271,"thermal_state_c":-10.78,"comms_available":true,"sensor_confidence":0.877,"localization_sigma_m":0.768,"payload_active":false,"safe_mode":false},{"t_s":2520.0,"battery_soc":0.2261,"battery_wh":271.3,"solar_input_w":48.9,"power_draw_w":211.3,"distance_m":72.27,"speed_mps":0.0245,"slope_deg":14.02,"wheel_slip":0.246,"thermal_state_c":-10.4,"comms_available":true,"sensor_confidence":0.895,"localization_sigma_m":0.715,"payload_active":true,"safe_mode":false},{"t_s":2580.0,"battery_soc":0.2244,"battery_wh":269.2,"solar_input_w":48.2,"power_draw_w":170.2,"distance_m":73.71,"speed_mps":0.0239,"slope_deg":15.96,"wheel_slip":0.204,"thermal_state_c":-10.64,"comms_available":true,"sensor_confidence":0.881,"localization_sigma_m":0.756,"payload_active":false,"safe_mode":false},{"t_s":2640.0,"battery_soc":0.2226,"battery_wh":267.1,"solar_input_w":49.2,"power_draw_w":175.6,"distance_m":75.1,"speed_mps":0.0232,"slope_deg":14.16,"wheel_slip":0.282,"thermal_state_c":-10.14,"comms_available":true,"sensor_confidence":0.884,"localization_sigma_m":0.747,"payload_active":false,"safe_mode":false},{"t_s":2700.0,"battery_soc":0.2209,"battery_wh":265.1,"solar_input_w":49.4,"power_draw_w":173.9,"distance_m":76.52,"speed_mps":0.0237,"slope_deg":14.01,"wheel_slip":0.269,"thermal_state_c":-9.97,"comms_available":true,"sensor_confidence":0.856,"localization_sigma_m":0.832,"payload_active":false,"safe_mode":false},{"t_s":2760.0,"battery_soc":0.2193,"battery_wh":263.1,"solar_input_w":50.2,"power_draw_w":166.8,"distance_m":78.11,"speed_mps":0.0265,"slope_deg":12.37,"wheel_slip":0.233,"thermal_state_c":-9.52,"comms_available":true,"sensor_confidence":0.884,"localization_sigma_m":0.747,"payload_active":false,"safe_mode":false},{"t_s":2820.0,"battery_soc":0.2173,"battery_wh":260.8,"solar_input_w":53.1,"power_draw_w":192.5,"distance_m":80.13,"speed_mps":0.0336,"slope_deg":6.22,"wheel_slip":0.203,"thermal_state_c":-8.17,"comms_available":true,"sensor_confidence":0.854,"localization_sigma_m":0.839,"payload_active":true,"safe_mode":false},{"t_s":2880.0,"battery_soc":0.2157,"battery_wh":258.8,"solar_input_w":49.4,"power_draw_w":166.2,"distance_m":81.69,"speed_mps":0.026,"slope_deg":14.07,"wheel_slip":0.199,"thermal_state_c":-9.63,"comms_available":true,"sensor_confidence":0.896,"localization_sigma_m":0.712,"payload_active":false,"safe_mode":false},{"t_s":2940.0,"battery_soc":0.2142,"battery_wh":257.0,"solar_input_w":50.8,"power_draw_w":161.6,"distance_m":83.41,"speed_mps":0.0288,"slope_deg":10.94,"wheel_slip":0.208,"thermal_state_c":-8.9,"comms_available":true,"sensor_confidence":0.862,"localization_sigma_m":0.814,"payload_active":false,"safe_mode":false},{"t_s":3000.0,"battery_soc":0.2128,"battery_wh":255.3,"solar_input_w":51.9,"power_draw_w":152.6,"distance_m":85.39,"speed_mps":0.0329,"slope_deg":8.45,"wheel_slip":0.165,"thermal_state_c":-8.3,"comms_available":true,"sensor_confidence":0.851,"localization_sigma_m":0.848,"payload_active":false,"safe_mode":false},{"t_s":3060.0,"battery_soc":0.2105,"battery_wh":252.6,"solar_input_w":49.0,"power_draw_w":211.5,"distance_m":86.85,"speed_mps":0.0243,"slope_deg":14.42,"wheel_slip":0.24,"thermal_state_c":-9.41,"comms_available":true,"sensor_confidence":0.86,"localization_sigma_m":0.819,"payload_active":true,"safe_mode":false},{"t_s":3120.0,"battery_soc":0.2089,"battery_wh":250.6,"solar_input_w":49.7,"power_draw_w":167.9,"distance_m":88.41,"speed_mps":0.0261,"slope_deg":12.52,"wheel_slip":0.24,"thermal_state_c":-8.94,"comms_available":true,"sensor_confidence":0.878,"localization_sigma_m":0.766,"payload_active":false,"safe_mode":false},{"t_s":3180.0,"battery_soc":0.2065,"battery_wh":247.8,"solar_input_w":48.2,"power_draw_w":217.7,"distance_m":89.75,"speed_mps":0.0222,"slope_deg":15.19,"wheel_slip":0.283,"thermal_state_c":-9.4,"comms_available":true,"sensor_confidence":0.875,"localization_sigma_m":0.776,"payload_active":true,"safe_mode":false},{"t_s":3240.0,"battery_soc":0.2046,"battery_wh":245.5,"solar_input_w":51.8,"power_draw_w":192.1,"distance_m":91.76,"speed_mps":0.0336,"slope_deg":6.97,"wheel_slip":0.186,"thermal_state_c":-7.68,"comms_available":true,"sensor_confidence":0.887,"localization_sigma_m":0.738,"payload_active":true,"safe_mode":false},{"t_s":3300.0,"battery_soc":0.203,"battery_wh":243.6,"solar_input_w":50.4,"power_draw_w":163.9,"distance_m":93.47,"speed_mps":0.0284,"slope_deg":9.37,"wheel_slip":0.258,"thermal_state_c":-8.1,"comms_available":true,"sensor_confidence":0.867,"localization_sigma_m":0.798,"payload_active":false,"safe_mode":false},{"t_s":3360.0,"battery_soc":0.2013,"battery_wh":241.5,"solar_input_w":47.3,"power_draw_w":171.6,"distance_m":94.9,"speed_mps":0.0239,"slope_deg":15.28,"wheel_slip":0.227,"thermal_state_c":-9.23,"comms_available":true,"sensor_confidence":0.887,"localization_sigma_m":0.739,"payload_active":false,"safe_mode":false},{"t_s":3420.0,"battery_soc":0.1998,"battery_wh":239.7,"solar_input_w":49.9,"power_draw_w":158.4,"distance_m":94.9,"speed_mps":0.0,"slope_deg":8.88,"wheel_slip":0.213,"thermal_state_c":-7.9,"comms_available":true,"sensor_confidence":0.863,"localization_sigma_m":0.811,"payload_active":false,"safe_mode":true},{"t_s":3480.0,"battery_soc":0.1998,"battery_wh":239.7,"solar_input_w":48.9,"power_draw_w":48.0,"distance_m":94.9,"speed_mps":0.0,"slope_deg":10.04,"wheel_slip":0.23,"thermal_state_c":-8.1,"comms_available":true,"sensor_confidence":0.9,"localization_sigma_m":0.701,"payload_active":false,"safe_mode":true},{"t_s":3540.0,"battery_soc":0.1998,"battery_wh":239.7,"solar_input_w":48.4,"power_draw_w":48.0,"distance_m":94.9,"speed_mps":0.0,"slope_deg":10.18,"wheel_slip":0.226,"thermal_state_c":-8.09,"comms_available":true,"sensor_confidence":0.859,"localization_sigma_m":0.822,"payload_active":false,"safe_mode":true},{"t_s":3600.0,"battery_soc":0.1998,"battery_wh":239.8,"solar_input_w":49.3,"power_draw_w":48.0,"distance_m":94.9,"speed_mps":0.0,"slope_deg":7.35,"wheel_slip":0.209,"thermal_state_c":-7.5,"comms_available":true,"sensor_confidence":0.854,"localization_sigma_m":0.838,"payload_active":false,"safe_mode":true}],"warnings":["t=600s: communication blackout began.","t=3420s: entered safe mode (SoC 19.98% <= 20%)."],"assumptions":["Rover is a generic educational digital twin, NOT a specific ESA vehicle.","Solar input uses a low south-pole sun (~1.5 deg elevation) analytic approximation, not SPICE.","Power balance dE=(solar-draw)*dt; battery clamped to [0, capacity].","Wheel-slip and slope are deterministic functions of the seed (reproducible).","Thermal is a simplified sinusoid + slope term in degC, not a Diviner-derived field."],"validation_status":"warn","data_class":"simulated","synthetic":true},"terrain_summary":{"tile_id":"south-pole-shackleton-degerlache-001","frame":"LUNAR_POLAR_STEREO_SOUTH","resolution_m":20.0,"stats":{"elevation_min_m":-511.12557807095726,"elevation_max_m":718.3329861596039,"elevation_mean_m":309.8081865448665,"slope_max_deg":72.54756601039038,"slope_mean_deg":35.256384013905965,"illuminated_fraction":0.347075,"psr_fraction":0.520675},"synthetic":true,"provenance":{"source_id":"local_files","source_name":"Local development fixture (stands in for LRO LOLA LDEM)","authority":"esa-osip-embodied-intelligence (development)","dataset":{"dataset_id":"LRO-L-LOLA-4-GDR-V1.0","product_id":"LDEM_SP_SYNTHETIC_FIXTURE","version":"terrain-pipeline-v1","doi":null,"url":"https://pds-geosciences.wustl.edu/lro/lro-l-lola-3-rdr-v1/"},"citation":"SYNTHETIC development fixture retaining LOLA dataset metadata. Real product: Smith, D. E. et al. (2010), NASA PDS LRO-L-LOLA-4-GDR-V1.0. This grid is NOT a measurement.","transformation_chain":[{"step":"generate","method":"deterministic fBm + crater/rim model","inputs":[],"software":"terrain-pipeline-v1","parameters":{"seed":7,"n":200}},{"step":"slope","method":"numpy.gradient -> atan(|grad|)","inputs":["elevation_m"],"software":null,"parameters":{}},{"step":"roughness","method":"local 3x3 stddev","inputs":["elevation_m"],"software":null,"parameters":{}},{"step":"illumination","method":"cos(incidence), sun_elev=1.5deg + terrain-shadow proxy","inputs":["elevation_m","slope_deg"],"software":null,"parameters":{}}],"model_version":"terrain-pipeline-v1","licence_or_usage_notes":"Synthetic; replace with real LOLA product via scripts/fetch_lola_sample.py."}},"source_health":[{"source_id":"nasa_pds_lola","source_name":"LRO LOLA — Lunar Digital Elevation Model","authority":"NASA PDS Geosciences Node / LOLA Science Team","status":"unavailable","reachable":false,"using_fallback":true,"detail":"LOLA LDEM south-pole GDR is a multi-GB archive product not downloaded in this environment. Use scripts/fetch_lola_sample.py (checksum-gated) to ingest the real product; the terrain slice currently serves a clearly-labelled synthetic development fixture retaining this dataset's metadata.","checked_at":"2026-07-23T16:14:03.491105Z","latency_ms":null,"citation":"Smith, D. E., et al. (2010). The Lunar Orbiter Laser Altimeter investigation on the LRO mission. Space Sci. Rev. NASA PDS: LRO-L-LOLA-4-GDR-V1.0.","licence_or_usage_notes":"NASA PDS data are in the public domain; cite the LOLA team and PDS."},{"source_id":"nasa_pds_diviner","source_name":"LRO Diviner — Lunar Radiometer surface temperature","authority":"NASA PDS / Diviner Science Team","status":"unavailable","reachable":false,"using_fallback":true,"detail":"Diviner bolometric temperature RDRs are archive products not downloaded here. Thermal layers shown are derived/simulated and labelled as such.","checked_at":"2026-07-23T16:14:03.491116Z","latency_ms":null,"citation":"Paige, D. A., et al. (2010). The Lunar Reconnaissance Orbiter Diviner Lunar Radiometer Experiment. Space Sci. Rev. NASA PDS: LRO-L-DLRE-4-RDR-V1.0.","licence_or_usage_notes":"NASA PDS public domain; cite the Diviner team and PDS."},{"source_id":"nasa_pds_lroc","source_name":"LRO LROC — imagery products","authority":"NASA PDS / LROC Team, ASU","status":"unavailable","reachable":false,"using_fallback":true,"detail":"LROC basemap not integrated; 3D uses derived terrain shading.","checked_at":"2026-07-23T16:14:03.491134Z","latency_ms":null,"citation":"Robinson, M. S., et al. (2010). Lunar Reconnaissance Orbiter Camera (LROC) instrument overview. Space Sci. Rev. NASA PDS: LRO-L-LROC-5-RDR-V1.0.","licence_or_usage_notes":"NASA/ASU LROC products public domain; cite LROC/ASU."},{"source_id":"naif_spice","source_name":"NAIF SPICE — Sun/Earth/Moon geometry & frames","authority":"NASA NAIF (JPL)","status":"unavailable","reachable":false,"using_fallback":true,"detail":"SPICE kernels (SPK/PCK/LSK) not loaded in this environment. Illumination/geometry use a documented analytic solar-geometry approximation labelled 'predicted', pending kernel integration.","checked_at":"2026-07-23T16:14:03.491142Z","latency_ms":null,"citation":"Acton, C. H. (1996). Ancillary data services of NASA's NAIF. Planet. Space Sci.","licence_or_usage_notes":"NAIF SPICE toolkit and generic kernels are freely distributed by JPL/NAIF."},{"source_id":"jpl_horizons","source_name":"JPL Horizons — ephemerides","authority":"NASA JPL Solar System Dynamics","status":"degraded","reachable":false,"using_fallback":true,"detail":"Network disabled (DATA_PLATFORM_ALLOW_NETWORK=false).","checked_at":"2026-07-23T16:14:03.491150Z","latency_ms":null,"citation":"Giorgini, J. D., et al. (1996). JPL On-Line Solar System Data Service (Horizons).","licence_or_usage_notes":"JPL Horizons is a public NASA/JPL service; respect rate limits and cite JPL SSD."},{"source_id":"esa_psa","source_name":"ESA Planetary Science Archive","authority":"European Space Agency","status":"unavailable","reachable":false,"using_fallback":true,"detail":"ESA PSA integration reserved for extension beyond the Moon; not used by the lunar slice.","checked_at":"2026-07-23T16:14:03.492715Z","latency_ms":null,"citation":"Besse, S., et al. (2018). ESA's Planetary Science Archive: Preserving and sharing... Planet. Space Sci.","licence_or_usage_notes":"ESA PSA data usage per ESA archive policy. No ESA endorsement of this project is implied."},{"source_id":"local_files","source_name":"Local development fixtures","authority":"esa-osip-embodied-intelligence (development)","status":"unavailable","reachable":false,"using_fallback":false,"detail":"Local data root: /data","checked_at":"2026-07-23T16:14:03.492771Z","latency_ms":null,"citation":"Synthetic development fixture generated deterministically by this repository. NOT a scientific measurement.","licence_or_usage_notes":"Repository-internal synthetic fixtures for development; free to use within the project."}],"limitations":["Terrain elevation is a SYNTHETIC development fixture (not a LOLA measurement); replace via scripts/fetch_lola_sample.py.","Thermal/illumination are geometry-based approximations, not Diviner measurements or SPICE-derived.","Rover twin is a generic educational model, not a specific ESA vehicle.","'confidence_proxy' is a heuristic, uncalibrated score (see docs/08-decision-intelligence/confidence-policy.md).","No ESA endorsement is implied."]}}