{
  "experiment": "ten-million-fresh-1",
  "baseCommit": "6e1ee9cd9405d71b425b4aa20ac5215295ef2089",
  "startedAt": "2026-10-13T02:58:10.833479+00:00",
  "methods": [
    "curriculum",
    "shaping"
  ],
  "trainingRepsPerMethod": 10000000,
  "totalTrainingReps": 20000000,
  "runsPerMethod": 1,
  "trainedRole": "g",
  "initialization": "freshLearner: no previous weights, labels or replay memory",
  "config": {
    "dt": {
      "mass": 280,
      "strength": 74,
      "speed": 87,
      "skill": 70
    },
    "g": {
      "mass": 315,
      "strength": 89,
      "speed": 72,
      "skill": 70
    },
    "duration": 5,
    "blockRange": 2.2,
    "engagementTime": 1.2,
    "contactInterval": 0.2,
    "contactDrive": 1,
    "contactFootwork": 1
  },
  "trainingSeedBase": 2147483648,
  "trainingSeedStride": 127,
  "developmentSeed": 61000001,
  "developmentCount": 2000,
  "finalEvalSeeds": {
    "standard": 111000001,
    "tacticsOnly": 111000001,
    "trainedDT": 211000001,
    "recovery": 311000001
  },
  "finalEvalCountPerTest": 10000,
  "curriculumSchedule": {
    "first2000000": "head-on bull rush",
    "next3000000": "bull / left arc / right arc",
    "last5000000": "50% normal, 30% lateral/feint, 20% offset recovery"
  },
  "shaping": {
    "lambda": 0.25,
    "gamma": 0.94,
    "potentialWeights": {
      "lane": 0.5,
      "cushion": 0.3,
      "motion": 0.2
    },
    "terminalPotential": 0
  },
  "notes": [
    "One training trajectory per method. No seed-to-seed certainty claims.",
    "Training seeds stay in the upper half of the uint32 range; evaluation seeds are disjoint.",
    "Headless optimization skips visual recording, uses shallow coordinate copies, and directly steps fixed ticks. Physics and learning unchanged; 10,000 rep-by-rep trajectories and final weights match original engine exactly for each method.",
    "Current main-lab policies and previous study preserved."
  ],
  "engineSHA256": {
    "state-machine.js": "9dec3a40411b976914a0788c1b440ae97e7ef79f02f7d4cdd706131569de0db9",
    "training-methods.js": "5aec8bbb559669a3092a2d19f1280d41a74347136bcd5c1dd3b79da6a307ea5d",
    "sim.js": "c8a7e48246a1661dee5498254995f8f84cd0c660a2d573786381b848bbafc87d",
    "analytics.js": "20fdae4e830cff4f4f161c05c8f20bf6633a59b84746e9e79f6810b66abfbe8d",
    "contact.js": "5c11ecf355f65cf75d2fe86d1853524541e8987124179fa10e568633142a4e76"
  },
  "original-engineSHA256": {
    "state-machine.js": "9dec3a40411b976914a0788c1b440ae97e7ef79f02f7d4cdd706131569de0db9",
    "training-methods.js": "3b1b917ec3fc4012243e6414e9e7ba0282d0a2271501fd8d7831669371e01a3e",
    "sim.js": "ad9c45e66c72c1854690f529dbbff5fcd22bebc5ac951064d6f26c74685544ed",
    "analytics.js": "20fdae4e830cff4f4f161c05c8f20bf6633a59b84746e9e79f6810b66abfbe8d",
    "contact.js": "67c83504ba6127985b092593722907c047bcd1136c009cf18a303abc645e05b5"
  },
  "runtime": {
    "node": "v22.14.0",
    "platform": "darwin",
    "arch": "arm64"
  }
}