{
  "checker": {
    "claims": [
      {
        "claim": "adds trailing commas to function calls",
        "command": "<guest-path> -",
        "evidence": "arg2,\n)\n",
        "expected": "last argument gets a trailing comma",
        "input": "x(\n    arg,\n    arg2\n)\n",
        "kind": "claim",
        "outcome": "Real input produced the expected result: arg2,",
        "returncode": 1,
        "source": "A tool (and pre-commit hook) to automatically add trailing commas to calls and",
        "source_checked": true,
        "source_file": "README.md",
        "verdict": "yes"
      },
      {
        "claim": "unhugs leading paren and adds trailing comma",
        "command": "<guest-path> -",
        "evidence": "arg2,\n)\n",
        "expected": "arguments are split onto their own lines with trailing comma",
        "input": "function_name(arg1,\n              arg2)\n",
        "kind": "claim",
        "outcome": "Real input produced the expected result: arg2,",
        "returncode": 1,
        "source": "-function_name(arg1,",
        "source_checked": true,
        "source_file": "README.md",
        "verdict": "yes"
      },
      {
        "claim": "removes unnecessary trailing commas",
        "command": "<guest-path> -",
        "evidence": "[1, 2, 3]\n",
        "expected": "trailing comma removed from single-line list",
        "input": "[1, 2, 3,]\n",
        "kind": "claim",
        "outcome": "Real input produced the expected result: [1, 2, 3]",
        "returncode": 1,
        "source": "-[1, 2, 3,]",
        "source_checked": true,
        "source_file": "README.md",
        "verdict": "yes"
      }
    ],
    "cycle_checks": [
      {
        "claim": "Scheduled or looping main behavior",
        "command": "",
        "evidence": "Entry points inspected (add_trailing_comma/_main.py, setup.py, README.md, tox.ini): this is a one-shot CLI and pre-commit hook with no scheduler, loop, daemon, webhook, or --once/--now mode; it runs once per invocation.",
        "expected": "identify the product trigger",
        "input": "source inspection",
        "kind": "cycle",
        "outcome": "Entry points inspected (add_trailing_comma/_main.py, setup.py, README.md, tox.ini): this is a one-shot CLI and pre-commit hook with no scheduler, loop, daemon, webhook, or --once/--now mode; it runs once per invocation.",
        "source": "repository entry points",
        "verdict": "yes"
      }
    ],
    "details": {
      "argv": [
        "<guest-path>",
        "-"
      ],
      "kind": "cli",
      "needs_browser": false,
      "needs_credentials": false,
      "returncode": 1,
      "scope": "product operation",
      "stderr": "",
      "stdout": "x(\n    arg,\n    arg2,\n)",
      "working": true
    },
    "evidence_strength": "readme_checked",
    "example_checks": [
      {
        "claim": "repository test suite (documented tox command) passes",
        "command": "<guest-path> -m pytest tests",
        "deferred": false,
        "evidence": "............                    [ 47%]\ntests/features/match_test.py .........                                   [ 53%]\ntests/features/pep695_test.py .........                                  [ 59%]\ntests/features/remove_commas_test.py ........                            [ 64%]\ntests/features/unhug_test.py .............................               [ 84%]\ntests/features/with_test.py ...........                                  [ 91%]\ntests/main_test.py ............                                          [100%]\n\n============================= 148 passed in 1.62s ==============================",
        "expected": "all tests pass",
        "input": "tests directory",
        "kind": "example",
        "outcome": "command completed successfully",
        "returncode": 0,
        "source": "tox.ini",
        "verdict": "yes"
      },
      {
        "claim": "pre-commit hook usage",
        "command": "",
        "deferred": false,
        "evidence": "pre-commit needs to clone the repo from GitHub and install its own environment; not run in this guest. Ran the CLI hook entry directly instead via the claims above.",
        "expected": "documented command completes successfully",
        "input": "",
        "kind": "example",
        "outcome": "pre-commit needs to clone the repo from GitHub and install its own environment; not run in this guest. Ran the CLI hook entry directly instead via the claims above.",
        "source": "README.md",
        "verdict": "blocked"
      }
    ],
    "status": "PASS"
  },
  "deviations": [
    "README install is 'pip install add-trailing-comma' from PyPI; instead installed the pinned local source checkout with 'pip install .' so the tested code is the snapshot under review.",
    "pre-commit hook usage in README not run: it requires cloning the repo from GitHub and creating its own environment; the hook entry was exercised through the CLI instead.",
    "The tool exits 1 when it rewrites input (documented in claims as expected_returncode 1); --version is not supported (help-only check, not used as evidence)."
  ],
  "fault_owner": null,
  "main_blocker": null,
  "operation": "Run add-trailing-comma on Python source via its documented CLI (stdin mode) and get trailing commas added; run the test suite",
  "operation_scope": "Local CLI on Python 3.12.3 in a venv at <guest-path>; install from the local pinned checkout (commit 4aa21034cf9e0aef19376abd3922943400b16ee1); no browser or credentials needed",
  "outcome": "working",
  "plain_failure": null,
  "steps": [
    "git init; git remote add origin https://github.com/asottile/add-trailing-comma; git fetch --depth 1 origin 4aa21034cf9e0aef19376abd3922943400b16ee1; git reset --mixed FETCH_HEAD",
    "python3 -m venv <guest-path>",
    "<guest-path> install -r requirements-dev.txt",
    "<guest-path> install .",
    "printf 'x(\\n    arg,\\n    arg2\\n)\\n' | <guest-path> -",
    "<guest-path> -m pytest tests (148 passed)"
  ],
  "stuck_step": null,
  "suggested_fix": null
}
