{
  "schema": "m31hotism-esas-teaching-site/v3",
  "project": "M31HotISM",
  "report": "ESAS extraction teaching and user audit",
  "canonical_url": "https://m31hotism-esas-pipeline-audit.pages.dev/",
  "generated_at": "2026-07-13T18:49:55Z",
  "source_revision": "m31hotism-esas-teaching-2026-07-13-v3",
  "source_inventory_sha256": "ddbab02693b4b84b7277bfd4582008a1e7103e0e9e5921a2dff80ab7101dfafb",
  "status": "USER_DECISION_RECEIVED_CONFIG_AUDIT_READY",
  "science_scope": "documentation and teaching audit only; no SAS run, extraction, fit, or science conclusion",
  "execution_performed": false,
  "interactive_boundary": "browser-local fields, localStorage, preview, copy and download only; no upload or command execution",
  "runtime_boundary": "local exemplars use xmmsas_20211130_0941 legacy mos-spectra/mos_back; current SAS task-name migration is not claimed",
  "pages": [
    "index.html",
    "01-source-comparison.html",
    "02-extraction-thread.html",
    "03-interactive-builder.html",
    "04-log-learning.html",
    "05-teach-hermes.html"
  ],
  "downloads": [
    "downloads/source_comparison.csv",
    "downloads/log_inventory.csv",
    "downloads/source_inventory.json",
    "downloads/teaching_checklist.csv",
    "downloads/generic_extraction_template.par"
  ],
  "assets": [
    "favicon.svg",
    "interactive.js",
    "robots.txt",
    "search.json",
    "site_libs/bootstrap/bootstrap-b0f3059b54b48e63fe9164560f1e4309.min.css",
    "site_libs/bootstrap/bootstrap-icons.css",
    "site_libs/bootstrap/bootstrap-icons.woff",
    "site_libs/bootstrap/bootstrap.min.js",
    "site_libs/clipboard/clipboard.min.js",
    "site_libs/quarto-diagram/mermaid-init.js",
    "site_libs/quarto-diagram/mermaid.css",
    "site_libs/quarto-diagram/mermaid.min.js",
    "site_libs/quarto-html/anchor.min.js",
    "site_libs/quarto-html/axe/axe-check.js",
    "site_libs/quarto-html/popper.min.js",
    "site_libs/quarto-html/quarto-syntax-highlighting-587c61ba64f3a5504c4d52d930310e48.css",
    "site_libs/quarto-html/quarto.js",
    "site_libs/quarto-html/tabsets/tabsets.js",
    "site_libs/quarto-html/tippy.css",
    "site_libs/quarto-html/tippy.umd.min.js",
    "site_libs/quarto-html/zenscroll-min.js",
    "site_libs/quarto-nav/quarto-nav.js",
    "site_libs/quarto-search/autocomplete.umd.js",
    "site_libs/quarto-search/fuse.min.js",
    "site_libs/quarto-search/quarto-search.js",
    "sitemap.xml",
    "styles.css"
  ],
  "deployment_controls": [
    "_headers"
  ],
  "source_groups": [
    "XARTATOMS 0900170101 R4-7 Phase2",
    "M31CGM 0800732701 historical reduction",
    "M31HotISM 0112570101 E009 pilot",
    "xmm/python_xmmscripts/ipynb esas_playground v1.4.1"
  ],
  "adopted_assignment": {
    "engine": "esas_playground_v1.4.1.py; exact public inventory hash ENGINE-E01",
    "execution_pattern": "one engine; OBSID/region/band requirements configured by .par",
    "production_pattern": "XARTATOMS recent clean-shell/pilot/hash/status reference",
    "acceptance_pattern": "M31HotISM E009 plus XARTATOMS qualification",
    "failure_corpus": "M31CGM historical 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",
    "source_inventory_sha256": "a58a40df6b854cfb31de38979aedcc6923ca21992726e496ad09ba7e78e98437",
    "decision_sha256": "3f454865e1e43208629304827ad29eb8a99fdfbfaf28b66c639d8289465b8007",
    "execution_authorized": false
  },
  "per_run_questions_required": [
    "energy band",
    "RA/Dec DS9 region",
    "point-source exclusion",
    "extended-source exclusion",
    "ODF/RPC stage state"
  ],
  "public_sanitization": {
    "absolute_internal_paths": "absent",
    "credentials": "absent or [REDACTED] in prose",
    "custom_interaction_network_sinks": "absent"
  }
}
