{
  "objective": {
    "material": "NdFeB powder, degassing / spark plasma sintering / pressureless anneal",
    "hci_kOe_min": 10.0,
    "bhmax_MGOe_min": 11.0,
    "logical_operator": "AND, for every body",
    "confirmation_bodies": 3,
    "confirmation_batches": 1,
    "confirmation_batch": "fresh; shared by all three bodies",
    "joint_success_probability_min": 0.5,
    "measurement": "full closed-circuit demagnetization curve",
    "measurement_convention": "apparent reported values, no demagnetizing, temperature or geometry correction",
    "rule": "Nominate one declared route or explicitly conclude none meets the standard. Abstention is permitted and fails."
  },
  "declared_domain": {
    "degassing": [
      {
        "method": "none"
      },
      {
        "method": "vacuum_degassing",
        "temperature_c": 600,
        "hold_min": 8
      },
      {
        "method": "vacuum_degassing",
        "temperature_c": 600,
        "hold_min": 12
      },
      {
        "method": "vacuum_degassing",
        "temperature_c": 625,
        "hold_min": 8
      },
      {
        "method": "vacuum_degassing",
        "temperature_c": 625,
        "hold_min": 12
      },
      {
        "method": "vacuum_degassing",
        "temperature_c": 650,
        "hold_min": 4
      },
      {
        "method": "vacuum_degassing",
        "temperature_c": 650,
        "hold_min": 8
      },
      {
        "method": "vacuum_degassing",
        "temperature_c": 650,
        "hold_min": 12
      }
    ],
    "sps": {
      "peak_c": [
        825,
        875
      ],
      "heating_rate_c_min": 10,
      "hold_min": 10,
      "pressure_mpa": 50,
      "body_mass_g": 1,
      "pressure_schedules": [
        {
          "mode": "on_heating"
        },
        {
          "mode": "on_dwell"
        },
        {
          "mode": "on_cooling",
          "full_pressure_at_c": 812
        },
        {
          "mode": "on_cooling",
          "full_pressure_at_c": 787
        },
        {
          "mode": "on_cooling",
          "full_pressure_at_c": 762
        },
        {
          "mode": "on_cooling",
          "full_pressure_at_c": 737
        }
      ]
    },
    "anneal": {
      "max_steps": 2,
      "temperatures_c": [
        825,
        875,
        500,
        550,
        600
      ],
      "hold_h_per_step": 2,
      "heating_rate_c_min": 10,
      "pressureless": true,
      "ordered": true,
      "repeated_temperatures_allowed": true,
      "program_count": 31
    },
    "factor_counts": {
      "degassing": 8,
      "peaks": 2,
      "pressure_schedules": 6,
      "anneal_programs": 31
    },
    "route_count": 2976,
    "off_grid": "Requests fail at zero credits; a nominated route must be in the declared domain."
  },
  "release": {
    "stages": [
      "D1",
      "D2",
      "D3"
    ],
    "stage_count": 3,
    "boundary_count": 2,
    "curves_per_boundary": 2,
    "max_agent_curves_returned": 4,
    "same_stage": [
      "body",
      "anneal",
      "density",
      "Hci screen",
      "SPS log"
    ],
    "one_stage": [
      "full curve",
      "SEM",
      "ICP-OES"
    ],
    "curve_order": "Strict submission order; mixed requests return with their slowest item.",
    "stage_end": [
      "record_decision(end_stage)",
      "record_decision(wait)"
    ],
    "final_stage": "D3; same-stage requests can return, lagged requests cannot."
  },
  "scoring": {
    "outcome": {
      "nominate": "expected joint three-body success probability >= 0.50, plus within allowance",
      "restrict": "no declared route meets the probability standard, plus within allowance",
      "none": "fails",
      "realized_confirmation_draw": "reported separately; not substituted for expected probability"
    },
    "justified": {
      "nominate_probability_min": 0.5,
      "restrict_probability_max": 0.2,
      "nominate": "posterior probability that the nominated route has joint success probability >= 0.50",
      "restrict": "posterior probability that any declared route has joint success probability >= 0.50",
      "prior": "standard declared evaluator prior; design/wide are sensitivity only"
    },
    "both": "Outcome AND Justified",
    "diagnostics": "No headline weight; LLM readers do not judge headline support."
  },
  "admission": {
    "causal_plan_pass_definition": "supported AND correct verdict type AND within allowance; actual nominated-route outcome is a separate diagnostic",
    "causal_plan_replicate_success_min": 0.8,
    "shortcut_success_max": 0.25,
    "shortcut_scope": "held-out stratum only",
    "causal_plan_margin_min": 0.3,
    "margin_scope": "pooled correct-verdict rate minus each of always-restrict and cheap-screen references",
    "scope": "Declared rules from code, not a fresh execution or audit of admission outcomes."
  },
  "tools": {
    "laboratory_count": 15,
    "laboratory_names": [
      "preview_request",
      "inspect_feedback",
      "inspect_state",
      "read_evidence",
      "read_sources",
      "read_model",
      "read_artifact",
      "compute",
      "stage_model",
      "adopt_model",
      "submit_batch",
      "record_decision",
      "compact_context",
      "view_image",
      "request_simulation"
    ],
    "pi_native_count": 7,
    "pi_native_names": [
      "read",
      "bash",
      "edit",
      "write",
      "grep",
      "find",
      "ls"
    ],
    "claude_native_names": [
      "Bash",
      "Read",
      "Edit",
      "Write",
      "Grep",
      "Glob"
    ]
  },
  "task_text": {
    "source_field": "task.mission / task.material_question",
    "sections": [
      "Mission",
      "Requirement",
      "Starting records",
      "Scheduled release",
      "Declared set-points",
      "Economy",
      "Timing",
      "Decision points",
      "Required decisions",
      "Measurement definitions"
    ],
    "required_decisions": [
      "D1-a: model_scope and adopt executable model",
      "D1-b: release_forecast from saved computation",
      "D1-c: purchase evidence with stated purpose",
      "D2: revise or retain adopted model and finish purchases",
      "D3: terminal nominate / restrict / none, then close"
    ],
    "forecast_quantities": [
      "hci_kOe",
      "br_kGs",
      "bhmax_MGOe"
    ],
    "forecast_interval_percent": 90
  },
  "schema": "sdl2-task-public-v1",
  "economy": {
    "currency": "abstract credits, not dollars",
    "allowance_credits": 570,
    "half_allowance_credits": 285,
    "new_bodies": 12,
    "reserve_guidance_credits": 60,
    "supplied_releases_charged": false,
    "failed_executions_charged": false,
    "overspending": "Recorded and invalidates within-allowance outcome; purchasing is not blocked by a credit guard.",
    "items": {
      "new_degassing_batch": {
        "credits": 15,
        "unit": "per declared new batch (<= 5 g powder)",
        "latency": "same stage"
      },
      "new_body": {
        "credits": 10,
        "unit": "per manufactured body (1 g, one SPS slot)",
        "latency": "same stage"
      },
      "anneal_step": {
        "credits": 6,
        "unit": "per body per anneal step",
        "latency": "same stage"
      },
      "density": {
        "credits": 1,
        "unit": "per body per request (Archimedes)",
        "latency": "same stage"
      },
      "sem": {
        "credits": 20,
        "unit": "per body per request (any SEM quantity or microstructure)",
        "latency": "one stage"
      },
      "icp_oes": {
        "credits": 25,
        "unit": "per batch per request",
        "latency": "one stage"
      },
      "hci_screen": {
        "credits": 12,
        "unit": "per body per request (open-circuit, Hci only)",
        "latency": "same stage"
      },
      "full_curve": {
        "credits": 50,
        "unit": "per body per request (closed circuit; any of hci_kOe, br_kGs, bhmax_MGOe, demagnetization_curve)",
        "latency": "one stage; at most 2 released per stage boundary"
      },
      "sps_log": {
        "credits": 0,
        "unit": "recorded with manufacture",
        "latency": "same stage"
      }
    }
  }
}
