{
  "checker": {
    "claims": [
      {
        "claim": "Search GitHub for existing repositories based on a concrete idea and return a ranked shortlist with a provisional verdict.",
        "command": "<guest-path> --python 3.12 --from . search-first tools/call {\"tool\": \"search_existing\", \"arguments\": {\"idea\": \"a Chrome extension or script that closes idle browser tabs automatically\", \"queries\": [\"chrome idle tab close\", \"auto close tabs\", \"inactive tabs extension\", \"tab auto closer\"], \"limit\": 8}}",
        "evidence": "verdict\\\": {\\n    \\\"closest_match\\\": {\\n      \\\"name\\\": \\\"maverick-360/vaultab\\\",\\n      \\\"url\\\": \\\"https://github.com/maverick-360/vaultab\\\"\\n    },\\n    \\\"plausible_candidates\\\": 0,\\n    \\\"adjacent_candidates\\\": 53,\\n    \\\"recommendation\\\": \\\"inconclusive\\\",\\n    \\\"reasoning\\\": \\\"Core overlap exists, but the reuse floor (25 stars, push within 365 days) or lexical plausibility threshold is unverified. Inspect their README and required behavior, then broaden queries before choosing to build. A low score does not establish that no reusable base exists.\\\",\\n    \\\"provisional\\\": true,\\n    \\\"sear",
        "expected": "MCP search result contains candidates and verdict",
        "input": "{\"tool\": \"search_existing\", \"arguments\": {\"idea\": \"a Chrome extension or script that closes idle browser tabs automatically\", \"queries\": [\"chrome idle tab close\", \"auto close tabs\", \"inactive tabs extension\", \"tab auto closer\"], \"limit\": 8}}",
        "kind": "claim",
        "outcome": "Real input produced the expected result: verdict",
        "source": "An MCP server that discovers existing public projects, explains a ranked shortlist,\ninspects maintenance and reuse signals, and compares candidates.",
        "source_checked": true,
        "source_file": "README.md",
        "verdict": "yes"
      }
    ],
    "cycle_checks": [
      {
        "claim": "Scheduled or looping main behavior",
        "command": "",
        "evidence": "Inspected README run instructions and server entrypoint: this product responds to MCP tool calls and has no scheduled or recurring cycle; its useful operation is a direct search_existing call.",
        "expected": "identify the product trigger",
        "input": "source inspection",
        "kind": "cycle",
        "outcome": "Inspected README run instructions and server entrypoint: this product responds to MCP tool calls and has no scheduled or recurring cycle; its useful operation is a direct search_existing call.",
        "source": "repository entry points",
        "verdict": "yes"
      }
    ],
    "details": {
      "argv": [
        "<guest-path>",
        "--python",
        "3.12",
        "--from",
        ".",
        "search-first"
      ],
      "kind": "mcp",
      "scope": "product operation",
      "serverInfo": {
        "name": "search-first",
        "version": "0.1.0"
      },
      "tool_result": {
        "content": [
          {
            "text": "{\n  \"verdict\": {\n    \"closest_match\": {\n      \"name\": \"maverick-360/vaultab\",\n      \"url\": \"https://github.com/maverick-360/vaultab\"\n    },\n    \"plausible_candidates\": 0,\n    \"adjacent_candidates\": 53,\n    \"recommendation\": \"inconclusive\",\n    \"reasoning\": \"Core overlap exists, but the reuse floor (25 stars, push within 365 days) or lexical plausibility threshold is unverified. Inspect their README and required behavior, then broaden queries before choosing to build. A low score does not establish that no reusable base exists.\",\n    \"provisional\": true,\n    \"search_complete\": true\n  },\n  \"warnings\": [],\n  \"candidates\": [\n    {\n      \"name\": \"maverick-360/vaultab\",\n      \"url\": \"https://github.com/maverick-360/vaultab\",\n      \"stars\": 5,\n      \"last_push\": \"2026-07-05T14:33:01Z\",\n      \"license\": \"MIT\",\n      \"relevance_score\": 0.858,\n      \"idea_term_coverage\": 1.0,\n      \"missing_key_terms\": [],\n      \"missing_constraints\": [],\n      \"why_it_matched\": \"Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 5 stars, push 108 days ago; returned by 2 query variant(s), best GitHub rank 1. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days.\"\n    },\n    {\n      \"name\": \"vladbulyukhin/tab-reaper\",\n      \"url\": \"https://github.com/vladbulyukhin/tab-reaper\",\n      \"stars\": 2,\n      \"last_push\": \"2026-09-06T19:31:45Z\",\n      \"license\": \"MPL-2.0\",\n      \"relevance_score\": 0.783,\n      \"idea_term_coverage\": 1.0,\n      \"missing_key_terms\": [],\n      \"missing_constraints\": [],\n      \"why_it_matched\": \"Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 2 stars, push 45 days ago; returned by 1 query variant(s), best GitHub rank 7. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days.\"\n    },\n    {\n      \"name\": \"danielmarquesads/tabflow\",\n      \"url\": \"https://github.com/danielmarquesads/tabflow\",\n      \"stars\": 4,\n      \"last_push\": \"2026-07-18T06:46:53Z\",\n      \"license\": \"MIT\",\n      \"relevance_score\": 0.777,\n      \"idea_term_coverage\": 1.0,\n      \"missing_key_terms\": [],\n      \"missing_constraints\": [],\n      \"why_it_matched\": \"Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 4 stars, push 95 days ago; returned by 1 query variant(s), best GitHub rank 27. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days.\"\n    },\n    {\n      \"name\": \"erag/tab-cleaner\",\n      \"url\": \"https://github.com/erag/tab-cleaner\",\n      \"stars\": 1,\n      \"last_push\": \"2026-09-04T03:16:05Z\",\n      \"license\": \"MIT\",\n      \"relevance_score\": 0.769,\n      \"idea_term_coverage\": 1.0,\n      \"missing_key_terms\": [],\n      \"missing_constraints\": [],\n      \"why_it_matched\": \"Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 1 stars, push 47 days ago; returned by 1 query variant(s), best GitHub rank 11. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days.\"\n    },\n    {\n      \"name\": \"GuyDev1/tab-minimalist\",\n      \"url\": \"https://github.com/GuyDev1/tab-minimalist\",\n      \"stars\": 1,\n      \"last_push\": \"2026-06-06T19:19:47Z\",\n      \"license\": \"MIT\",\n      \"relevance_score\": 0.767,\n      \"idea_term_coverage\": 1.0,\n      \"missing_key_terms\": [],\n      \"missing_constraints\": [],\n      \"why_it_matched\": \"Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 1 stars, push 137 days ago; returned by 1 query variant(s), best GitHub rank 14. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days.\"\n    },\n    {\n      \"name\": \"RealUnfazed/Chrome-TabTidy\",\n      \"url\": \"https://github.com/RealUnfazed/Chrome-TabTidy\",\n      \"stars\": 0,\n      \"last_push\": \"2026-09-28T10:41:29Z\",\n      \"license\": \"MIT\",\n      \"relevance_score\": 0.762,\n      \"idea_term_coverage\": 1.0,\n      \"missing_key_terms\": [],\n      \"missing_constraints\": [],\n      \"why_it_matched\": \"Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 0 stars, push 23 days ago; returned by 1 query variant(s), best GitHub rank 8. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days.\"\n    },\n    {\n      \"name\": \"mj407/tab-reaper\",\n      \"url\": \"https://github.com/mj407/tab-reaper\",\n      \"stars\": 0,\n      \"last_push\": \"2026-05-30T21:07:01Z\",\n      \"license\": \"MIT\",\n      \"relevance_score\": 0.759,\n      \"idea_term_coverage\": 1.0,\n      \"missing_key_terms\": [],\n      \"missing_constraints\": [],\n      \"why_it_matched\": \"Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 0 stars, push 143 days ago; returned by 1 query variant(s), best GitHub rank 10. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days.\"\n    },\n    {\n      \"name\": \"WahaajTauqir/tab-lean\",\n      \"url\": \"https://github.com/WahaajTauqir/tab-lean\",\n      \"stars\": 0,\n      \"last_push\": \"2026-08-24T08:20:15Z\",\n      \"license\": \"MIT\",\n      \"relevance_score\": 0.753,\n      \"idea_term_coverage\": 1.0,\n      \"missing_key_terms\": [],\n      \"missing_constraints\": [],\n      \"why_it_matched\": \"Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 0 stars, push 58 days ago; returned by 1 query variant(s), best GitHub rank 16. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days.\"\n    }\n  ],\n  \"unique_candidates_evaluated\": 55,\n  \"errors\": [],\n  \"message\": null,\n  \"retry_after_seconds\": null,\n  \"coverage\": {\n    \"bounded\": true,\n    \"truncated\": true,\n    \"repositories_per_query\": 30,\n    \"queries_completed\": 2,\n    \"queries_failed\": 0,\n    \"queries_skipped\": 3,\n    \"query_budget\": 2,\n    \"bounded_plan_complete\": true,\n    \"results_skipped\": 47,\n    \"unretrieved_results\": null,\n    \"note\": \"Counts refer to deduplicated retrieved projects, not all of GitHub. Metadata-only lexical ranking; no candidate has been run or tested.\"\n  },\n  \"notes\": [\n    \"Unauthenticated mode: at most 2 search variants per call; set GITHUB_TOKEN for complete searches. Shared-IP quota still applies.\"\n  ]\n}",
            "type": "text"
          }
        ],
        "isError": false,
        "structuredContent": {
          "candidates": [
            {
              "idea_term_coverage": 1.0,
              "last_push": "2026-07-05T14:33:01Z",
              "license": "MIT",
              "missing_constraints": [],
              "missing_key_terms": [],
              "name": "maverick-360/vaultab",
              "relevance_score": 0.858,
              "stars": 5,
              "url": "https://github.com/maverick-360/vaultab",
              "why_it_matched": "Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 5 stars, push 108 days ago; returned by 2 query variant(s), best GitHub rank 1. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days."
            },
            {
              "idea_term_coverage": 1.0,
              "last_push": "2026-09-06T19:31:45Z",
              "license": "MPL-2.0",
              "missing_constraints": [],
              "missing_key_terms": [],
              "name": "vladbulyukhin/tab-reaper",
              "relevance_score": 0.783,
              "stars": 2,
              "url": "https://github.com/vladbulyukhin/tab-reaper",
              "why_it_matched": "Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 2 stars, push 45 days ago; returned by 1 query variant(s), best GitHub rank 7. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days."
            },
            {
              "idea_term_coverage": 1.0,
              "last_push": "2026-07-18T06:46:53Z",
              "license": "MIT",
              "missing_constraints": [],
              "missing_key_terms": [],
              "name": "danielmarquesads/tabflow",
              "relevance_score": 0.777,
              "stars": 4,
              "url": "https://github.com/danielmarquesads/tabflow",
              "why_it_matched": "Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 4 stars, push 95 days ago; returned by 1 query variant(s), best GitHub rank 27. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days."
            },
            {
              "idea_term_coverage": 1.0,
              "last_push": "2026-09-04T03:16:05Z",
              "license": "MIT",
              "missing_constraints": [],
              "missing_key_terms": [],
              "name": "erag/tab-cleaner",
              "relevance_score": 0.769,
              "stars": 1,
              "url": "https://github.com/erag/tab-cleaner",
              "why_it_matched": "Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 1 stars, push 47 days ago; returned by 1 query variant(s), best GitHub rank 11. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days."
            },
            {
              "idea_term_coverage": 1.0,
              "last_push": "2026-06-06T19:19:47Z",
              "license": "MIT",
              "missing_constraints": [],
              "missing_key_terms": [],
              "name": "GuyDev1/tab-minimalist",
              "relevance_score": 0.767,
              "stars": 1,
              "url": "https://github.com/GuyDev1/tab-minimalist",
              "why_it_matched": "Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 1 stars, push 137 days ago; returned by 1 query variant(s), best GitHub rank 14. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days."
            },
            {
              "idea_term_coverage": 1.0,
              "last_push": "2026-09-28T10:41:29Z",
              "license": "MIT",
              "missing_constraints": [],
              "missing_key_terms": [],
              "name": "RealUnfazed/Chrome-TabTidy",
              "relevance_score": 0.762,
              "stars": 0,
              "url": "https://github.com/RealUnfazed/Chrome-TabTidy",
              "why_it_matched": "Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 0 stars, push 23 days ago; returned by 1 query variant(s), best GitHub rank 8. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days."
            },
            {
              "idea_term_coverage": 1.0,
              "last_push": "2026-05-30T21:07:01Z",
              "license": "MIT",
              "missing_constraints": [],
              "missing_key_terms": [],
              "name": "mj407/tab-reaper",
              "relevance_score": 0.759,
              "stars": 0,
              "url": "https://github.com/mj407/tab-reaper",
              "why_it_matched": "Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 0 stars, push 143 days ago; returned by 1 query variant(s), best GitHub rank 10. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days."
            },
            {
              "idea_term_coverage": 1.0,
              "last_push": "2026-08-24T08:20:15Z",
              "license": "MIT",
              "missing_constraints": [],
              "missing_key_terms": [],
              "name": "WahaajTauqir/tab-lean",
              "relevance_score": 0.753,
              "stars": 0,
              "url": "https://github.com/WahaajTauqir/tab-lean",
              "why_it_matched": "Strong core match; Core terms: 5/5 (browser, close, extension, idle, tab); 0 stars, push 58 days ago; returned by 1 query variant(s), best GitHub rank 16. Cautions: reuse floor unverified: needs at least 25 stars and a push within 365 days."
            }
          ],
          "coverage": {
            "bounded": true,
            "bounded_plan_complete": true,
            "note": "Counts refer to deduplicated retrieved projects, not all of GitHub. Metadata-only lexical ranking; no candidate has been run or tested.",
            "queries_completed": 2,
            "queries_failed": 0,
            "queries_skipped": 3,
            "query_budget": 2,
            "repositories_per_query": 30,
            "results_skipped": 47,
            "truncated": true,
            "unretrieved_results": null
          },
          "errors": [],
          "message": null,
          "notes": [
            "Unauthenticated mode: at most 2 search variants per call; set GITHUB_TOKEN for complete searches. Shared-IP quota still applies."
          ],
          "retry_after_seconds": null,
          "unique_candidates_evaluated": 55,
          "verdict": {
            "adjacent_candidates": 53,
            "closest_match": {
              "name": "maverick-360/vaultab",
              "url": "https://github.com/maverick-360/vaultab"
            },
            "plausible_candidates": 0,
            "provisional": true,
            "reasoning": "Core overlap exists, but the reuse floor (25 stars, push within 365 days) or lexical plausibility threshold is unverified. Inspect their README and required behavior, then broaden queries before choosing to build. A low score does not establish that no reusable base exists.",
            "recommendation": "inconclusive",
            "search_complete": true
          },
          "warnings": []
        }
      },
      "tool_result_checked": true,
      "tool_schema_bytes": 4129,
      "tools": [
        "search_existing",
        "inspect_repo",
        "compare_candidates"
      ],
      "working": true
    },
    "evidence_strength": "readme_checked",
    "example_checks": [
      {
        "claim": "Install and run the documented stdio MCP server (help invocation verifies installation).",
        "command": "<guest-path> --python 3.12 --from . search-first --help",
        "deferred": false,
        "evidence": "                SEARCH_FIRST_AUTH_TOKEN (only behind a trusted\n                        gateway)\n  --rank-weights RANK_WEIGHTS\n                        Ranking weights as name=value,... over the defaults\n                        (or SEARCH_FIRST_RANK_WEIGHTS); names: idea_match,\n                        query_match, github_rank, variant_agreement,\n                        freshness, stars\n  --overall-weights OVERALL_WEIGHTS\n                        Compare blend weights as name=value,... (or\n                        SEARCH_FIRST_OVERALL_WEIGHTS); names: fit,\n                        maintenance, stars",
        "expected": "CLI usage and stdio server options",
        "input": "uvx --python 3.12 --from . search-first --help",
        "kind": "example",
        "outcome": "command completed successfully",
        "returncode": 0,
        "source": "README.md, Install and run",
        "verdict": "yes"
      }
    ],
    "status": "PASS"
  },
  "deviations": [
    "vault-search and rg are unavailable in this guest; used find and grep to inspect files.",
    "Unauthenticated request budget returned an inconclusive provisional assessment; results are bounded and public API metadata only."
  ],
  "fault_owner": null,
  "main_blocker": null,
  "operation": "Run search-first as a stdio MCP server and call search_existing against public GitHub data.",
  "operation_scope": "README-documented Python 3.12 uvx install/run path; unauthenticated GitHub search is limited to two query variants.",
  "outcome": "working",
  "plain_failure": null,
  "steps": [
    "Checked Python 3.12.3 against README minimum Python 3.11.",
    "Installed uv with the README official installer into workspace/uv-bin.",
    "Ran uvx --python 3.12 --from . search-first --help; package built and usage printed.",
    "Started the README-documented stdio server through uvx and called search_existing with the README idle-tabs sample.",
    "Ran checker --validate --replay successfully; tool returned ranked candidate data and a verdict."
  ],
  "stuck_step": null,
  "suggested_fix": null
}
