{
  "title": "Subtitle repair benchmark (defect injection) — VideoText deterministic subtitle engine",
  "run_at_utc": "2026-10-27T18:44:02.176Z",
  "git_commit": "50cf3f052dbe41b89770bd4d6f128a834a3e7f66",
  "node_version": "v22.22.0",
  "seed": 20261027,
  "design": {
    "files_per_condition": 200,
    "cues_per_file": 60,
    "defects_per_single_class_file": 6,
    "mixed_defects_per_file": 10,
    "conditions": [
      "clean",
      "overlap",
      "long_line",
      "too_many_lines",
      "fast_reading",
      "invalid_timing",
      "mixed",
      "overflow_text",
      "dense_overlap",
      "dense_fast"
    ],
    "stress_conditions": [
      "overflow_text",
      "dense_overlap",
      "dense_fast"
    ],
    "standards": {
      "max_chars_per_line": 42,
      "max_lines": 2,
      "max_reading_speed_cps": 20,
      "min_duration_sec_for_cues_over_20_chars": 1.5
    }
  },
  "sources": [
    {
      "id": 1342,
      "title": "Pride and Prejudice",
      "sha256": "3f6bb9d6f78e0293b56acd4714dd68cb7d6d1d293402031ce9d5a216bcaf9d75",
      "url": "https://www.gutenberg.org/cache/epub/1342/pg1342.txt",
      "license": "Public domain in the USA (Project Gutenberg)"
    },
    {
      "id": 11,
      "title": "Alice's Adventures in Wonderland",
      "sha256": "01b38ea4c710a84bc18d0bd41271a5a1a92b94e97b2812f4dece97d4a694725e",
      "url": "https://www.gutenberg.org/cache/epub/11/pg11.txt",
      "license": "Public domain in the USA (Project Gutenberg)"
    },
    {
      "id": 84,
      "title": "Frankenstein",
      "sha256": "2b97b7f8aad508649481d8dd4f6b54f9b965ddb3ba634e9151c815f537b49e42",
      "url": "https://www.gutenberg.org/cache/epub/84/pg84.txt",
      "license": "Public domain in the USA (Project Gutenberg)"
    },
    {
      "id": 2701,
      "title": "Moby Dick",
      "sha256": "b5e88b71a1cda068e9ab1d94344c9d932338ba6da1a66def97a1aecd9cfcc87d",
      "url": "https://www.gutenberg.org/cache/epub/2701/pg2701.txt",
      "license": "Public domain in the USA (Project Gutenberg)"
    },
    {
      "id": 1661,
      "title": "The Adventures of Sherlock Holmes",
      "sha256": "922e2a12ccb43a4c9544c260b2166c6ad2097aeb5957faeee113f173bb857cd0",
      "url": "https://www.gutenberg.org/cache/epub/1661/pg1661.txt",
      "license": "Public domain in the USA (Project Gutenberg)"
    }
  ],
  "input_violations_by_condition": {
    "clean": 0,
    "overlap": 1200,
    "long_line": 1200,
    "too_many_lines": 1201,
    "fast_reading": 1200,
    "invalid_timing": 1200,
    "mixed": 2001,
    "overflow_text": 1197,
    "dense_overlap": 1200,
    "dense_fast": 1200
  },
  "detection": [
    {
      "condition": "overlap",
      "defect": "overlap",
      "injected": 1200,
      "detected": 1200,
      "recall_pct": 100,
      "ci95": [
        99.68,
        100
      ]
    },
    {
      "condition": "long_line",
      "defect": "long_line",
      "injected": 1200,
      "detected": 1200,
      "recall_pct": 100,
      "ci95": [
        99.68,
        100
      ]
    },
    {
      "condition": "too_many_lines",
      "defect": "too_many_lines",
      "injected": 1200,
      "detected": 1200,
      "recall_pct": 100,
      "ci95": [
        99.68,
        100
      ]
    },
    {
      "condition": "fast_reading",
      "defect": "fast_reading",
      "injected": 1200,
      "detected": 1200,
      "recall_pct": 100,
      "ci95": [
        99.68,
        100
      ]
    },
    {
      "condition": "invalid_timing",
      "defect": "invalid_timing",
      "injected": 1200,
      "detected": 1200,
      "recall_pct": 100,
      "ci95": [
        99.68,
        100
      ]
    },
    {
      "condition": "mixed",
      "defect": "overlap",
      "injected": 400,
      "detected": 400,
      "recall_pct": 100,
      "ci95": [
        99.05,
        100
      ]
    },
    {
      "condition": "mixed",
      "defect": "long_line",
      "injected": 400,
      "detected": 400,
      "recall_pct": 100,
      "ci95": [
        99.05,
        100
      ]
    },
    {
      "condition": "mixed",
      "defect": "too_many_lines",
      "injected": 400,
      "detected": 400,
      "recall_pct": 100,
      "ci95": [
        99.05,
        100
      ]
    },
    {
      "condition": "mixed",
      "defect": "fast_reading",
      "injected": 400,
      "detected": 400,
      "recall_pct": 100,
      "ci95": [
        99.05,
        100
      ]
    },
    {
      "condition": "mixed",
      "defect": "invalid_timing",
      "injected": 400,
      "detected": 400,
      "recall_pct": 100,
      "ci95": [
        99.05,
        100
      ]
    },
    {
      "condition": "overflow_text",
      "defect": "overflow_text",
      "injected": 1197,
      "detected": 1197,
      "recall_pct": 100,
      "ci95": [
        99.68,
        100
      ]
    },
    {
      "condition": "dense_overlap",
      "defect": "dense_overlap",
      "injected": 1200,
      "detected": 1200,
      "recall_pct": 100,
      "ci95": [
        99.68,
        100
      ]
    },
    {
      "condition": "dense_fast",
      "defect": "dense_fast",
      "injected": 1200,
      "detected": 1200,
      "recall_pct": 100,
      "ci95": [
        99.68,
        100
      ]
    }
  ],
  "false_positives": {
    "clean_cues": 12000,
    "clean_cues_flagged": 0,
    "clean_files": 200,
    "clean_files_flagged": 0,
    "untouched_cues_in_defective_files": 95206,
    "untouched_cues_flagged": 0,
    "untouched_flag_rate_pct": 0
  },
  "repair": {
    "clean": {
      "files": 200,
      "cuesIn": 12000,
      "injected": 0,
      "engine": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000,
        "untouchedCues": 11996,
        "untouchedTimingChanged": 0,
        "claimedFixed": 0,
        "claimedFixedVerified": 0,
        "reportedOpen": 0,
        "reportedOpenConfirmed": 0,
        "unreportedResidual": 0,
        "silentFiles": 0,
        "status": {
          "passed": 200
        },
        "passedAndCompliant": 200,
        "passed": 200,
        "idempotent": 200,
        "textChangedWarnings": 0
      },
      "naive": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000
      },
      "naiveExtend": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000
      }
    },
    "overlap": {
      "files": 200,
      "cuesIn": 12000,
      "injected": 1200,
      "engine": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000,
        "untouchedCues": 8538,
        "untouchedTimingChanged": 0,
        "claimedFixed": 1200,
        "claimedFixedVerified": 1200,
        "reportedOpen": 0,
        "reportedOpenConfirmed": 0,
        "unreportedResidual": 0,
        "silentFiles": 0,
        "status": {
          "passed": 200
        },
        "passedAndCompliant": 200,
        "passed": 200,
        "idempotent": 200,
        "textChangedWarnings": 0
      },
      "naive": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000
      },
      "naiveExtend": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000
      }
    },
    "long_line": {
      "files": 200,
      "cuesIn": 12000,
      "injected": 1200,
      "engine": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000,
        "untouchedCues": 8540,
        "untouchedTimingChanged": 0,
        "claimedFixed": 1200,
        "claimedFixedVerified": 1200,
        "reportedOpen": 0,
        "reportedOpenConfirmed": 0,
        "unreportedResidual": 0,
        "silentFiles": 0,
        "status": {
          "passed": 200
        },
        "passedAndCompliant": 200,
        "passed": 200,
        "idempotent": 200,
        "textChangedWarnings": 0
      },
      "naive": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000
      },
      "naiveExtend": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000
      }
    },
    "too_many_lines": {
      "files": 200,
      "cuesIn": 12000,
      "injected": 1200,
      "engine": {
        "residual": 10,
        "residualByClass": {
          "min_duration": 10
        },
        "compliantFiles": 191,
        "textPreserved": 200,
        "cuesOut": 13200,
        "untouchedCues": 8550,
        "untouchedTimingChanged": 0,
        "claimedFixed": 1209,
        "claimedFixedVerified": 1209,
        "reportedOpen": 11,
        "reportedOpenConfirmed": 10,
        "unreportedResidual": 0,
        "silentFiles": 0,
        "status": {
          "needs_review": 10,
          "passed": 190
        },
        "passedAndCompliant": 190,
        "passed": 190,
        "idempotent": 200,
        "textChangedWarnings": 0
      },
      "naive": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000
      },
      "naiveExtend": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000
      }
    },
    "fast_reading": {
      "files": 200,
      "cuesIn": 12000,
      "injected": 1200,
      "engine": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000,
        "untouchedCues": 8524,
        "untouchedTimingChanged": 0,
        "claimedFixed": 1200,
        "claimedFixedVerified": 1200,
        "reportedOpen": 0,
        "reportedOpenConfirmed": 0,
        "unreportedResidual": 0,
        "silentFiles": 0,
        "status": {
          "passed": 200
        },
        "passedAndCompliant": 200,
        "passed": 200,
        "idempotent": 200,
        "textChangedWarnings": 0
      },
      "naive": {
        "residual": 1200,
        "residualByClass": {
          "fast_reading": 1200
        },
        "compliantFiles": 0,
        "textPreserved": 200,
        "cuesOut": 12000
      },
      "naiveExtend": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000
      }
    },
    "invalid_timing": {
      "files": 200,
      "cuesIn": 12000,
      "injected": 1200,
      "engine": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000,
        "untouchedCues": 8544,
        "untouchedTimingChanged": 0,
        "claimedFixed": 2024,
        "claimedFixedVerified": 2024,
        "reportedOpen": 0,
        "reportedOpenConfirmed": 0,
        "unreportedResidual": 0,
        "silentFiles": 0,
        "status": {
          "passed": 184,
          "needs_review": 16
        },
        "passedAndCompliant": 184,
        "passed": 184,
        "idempotent": 200,
        "textChangedWarnings": 0
      },
      "naive": {
        "residual": 1072,
        "residualByClass": {
          "fast_reading": 1072
        },
        "compliantFiles": 0,
        "textPreserved": 200,
        "cuesOut": 12000
      },
      "naiveExtend": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000
      }
    },
    "mixed": {
      "files": 200,
      "cuesIn": 12000,
      "injected": 2000,
      "engine": {
        "residual": 2,
        "residualByClass": {
          "min_duration": 1,
          "fast_reading": 1
        },
        "compliantFiles": 199,
        "textPreserved": 200,
        "cuesOut": 12400,
        "untouchedCues": 6382,
        "untouchedTimingChanged": 0,
        "claimedFixed": 2241,
        "claimedFixedVerified": 2241,
        "reportedOpen": 2,
        "reportedOpenConfirmed": 2,
        "unreportedResidual": 0,
        "silentFiles": 0,
        "status": {
          "passed": 191,
          "needs_review": 9
        },
        "passedAndCompliant": 191,
        "passed": 191,
        "idempotent": 200,
        "textChangedWarnings": 0
      },
      "naive": {
        "residual": 738,
        "residualByClass": {
          "fast_reading": 738
        },
        "compliantFiles": 0,
        "textPreserved": 200,
        "cuesOut": 12000
      },
      "naiveExtend": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000
      }
    },
    "overflow_text": {
      "files": 200,
      "cuesIn": 10803,
      "injected": 1197,
      "engine": {
        "residual": 0,
        "residualByClass": {},
        "compliantFiles": 200,
        "textPreserved": 200,
        "cuesOut": 12000,
        "untouchedCues": 7380,
        "untouchedTimingChanged": 0,
        "claimedFixed": 1197,
        "claimedFixedVerified": 1197,
        "reportedOpen": 0,
        "reportedOpenConfirmed": 0,
        "unreportedResidual": 0,
        "silentFiles": 0,
        "status": {
          "passed": 200
        },
        "passedAndCompliant": 200,
        "passed": 200,
        "idempotent": 200,
        "textChangedWarnings": 0
      },
      "naive": {
        "residual": 1197,
        "residualByClass": {
          "too_many_lines": 1197
        },
        "compliantFiles": 0,
        "textPreserved": 200,
        "cuesOut": 10803
      },
      "naiveExtend": {
        "residual": 1197,
        "residualByClass": {
          "too_many_lines": 1197
        },
        "compliantFiles": 0,
        "textPreserved": 200,
        "cuesOut": 10803
      }
    },
    "dense_overlap": {
      "files": 200,
      "cuesIn": 12000,
      "injected": 1200,
      "engine": {
        "residual": 1200,
        "residualByClass": {
          "overlap": 1200
        },
        "compliantFiles": 0,
        "textPreserved": 200,
        "cuesOut": 12000,
        "untouchedCues": 8416,
        "untouchedTimingChanged": 0,
        "claimedFixed": 48,
        "claimedFixedVerified": 48,
        "reportedOpen": 1200,
        "reportedOpenConfirmed": 1200,
        "unreportedResidual": 0,
        "silentFiles": 0,
        "status": {
          "needs_review": 200
        },
        "passedAndCompliant": 0,
        "passed": 0,
        "idempotent": 200,
        "textChangedWarnings": 0
      },
      "naive": {
        "residual": 1200,
        "residualByClass": {
          "fast_reading": 1200
        },
        "compliantFiles": 0,
        "textPreserved": 200,
        "cuesOut": 12000
      },
      "naiveExtend": {
        "residual": 1200,
        "residualByClass": {
          "fast_reading": 1200
        },
        "compliantFiles": 0,
        "textPreserved": 200,
        "cuesOut": 12000
      }
    },
    "dense_fast": {
      "files": 200,
      "cuesIn": 12000,
      "injected": 1200,
      "engine": {
        "residual": 1200,
        "residualByClass": {
          "fast_reading": 1200
        },
        "compliantFiles": 0,
        "textPreserved": 200,
        "cuesOut": 12000,
        "untouchedCues": 8419,
        "untouchedTimingChanged": 0,
        "claimedFixed": 3,
        "claimedFixedVerified": 3,
        "reportedOpen": 1200,
        "reportedOpenConfirmed": 1200,
        "unreportedResidual": 0,
        "silentFiles": 0,
        "status": {
          "needs_review": 200
        },
        "passedAndCompliant": 0,
        "passed": 0,
        "idempotent": 200,
        "textChangedWarnings": 0
      },
      "naive": {
        "residual": 1200,
        "residualByClass": {
          "fast_reading": 1200
        },
        "compliantFiles": 0,
        "textPreserved": 200,
        "cuesOut": 12000
      },
      "naiveExtend": {
        "residual": 1200,
        "residualByClass": {
          "fast_reading": 1200
        },
        "compliantFiles": 0,
        "textPreserved": 200,
        "cuesOut": 12000
      }
    }
  },
  "runtime_ms_per_file": {
    "median": 1.133,
    "p95": 1.89,
    "max": 8.379,
    "n": 2000
  }
}
