{
  "run_id": "joh--when-changed-claude-haiku-5-5-1793086894574214843",
  "checker": {
    "claims": [
      {
        "claim": "The -s option runs the command immediately at start",
        "command": "timeout 5 <guest-path> -s <guest-path> echo triggered-by-when-changed",
        "evidence": "triggered-by-when-changed\n",
        "expected": "command output printed at startup before the watcher is stopped",
        "input": "when-changed -s on an existing file with echo triggered-by-when-changed, bounded by timeout 5",
        "kind": "claim",
        "outcome": "Real input produced the expected result: triggered-by-when-changed",
        "returncode": 124,
        "source": "-s Run command immediately at start",
        "source_checked": true,
        "source_file": "README.md",
        "verdict": "yes"
      }
    ],
    "cycle_checks": [
      {
        "claim": "A watch cycle runs the command when triggered",
        "command": "<guest-path> -s <guest-path> echo triggered-by-when-changed",
        "evidence": "triggered-by-when-changed",
        "expected": "command output printed once at startup while watcher keeps running",
        "input": "-s on <guest-path> with echo triggered-by-when-changed",
        "kind": "cycle",
        "method": "start trigger via -s (fake/run-once: no file edit needed); file-change trigger verified by hand in <guest-path>",
        "outcome": "Triggered one cycle by hand (start trigger via -s (fake/run-once: no file edit needed); file-change trigger verified by hand in <guest-path>; normal trigger: event loop: observer watches the file; start-run triggers run_command once): triggered-by-when-changed",
        "returncode": 0,
        "schedule": "event loop: observer watches the file; start-run triggers run_command once",
        "source": "whenchanged/whenchanged.py",
        "verdict": "yes"
      }
    ],
    "details": {
      "argv": [
        "<guest-path>",
        "-s",
        "<guest-path>",
        "echo",
        "triggered-by-when-changed"
      ],
      "kind": "cli",
      "needs_browser": false,
      "needs_credentials": false,
      "returncode": 0,
      "scope": "product operation",
      "stderr": "",
      "stdout": "triggered-by-when-changed",
      "working": true
    },
    "evidence_strength": "readme_checked",
    "example_checks": [
      {
        "claim": "Usage example: watch a file and run a command when it changes",
        "command": "",
        "deferred": false,
        "evidence": "Repo has no test suite or finite example; the documented usage is a long-running watcher. Covered by claims/probe (-s start run) and a manual file-modified test in <guest-path> (command ran with WHEN_CHANGED_EVENT=file_modified). README example pdflatex CV.tex not available in guest.",
        "expected": "documented command completes successfully",
        "input": "",
        "kind": "example",
        "outcome": "Repo has no test suite or finite example; the documented usage is a long-running watcher. Covered by claims/probe (-s start run) and a manual file-modified test in <guest-path> (command ran with WHEN_CHANGED_EVENT=file_modified). README example pdflatex CV.tex not available in guest.",
        "source": "README.md Usage",
        "verdict": "blocked"
      }
    ],
    "status": "PASS"
  },
  "diagnosis": null
}
