{
  "schema": "m31hotism-esas-public-source-inventory/v2",
  "generated_date": "2026-07-13",
  "science_scope": "documentation and teaching audit only",
  "execution_performed": false,
  "runtime_boundary": {
    "locally_observed_distribution": "xmmsas_20211130_0941",
    "local_task_names": ["mos-spectra", "mos_back"],
    "current_sas_documentation_task_names": ["mosspectra", "mosback"],
    "interpretation": "The tutorial audits the locally executed legacy interfaces; it does not claim direct compatibility with current SAS task names.",
    "official_references": [
      "https://xmm-tools.cosmos.esa.int/external/sas/current/doc/mosspectra/index.html",
      "https://xmm-tools.cosmos.esa.int/external/sas/current/doc/mosback/index.html",
      "https://heasarc.gsfc.nasa.gov/docs/xmm/esas/cookbook/node112.html"
    ]
  },
  "sources": [
    {
      "id": "xartatoms_0900170101_r47_phase2",
      "project": "XARTATOMS",
      "obsid": "0900170101",
      "engine": "esas_playground_v1.4.1.py",
      "engine_sha256": "67ce592641201f92bf6952f7ee5555e9c8a508198ee571f924a8caa9d7e96063",
      "config_profiles": [
        {"id": "xart_v141_full", "mode": "full", "3B.background": "no", "4.background": "yes", "extra_region": "yes", "background": "yes", "4.fitting": "no"},
        {"id": "xart_v141_resume", "mode": "resume", "3B.background": "no", "4.background": "yes", "extra_region": "yes", "background": "yes", "4.fitting": "no"}
      ],
      "entry_points": [
        "run_esas_r47_eight_axis_centered_phase2_pilot_mos2_windN.sh",
        "run_esas_r47_eight_axis_centered_phase2_remaining_seven_mos2.sh"
      ],
      "configs": [
        "esas_playground_r47_eight_axis_centered_phase2_pilot_mos2_windN.par",
        "esas_playground_r47_eight_axis_centered_phase2_remaining_seven_mos2.par"
      ],
      "observed_state": "7/8 MOS2 sector spectra qualified; one sector unavailable because only CCD1/no outer QPB anchor",
      "teaching_role": "production-pattern candidate",
      "evidence": [
        {"id": "XART-E01", "label": "Phase2 pilot wrapper", "sha256": "9744abf99100da3f22588b9b59d6f804b742046269cbe5e8afed874c5ebdc44f"},
        {"id": "XART-E02", "label": "Phase2 remaining-batch wrapper", "sha256": "974a62f85c873513ce7f3fc185a770c0a474e57f06048682b5621305eb3c0c3b"},
        {"id": "XART-E03", "label": "Phase2 pilot parameter file", "sha256": "a66564d0d1074abf906cf991eb0ab0663118d7352d809597bcc03ec5e077251e"},
        {"id": "XART-E04", "label": "remaining-six qualification JSON", "sha256": "41b5fc09521d1e040882ad7b3ac780ea246839d76b6f7497fee7aa83aecf2581"}
      ]
    },
    {
      "id": "m31cgm_0800732701_history",
      "project": "M31CGM",
      "obsid": "0800732701",
      "engines_observed": ["esas_playground_v1.2.0C.ipynb", "esas_playground_v1.3.0.py"],
      "prepared_job_engine": "esas_playground_v1.3.2.py",
      "entry_points": ["command_v1.3.2.sh", "job_demo_v1.3.2.sh"],
      "observed_run_mode": "redu",
      "largest_examined_log_bytes": 49609621,
      "credential_policy": "legacy notification credential [REDACTED]; never publish or reuse",
      "teaching_role": "historical full-reduction and failure corpus",
      "evidence": [
        {"id": "CGM-E01", "label": "0800732701 PBS job", "sha256": "9a32694c603c86975a26ef2cc5156839c45ca08a2063a269059f8eff75992e53"},
        {"id": "CGM-E02", "label": "0800732701 v1.3.2 parameter file", "sha256": "c18c846d1f7fcbb7f2c9eef34880fd10476fc357aca925254b93c00bac211459"},
        {"id": "CGM-E03", "label": "0800732701 2025-11-30 main log", "sha256": "931f67ddafa70ed0f86d3bc74f0d47e9887009cd273055dd01f86403fe04398f"}
      ]
    },
    {
      "id": "m31hotism_0112570101_e009",
      "project": "M31HotISM",
      "obsid": "0112570101",
      "engine": "esas_playground_v1.3.2.py",
      "config_profiles": [
        {"id": "m31hotism_v132_C", "mode": "C", "3B.background": "yes", "4.background": "no", "extra_region": "no", "background": "yes", "4.fitting": "no"}
      ],
      "portability_risks": [
        "mask builder/linker/verifier encode 0112570101 S001/S002 exposure IDs",
        "92/90 mask-row expectations are observation-specific",
        "rejected-attempt comparison is historical and not a generic gate"
      ],
      "region": "variable-W1 a=0-4 arcmin custom polygon",
      "observed_state": "MOS1/MOS2 source+QPB+RMF+ARF accepted; 84/84 checks pass; no unintended PN",
      "core_chain": ["extra_region_list", "add_extra_region_v2", "ds9_to_xmmexpr(det)", "mos-spectra", "mos_back"],
      "teaching_role": "geometry and product-acceptance candidate",
      "evidence": [
        {"id": "HOTISM-E009", "label": "E009 experiment record", "sha256": "3dc9b3ca9684506568f321048527170319c69929b126035511850cc77edb5b5b"},
        {"id": "HOTISM-E009-QA", "label": "E009 84-gate verification JSON", "sha256": "43c1d96f9ba6c105dc713e82f8ecda1fb1857cad272507180a61c9e00d971c90"},
        {"id": "HOTISM-E009-RUN", "label": "E009 pilot wrapper", "sha256": "f33688de3ee7b36e017d4d774c87d41ffb138cd9f9e659b80aa8085a80d31606"}
      ]
    },
    {
      "id": "upstream_esas_v141",
      "project": "xmm/python_xmmscripts",
      "engine": "esas_playground_v1.4.1.py",
      "engine_sha256": "67ce592641201f92bf6952f7ee5555e9c8a508198ee571f924a8caa9d7e96063",
      "observed_improvements": [
        "Python 3.13 bootstrap",
        "MOS-only bookkeeping and relative-CWD handling",
        "decimal custom-region basename handling",
        "extra-region path handling",
        "region-specific MOS CCD and QPB-anchor logic"
      ],
      "open_review_points": ["unconditional rProfile post-processing", "final calibration sync", "import-time logging/test noise"],
      "teaching_role": "canonical engine selected by user; central qualification still required",
      "evidence": [
        {"id": "ENGINE-E01", "label": "esas_playground v1.4.1 source", "sha256": "67ce592641201f92bf6952f7ee5555e9c8a508198ee571f924a8caa9d7e96063"}
      ]
    }
  ],
  "adopted_assignment": {
    "engine": "upstream esas_playground v1.4.1",
    "production_runner_pattern": "XARTATOMS 0900170101 Phase2",
    "product_acceptance_pattern": "M31HotISM E009 plus XARTATOMS qualification",
    "failure_training_corpus": "M31CGM 0800732701 logs"
  },
  "user_decision_received": true,
  "user_decision_required": false,
  "decision_provenance": {
    "schema": "m31hotism-esas-user-teaching/v2",
    "source_revision": "m31hotism-esas-teaching-2026-07-13-v2",
    "decision_sha256": "3f454865e1e43208629304827ad29eb8a99fdfbfaf28b66c639d8289465b8007",
    "execution_authorized": false
  }
}
