[
 {
  "id": "T02",
  "answer_hash": "9500bfce68a5",
  "correct": true,
  "reason": "The answer explicitly names the Keychain item handoff-own-encryption-key and states that deleting it resets the Mac's local Handoff identity key, matching the excerpt.",
  "judge": "deepseek-v4.1-flash",
  "correct_secondary": true,
  "reason_secondary": "The answer correctly identifies the specific Keychain item `handoff-own-encryption-key`.",
  "judge_secondary": "gemini-3.8-flash"
 },
 {
  "id": "T06",
  "answer_hash": "0753805738ba",
  "correct": true,
  "reason": "The answer clearly states the recommended default inspection wake-up interval is about 30 minutes (1,800 seconds), matching the excerpt.",
  "judge": "deepseek-v4.1-flash",
  "correct_secondary": true,
  "reason_secondary": "The answer clearly states the recommended default wake-up interval is about 30 minutes (1,800 seconds).",
  "judge_secondary": "gemini-3.8-flash"
 },
 {
  "id": "T08",
  "answer_hash": "f2498aba865a",
  "correct": true,
  "reason": "The answer clearly states the recommended minimum padding is 24px (or more), matching the excerpt exactly.",
  "judge": "deepseek-v4.1-flash",
  "correct_secondary": true,
  "reason_secondary": "The answer correctly states the recommended minimum padding of 24px as specified in the excerpt.",
  "judge_secondary": "gemini-3.8-flash"
 },
 {
  "id": "T10",
  "answer_hash": "0f17e988385a",
  "correct": true,
  "reason": "The answer clearly states the 50-pair limit and correctly notes that larger sets must be split into independent plans with fresh review and authorization.",
  "judge": "deepseek-v4.1-flash",
  "correct_secondary": true,
  "reason_secondary": "The answer correctly states that the maximum number of image pairs allowed in a single delete manifest is 50 pairs.",
  "judge_secondary": "gemini-3.8-flash"
 },
 {
  "id": "T13",
  "answer_hash": "ccf9294097cf",
  "correct": true,
  "reason": "The answer explicitly states the `--execute` flag is required and explains that live collection is dry-run by default, matching the excerpt.",
  "judge": "deepseek-v4.1-flash",
  "correct_secondary": true,
  "reason_secondary": "The answer correctly identifies the `--execute` flag and explains that commands run in dry-run mode by default.",
  "judge_secondary": "gemini-3.8-flash"
 },
 {
  "id": "T15",
  "answer_hash": "ff2840d97f6a",
  "correct": true,
  "reason": "The answer clearly states the required workflow—create a matplotlib structure draft first and pass it as the input image (-i)—and explains that text-only prompting produces unreliable results, matching the excerpt.",
  "judge": "deepseek-v4.1-flash",
  "correct_secondary": true,
  "reason_secondary": "The answer covers creating a matplotlib structure draft, passing it as the `-i` input image, and explains that generating from text alone produces unreliable results.",
  "judge_secondary": "gemini-3.8-flash"
 },
 {
  "id": "T20",
  "answer_hash": "aed99ef8a3ff",
  "correct": true,
  "reason": "The answer states subagent fan-out sessions are skipped by default and that the --include-subagent flag includes them, matching the excerpt's rule.",
  "judge": "deepseek-v4.1-flash",
  "correct_secondary": true,
  "reason_secondary": "The answer accurately explains that subagent fan-out sessions are skipped by default and can be included using the `--include-subagent` flag.",
  "judge_secondary": "gemini-3.8-flash"
 },
 {
  "id": "T23",
  "answer_hash": "99af29e69df7",
  "correct": true,
  "reason": "The answer clearly states volume and mute are not readable due to protocol limitations and that get_status returns only PowerState, matching the excerpt.",
  "judge": "deepseek-v4.1-flash",
  "correct_secondary": true,
  "reason_secondary": "The answer clearly states that volume level and mute state are not readable and that get_status only returns PowerState.",
  "judge_secondary": "gemini-3.8-flash"
 },
 {
  "id": "T26",
  "answer_hash": "3a9ea3a2f9c7",
  "correct": true,
  "reason": "The answer clearly states the default timezone is UTC, matching the excerpt and rubric.",
  "judge": "deepseek-v4.1-flash",
  "correct_secondary": true,
  "reason_secondary": "The answer correctly states that the default timezone is UTC.",
  "judge_secondary": "gemini-3.8-flash"
 },
 {
  "id": "T30",
  "answer_hash": "a65cf06c389b",
  "correct": true,
  "reason": "The answer clearly states the loop is caused by stale session tokens in the Chrome user-data-dir from a previous run, with the SSO SDK repeatedly using and refreshing the invalid token after 401s.",
  "judge": "deepseek-v4.1-flash",
  "correct_secondary": true,
  "reason_secondary": "The answer accurately explains that stale session tokens in the Chrome user-data-dir cause the SSO SDK to repeatedly try and refresh the invalid token after receiving 401 errors.",
  "judge_secondary": "gemini-3.8-flash"
 }
]