{
  "schema": "psim.public-reproduction.v2",
  "checked_on": "2026-10-24",
  "classification": "synthetic_teaching_examples",
  "scope": "Numerical reproduction of supplied examples; not independent scientific validation, empirical strategy evaluation, promotion or live capacity evidence.",
  "environment": {
    "python": "3.13.9",
    "numpy": "2.3.5",
    "scipy": "1.16.3",
    "matplotlib": "3.10.7",
    "osqp": "1.1.3"
  },
  "setup": [
    "Create a clean Python 3.13 environment.",
    "Install the versioned requirements.txt beside this manifest.",
    "Download each named script and its explicit inputs. Run in a new empty working directory."
  ],
  "rng": "NumPy PCG64 where declared by each script; seeds and invented constants are in the hashed scripts/results. No market or holdout data.",
  "comparison": {
    "relative_tolerance": 1e-08,
    "absolute_tolerance": 1e-10,
    "excluded_fields": [
      "runtime/package version strings"
    ],
    "figures": "Check numerical source and labels. Font/rasterizer differences can change SVG/PNG bytes. Original figure predecessors are retained."
  },
  "tail_v2_change": "Adds derived training/evaluation tail scenario counts and whether the optimizer weight cap is nonbinding. Previous script and result remain accessible.",
  "commands": [
    {
      "script": "/examples/revision_20260930/reproduce_examples.py",
      "arguments": [],
      "expected": "/examples/revision_20260930/example_checks.json",
      "command": "python reproduce_examples.py ",
      "sha256": {
        "/examples/revision_20260930/reproduce_examples.py": "8cc4ef24ad9852d3e2a570f3666dddb99a460780cd739e5b3ace174b0e446e60",
        "/examples/revision_20260930/example_checks.json": "71b288146954246cb98addf36490cda9fc204dfac39bc3b6b06cc17225b50df2"
      }
    },
    {
      "script": "/examples/stochastic_calculus_v1.py",
      "arguments": [],
      "expected": "/examples/stochastic_calculus_results_v1.json",
      "command": "python stochastic_calculus_v1.py ",
      "sha256": {
        "/examples/stochastic_calculus_v1.py": "7f03fce0c13787f39869a123b81b0670590bb61b9770ce87f239e3061f2d6b9c",
        "/examples/stochastic_calculus_results_v1.json": "af8f3f50d8cb04ecb6bc4c27ce3ec3af86a39394d6501f297129ddca67d8c089"
      }
    },
    {
      "script": "/examples/verification_20261024/tail_risk_v3.py",
      "arguments": [],
      "expected": "/examples/verification_20261024/tail_risk_results_v3.json",
      "command": "python tail_risk_v3.py",
      "sha256": {
        "/examples/verification_20261024/tail_risk_v3.py": "965f4cb135829d13a40d56aacb506ed558e76285ba46fed2e90b53d94befc72f",
        "/examples/verification_20261024/tail_risk_results_v3.json": "df5becf2e2bc09d806aee00a72704689cbf0b53de6840495bc5f21ef3fe1d479"
      }
    },
    {
      "script": "/examples/revision_20261001/tail_sensitivity_v1_3.py",
      "arguments": [],
      "expected": "/examples/revision_20261001/tail_sensitivity_results_v1_3.json",
      "command": "python tail_sensitivity_v1_3.py ",
      "sha256": {
        "/examples/revision_20261001/tail_sensitivity_v1_3.py": "5d05d076b6171dbeed3147544fd1a54c41fcbd0902b9b79eae39db57f5b2833c",
        "/examples/revision_20261001/tail_sensitivity_results_v1_3.json": "caebb495cc16a3a3303fef76ae10a755c6b185fdd37ff8442ca4da858f4e67ec"
      }
    },
    {
      "script": "/examples/revision_20260930/rough_volatility_calculations.py",
      "arguments": [
        "--output",
        "rough-results.json"
      ],
      "expected": null,
      "command": "python rough_volatility_calculations.py --output rough-results.json",
      "sha256": {
        "/examples/revision_20260930/rough_volatility_calculations.py": "359d05cdfc639fd852775dabfc69799a577781674d12cdf10da233e0e71e618b"
      }
    },
    {
      "script": "/examples/revision_20260930/interactive_methods_20260915_v1.py",
      "arguments": [
        "--source",
        "figures_data_v1.json",
        "--output",
        "interactive-results.json"
      ],
      "inputs": [
        "/examples/revision_20260930/figures_data_v1.json"
      ],
      "expected": null,
      "command": "python interactive_methods_20260915_v1.py --source figures_data_v1.json --output interactive-results.json",
      "sha256": {
        "/examples/revision_20260930/interactive_methods_20260915_v1.py": "eeefc0c724bbccc8dde672c79fb03f917fbccc8b7b5c51fe24d4fd151c34321d",
        "/examples/revision_20260930/figures_data_v1.json": "3884b8559f8fdd13f966ebdb15bb17d81665621c46bc49b703e7c19fa9797251"
      }
    },
    {
      "script": "/examples/large_covariance_v1.py",
      "arguments": [],
      "expected": "/examples/large_covariance_results_v1.json",
      "command": "python large_covariance_v1.py ",
      "sha256": {
        "/examples/large_covariance_v1.py": "b2d410f865e7687cd979cbd7ff29e182e2ad34acd98ae3d5bed71e6876ca46ee",
        "/examples/large_covariance_results_v1.json": "4084125db7e9308a8838284268fa434531a7fd60e53e2025a9bb2cd406c87f3c"
      }
    },
    {
      "script": "/examples/revision_20260930/figures_v1.py",
      "arguments": [
        "--output-dir",
        "figures"
      ],
      "command": "python figures_v1.py --output-dir figures",
      "expected": null,
      "inputs": [
        "/examples/revision_20260930/reproduce_examples.py"
      ],
      "sha256": {
        "/examples/revision_20260930/figures_v1.py": "4e709c7cf8309fffaee1699e930c5bd5fddf71162a9714e9dc3830fac3949976",
        "/examples/revision_20260930/reproduce_examples.py": "8cc4ef24ad9852d3e2a570f3666dddb99a460780cd739e5b3ace174b0e446e60"
      }
    }
  ],
  "audit": "Project reproduction checks, 24 October 2026; no third-party attestation.",
  "instruction_revision": "Script filename and pinned installation command corrected; numerical output unchanged. All earlier versions remain accessible."
}
