{
  "generatedAt": "2026-02-20T20:55:11.966Z",
  "sourceBundleDir": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence",
  "sourceBundleJsonPath": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence\\bundle.json",
  "sourceBundleMdPath": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence\\bundle.md",
  "overallPass": true,
  "failOnAnyGap": true,
  "checks": [
    {
      "id": "shielded-smoke",
      "required": true,
      "present": true,
      "passed": true,
      "notes": "pass",
      "attempts": [
        {
          "name": "shielded-smoke",
          "pass": true,
          "reason": "accepted=1, rejected=0, missed=0",
          "exitCode": 0,
          "durationMs": 221645,
          "outputDir": "./zkbench-out-evidence-20260220-202857-shielded-smoke",
          "summaryPath": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\zkbench-out-evidence-20260220-202857-shielded-smoke\\summary.json",
          "stdout": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence\\logs\\shielded-smoke.stdout.log",
          "stderr": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence\\logs\\shielded-smoke.stderr.log",
          "errorSnippet": ""
        }
      ]
    },
    {
      "id": "backup-takeover",
      "required": true,
      "present": true,
      "passed": true,
      "notes": "pass",
      "attempts": [
        {
          "name": "backup-takeover-primary-fails",
          "pass": true,
          "reason": "primary prover rejected under backup authority gate",
          "exitCode": 1,
          "durationMs": 223166,
          "outputDir": "./zkbench-out-evidence-20260220-202857-backup-takeover-primary-fails",
          "summaryPath": "",
          "stdout": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence\\logs\\backup-takeover-primary-fails.stdout.log",
          "stderr": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence\\logs\\backup-takeover-primary-fails.stderr.log",
          "errorSnippet": "Fee preflight: planned_txs=6 max_fee=5000000 safety_bps=10000 reserve=1 required=30000001 balance=217523595\nGroth16 CS cache: hit (.cache/zkbench/groth16_shielded-ledger-v1_741bbff7efd4.ccs.bin)\nProof mode: groth16-shielded-ledger-v1\nProver authority override: 0x004be4e5ea3dde5be1ee2a1eae265e7f742b3b3769eec51db03aba5868e4b7f8476dd5c6ba\nRunning batch size 8 (1 windows)\n\u001b[90m20:36:48\u001b[0m \u001b[33mDBG\u001b[0m constraint system solver done \u001b[36mnbConstraints=\u001b[0m176251 \u001b[36mtook=\u001b[0m191.874643\n\u001b[90m20:36:48\u001b[0m \u001b[33mDBG\u001b[0m prover done \u001b[36macceleration=\u001b[0mnone \u001b[36mbackend=\u001b[0mgroth16 \u001b[36mcurve=\u001b[0mbn254 \u001b[36mnbConstraints=\u001b[0m176251 \u001b[36mtook=\u001b[0m345.18158\n\nbench failed: submit_batch_proof execution failed: unauthorized\n"
        },
        {
          "name": "backup-takeover-backup-recovers",
          "pass": true,
          "reason": "accepted=1, rejected=0, missed=0",
          "exitCode": 0,
          "durationMs": 228128,
          "outputDir": "./zkbench-out-evidence-20260220-202857-backup-takeover-backup-recovers",
          "summaryPath": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\zkbench-out-evidence-20260220-202857-backup-takeover-backup-recovers\\summary.json",
          "stdout": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence\\logs\\backup-takeover-backup-recovers.stdout.log",
          "stderr": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence\\logs\\backup-takeover-backup-recovers.stderr.log",
          "errorSnippet": ""
        }
      ]
    },
    {
      "id": "synthetic-negative",
      "required": true,
      "present": true,
      "passed": true,
      "notes": "pass",
      "attempts": [
        {
          "name": "synthetic-negative",
          "pass": true,
          "reason": "expected fail-close proof rejection observed (non-zero exit)",
          "exitCode": 1,
          "durationMs": 5541,
          "outputDir": "./zkbench-out-evidence-20260220-202857-synthetic-negative",
          "summaryPath": "",
          "stdout": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence\\logs\\synthetic-negative.stdout.log",
          "stderr": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence\\logs\\synthetic-negative.stderr.log",
          "errorSnippet": "Fee preflight: planned_txs=6 max_fee=5000000 safety_bps=10000 reserve=1 required=30000001 balance=186884893\nProof mode: synthetic\nRunning batch size 8 (1 windows)\n\nbench failed: submit_batch_proof execution failed: proof verification failed: proof circuit mismatch\n"
        }
      ]
    },
    {
      "id": "malformed-proof",
      "required": true,
      "present": true,
      "passed": true,
      "notes": "pass",
      "attempts": [
        {
          "name": "malformed-proof",
          "pass": true,
          "reason": "expected malformed-proof rejection observed (non-zero exit)",
          "exitCode": 1,
          "durationMs": 232485,
          "outputDir": "./zkbench-out-evidence-20260220-202857-malformed-proof",
          "summaryPath": "",
          "stdout": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence\\logs\\malformed-proof.stdout.log",
          "stderr": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence\\logs\\malformed-proof.stderr.log",
          "errorSnippet": "Fee preflight: planned_txs=6 max_fee=5000000 safety_bps=10000 reserve=1 required=30000001 balance=186188392\nGroth16 CS cache: hit (.cache/zkbench/groth16_shielded-ledger-v1_741bbff7efd4.ccs.bin)\nProof mode: groth16-shielded-ledger-v1\nProof tamper mode: truncate\nRunning batch size 8 (1 windows)\n\u001b[90m20:44:34\u001b[0m \u001b[33mDBG\u001b[0m constraint system solver done \u001b[36mnbConstraints=\u001b[0m176251 \u001b[36mtook=\u001b[0m209.775868\n\u001b[90m20:44:34\u001b[0m \u001b[33mDBG\u001b[0m prover done \u001b[36macceleration=\u001b[0mnone \u001b[36mbackend=\u001b[0mgroth16 \u001b[36mcurve=\u001b[0mbn254 \u001b[36mnbConstraints=\u001b[0m176251 \u001b[36mtook=\u001b[0m369.513946\n\nbench failed: submit_batch_proof execution failed: invalid proof envelope\n"
        }
      ]
    },
    {
      "id": "timeout-drill",
      "required": true,
      "present": true,
      "passed": true,
      "notes": "pass",
      "attempts": [
        {
          "name": "timeout-drill-b8",
          "pass": true,
          "reason": "expected timeout/deadline failure observed (non-zero exit)",
          "exitCode": 1,
          "durationMs": 224648,
          "outputDir": "./zkbench-out-evidence-20260220-202857-timeout-drill-b8",
          "summaryPath": "",
          "stdout": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence\\logs\\timeout-drill-b8.stdout.log",
          "stderr": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\20260220-202857-launch-gate-evidence\\logs\\timeout-drill-b8.stderr.log",
          "errorSnippet": "Fee preflight: planned_txs=6 max_fee=5000000 safety_bps=10000 reserve=1 required=30000001 balance=185684691\nGroth16 CS cache: hit (.cache/zkbench/groth16_shielded-ledger-v1_741bbff7efd4.ccs.bin)\nProof mode: groth16-shielded-ledger-v1\nRunning batch size 8 (1 windows)\n\u001b[90m20:48:17\u001b[0m \u001b[33mDBG\u001b[0m constraint system solver done \u001b[36mnbConstraints=\u001b[0m176251 \u001b[36mtook=\u001b[0m267.056384\n\u001b[90m20:48:18\u001b[0m \u001b[33mDBG\u001b[0m prover done \u001b[36macceleration=\u001b[0mnone \u001b[36mbackend=\u001b[0mgroth16 \u001b[36mcurve=\u001b[0mbn254 \u001b[36mnbConstraints=\u001b[0m176251 \u001b[36mtook=\u001b[0m400.703828\n\nbench failed: submit_batch_proof execution failed: proof deadline missed\n"
        }
      ]
    }
  ],
  "findings": [],
  "privacyMechanisms": [
    {
      "id": "M1_PROOF_GATED_CLEAR",
      "status": "pass",
      "notes": "Shielded smoke accepted with proof path"
    },
    {
      "id": "M2_FAIL_CLOSE_NEGATIVE",
      "status": "pass",
      "notes": "Synthetic mismatch rejected (fail-close)"
    },
    {
      "id": "M3_MALFORMED_PROOF_REJECT",
      "status": "pass",
      "notes": "Malformed proof envelope rejected"
    },
    {
      "id": "M4_TIMEOUT_ENFORCEMENT",
      "status": "pass",
      "notes": "Proof deadline timeout enforced"
    },
    {
      "id": "M5_BACKUP_PROVER_TAKEOVER",
      "status": "pass",
      "notes": "Primary rejected under backup authority, backup signer recovers"
    }
  ],
  "metrics": {
    "chainId": "2CdK3iHBweFSZhh5XBgLYDaC2U7SoyqEzDaTRhmMFwSLLCm1Xb",
    "nodeUrl": "http://127.0.0.1:9660",
    "runner": "docker",
    "dockerImage": "veilvm-zkbench-evidence:local",
    "proofMode": "groth16",
    "proofCircuitId": "shielded-ledger-v1",
    "acceptedBatches": 1,
    "rejectedBatches": 0,
    "missedProofDeadlines": 0,
    "proofSubmissions": 1,
    "proofSubmissionErrors": 0
  },
  "shouldFail": false,
  "runDir": "C:\\Users\\Josh\\hypersdk\\examples\\veilvm\\evidence-bundles\\vm-privacy-audit\\vmprivacy-20260220-155511"
}
