{
  "schema": "mvsc-dhc-v9-r2-prepared-release-summary-1",
  "product": "Delayed Hyper Combo",
  "version": "v9-r2",
  "installerRevision": 2,
  "preparedOn": "2026-10-01",
  "prepared": true,
  "published": false,
  "releaseAccepted": false,
  "checkpointNote": "Local preparation snapshot. Matching package/catalog hashes and completed packaging checks do not certify complete gameplay acceptance or record a deployment.",
  "candidate": {
    "name": "mvsc.zip",
    "bytes": 23064085,
    "sha256": "6091d6b5a97abbb4c51a29fcd3fb27103b95461cf1a2e2ebd3927d4d48d302bb",
    "availability": "retained local evidence; no game archive or memory trace published",
    "canonicalArchiveSha256": "6091d6b5a97abbb4c51a29fcd3fb27103b95461cf1a2e2ebd3927d4d48d302bb",
    "contentDigest": "55da34012506346ea872d4c7a7faf0e2c7e41efc7000c13aebaa8f464dde2ea9",
    "contentDigestScheme": "sorted-member-name-size-sha256-json-v1",
    "output": "mvsc_dhc_v9-r2.zip",
    "installedMembersMatchCandidate": true,
    "containerNote": "ZIP container hashes may differ with input order, metadata and compression. Compare every present member; a missing key stays missing."
  },
  "installer": {
    "name": "MVSC-DHC-v9-r2.cmd",
    "href": "/downloads/mvsc-dhc/MVSC-DHC-v9-r2.cmd",
    "bytes": 1203556,
    "sha256": "f327456eb33e58ad49cd8983905dc54a41f3570f11299f27a6de72ad2f7eb46d",
    "patchFormat": 2,
    "draft": false,
    "hunks": 17151,
    "replacementBytes": 145985
  },
  "patchSpec": {
    "name": "MVSC-DHC-v9-r2.patch.json",
    "href": "/downloads/mvsc-dhc/MVSC-DHC-v9-r2.patch.json",
    "bytes": 1550857,
    "sha256": "ef1a50992a57a16596906ba9539fd9899b711caadd07ee1a797881b34efeb441"
  },
  "pythonBundle": {
    "name": "MVSC-DHC-v9-r2-python.zip",
    "href": "/downloads/mvsc-dhc/MVSC-DHC-v9-r2-python.zip",
    "bytes": 157196,
    "sha256": "f4740869c8a30c8b51a59aa55075bb86c87971b34f037b34fc2bfdb15f9f431d"
  },
  "parent": {
    "set": "Clean encrypted Euro mvsc 980123",
    "canonicalFixtureSha256": "fbb9c9a0fc44c6f26481cc018bdd13d9aac5376806e736c428c4b54b274c032c",
    "acceptedMembers": [
      21,
      20
    ],
    "optionalMember": "mvsc.key",
    "equivalentRepackedInputsAccepted": true
  },
  "romFree": {
    "containsGameArchive": false,
    "embedsStockBeforeBytes": false,
    "downloadsRom": false,
    "networkAccess": false,
    "romExpansion": false
  },
  "verification": {
    "installer": {
      "status": "PASS",
      "executedCases": 32,
      "acceptedInputCases": 8,
      "negativeCases": 24,
      "maintainedPowerShellCases": 10,
      "supplementalPythonCases": 16,
      "supplementalPowerShellCases": 6,
      "pythonVersion": "3.14.7",
      "powershellVersion": "7.6.5",
      "platform": "macOS arm64",
      "nativeWindowsTested": false,
      "inputPreserved": true,
      "exactOutputMembers": true,
      "failureLeavesExistingFilesIntact": true,
      "scope": "Actual Python patcher and embedded PowerShell body. Canonical, reordered, repacked and keyless archives; corrupt, duplicate, missing, extra and foreign-key members; wrong revision, truncated/already-patched input, existing output/receipt, and tampered spec/payload. The real USA wrong-revision fixture is a three-member merged clone.",
      "evidence": {
        "name": "default-installer-verification.json",
        "bytes": 49075,
        "sha256": "14091d3c598719c1847ef7b05580d9bd6195625f04204c7add36f2f84149824b",
        "availability": "retained local evidence; no game archive or memory trace published"
      },
      "maintainedEvidence": {
        "name": "maintained-installer-verification.json",
        "bytes": 2455,
        "sha256": "d6fedbeaca9182994725c90f9c7521551166f2e4f3078a6cd2655fdaed9aa191",
        "availability": "retained local evidence; no game archive or memory trace published"
      }
    },
    "independentArtifacts": {
      "status": "PASS",
      "byteIdenticalArtifacts": 3,
      "items": [
        "Windows CMD",
        "patch spec",
        "portable Python ZIP"
      ],
      "evidence": {
        "name": "independent-artifacts.json",
        "bytes": 3599,
        "sha256": "15d3ddfbb857cb2755d978989b981d5512857109dc32f263dda4b79173828e55",
        "availability": "retained local evidence; no game archive or memory trace published"
      }
    },
    "currentGameplayControls": {
      "candidateSha256": "6091d6b5a97abbb4c51a29fcd3fb27103b95461cf1a2e2ebd3927d4d48d302bb",
      "passedExecutions": 99,
      "critical": 42,
      "edge": 15,
      "rollLifecycle": 42,
      "fullRamReplayPairsIdentical": 24,
      "scope": "Repeated declared diagnostics, not 99 distinct player scenarios; fixtures and control traces are retained locally.",
      "evidence": {
        "name": "6091d6-control-gate.json",
        "bytes": 1255,
        "sha256": "cf7b90acbd5bdf67cbafc7c065747cf6b7b863b797bf8235d46f480b481b8740",
        "availability": "retained local evidence; no game archive or memory trace published"
      }
    },
    "currentHulkLifecycle": {
      "candidateSha256": "6091d6b5a97abbb4c51a29fcd3fb27103b95461cf1a2e2ebd3927d4d48d302bb",
      "observed": 12,
      "total": 12,
      "scope": "Native Team/source-only both sides, selected Ryu/Morrigan/Mega Man and held Mega Man guard controls. Repeated post-cancel damage and universal blockability are not established.",
      "evidence": {
        "name": "hulk-rock-guard-final02-runtime-summary.json",
        "bytes": 4594,
        "sha256": "f4722850600242fcb29322d2e8b65743566b5cc0bbf3daa0cfa5988362c2d97d",
        "availability": "retained local evidence; no game archive or memory trace published"
      }
    },
    "currentMachineChecks": {
      "candidateSha256": "6091d6b5a97abbb4c51a29fcd3fb27103b95461cf1a2e2ebd3927d4d48d302bb",
      "hyperAdmissionAssertions": 1408,
      "hulkHookCopyExitAssertions": 7816,
      "scope": "Exact-image/source-bound machine controls, including seeded boundary states; not a natural reproduction of every reported route."
    },
    "parentBeamChecks": {
      "candidateSha256": "4455254bfc44cb68c290cda85eece2d553876cf3cff26cb296076b6e63d55130",
      "ryuMachineCases": 232,
      "warMachineMachineCases": 240,
      "runtimePlans": 19,
      "observed": 15,
      "unreached": 3,
      "harnessInitializationErrors": 1,
      "primaryControlsObserved": 8,
      "duoControlsObserved": 2,
      "scope": "Earlier composed parent evidence. Do not count the whole batch as passed or as an exact-current runtime run."
    },
    "evidenceAudit": {
      "referencesChecked": 33,
      "evidence": {
        "name": "evidence-review.json",
        "bytes": 36175,
        "sha256": "f5ace5470700740b86a113823061bb1859c1892790b17f46b6c6f5e0863e3492",
        "availability": "retained local evidence; no game archive or memory trace published"
      }
    },
    "manualAudioFeedback": {
      "observation": "Owner reported no audio issues during manual play.",
      "buildHashProvided": false,
      "routeProvided": false,
      "scope": "Positive observation after the launch command. No historical sound root cause or audio-specific fix is inferred."
    }
  },
  "repairs": [
    {
      "number": 1,
      "name": "Roll HCF/DP input timing",
      "change": "Intermediate added-command stages use18 native updates instead of randomized12–17; native grammar, legality and final14-update buffer remain.",
      "qualification": "Parent Roll timing/matcher evidence; final Roll lifecycle control suite. Original QCF deadlines are unchanged."
    },
    {
      "number": 2,
      "name": "LEVEL5 through ladder transitions",
      "change": "Committed shared options survive native between-match setup with a human active and no newStart; fresh/incomplete selection still resets.",
      "qualification": "Parent native enemyKO/next-match witness and selector machine controls."
    },
    {
      "number": 3,
      "name": "Live source and captured-target validation",
      "change": "Selected request/pending commit validates exact live fighter slots, current source state/action and reciprocal capture ownership before transfer/debit.",
      "qualification": "Parent288 source/352 pending machine controls; final critical/edge runs."
    },
    {
      "number": 4,
      "name": "Special to own Hyper admission",
      "change": "Selected-partner requests require a nativeHyper, exact paid lease or verified Roll bridge; ordinary specials retain the same-actor cancel path.",
      "qualification": "Withdrawn wrong-partner reproduction, parent both-side Gamma controls, current1408 actual-image admission assertions."
    },
    {
      "number": 5,
      "name": "Psycho Shot owner/palette safety",
      "change": "Exact fighter-slot/Roll checks precede custom collision/palette reads or writes; invalid owners retire.",
      "qualification": "Reproduced seeded pointer faults/unsafe writes and bounded composed memory/native-dispatch tests, separate from historical natural sound corruption."
    },
    {
      "number": 6,
      "name": "Roll beam owner safety",
      "change": "Front dispatcher validates slot before identity access; cadence/palette adapters validate Roll; nativeOnslaught/sharedPSX donor dispatch remains.",
      "qualification": "Bounded owner/native-dispatch machine controls and final lifecycle suite."
    },
    {
      "number": 7,
      "name": "Shared Hulk captured-state eligibility",
      "change": "REMIX captured state32 with stale Hulk/Orange action06/0C/14 refuses and clears private DHC chain state; action08/release/other-mode boundaries remain.",
      "qualification": "Seeded paired source/epoch witnesses, not a natural Quake→landing→normal-grab reproduction."
    },
    {
      "number": 8,
      "name": "Independent Ryu and Proton restart cleanup",
      "change": "Fresh nativeTeam source initialization retires exact prior Ryu roots or ordinaryWM roots/segments through their respective native tails before owner timer/flags reset.",
      "qualification": "Separate natural Ryu/WM parent witnesses and232/240 machine cases; bounded scope excludes ARCADE/ownDuo/Onslaught/alternate source forms."
    },
    {
      "number": 9,
      "name": "Crush root after source-action replacement",
      "change": "Exact live same-team Hulk/Orange source must remain Crush06; otherwise the old kind0/state2 root uses native97D98→retained459E free path.",
      "qualification": "Current12 natural controls; nativeTeam old root retires at06→0C on both sides. Repeated post-cancelHP is not demonstrated."
    }
  ],
  "remainingReports": [
    "Broader Ryu/War Machine partners, defenders, Wolverine corner follow-up, stacking, freeze/contact frequency, damage scaling and lifecycle acceptance.",
    "Hulk repeated post-cancel rock damage, same-action Crush restart, natural Orange Hulk, full blockability/partner coverage and natural Quake-to-grab retained-state sequence.",
    "Natural Mega Man/Roll incoming animation, forms, palettes, interruption/expiry/KO/rematch corruption; the form in the historical Ken-animation report remains unconfirmed.",
    "Historical Roll/Spider-Man sound failure and audible quality; original stream crash around 2:01:19 without an established build, route or cause.",
    "Broader route, ladder, physical-controller/macro, hardware, Fightcade online and Windows CMD/PowerShell 5.1 acceptance."
  ],
  "stockGrabCompatibility": {
    "included": false,
    "originalBehaviorRetained": true,
    "scope": "Separate deliberate optional compatibility change for Captain Commando kick throw and Zangief standing MP grab. No Hulk connection asserted."
  },
  "history": {
    "v8InstallerUnchanged": true,
    "v8InstallerSha256": "240da5473bfe8de8fdfa67ddbdf3063babf50f3b7781d4ea66f8eac3dc2a04cf",
    "v8Receipt": "/downloads/dhc/v8/RELEASE.json",
    "withdrawnV9InstallerAvailable": false,
    "withdrawnV9Receipt": "/downloads/dhc/v9/RELEASE.json",
    "earlierMediaProvesCurrentRepairs": false
  }
}
