{
  "checker": {
    "claims": [
      {
        "claim": "demo runs offline with synthetic sessions and calls no agent CLI",
        "command": "python3 -B -m sidecarwatch demo",
        "evidence": "Label: WORKING\nSuggested message (not sent)\nReport the export test results when they are available.\nDEMO complete: temporary sessions removed; nothing sent.\n",
        "expected": "synthetic WORKING report and completion line with nothing sent",
        "input": "python3 -B -m sidecarwatch demo",
        "kind": "claim",
        "outcome": "Real input produced the expected result: Label: WORKING",
        "returncode": 0,
        "source": "`demo` uses temporary synthetic sessions, calls no agent CLI or model, and removes its data.",
        "source_checked": true,
        "source_file": "README.md",
        "verdict": "yes"
      },
      {
        "claim": "status shows whether cross-vendor review is ON or OFF",
        "command": "python3 -B -m sidecarwatch status",
        "evidence": "Cross-vendor review: OFF\nConfig: <guest-path>\nKill switch: off\nNeeds you: 0 open; run open to inspect.\n",
        "expected": "Cross-vendor review reported OFF by default",
        "input": "python3 -B -m sidecarwatch status",
        "kind": "claim",
        "outcome": "Real input produced the expected result: Cross-vendor review: OFF",
        "returncode": 0,
        "source": "- `status` shows whether cross-vendor review is ON or OFF.",
        "source_checked": true,
        "source_file": "README.md",
        "verdict": "yes"
      },
      {
        "claim": "a watch run without --interval makes one pass",
        "command": "python3 -B -m sidecarwatch watch --only <guest-path> --dry-run",
        "evidence": "0 in scope \u00b7 0 reviewed \u00b7 0 sent \u00b7 0 would send \u00b7 0 need you\n",
        "expected": "one pass summary line and exit 0",
        "input": "watch --only <guest-path> --dry-run",
        "kind": "claim",
        "outcome": "Real input produced the expected result: 0 in scope",
        "returncode": 0,
        "source": "Without `--interval`, a run makes one pass.",
        "source_checked": true,
        "source_file": "README.md",
        "verdict": "yes"
      }
    ],
    "cycle_checks": [
      {
        "claim": "watch runs one review pass per trigger; --interval repeats it",
        "command": "python3 -B -m sidecarwatch watch --only <guest-path> --dry-run",
        "evidence": "05:31  0 in scope \u00b7 0 reviewed \u00b7 0 sent \u00b7 0 would send \u00b7 0 need you",
        "expected": "one pass summary and exit 0, no reviewer call",
        "input": "watch --only <guest-path> --dry-run with no session files",
        "kind": "cycle",
        "method": "run-once via CLI",
        "outcome": "Triggered one cycle by hand (run-once via CLI; normal trigger: single pass (no --interval); the loop only runs with --interval): 05:31  0 in scope \u00b7 0 reviewed \u00b7 0 sent \u00b7 0 would send \u00b7 0 need you",
        "returncode": 0,
        "schedule": "single pass (no --interval); the loop only runs with --interval",
        "source": "sidecarwatch/watch.py",
        "verdict": "yes"
      }
    ],
    "details": {
      "argv": [
        "python3",
        "-B",
        "-m",
        "sidecarwatch",
        "demo"
      ],
      "kind": "cli",
      "needs_browser": false,
      "needs_credentials": false,
      "returncode": 0,
      "scope": "product operation",
      "stderr": "",
      "stdout": "DEMO: synthetic sessions; no CLI calls.\ncodex session aaaaaaaa (idle)\nWhat it is doing\nAdding CSV export to the reading list and checking a small export test.\n\nOn task: ok\nIn scope: ok\nSimple: ok\nReuse: ok\nRoot cause: ok\nHonest: ok\n\n[excerpt truncated]",
      "working": true
    },
    "evidence_strength": "readme_checked",
    "example_checks": [
      {
        "claim": "documented Linux quickstart demo",
        "command": "python3 -B -m sidecarwatch demo",
        "deferred": false,
        "evidence": "DEMO: synthetic sessions; no CLI calls.\ncodex session aaaaaaaa (idle)\nWhat it is doing\nAdding CSV export to the reading list and checking a small export test.\n\nOn task: ok\nIn scope: ok\nSimple: ok\nReuse: ok\nRoot cause: ok\nHonest: ok\n\nShould you correct it? no\n\nLabel: WORKING\nSuggested message (not sent)\nReport the export test results when they are available.\nDEMO complete: temporary sessions removed; nothing sent.",
        "expected": "synthetic WORKING report",
        "input": "python3 -B -m sidecarwatch demo",
        "kind": "example",
        "outcome": "command completed successfully",
        "returncode": 0,
        "source": "README.md, Quickstart: Linux",
        "verdict": "yes"
      },
      {
        "claim": "documented test suite from source",
        "command": "",
        "deferred": true,
        "evidence": "Suite takes about 5 minutes (295s) and exceeded the checker replay time budget. Run manually with the venv active: EXIT=0, 'Ran 215 tests', 'OK (skipped=1)'; log at <guest-path>",
        "expected": "all tests pass (215 run, 1 skipped)",
        "input": "python3 -B -m unittest discover -s tests -t . -q",
        "kind": "example",
        "outcome": "Suite takes about 5 minutes (295s) and exceeded the checker replay time budget. Run manually with the venv active: EXIT=0, 'Ran 215 tests', 'OK (skipped=1)'; log at <guest-path>",
        "source": "README.md, To run the test suite from source",
        "verdict": "deferred"
      }
    ],
    "status": "PASS"
  },
  "deviations": [
    "python3-venv was not installed; installed via sudo apt-get install python3-venv as README instructs",
    "First test run failed test_repo_is_generic because the venv inside the checkout was scanned (no git metadata, so tests fall back to scanning all files); fixed by the README-directed git init/fetch of the pinned commit; re-run passed",
    "pip install . created build/ and egg-info folders in the checkout (gitignored, README says expected)",
    "Full test suite takes about 5 minutes; it was excluded from checker replay as deferred because replay exceeded its time budget"
  ],
  "fault_owner": null,
  "main_blocker": null,
  "operation": "Run sidecarwatch from source per README: offline demo, status, one watch pass, and the stdlib test suite",
  "operation_scope": "Linux Ubuntu 24.04, Python 3.12.3 (README needs 3.11+), local only, no agent CLI calls, cross-vendor review left OFF, no servers started",
  "outcome": "working",
  "plain_failure": null,
  "steps": [
    "python3 --version",
    "python3 -B -m sidecarwatch demo",
    "sudo apt-get install -y python3-venv (needed for venv route)",
    "python3 -m venv .venv && python3 -m pip install . (venv in .venv, then sidecarwatch demo)",
    "git init; git remote add origin https://github.com/TayHCode/sidecarwatch; git fetch --depth 1 origin 8ddf4cfed6d91ad621ad9b0fcc7bf4c4c39901fe; git reset --mixed FETCH_HEAD",
    "python3 -B -m unittest discover -s tests -t . -q (215 run, 1 skipped, OK)",
    "python3 -B -m sidecarwatch status / doctor --shapes / sessions",
    "python3 -B -m sidecarwatch watch --only <guest-path> --dry-run (one pass)"
  ],
  "stuck_step": null,
  "suggested_fix": "None required. Optional: make test_structure not depend on a git checkout or ignore .venv when no git metadata is present."
}
