{
  "baselined": 0,
  "claims": [
    {
      "claim_id": "claim_72525e8a5ba9710e2e22c07f82e841e2dbaab5da7d34a56bfbca975a227ccb0b",
      "column": 15,
      "doc_path": "README.md",
      "expected_default": null,
      "extraction": "inline_code",
      "extraction_confidence": 0.8,
      "extraction_sources": [
        "inline_code"
      ],
      "group_key": "72d5bb9585619439996e42559956d3b8cb709725b7ac660c7811cce895178f24",
      "kind": "cli_command",
      "line": 3,
      "locations": [
        {
          "column": 15,
          "extraction": "inline_code",
          "line": 3,
          "raw_text": "serve"
        }
      ],
      "qualifier": null,
      "raw_text": "serve",
      "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
      "value": "serve"
    },
    {
      "claim_id": "claim_8ed4cec49e3a4c86e8ad548b85452e088ae736718c1e6952b86b5a914bbf0447",
      "column": 19,
      "doc_path": "README.md",
      "expected_default": null,
      "extraction": "inline_code",
      "extraction_confidence": 0.9,
      "extraction_sources": [
        "inline_code"
      ],
      "group_key": "1ecb12b79ea589080cede10fd90598dfd2f239bc7de2d50744a59ebbffc78d22",
      "kind": "cli_flag",
      "line": 4,
      "locations": [
        {
          "column": 19,
          "extraction": "inline_code",
          "line": 4,
          "raw_text": "--port"
        }
      ],
      "qualifier": "serve",
      "raw_text": "--port",
      "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
      "value": "--port"
    },
    {
      "claim_id": "claim_dd0782dde6f1cdb48fa2d33ca485be5a45b91f1987cc791d2e01004f16a3d6ca",
      "column": 19,
      "doc_path": "README.md",
      "expected_default": null,
      "extraction": "inline_code",
      "extraction_confidence": 0.9,
      "extraction_sources": [
        "inline_code"
      ],
      "group_key": "f972fd1df1dc0bd8842019fdfdfc35e508a675057ab5c90d78e5e33abbb6693c",
      "kind": "cli_flag",
      "line": 5,
      "locations": [
        {
          "column": 19,
          "extraction": "inline_code",
          "line": 5,
          "raw_text": "--host"
        }
      ],
      "qualifier": "serve",
      "raw_text": "--host",
      "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
      "value": "--host"
    },
    {
      "claim_id": "claim_47eeff5744595c6eb689bd4c442fb20a2af0035286a725a35fae61ebbb3ccd2b",
      "column": 7,
      "doc_path": "README.md",
      "expected_default": null,
      "extraction": "inline_code",
      "extraction_confidence": 0.9,
      "extraction_sources": [
        "inline_code"
      ],
      "group_key": "acbb8e0fa89f433763cfe879d96c3c9f72c7d28e560541fb6091a0889bcb1a0a",
      "kind": "cli_flag",
      "line": 6,
      "locations": [
        {
          "column": 7,
          "extraction": "inline_code",
          "line": 6,
          "raw_text": "--workers"
        }
      ],
      "qualifier": null,
      "raw_text": "--workers",
      "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
      "value": "--workers"
    },
    {
      "claim_id": "claim_5f2199daeec9e79f6ef17af18d53109eb79f967fe9b7512433afe6780161c526",
      "column": 7,
      "doc_path": "README.md",
      "expected_default": null,
      "extraction": "inline_code",
      "extraction_confidence": 0.95,
      "extraction_sources": [
        "inline_code"
      ],
      "group_key": "66917398ee27c17d8e6751f3dfc8f2f7e4ea49852209a256d162b57a66ca18ab",
      "kind": "env_var",
      "line": 7,
      "locations": [
        {
          "column": 7,
          "extraction": "inline_code",
          "line": 7,
          "raw_text": "APP_DEBUG"
        }
      ],
      "qualifier": null,
      "raw_text": "APP_DEBUG",
      "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
      "value": "APP_DEBUG"
    },
    {
      "claim_id": "claim_3e4a78859ff7e5aa9a087b4ac2fbe545e5615d96016374321ac2175a11e957f6",
      "column": 11,
      "doc_path": "README.md",
      "expected_default": null,
      "extraction": "inline_code",
      "extraction_confidence": 0.8,
      "extraction_sources": [
        "inline_code"
      ],
      "group_key": "834074339b2d46fabf87e7e5a64da1f21e5d8c0b79cb3393137dc84918641788",
      "kind": "cli_command",
      "line": 8,
      "locations": [
        {
          "column": 11,
          "extraction": "inline_code",
          "line": 8,
          "raw_text": "migrate"
        }
      ],
      "qualifier": null,
      "raw_text": "migrate",
      "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
      "value": "migrate"
    },
    {
      "claim_id": "claim_9191832fb5fd440e0c6473790ccc5f658b6bb32163005e9cf84d6925199cbbec",
      "column": 5,
      "doc_path": "README.md",
      "expected_default": null,
      "extraction": "inline_code",
      "extraction_confidence": 0.9,
      "extraction_sources": [
        "inline_code"
      ],
      "group_key": "764f3bd8b9b1519486c80dd313e5b49b91463ab1995554e7b6ce73922e207a06",
      "kind": "make_target",
      "line": 10,
      "locations": [
        {
          "column": 5,
          "extraction": "inline_code",
          "line": 10,
          "raw_text": "make test"
        }
      ],
      "qualifier": null,
      "raw_text": "make test",
      "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
      "value": "test"
    },
    {
      "claim_id": "claim_7aee9594e82a9f081ea1474997448ab4196be0a27cc6f2cc54a73a918d46a488",
      "column": 28,
      "doc_path": "README.md",
      "expected_default": "8000",
      "extraction": "prose_pattern",
      "extraction_confidence": 0.55,
      "extraction_sources": [
        "prose_pattern"
      ],
      "group_key": "8b9c5d8e378ba4247c4a102849cfb73bf437fc3535536467236fc7838309e5c4",
      "kind": "default_value",
      "line": 4,
      "locations": [
        {
          "column": 28,
          "extraction": "prose_pattern",
          "line": 4,
          "raw_text": "(default 8000)"
        }
      ],
      "qualifier": "cli_flag",
      "raw_text": "(default 8000)",
      "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
      "value": "--port"
    },
    {
      "claim_id": "claim_6e52d632a8898cceaf094d0ece49c88ce5657fc2cb03e4b190aff2cc3146b3f3",
      "column": 28,
      "doc_path": "README.md",
      "expected_default": "127.0.0.1",
      "extraction": "prose_pattern",
      "extraction_confidence": 0.55,
      "extraction_sources": [
        "prose_pattern"
      ],
      "group_key": "c8ea7e0762aab84248045ebdd5c25d9deb962d6017d894fd80759b44ff131dd6",
      "kind": "default_value",
      "line": 5,
      "locations": [
        {
          "column": 28,
          "extraction": "prose_pattern",
          "line": 5,
          "raw_text": "(default 127.0.0.1)"
        }
      ],
      "qualifier": "cli_flag",
      "raw_text": "(default 127.0.0.1)",
      "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
      "value": "--host"
    },
    {
      "claim_id": "claim_0ddc043944f8c1b30f1c40e0aa64cdc5d8f10259074ba7769279304b72a52160",
      "column": 19,
      "doc_path": "README.md",
      "expected_default": "4",
      "extraction": "prose_pattern",
      "extraction_confidence": 0.55,
      "extraction_sources": [
        "prose_pattern"
      ],
      "group_key": "79ddd206ba56690096f61d53bdd1a47f71d3226d545739edea8581f7ba997773",
      "kind": "default_value",
      "line": 6,
      "locations": [
        {
          "column": 19,
          "extraction": "prose_pattern",
          "line": 6,
          "raw_text": "default is `4`"
        }
      ],
      "qualifier": "cli_flag",
      "raw_text": "default is `4`",
      "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
      "value": "--workers"
    }
  ],
  "config_used": {
    "docs": [
      "README.md",
      "docs/**/*.md",
      "*.md"
    ],
    "exclude": [
      "node_modules/**",
      ".venv/**",
      "vendor/**",
      "CHANGELOG.md",
      "**/CHANGELOG.md"
    ],
    "history": {
      "max_commits": 2000,
      "show_emails": false
    },
    "ignore": [],
    "languages": "auto",
    "llm": {
      "budget": 0.5,
      "concurrency": 4,
      "enabled": false,
      "max_claims": 40,
      "model": null,
      "redact_paths": [],
      "timeout": 60.0
    },
    "min_confidence": 0.6
  },
  "docs": [
    {
      "content_hash": "3316a5c3dcde86fdc71f0de1ba2e77454354ed7d4dcf639aa47cedc2162feab9",
      "format": "markdown",
      "path": "README.md"
    }
  ],
  "docs_repo_path": null,
  "findings": [
    {
      "claim": {
        "claim_id": "claim_72525e8a5ba9710e2e22c07f82e841e2dbaab5da7d34a56bfbca975a227ccb0b",
        "column": 15,
        "doc_path": "README.md",
        "expected_default": null,
        "extraction": "inline_code",
        "extraction_confidence": 0.8,
        "extraction_sources": [
          "inline_code"
        ],
        "group_key": "72d5bb9585619439996e42559956d3b8cb709725b7ac660c7811cce895178f24",
        "kind": "cli_command",
        "line": 3,
        "locations": [
          {
            "column": 15,
            "extraction": "inline_code",
            "line": 3,
            "raw_text": "serve"
          }
        ],
        "qualifier": null,
        "raw_text": "serve",
        "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
        "value": "serve"
      },
      "confidence": 0.95,
      "decided_by": "rules",
      "doc_text": "The CLI has a `serve` subcommand.",
      "evidence": [
        {
          "end_line": null,
          "file": "cli.py",
          "line": 7,
          "text": "cli.serve"
        }
      ],
      "introduced_by": null,
      "matched_symbol": {
        "aliases": [],
        "authoritative": true,
        "decorators": [],
        "default": null,
        "derived": false,
        "exported": false,
        "file": "cli.py",
        "framework": "argparse",
        "handler": null,
        "kind": "cli_command",
        "language": "python",
        "line": 7,
        "name": "serve",
        "parent_id": null,
        "partial_prefix": false,
        "qualified_name": "cli.serve",
        "raw_path": null,
        "setting_group": null,
        "symbol_id": "symbol_27a6dcff770a5fe755888fc3f70445d6ede2a44a0bcc0c5f6bd68d8a03b561b4",
        "ts_type": false
      },
      "package": "py-cli",
      "reasons": [
        "cli_command serve matches cli.serve at cli.py:7."
      ],
      "replayed": false,
      "suggestion": null,
      "verdict": "ok"
    },
    {
      "claim": {
        "claim_id": "claim_7aee9594e82a9f081ea1474997448ab4196be0a27cc6f2cc54a73a918d46a488",
        "column": 28,
        "doc_path": "README.md",
        "expected_default": "8000",
        "extraction": "prose_pattern",
        "extraction_confidence": 0.55,
        "extraction_sources": [
          "prose_pattern"
        ],
        "group_key": "8b9c5d8e378ba4247c4a102849cfb73bf437fc3535536467236fc7838309e5c4",
        "kind": "default_value",
        "line": 4,
        "locations": [
          {
            "column": 28,
            "extraction": "prose_pattern",
            "line": 4,
            "raw_text": "(default 8000)"
          }
        ],
        "qualifier": "cli_flag",
        "raw_text": "(default 8000)",
        "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
        "value": "--port"
      },
      "confidence": 0.3,
      "decided_by": "rules",
      "doc_text": "- `serve` accepts `--port` (default 8000).",
      "evidence": [
        {
          "end_line": null,
          "file": "README.md",
          "line": 4,
          "text": "(default 8000)"
        }
      ],
      "introduced_by": {
        "author_email": null,
        "author_name": "Author hidden",
        "date": "2026-10-02T09:00:00Z",
        "sha": "450a93d2afb517459abbb7ca15b4a87692553a21",
        "short_sha": "450a93d",
        "summary": "Rename port to listen"
      },
      "matched_symbol": null,
      "package": "py-cli",
      "reasons": [
        "No authoritative indexed default was available for this subject."
      ],
      "replayed": false,
      "suggestion": null,
      "verdict": "unverifiable"
    },
    {
      "claim": {
        "claim_id": "claim_8ed4cec49e3a4c86e8ad548b85452e088ae736718c1e6952b86b5a914bbf0447",
        "column": 19,
        "doc_path": "README.md",
        "expected_default": null,
        "extraction": "inline_code",
        "extraction_confidence": 0.9,
        "extraction_sources": [
          "inline_code"
        ],
        "group_key": "1ecb12b79ea589080cede10fd90598dfd2f239bc7de2d50744a59ebbffc78d22",
        "kind": "cli_flag",
        "line": 4,
        "locations": [
          {
            "column": 19,
            "extraction": "inline_code",
            "line": 4,
            "raw_text": "--port"
          }
        ],
        "qualifier": "serve",
        "raw_text": "--port",
        "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
        "value": "--port"
      },
      "confidence": 0.92,
      "decided_by": "rules",
      "doc_text": "- `serve` accepts `--port` (default 8000).",
      "evidence": [
        {
          "end_line": null,
          "file": "README.md",
          "line": 4,
          "text": "--port"
        },
        {
          "end_line": null,
          "file": "cli.py",
          "line": 1,
          "text": "-    serve.add_argument(\"--port\", type=int, default=8000)\n+    serve.add_argument(\"--listen\", type=int, default=8000)"
        }
      ],
      "introduced_by": {
        "author_email": null,
        "author_name": "Author hidden",
        "date": "2026-10-02T09:00:00Z",
        "sha": "450a93d2afb517459abbb7ca15b4a87692553a21",
        "short_sha": "450a93d",
        "summary": "Rename port to listen"
      },
      "matched_symbol": {
        "aliases": [],
        "authoritative": true,
        "decorators": [],
        "default": "8000",
        "derived": false,
        "exported": false,
        "file": "cli.py",
        "framework": "argparse",
        "handler": null,
        "kind": "cli_flag",
        "language": "python",
        "line": 8,
        "name": "--listen",
        "parent_id": null,
        "partial_prefix": false,
        "qualified_name": "cli.serve.--listen",
        "raw_path": null,
        "setting_group": null,
        "symbol_id": "symbol_b1aff1c29930fa208e11ddcc45d6650ad414d3d157b3528b8b0f696973d46765",
        "ts_type": false
      },
      "package": "py-cli",
      "reasons": [
        "No indexed cli_flag named --port was found. Closest indexed candidates: --host (cli.py:9), --workers (cli.py:10), --listen (cli.py:8).",
        "Git history confirms this name changed to --listen.",
        "Git history changed this name in 450a93d."
      ],
      "replayed": false,
      "suggestion": "--listen",
      "verdict": "renamed"
    },
    {
      "claim": {
        "claim_id": "claim_6e52d632a8898cceaf094d0ece49c88ce5657fc2cb03e4b190aff2cc3146b3f3",
        "column": 28,
        "doc_path": "README.md",
        "expected_default": "127.0.0.1",
        "extraction": "prose_pattern",
        "extraction_confidence": 0.55,
        "extraction_sources": [
          "prose_pattern"
        ],
        "group_key": "c8ea7e0762aab84248045ebdd5c25d9deb962d6017d894fd80759b44ff131dd6",
        "kind": "default_value",
        "line": 5,
        "locations": [
          {
            "column": 28,
            "extraction": "prose_pattern",
            "line": 5,
            "raw_text": "(default 127.0.0.1)"
          }
        ],
        "qualifier": "cli_flag",
        "raw_text": "(default 127.0.0.1)",
        "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
        "value": "--host"
      },
      "confidence": 0.95,
      "decided_by": "rules",
      "doc_text": "- `serve` accepts `--host` (default 127.0.0.1).",
      "evidence": [
        {
          "end_line": null,
          "file": "README.md",
          "line": 5,
          "text": "(default 127.0.0.1)"
        },
        {
          "end_line": null,
          "file": "cli.py",
          "line": 9,
          "text": "cli.serve.--host default=127.0.0.1"
        }
      ],
      "introduced_by": null,
      "matched_symbol": {
        "aliases": [],
        "authoritative": true,
        "decorators": [],
        "default": "127.0.0.1",
        "derived": false,
        "exported": false,
        "file": "cli.py",
        "framework": "argparse",
        "handler": null,
        "kind": "cli_flag",
        "language": "python",
        "line": 9,
        "name": "--host",
        "parent_id": null,
        "partial_prefix": false,
        "qualified_name": "cli.serve.--host",
        "raw_path": null,
        "setting_group": null,
        "symbol_id": "symbol_20488fa73d5cffe8005a388c57bc41a467fdeb50a55a9c1e347da8fddae98d2f",
        "ts_type": false
      },
      "package": "py-cli",
      "reasons": [
        "Documented default '127.0.0.1' matches code."
      ],
      "replayed": false,
      "suggestion": null,
      "verdict": "ok"
    },
    {
      "claim": {
        "claim_id": "claim_dd0782dde6f1cdb48fa2d33ca485be5a45b91f1987cc791d2e01004f16a3d6ca",
        "column": 19,
        "doc_path": "README.md",
        "expected_default": null,
        "extraction": "inline_code",
        "extraction_confidence": 0.9,
        "extraction_sources": [
          "inline_code"
        ],
        "group_key": "f972fd1df1dc0bd8842019fdfdfc35e508a675057ab5c90d78e5e33abbb6693c",
        "kind": "cli_flag",
        "line": 5,
        "locations": [
          {
            "column": 19,
            "extraction": "inline_code",
            "line": 5,
            "raw_text": "--host"
          }
        ],
        "qualifier": "serve",
        "raw_text": "--host",
        "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
        "value": "--host"
      },
      "confidence": 0.95,
      "decided_by": "rules",
      "doc_text": "- `serve` accepts `--host` (default 127.0.0.1).",
      "evidence": [
        {
          "end_line": null,
          "file": "cli.py",
          "line": 9,
          "text": "cli.serve.--host"
        }
      ],
      "introduced_by": null,
      "matched_symbol": {
        "aliases": [],
        "authoritative": true,
        "decorators": [],
        "default": "127.0.0.1",
        "derived": false,
        "exported": false,
        "file": "cli.py",
        "framework": "argparse",
        "handler": null,
        "kind": "cli_flag",
        "language": "python",
        "line": 9,
        "name": "--host",
        "parent_id": null,
        "partial_prefix": false,
        "qualified_name": "cli.serve.--host",
        "raw_path": null,
        "setting_group": null,
        "symbol_id": "symbol_20488fa73d5cffe8005a388c57bc41a467fdeb50a55a9c1e347da8fddae98d2f",
        "ts_type": false
      },
      "package": "py-cli",
      "reasons": [
        "cli_flag --host matches cli.serve.--host at cli.py:9."
      ],
      "replayed": false,
      "suggestion": null,
      "verdict": "ok"
    },
    {
      "claim": {
        "claim_id": "claim_0ddc043944f8c1b30f1c40e0aa64cdc5d8f10259074ba7769279304b72a52160",
        "column": 19,
        "doc_path": "README.md",
        "expected_default": "4",
        "extraction": "prose_pattern",
        "extraction_confidence": 0.55,
        "extraction_sources": [
          "prose_pattern"
        ],
        "group_key": "79ddd206ba56690096f61d53bdd1a47f71d3226d545739edea8581f7ba997773",
        "kind": "default_value",
        "line": 6,
        "locations": [
          {
            "column": 19,
            "extraction": "prose_pattern",
            "line": 6,
            "raw_text": "default is `4`"
          }
        ],
        "qualifier": "cli_flag",
        "raw_text": "default is `4`",
        "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
        "value": "--workers"
      },
      "confidence": 0.95,
      "decided_by": "rules",
      "doc_text": "- The `--workers` default is `4`.",
      "evidence": [
        {
          "end_line": null,
          "file": "README.md",
          "line": 6,
          "text": "default is `4`"
        },
        {
          "end_line": null,
          "file": "cli.py",
          "line": 10,
          "text": "cli.serve.--workers default=8"
        },
        {
          "end_line": null,
          "file": "cli.py",
          "line": 10,
          "text": "-    serve.add_argument(\"--workers\", type=int, default=4)\n+    serve.add_argument(\"--workers\", type=int, default=8)"
        }
      ],
      "introduced_by": {
        "author_email": null,
        "author_name": "Author hidden",
        "date": "2026-10-03T09:00:00Z",
        "sha": "397bff7d54a7a3861ccf619af032c19c9a646d9d",
        "short_sha": "397bff7",
        "summary": "Increase the worker default"
      },
      "matched_symbol": {
        "aliases": [],
        "authoritative": true,
        "decorators": [],
        "default": "8",
        "derived": false,
        "exported": false,
        "file": "cli.py",
        "framework": "argparse",
        "handler": null,
        "kind": "cli_flag",
        "language": "python",
        "line": 10,
        "name": "--workers",
        "parent_id": null,
        "partial_prefix": false,
        "qualified_name": "cli.serve.--workers",
        "raw_path": null,
        "setting_group": null,
        "symbol_id": "symbol_0f9006638800848074f8dca81f512cd6922bbb37243a8ab5c5ed4b65db3df373",
        "ts_type": false
      },
      "package": "py-cli",
      "reasons": [
        "Documented default '4' differs from code default '8'."
      ],
      "replayed": false,
      "suggestion": "8",
      "verdict": "default_changed"
    },
    {
      "claim": {
        "claim_id": "claim_47eeff5744595c6eb689bd4c442fb20a2af0035286a725a35fae61ebbb3ccd2b",
        "column": 7,
        "doc_path": "README.md",
        "expected_default": null,
        "extraction": "inline_code",
        "extraction_confidence": 0.9,
        "extraction_sources": [
          "inline_code"
        ],
        "group_key": "acbb8e0fa89f433763cfe879d96c3c9f72c7d28e560541fb6091a0889bcb1a0a",
        "kind": "cli_flag",
        "line": 6,
        "locations": [
          {
            "column": 7,
            "extraction": "inline_code",
            "line": 6,
            "raw_text": "--workers"
          }
        ],
        "qualifier": null,
        "raw_text": "--workers",
        "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
        "value": "--workers"
      },
      "confidence": 0.95,
      "decided_by": "rules",
      "doc_text": "- The `--workers` default is `4`.",
      "evidence": [
        {
          "end_line": null,
          "file": "cli.py",
          "line": 10,
          "text": "cli.serve.--workers"
        }
      ],
      "introduced_by": null,
      "matched_symbol": {
        "aliases": [],
        "authoritative": true,
        "decorators": [],
        "default": "8",
        "derived": false,
        "exported": false,
        "file": "cli.py",
        "framework": "argparse",
        "handler": null,
        "kind": "cli_flag",
        "language": "python",
        "line": 10,
        "name": "--workers",
        "parent_id": null,
        "partial_prefix": false,
        "qualified_name": "cli.serve.--workers",
        "raw_path": null,
        "setting_group": null,
        "symbol_id": "symbol_0f9006638800848074f8dca81f512cd6922bbb37243a8ab5c5ed4b65db3df373",
        "ts_type": false
      },
      "package": "py-cli",
      "reasons": [
        "cli_flag --workers matches cli.serve.--workers at cli.py:10."
      ],
      "replayed": false,
      "suggestion": null,
      "verdict": "ok"
    },
    {
      "claim": {
        "claim_id": "claim_5f2199daeec9e79f6ef17af18d53109eb79f967fe9b7512433afe6780161c526",
        "column": 7,
        "doc_path": "README.md",
        "expected_default": null,
        "extraction": "inline_code",
        "extraction_confidence": 0.95,
        "extraction_sources": [
          "inline_code"
        ],
        "group_key": "66917398ee27c17d8e6751f3dfc8f2f7e4ea49852209a256d162b57a66ca18ab",
        "kind": "env_var",
        "line": 7,
        "locations": [
          {
            "column": 7,
            "extraction": "inline_code",
            "line": 7,
            "raw_text": "APP_DEBUG"
          }
        ],
        "qualifier": null,
        "raw_text": "APP_DEBUG",
        "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
        "value": "APP_DEBUG"
      },
      "confidence": 0.92,
      "decided_by": "rules",
      "doc_text": "- Set `APP_DEBUG` to enable debug logging.",
      "evidence": [
        {
          "end_line": null,
          "file": "README.md",
          "line": 7,
          "text": "APP_DEBUG"
        },
        {
          "end_line": null,
          "file": "cli.py",
          "line": 1,
          "text": "-    debug = os.environ.get(\"APP_DEBUG\", \"0\")\n-    return parser.parse_args(), debug\n+    log_level = os.environ.get(\"APP_LOG_LEVEL\", \"INFO\")\n+    return parser.parse_args(), log_level"
        }
      ],
      "introduced_by": {
        "author_email": null,
        "author_name": "Author hidden",
        "date": "2026-10-04T09:00:00Z",
        "sha": "f686fb7b16409911edc904a10bd26afcf3682487",
        "short_sha": "f686fb7",
        "summary": "Replace debug environment variable with log level"
      },
      "matched_symbol": {
        "aliases": [],
        "authoritative": true,
        "decorators": [],
        "default": "INFO",
        "derived": false,
        "exported": false,
        "file": "cli.py",
        "framework": null,
        "handler": null,
        "kind": "env_var",
        "language": "python",
        "line": 12,
        "name": "APP_LOG_LEVEL",
        "parent_id": null,
        "partial_prefix": false,
        "qualified_name": "cli.APP_LOG_LEVEL",
        "raw_path": null,
        "setting_group": null,
        "symbol_id": "symbol_72c12062f3b6a0340f97b890f08d459d6487e6e4a295e6a0ab790bcc2c21f256",
        "ts_type": false
      },
      "package": "py-cli",
      "reasons": [
        "No indexed env_var named APP_DEBUG was found. Closest indexed candidates: APP_LOG_LEVEL (cli.py:12).",
        "Git history changed this name in f686fb7."
      ],
      "replayed": false,
      "suggestion": "APP_LOG_LEVEL",
      "verdict": "missing"
    },
    {
      "claim": {
        "claim_id": "claim_3e4a78859ff7e5aa9a087b4ac2fbe545e5615d96016374321ac2175a11e957f6",
        "column": 11,
        "doc_path": "README.md",
        "expected_default": null,
        "extraction": "inline_code",
        "extraction_confidence": 0.8,
        "extraction_sources": [
          "inline_code"
        ],
        "group_key": "834074339b2d46fabf87e7e5a64da1f21e5d8c0b79cb3393137dc84918641788",
        "kind": "cli_command",
        "line": 8,
        "locations": [
          {
            "column": 11,
            "extraction": "inline_code",
            "line": 8,
            "raw_text": "migrate"
          }
        ],
        "qualifier": null,
        "raw_text": "migrate",
        "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
        "value": "migrate"
      },
      "confidence": 0.92,
      "decided_by": "rules",
      "doc_text": "- Use the `migrate` subcommand to upgrade the database.",
      "evidence": [
        {
          "end_line": null,
          "file": "README.md",
          "line": 8,
          "text": "migrate"
        },
        {
          "end_line": null,
          "file": "cli.py",
          "line": 1,
          "text": "-    commands.add_parser(\"migrate\")\n+    commands.add_parser(\"db-upgrade\")"
        }
      ],
      "introduced_by": {
        "author_email": null,
        "author_name": "Author hidden",
        "date": "2026-10-05T09:00:00Z",
        "sha": "3fb52f15482ad07d8de83c72fc4ad3ab46dd9548",
        "short_sha": "3fb52f1",
        "summary": "Rename the database upgrade subcommand"
      },
      "matched_symbol": {
        "aliases": [],
        "authoritative": true,
        "decorators": [],
        "default": null,
        "derived": false,
        "exported": false,
        "file": "cli.py",
        "framework": "argparse",
        "handler": null,
        "kind": "cli_command",
        "language": "python",
        "line": 11,
        "name": "db-upgrade",
        "parent_id": null,
        "partial_prefix": false,
        "qualified_name": "cli.db-upgrade",
        "raw_path": null,
        "setting_group": null,
        "symbol_id": "symbol_34705d4897c16f937d1a0193e24a8ed69a18933b6663d0be5ebec8e2f71e27bd",
        "ts_type": false
      },
      "package": "py-cli",
      "reasons": [
        "No indexed cli_command named migrate was found. Closest indexed candidates: db-upgrade (cli.py:11).",
        "Git history confirms this name changed to db-upgrade.",
        "Git history changed this name in 3fb52f1."
      ],
      "replayed": false,
      "suggestion": "db-upgrade",
      "verdict": "renamed"
    },
    {
      "claim": {
        "claim_id": "claim_9191832fb5fd440e0c6473790ccc5f658b6bb32163005e9cf84d6925199cbbec",
        "column": 5,
        "doc_path": "README.md",
        "expected_default": null,
        "extraction": "inline_code",
        "extraction_confidence": 0.9,
        "extraction_sources": [
          "inline_code"
        ],
        "group_key": "764f3bd8b9b1519486c80dd313e5b49b91463ab1995554e7b6ce73922e207a06",
        "kind": "make_target",
        "line": 10,
        "locations": [
          {
            "column": 5,
            "extraction": "inline_code",
            "line": 10,
            "raw_text": "make test"
          }
        ],
        "qualifier": null,
        "raw_text": "make test",
        "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
        "value": "test"
      },
      "confidence": 0.95,
      "decided_by": "rules",
      "doc_text": "Run `make test` to check the project.",
      "evidence": [
        {
          "end_line": null,
          "file": "Makefile",
          "line": 1,
          "text": "test"
        }
      ],
      "introduced_by": null,
      "matched_symbol": {
        "aliases": [],
        "authoritative": true,
        "decorators": [],
        "default": null,
        "derived": false,
        "exported": false,
        "file": "Makefile",
        "framework": null,
        "handler": null,
        "kind": "make_target",
        "language": "make",
        "line": 1,
        "name": "test",
        "parent_id": null,
        "partial_prefix": false,
        "qualified_name": "test",
        "raw_path": null,
        "setting_group": null,
        "symbol_id": "symbol_3d0b5b3ba9044ac3fbff1e1459399e15635ce176e92517afb2b243dc55d4a463",
        "ts_type": false
      },
      "package": "py-cli",
      "reasons": [
        "make_target test matches test at Makefile:1."
      ],
      "replayed": false,
      "suggestion": null,
      "verdict": "ok"
    }
  ],
  "head_sha": "3fb52f15482ad07d8de83c72fc4ad3ab46dd9548",
  "historical_ignored": 0,
  "llm_usage": {},
  "package_version": "0.1.0",
  "packages": [
    {
      "commands": [],
      "language": "unknown",
      "name": "py-cli",
      "root": "."
    }
  ],
  "remote_url": "https://github.com/docs-drift/py-cli-demo",
  "repo_path": ".",
  "scan_time": "2026-10-18T12:17:37.317525Z",
  "schema_version": 1,
  "sections": [
    {
      "context": "current",
      "doc_path": "README.md",
      "end_line": 10,
      "heading": "py-cli",
      "heading_level": 1,
      "heading_path": [
        "py-cli"
      ],
      "historical_spans": [],
      "section_id": "section_5fc49b2082ff4ad1d790c979601885b2ccef380f1a4298d374c8981abe363618",
      "start_line": 1
    }
  ],
  "suppressed": [],
  "symbols": [
    {
      "aliases": [],
      "authoritative": true,
      "decorators": [],
      "default": null,
      "derived": false,
      "exported": false,
      "file": "Makefile",
      "framework": null,
      "handler": null,
      "kind": "make_target",
      "language": "make",
      "line": 1,
      "name": "test",
      "parent_id": null,
      "partial_prefix": false,
      "qualified_name": "test",
      "raw_path": null,
      "setting_group": null,
      "symbol_id": "symbol_3d0b5b3ba9044ac3fbff1e1459399e15635ce176e92517afb2b243dc55d4a463",
      "ts_type": false
    },
    {
      "aliases": [],
      "authoritative": true,
      "decorators": [],
      "default": null,
      "derived": false,
      "exported": true,
      "file": "cli.py",
      "framework": null,
      "handler": null,
      "kind": "function",
      "language": "python",
      "line": 4,
      "name": "main",
      "parent_id": null,
      "partial_prefix": false,
      "qualified_name": "cli.main",
      "raw_path": null,
      "setting_group": null,
      "symbol_id": "symbol_f46984ed055ff7b810b6bd47684db9f280e5c3b3d4c7ae72814c81b144493a60",
      "ts_type": false
    },
    {
      "aliases": [],
      "authoritative": true,
      "decorators": [],
      "default": null,
      "derived": false,
      "exported": false,
      "file": "cli.py",
      "framework": "argparse",
      "handler": null,
      "kind": "cli_command",
      "language": "python",
      "line": 7,
      "name": "serve",
      "parent_id": null,
      "partial_prefix": false,
      "qualified_name": "cli.serve",
      "raw_path": null,
      "setting_group": null,
      "symbol_id": "symbol_27a6dcff770a5fe755888fc3f70445d6ede2a44a0bcc0c5f6bd68d8a03b561b4",
      "ts_type": false
    },
    {
      "aliases": [],
      "authoritative": true,
      "decorators": [],
      "default": "8000",
      "derived": false,
      "exported": false,
      "file": "cli.py",
      "framework": "argparse",
      "handler": null,
      "kind": "cli_flag",
      "language": "python",
      "line": 8,
      "name": "--listen",
      "parent_id": null,
      "partial_prefix": false,
      "qualified_name": "cli.serve.--listen",
      "raw_path": null,
      "setting_group": null,
      "symbol_id": "symbol_b1aff1c29930fa208e11ddcc45d6650ad414d3d157b3528b8b0f696973d46765",
      "ts_type": false
    },
    {
      "aliases": [],
      "authoritative": true,
      "decorators": [],
      "default": "127.0.0.1",
      "derived": false,
      "exported": false,
      "file": "cli.py",
      "framework": "argparse",
      "handler": null,
      "kind": "cli_flag",
      "language": "python",
      "line": 9,
      "name": "--host",
      "parent_id": null,
      "partial_prefix": false,
      "qualified_name": "cli.serve.--host",
      "raw_path": null,
      "setting_group": null,
      "symbol_id": "symbol_20488fa73d5cffe8005a388c57bc41a467fdeb50a55a9c1e347da8fddae98d2f",
      "ts_type": false
    },
    {
      "aliases": [],
      "authoritative": true,
      "decorators": [],
      "default": "8",
      "derived": false,
      "exported": false,
      "file": "cli.py",
      "framework": "argparse",
      "handler": null,
      "kind": "cli_flag",
      "language": "python",
      "line": 10,
      "name": "--workers",
      "parent_id": null,
      "partial_prefix": false,
      "qualified_name": "cli.serve.--workers",
      "raw_path": null,
      "setting_group": null,
      "symbol_id": "symbol_0f9006638800848074f8dca81f512cd6922bbb37243a8ab5c5ed4b65db3df373",
      "ts_type": false
    },
    {
      "aliases": [],
      "authoritative": true,
      "decorators": [],
      "default": null,
      "derived": false,
      "exported": false,
      "file": "cli.py",
      "framework": "argparse",
      "handler": null,
      "kind": "cli_command",
      "language": "python",
      "line": 11,
      "name": "db-upgrade",
      "parent_id": null,
      "partial_prefix": false,
      "qualified_name": "cli.db-upgrade",
      "raw_path": null,
      "setting_group": null,
      "symbol_id": "symbol_34705d4897c16f937d1a0193e24a8ed69a18933b6663d0be5ebec8e2f71e27bd",
      "ts_type": false
    },
    {
      "aliases": [],
      "authoritative": true,
      "decorators": [],
      "default": "INFO",
      "derived": false,
      "exported": false,
      "file": "cli.py",
      "framework": null,
      "handler": null,
      "kind": "env_var",
      "language": "python",
      "line": 12,
      "name": "APP_LOG_LEVEL",
      "parent_id": null,
      "partial_prefix": false,
      "qualified_name": "cli.APP_LOG_LEVEL",
      "raw_path": null,
      "setting_group": null,
      "symbol_id": "symbol_72c12062f3b6a0340f97b890f08d459d6487e6e4a295e6a0ab790bcc2c21f256",
      "ts_type": false
    }
  ],
  "timings": {},
  "warnings": []
}
