{
  "round": "2026-11",
  "license": "https://creativecommons.org/licenses/by/4.0/",
  "generatedAt": "2026-11-03T13:16:24.447Z",
  "scannerRules": 223,
  "methodology": {
    "sampleStrategy": "GitHub code search for each builder's scaffold marker, deduped to one row per repository, screened against the eligibility rules below, then the first N survivors in GitHub's own result order. No hand-picking: the sampler never sees scan results, and the scanner never sees the eligibility reasons. Markers by builder — Lovable: lovable-tagger in package.json; v0: v0-user-next config merge in the Next.js config; Bolt: bolt-vite-react-ts template in .bolt/config.json; Base44: @base44/sdk in package.json.",
    "eligibility": [
      "Public, non-fork, non-archived, non-disabled repositories only.",
      "Repositories flagged as GitHub templates are excluded.",
      "Repositories owned by the builder's own organization are excluded (product and docs, not user apps).",
      "The scaffold marker must appear in one of the builder's live marker files (package.json for Lovable and Base44, the Next.js config for v0, .bolt/config.json for Bolt). A mention in a README, a lockfile or a backup copy of the manifest is not evidence the repo was scaffolded by the builder.",
      "Repositories whose name, description or topics identify them as a tutorial, course, boilerplate, starter kit, template, workshop or awesome-list are excluded.",
      "Size bounds: 40 KB to 250,000 KB. Below the floor there is no app; above the ceiling it is a monorepo or asset dump rather than one vibe-coded app.",
      "Must contain at least 5 non-vendored source files, measured from the git tree before cloning.",
      "Repositories that fail to clone or scan are counted as excluded, never as clean."
    ],
    "vendoredPathPatterns": [
      "**/components/ui/**",
      "**/ui/shadcn/**",
      "**/shadcn/ui/**",
      "**/shadcn/**",
      "**/*.md",
      "**/*.mdx",
      ".claude/**",
      ".agent/**",
      ".agents/**",
      ".cursor/**",
      ".superpowers/**",
      ".windsurf/**",
      "**/.claude/**",
      "**/.agent/**",
      "**/.agents/**",
      "**/.cursor/**",
      "**/.superpowers/**",
      "**/.windsurf/**",
      "**/vendor/**",
      "**/vendored/**",
      "**/third_party/**",
      "**/third-party/**",
      "**/thirdparty/**",
      "**/third_parties/**",
      "**/third-parties/**",
      "**/3rd_party/**",
      "**/3rd-party/**",
      "**/3rdparty/**",
      "**/generated/**",
      "**/__generated__/**"
    ],
    "limitations": [
      "Attribution is scaffold-level, not authorship-level. The marker proves the project was created from the builder's scaffold; it does not prove every line was generated by it. Humans edit these repos afterwards, and some of what is measured is human-written.",
      "The sample is public GitHub only. Apps that were never pushed, were pushed privately, or were deployed straight from the builder without a repo are invisible, and there is no reason to assume they are similar.",
      "GitHub code search caps at 1,000 results per query, so for builders with a larger universe the sample is drawn from the first 1,000 results in GitHub's relevance order, not uniformly at random from the whole universe.",
      "The 'vendored' bucket is broader than the word suggests: it covers copied UI component libraries, markdown documentation and committed AI-agent tooling directories — everything the builder's code generation is not accountable for. Those findings are reported, not discarded.",
      "Static analysis has false positives. Findings are not confirmed exploits, and a critical finding is a thing a human should look at, not a proven breach.",
      "Project size is a confound and it is not small: median scanned files per repository ranges from 44.5 (Bolt) to 115 (Lovable). A smaller project has fewer places for a critical finding to occur, so a builder whose users ship smaller apps scores better on every rate here without necessarily generating safer code. The per-builder median is published in the sample table so this can be read directly rather than inferred.",
      "The vendored-critical column is a fact about scaffold composition, not about security. It largely reflects how much of a component library each builder copies in: a builder that ships the full shadcn/ui suite inherits the two files that generate nearly all vendored findings, while one that ships a few hand-rolled primitives inherits none. A 0% vendored rate means the builder vendors less code, not that it produces safer code.",
      "Some rules fire on scaffold files the builder ships unmodified (a missing Content-Security-Policy on the stock index.html, for instance) where the real control lives in host headers the scanner cannot see. Those inflate the high-severity counts for every builder roughly equally and do not affect the critical-severity headline.",
      "Per-repo rows are anonymized by design. The numbers are reproducible by re-running the pipeline; the individual repositories behind them are deliberately not recoverable, because publishing them would disclose live vulnerabilities in other people's projects.",
      "Files over 1.5 MB are skipped, and repositories are scanned up to 8,000 files. 2 of 180 repositories hit the file cap and were measured partially, which understates their finding counts.",
      "Round size: 180 repositories across 4 builders. Differences of a few percentage points between builders are inside the noise of a sample this size."
    ]
  },
  "builders": [
    {
      "id": "lovable",
      "name": "Lovable",
      "marker": "lovable-tagger in package.json",
      "attributionConfidence": "scaffold",
      "universeSize": 74624,
      "sampled": 50,
      "scanned": 50,
      "excluded": 17,
      "underSampled": false,
      "medianProjectFiles": 115,
      "minReportableN": 10,
      "appCode": {
        "reposWithCritical": 32,
        "pctWithCritical": 0.64,
        "reposWithHighOrWorse": 50,
        "pctWithHighOrWorse": 1,
        "medianFindings": 35.5,
        "meanFindings": 58.2,
        "gradeDistribution": {
          "A+": 0,
          "A": 0,
          "B": 6,
          "C": 1,
          "D": 3,
          "F": 40
        },
        "topRules": [
          {
            "rule": "VC106",
            "title": "Magic Numbers in Code",
            "repos": 50,
            "occurrences": 564
          },
          {
            "rule": "VC027",
            "title": "Missing Security Meta Tags / Headers",
            "repos": 50,
            "occurrences": 139
          },
          {
            "rule": "VC056",
            "title": "Clickjacking — Missing X-Frame-Options",
            "repos": 50,
            "occurrences": 81
          },
          {
            "rule": "VC020",
            "title": "Missing Content Security Policy (CSP)",
            "repos": 49,
            "occurrences": 69
          },
          {
            "rule": "VC097",
            "title": "Console.log Left in Production Code",
            "repos": 39,
            "occurrences": 309
          },
          {
            "rule": "VC001",
            "title": "Hardcoded API Key or Secret",
            "repos": 26,
            "occurrences": 118
          },
          {
            "rule": "VC084",
            "title": "Missing Subresource Integrity (SRI)",
            "repos": 23,
            "occurrences": 26
          },
          {
            "rule": "ENTROPY",
            "title": "High-Entropy String Detected (Possible Secret)",
            "repos": 22,
            "occurrences": 91
          },
          {
            "rule": "VC037",
            "title": "Stack Traces Exposed in API Responses",
            "repos": 18,
            "occurrences": 208
          },
          {
            "rule": "VC003",
            "title": "API Route Missing Authentication",
            "repos": 17,
            "occurrences": 129
          }
        ]
      },
      "vendoredCode": {
        "reposWithCritical": 42,
        "pctWithCritical": 0.84,
        "reposWithHighOrWorse": 44,
        "pctWithHighOrWorse": 0.88,
        "medianFindings": 5,
        "meanFindings": 5.78,
        "gradeDistribution": {
          "A+": 49,
          "A": 0,
          "B": 0,
          "C": 0,
          "D": 0,
          "F": 1
        },
        "topRules": [
          {
            "rule": "ENTROPY",
            "title": "High-Entropy String Detected (Possible Secret)",
            "repos": 43,
            "occurrences": 95
          },
          {
            "rule": "VC017",
            "title": "Insecure Cookie Settings",
            "repos": 43,
            "occurrences": 48
          },
          {
            "rule": "VC007",
            "title": "Potential Cross-Site Scripting (XSS)",
            "repos": 42,
            "occurrences": 47
          },
          {
            "rule": "VC063",
            "title": "Unsanitized dangerouslySetInnerHTML",
            "repos": 42,
            "occurrences": 46
          },
          {
            "rule": "VC097",
            "title": "Console.log Left in Production Code",
            "repos": 10,
            "occurrences": 20
          },
          {
            "rule": "VC095",
            "title": "Hardcoded Localhost CORS Origin",
            "repos": 3,
            "occurrences": 5
          },
          {
            "rule": "VC033",
            "title": "Debug/Development Mode Exposed",
            "repos": 2,
            "occurrences": 5
          },
          {
            "rule": "VC012",
            "title": "Firebase Config with API Key in Client Code",
            "repos": 2,
            "occurrences": 3
          },
          {
            "rule": "VC106",
            "title": "Magic Numbers in Code",
            "repos": 2,
            "occurrences": 3
          },
          {
            "rule": "VC016",
            "title": "Unvalidated Redirect",
            "repos": 1,
            "occurrences": 5
          }
        ]
      },
      "repos": [
        {
          "id": "03752d6c6ab84199",
          "files": 129,
          "appFindings": 49,
          "vendoredFindings": 3,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "042343771308cf6f",
          "files": 110,
          "appFindings": 40,
          "vendoredFindings": 10,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "0a2bc8974ce10cf7",
          "files": 92,
          "appFindings": 14,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 9,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "0dc03a8f520eeb7e",
          "files": 77,
          "appFindings": 13,
          "vendoredFindings": 5,
          "grade": "B",
          "score": 81,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "12894496b398dd8e",
          "files": 48,
          "appFindings": 23,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 13,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "12d82ac6b4f01901",
          "files": 158,
          "appFindings": 97,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "16835181fc8b4be6",
          "files": 83,
          "appFindings": 9,
          "vendoredFindings": 5,
          "grade": "B",
          "score": 84,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "1e7ac88e6f3706d9",
          "files": 170,
          "appFindings": 21,
          "vendoredFindings": 2,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable",
            "claude-code"
          ]
        },
        {
          "id": "1f9018e8ed0b6d73",
          "files": 124,
          "appFindings": 41,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "27f5c1a29c436f08",
          "files": 77,
          "appFindings": 10,
          "vendoredFindings": 5,
          "grade": "D",
          "score": 67,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "29bcb57776e3e45a",
          "files": 106,
          "appFindings": 29,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 10,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "38159019d43cc29a",
          "files": 18,
          "appFindings": 5,
          "vendoredFindings": 0,
          "grade": "B",
          "score": 84,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "3f51805bf5ffb724",
          "files": 480,
          "appFindings": 384,
          "vendoredFindings": 8,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "589ac5a3809cefbe",
          "files": 226,
          "appFindings": 94,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "61a8018a3e5afca9",
          "files": 489,
          "appFindings": 221,
          "vendoredFindings": 18,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "6ccf55c273e53d23",
          "files": 84,
          "appFindings": 19,
          "vendoredFindings": 5,
          "grade": "B",
          "score": 84,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "6dd83b8621054cd8",
          "files": 86,
          "appFindings": 22,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 40,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "6ecb7a38b571cb33",
          "files": 132,
          "appFindings": 30,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 14,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "6ecfea5b81e9c13f",
          "files": 266,
          "appFindings": 21,
          "vendoredFindings": 17,
          "grade": "F",
          "score": 23,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "72b69a7983b5a7f8",
          "files": 111,
          "appFindings": 52,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 21,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "812f6a75a7dfc102",
          "files": 218,
          "appFindings": 66,
          "vendoredFindings": 12,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable",
            "claude-code"
          ]
        },
        {
          "id": "8139674d704e2b7f",
          "files": 45,
          "appFindings": 15,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 29,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "8242bb5795ae3213",
          "files": 257,
          "appFindings": 61,
          "vendoredFindings": 6,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "86dbcca86ce105f9",
          "files": 41,
          "appFindings": 13,
          "vendoredFindings": 0,
          "grade": "C",
          "score": 77,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "88fb3e182f52b35a",
          "files": 121,
          "appFindings": 43,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "8fabc27b9adfd2a4",
          "files": 112,
          "appFindings": 33,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "9bb08244328a3bce",
          "files": 581,
          "appFindings": 338,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "9e7c37c53aa5dacf",
          "files": 89,
          "appFindings": 53,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "a0993849ee302130",
          "files": 215,
          "appFindings": 43,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "a2073640d1d7d4f6",
          "files": 170,
          "appFindings": 38,
          "vendoredFindings": 7,
          "grade": "F",
          "score": 10,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "a3eb6c2e0e647c73",
          "files": 229,
          "appFindings": 76,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "a4cf175451aaff8f",
          "files": 151,
          "appFindings": 67,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "a985a99db5d2adf5",
          "files": 115,
          "appFindings": 10,
          "vendoredFindings": 5,
          "grade": "D",
          "score": 70,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "abc6326402fe180a",
          "files": 379,
          "appFindings": 64,
          "vendoredFindings": 15,
          "grade": "F",
          "score": 30,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "afab308cc7d8c0ea",
          "files": 104,
          "appFindings": 16,
          "vendoredFindings": 9,
          "grade": "F",
          "score": 44,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "b5e7ca857db8e363",
          "files": 80,
          "appFindings": 12,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 58,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "b6a3f6447f7cb8da",
          "files": 320,
          "appFindings": 145,
          "vendoredFindings": 8,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "b87c7106aac59e73",
          "files": 148,
          "appFindings": 101,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "bcc569081571fc38",
          "files": 99,
          "appFindings": 21,
          "vendoredFindings": 6,
          "grade": "F",
          "score": 44,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "bd6c8ab3e670a8b4",
          "files": 142,
          "appFindings": 46,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 37,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "c3981c4156cd0d08",
          "files": 284,
          "appFindings": 221,
          "vendoredFindings": 9,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "caad94925b9cbe30",
          "files": 97,
          "appFindings": 16,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 54,
          "detectedPlatforms": [
            "lovable",
            "claude-code"
          ]
        },
        {
          "id": "cb3aa291ff35785f",
          "files": 128,
          "appFindings": 40,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "cfb2787dfbd661cd",
          "files": 83,
          "appFindings": 10,
          "vendoredFindings": 5,
          "grade": "B",
          "score": 81,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "e09cdda6c68f5b5e",
          "files": 92,
          "appFindings": 13,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 45,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "e121ee427161b8f3",
          "files": 101,
          "appFindings": 47,
          "vendoredFindings": 11,
          "grade": "F",
          "score": 10,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "e174a0e918ba65f2",
          "files": 236,
          "appFindings": 53,
          "vendoredFindings": 8,
          "grade": "F",
          "score": 10,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "e36755a788021262",
          "files": 115,
          "appFindings": 33,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 3,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "e9dc7608c69d2677",
          "files": 79,
          "appFindings": 11,
          "vendoredFindings": 5,
          "grade": "B",
          "score": 80,
          "detectedPlatforms": [
            "lovable"
          ]
        },
        {
          "id": "fddff92d1daf99da",
          "files": 43,
          "appFindings": 11,
          "vendoredFindings": 0,
          "grade": "D",
          "score": 67,
          "detectedPlatforms": [
            "lovable"
          ]
        }
      ]
    },
    {
      "id": "v0",
      "name": "v0",
      "marker": "v0-user-next config merge in the Next.js config",
      "attributionConfidence": "scaffold",
      "universeSize": 2492,
      "sampled": 50,
      "scanned": 50,
      "excluded": 13,
      "underSampled": false,
      "medianProjectFiles": 90.5,
      "minReportableN": 10,
      "appCode": {
        "reposWithCritical": 27,
        "pctWithCritical": 0.54,
        "reposWithHighOrWorse": 43,
        "pctWithHighOrWorse": 0.86,
        "medianFindings": 21.5,
        "meanFindings": 84.06,
        "gradeDistribution": {
          "A+": 3,
          "A": 4,
          "B": 4,
          "C": 1,
          "D": 6,
          "F": 32
        },
        "topRules": [
          {
            "rule": "VC106",
            "title": "Magic Numbers in Code",
            "repos": 43,
            "occurrences": 596
          },
          {
            "rule": "VC097",
            "title": "Console.log Left in Production Code",
            "repos": 34,
            "occurrences": 481
          },
          {
            "rule": "VC003",
            "title": "API Route Missing Authentication",
            "repos": 29,
            "occurrences": 267
          },
          {
            "rule": "VC065",
            "title": "Unprotected Next.js API Route",
            "repos": 27,
            "occurrences": 153
          },
          {
            "rule": "VC154",
            "title": "API Route Without Request Body Validation",
            "repos": 21,
            "occurrences": 96
          },
          {
            "rule": "ENTROPY",
            "title": "High-Entropy String Detected (Possible Secret)",
            "repos": 20,
            "occurrences": 421
          },
          {
            "rule": "VC104",
            "title": "Empty Catch Block",
            "repos": 18,
            "occurrences": 45
          },
          {
            "rule": "VC098",
            "title": "Synchronous File Operations",
            "repos": 14,
            "occurrences": 405
          },
          {
            "rule": "VC024",
            "title": "File Write/Save Without Size Limit",
            "repos": 14,
            "occurrences": 139
          },
          {
            "rule": "VC008",
            "title": "API Endpoint Without Rate Limiting",
            "repos": 14,
            "occurrences": 26
          }
        ]
      },
      "vendoredCode": {
        "reposWithCritical": 34,
        "pctWithCritical": 0.68,
        "reposWithHighOrWorse": 39,
        "pctWithHighOrWorse": 0.78,
        "medianFindings": 5,
        "meanFindings": 4.92,
        "gradeDistribution": {
          "A+": 49,
          "A": 0,
          "B": 0,
          "C": 0,
          "D": 1,
          "F": 0
        },
        "topRules": [
          {
            "rule": "ENTROPY",
            "title": "High-Entropy String Detected (Possible Secret)",
            "repos": 38,
            "occurrences": 81
          },
          {
            "rule": "VC017",
            "title": "Insecure Cookie Settings",
            "repos": 38,
            "occurrences": 41
          },
          {
            "rule": "VC007",
            "title": "Potential Cross-Site Scripting (XSS)",
            "repos": 34,
            "occurrences": 35
          },
          {
            "rule": "VC063",
            "title": "Unsanitized dangerouslySetInnerHTML",
            "repos": 34,
            "occurrences": 35
          },
          {
            "rule": "VC097",
            "title": "Console.log Left in Production Code",
            "repos": 2,
            "occurrences": 34
          },
          {
            "rule": "VC098",
            "title": "Synchronous File Operations",
            "repos": 1,
            "occurrences": 6
          },
          {
            "rule": "VC006",
            "title": "Potential SQL Injection",
            "repos": 1,
            "occurrences": 4
          },
          {
            "rule": "VC037",
            "title": "Stack Traces Exposed in API Responses",
            "repos": 1,
            "occurrences": 2
          },
          {
            "rule": "VC100",
            "title": "N+1 Query Pattern Detected",
            "repos": 1,
            "occurrences": 2
          },
          {
            "rule": "VC106",
            "title": "Magic Numbers in Code",
            "repos": 1,
            "occurrences": 2
          }
        ]
      },
      "repos": [
        {
          "id": "03fa80b39da02f1a",
          "files": 117,
          "appFindings": 46,
          "vendoredFindings": 6,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "04fcf8b4f3aaff42",
          "files": 121,
          "appFindings": 18,
          "vendoredFindings": 5,
          "grade": "D",
          "score": 76,
          "detectedPlatforms": []
        },
        {
          "id": "0955d8c145f99697",
          "files": 180,
          "appFindings": 90,
          "vendoredFindings": 1,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "0d5754583cb28150",
          "files": 102,
          "appFindings": 41,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "0fd61c307a4d9b99",
          "files": 78,
          "appFindings": 16,
          "vendoredFindings": 5,
          "grade": "D",
          "score": 71,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "114da029557dc0d0",
          "files": 134,
          "appFindings": 29,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 5,
          "detectedPlatforms": []
        },
        {
          "id": "1383a2b436d6ce51",
          "files": 78,
          "appFindings": 45,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "1617769776cf2c45",
          "files": 97,
          "appFindings": 17,
          "vendoredFindings": 3,
          "grade": "F",
          "score": 48,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "17adcb72c3aa82e5",
          "files": 84,
          "appFindings": 28,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "1a3f28d45861cc18",
          "files": 74,
          "appFindings": 4,
          "vendoredFindings": 5,
          "grade": "D",
          "score": 68,
          "detectedPlatforms": []
        },
        {
          "id": "2605598910c93abd",
          "files": 162,
          "appFindings": 78,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "28b0202d5543f3df",
          "files": 86,
          "appFindings": 47,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 46,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "351d16c06614f658",
          "files": 65,
          "appFindings": 0,
          "vendoredFindings": 5,
          "grade": "A+",
          "score": 100,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "3b714b603ebbc0da",
          "files": 124,
          "appFindings": 45,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 31,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "3c403fa37ec96865",
          "files": 146,
          "appFindings": 84,
          "vendoredFindings": 3,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "3cfd24d7df5b460b",
          "files": 135,
          "appFindings": 23,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 27,
          "detectedPlatforms": []
        },
        {
          "id": "3d7af60c3989d616",
          "files": 172,
          "appFindings": 20,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 37,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "5cdf1e17e19fe7c0",
          "files": 101,
          "appFindings": 39,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "6865c5c648ae2530",
          "files": 297,
          "appFindings": 75,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "68f755747224164b",
          "files": 33,
          "appFindings": 4,
          "vendoredFindings": 0,
          "grade": "B",
          "score": 86,
          "detectedPlatforms": []
        },
        {
          "id": "6e26415a23067ac0",
          "files": 131,
          "appFindings": 59,
          "vendoredFindings": 3,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "71278caf1ed2faa4",
          "files": 83,
          "appFindings": 6,
          "vendoredFindings": 5,
          "grade": "A",
          "score": 97,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "7254d25d361729d8",
          "files": 54,
          "appFindings": 15,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 23,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "72da6e9d5c0a93e0",
          "files": 104,
          "appFindings": 15,
          "vendoredFindings": 5,
          "grade": "D",
          "score": 60,
          "detectedPlatforms": []
        },
        {
          "id": "7a490ab4501b38aa",
          "files": 83,
          "appFindings": 69,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "830e157ef2ec339a",
          "files": 70,
          "appFindings": 1,
          "vendoredFindings": 5,
          "grade": "A",
          "score": 97,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "85c655df1dc219d4",
          "files": 172,
          "appFindings": 103,
          "vendoredFindings": 6,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "872fab27fd5972a6",
          "files": 162,
          "appFindings": 140,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "8ffa4c1f610d20b3",
          "files": 78,
          "appFindings": 8,
          "vendoredFindings": 5,
          "grade": "A",
          "score": 97,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "9944b6fdec072b35",
          "files": 230,
          "appFindings": 164,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "claude-code"
          ]
        },
        {
          "id": "9c980aff28de5f7c",
          "files": 104,
          "appFindings": 4,
          "vendoredFindings": 5,
          "grade": "B",
          "score": 90,
          "detectedPlatforms": []
        },
        {
          "id": "9e53fa2cb70d1ebd",
          "files": 68,
          "appFindings": 3,
          "vendoredFindings": 5,
          "grade": "D",
          "score": 71,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "9f3fc1467c1116e1",
          "files": 83,
          "appFindings": 15,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 56,
          "detectedPlatforms": []
        },
        {
          "id": "a2a5384bd38b50c2",
          "files": 83,
          "appFindings": 76,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "claude-code"
          ]
        },
        {
          "id": "a352fde1d8b3d42f",
          "files": 89,
          "appFindings": 24,
          "vendoredFindings": 5,
          "grade": "B",
          "score": 83,
          "detectedPlatforms": []
        },
        {
          "id": "ac62b5d525204d5f",
          "files": 43,
          "appFindings": 5,
          "vendoredFindings": 0,
          "grade": "A",
          "score": 97,
          "detectedPlatforms": []
        },
        {
          "id": "aef50411668022bd",
          "files": 72,
          "appFindings": 9,
          "vendoredFindings": 5,
          "grade": "A+",
          "score": 100,
          "detectedPlatforms": []
        },
        {
          "id": "bc42601fabee6531",
          "files": 43,
          "appFindings": 19,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 4,
          "detectedPlatforms": []
        },
        {
          "id": "ca1217d16c0cdb2f",
          "files": 664,
          "appFindings": 341,
          "vendoredFindings": 4,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "d820f56e4344ed88",
          "files": 123,
          "appFindings": 12,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 49,
          "detectedPlatforms": []
        },
        {
          "id": "daa57e9c205b836b",
          "files": 43,
          "appFindings": 4,
          "vendoredFindings": 0,
          "grade": "A+",
          "score": 100,
          "detectedPlatforms": []
        },
        {
          "id": "dd0d142505ae53d1",
          "files": 7289,
          "appFindings": 2144,
          "vendoredFindings": 60,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "df79333f50b2fec2",
          "files": 73,
          "appFindings": 3,
          "vendoredFindings": 5,
          "grade": "D",
          "score": 63,
          "detectedPlatforms": []
        },
        {
          "id": "e5088678a6582f0a",
          "files": 48,
          "appFindings": 14,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 56,
          "detectedPlatforms": []
        },
        {
          "id": "e52cc77eb7d96b9d",
          "files": 87,
          "appFindings": 10,
          "vendoredFindings": 6,
          "grade": "C",
          "score": 74,
          "detectedPlatforms": []
        },
        {
          "id": "ef29e8517ab06914",
          "files": 130,
          "appFindings": 48,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "f43e60c86a859627",
          "files": 75,
          "appFindings": 16,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 5,
          "detectedPlatforms": []
        },
        {
          "id": "f6e88f5b8f884bef",
          "files": 66,
          "appFindings": 10,
          "vendoredFindings": 5,
          "grade": "B",
          "score": 87,
          "detectedPlatforms": []
        },
        {
          "id": "fb7848f0c6fce992",
          "files": 92,
          "appFindings": 56,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "fd97268356b97aa2",
          "files": 149,
          "appFindings": 61,
          "vendoredFindings": 9,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        }
      ]
    },
    {
      "id": "bolt",
      "name": "Bolt",
      "marker": "bolt-vite-react-ts template in .bolt/config.json",
      "attributionConfidence": "scaffold",
      "universeSize": 3044,
      "sampled": 30,
      "scanned": 30,
      "excluded": 155,
      "underSampled": false,
      "medianProjectFiles": 44.5,
      "minReportableN": 10,
      "appCode": {
        "reposWithCritical": 18,
        "pctWithCritical": 0.6,
        "reposWithHighOrWorse": 30,
        "pctWithHighOrWorse": 1,
        "medianFindings": 18.5,
        "meanFindings": 166.9,
        "gradeDistribution": {
          "A+": 0,
          "A": 0,
          "B": 6,
          "C": 2,
          "D": 1,
          "F": 21
        },
        "topRules": [
          {
            "rule": "VC027",
            "title": "Missing Security Meta Tags / Headers",
            "repos": 30,
            "occurrences": 304
          },
          {
            "rule": "VC056",
            "title": "Clickjacking — Missing X-Frame-Options",
            "repos": 30,
            "occurrences": 160
          },
          {
            "rule": "VC020",
            "title": "Missing Content Security Policy (CSP)",
            "repos": 30,
            "occurrences": 152
          },
          {
            "rule": "VC106",
            "title": "Magic Numbers in Code",
            "repos": 21,
            "occurrences": 1377
          },
          {
            "rule": "VC097",
            "title": "Console.log Left in Production Code",
            "repos": 17,
            "occurrences": 811
          },
          {
            "rule": "VC003",
            "title": "API Route Missing Authentication",
            "repos": 11,
            "occurrences": 144
          },
          {
            "rule": "VC037",
            "title": "Stack Traces Exposed in API Responses",
            "repos": 10,
            "occurrences": 365
          },
          {
            "rule": "VC007",
            "title": "Potential Cross-Site Scripting (XSS)",
            "repos": 9,
            "occurrences": 111
          },
          {
            "rule": "VC001",
            "title": "Hardcoded API Key or Secret",
            "repos": 9,
            "occurrences": 27
          },
          {
            "rule": "ENTROPY",
            "title": "High-Entropy String Detected (Possible Secret)",
            "repos": 8,
            "occurrences": 15
          }
        ]
      },
      "vendoredCode": {
        "reposWithCritical": 0,
        "pctWithCritical": 0,
        "reposWithHighOrWorse": 1,
        "pctWithHighOrWorse": 0.0333,
        "medianFindings": 0,
        "meanFindings": 1.2,
        "gradeDistribution": {
          "A+": 30,
          "A": 0,
          "B": 0,
          "C": 0,
          "D": 0,
          "F": 0
        },
        "topRules": [
          {
            "rule": "VC097",
            "title": "Console.log Left in Production Code",
            "repos": 3,
            "occurrences": 32
          },
          {
            "rule": "VC045",
            "title": "Weak Password Requirements",
            "repos": 1,
            "occurrences": 3
          },
          {
            "rule": "VC025",
            "title": "Unsanitized Filename in File Operations",
            "repos": 1,
            "occurrences": 1
          }
        ]
      },
      "repos": [
        {
          "id": "136595d55920acf5",
          "files": 84,
          "appFindings": 26,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "152dbc4f3f2ef948",
          "files": 17,
          "appFindings": 6,
          "vendoredFindings": 0,
          "grade": "C",
          "score": 74,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "35efd4f52f9ef2b4",
          "files": 12,
          "appFindings": 24,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 25,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "378c9209784dce4a",
          "files": 24,
          "appFindings": 12,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 35,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "3f4e66efeea7a48a",
          "files": 39,
          "appFindings": 19,
          "vendoredFindings": 1,
          "grade": "F",
          "score": 17,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "4abe6f73ad1b69e0",
          "files": 315,
          "appFindings": 117,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "4e4fa7308dd4a5a5",
          "files": 506,
          "appFindings": 236,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "54bfdb10a312f6e4",
          "files": 311,
          "appFindings": 27,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "5aa4deaae5b8b8ad",
          "files": 61,
          "appFindings": 11,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 52,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "5f2769f690d29594",
          "files": 43,
          "appFindings": 18,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 39,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "60a7955257a0e2d8",
          "files": 14,
          "appFindings": 10,
          "vendoredFindings": 0,
          "grade": "D",
          "score": 63,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "702ef66ae287ba3d",
          "files": 766,
          "appFindings": 311,
          "vendoredFindings": 31,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "716bb04426f1a882",
          "files": 46,
          "appFindings": 17,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 45,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "73835c476bef96e1",
          "files": 119,
          "appFindings": 30,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 32,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "7a534612adfe0acc",
          "files": 58,
          "appFindings": 17,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 51,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "7d29daddb7144906",
          "files": 25,
          "appFindings": 4,
          "vendoredFindings": 0,
          "grade": "B",
          "score": 84,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "88175baa49864aeb",
          "files": 42,
          "appFindings": 20,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 43,
          "detectedPlatforms": [
            "claude-code",
            "bolt"
          ]
        },
        {
          "id": "8bbcd2d6d425169d",
          "files": 57,
          "appFindings": 43,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "9160a57bf0bbe39b",
          "files": 8000,
          "appFindings": 2701,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "a4af645872221c07",
          "files": 834,
          "appFindings": 1074,
          "vendoredFindings": 4,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "b0a0b47fdd1b1e40",
          "files": 22,
          "appFindings": 5,
          "vendoredFindings": 0,
          "grade": "B",
          "score": 84,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "c21cb839fb3f3995",
          "files": 17,
          "appFindings": 8,
          "vendoredFindings": 0,
          "grade": "B",
          "score": 84,
          "detectedPlatforms": [
            "claude-code",
            "bolt"
          ]
        },
        {
          "id": "caaad9e37aa20644",
          "files": 16,
          "appFindings": 8,
          "vendoredFindings": 0,
          "grade": "C",
          "score": 71,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "d5cfaec7ca01d764",
          "files": 23,
          "appFindings": 9,
          "vendoredFindings": 0,
          "grade": "B",
          "score": 84,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "de3e7f52c4b0732a",
          "files": 34,
          "appFindings": 6,
          "vendoredFindings": 0,
          "grade": "B",
          "score": 81,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "e0daf98cfa7d4a0f",
          "files": 39,
          "appFindings": 12,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 59,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "e472f73d51df579a",
          "files": 346,
          "appFindings": 159,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "claude-code",
            "bolt"
          ]
        },
        {
          "id": "e96bd540b6d083ac",
          "files": 121,
          "appFindings": 30,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 32,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "ed7bc55cb6d0a764",
          "files": 57,
          "appFindings": 43,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "f17fbb2c1b6fdf71",
          "files": 19,
          "appFindings": 4,
          "vendoredFindings": 0,
          "grade": "B",
          "score": 84,
          "detectedPlatforms": [
            "bolt"
          ]
        }
      ]
    },
    {
      "id": "base44",
      "name": "Base44",
      "marker": "@base44/sdk in package.json",
      "attributionConfidence": "scaffold",
      "universeSize": 1856,
      "sampled": 50,
      "scanned": 50,
      "excluded": 13,
      "underSampled": false,
      "medianProjectFiles": 101,
      "minReportableN": 10,
      "appCode": {
        "reposWithCritical": 21,
        "pctWithCritical": 0.42,
        "reposWithHighOrWorse": 50,
        "pctWithHighOrWorse": 1,
        "medianFindings": 27,
        "meanFindings": 91.76,
        "gradeDistribution": {
          "A+": 0,
          "A": 0,
          "B": 6,
          "C": 1,
          "D": 6,
          "F": 37
        },
        "topRules": [
          {
            "rule": "VC106",
            "title": "Magic Numbers in Code",
            "repos": 47,
            "occurrences": 456
          },
          {
            "rule": "VC027",
            "title": "Missing Security Meta Tags / Headers",
            "repos": 44,
            "occurrences": 138
          },
          {
            "rule": "VC056",
            "title": "Clickjacking — Missing X-Frame-Options",
            "repos": 44,
            "occurrences": 76
          },
          {
            "rule": "VC020",
            "title": "Missing Content Security Policy (CSP)",
            "repos": 44,
            "occurrences": 70
          },
          {
            "rule": "VC097",
            "title": "Console.log Left in Production Code",
            "repos": 26,
            "occurrences": 86
          },
          {
            "rule": "VC104",
            "title": "Empty Catch Block",
            "repos": 24,
            "occurrences": 161
          },
          {
            "rule": "VC016",
            "title": "Unvalidated Redirect",
            "repos": 21,
            "occurrences": 61
          },
          {
            "rule": "VC003",
            "title": "API Route Missing Authentication",
            "repos": 17,
            "occurrences": 95
          },
          {
            "rule": "VC043",
            "title": "Timing-Unsafe Secret Comparison",
            "repos": 16,
            "occurrences": 41
          },
          {
            "rule": "VC098",
            "title": "Synchronous File Operations",
            "repos": 15,
            "occurrences": 124
          }
        ]
      },
      "vendoredCode": {
        "reposWithCritical": 17,
        "pctWithCritical": 0.34,
        "reposWithHighOrWorse": 21,
        "pctWithHighOrWorse": 0.42,
        "medianFindings": 1,
        "meanFindings": 5.56,
        "gradeDistribution": {
          "A+": 50,
          "A": 0,
          "B": 0,
          "C": 0,
          "D": 0,
          "F": 0
        },
        "topRules": [
          {
            "rule": "VC017",
            "title": "Insecure Cookie Settings",
            "repos": 18,
            "occurrences": 20
          },
          {
            "rule": "ENTROPY",
            "title": "High-Entropy String Detected (Possible Secret)",
            "repos": 17,
            "occurrences": 34
          },
          {
            "rule": "VC007",
            "title": "Potential Cross-Site Scripting (XSS)",
            "repos": 17,
            "occurrences": 22
          },
          {
            "rule": "VC063",
            "title": "Unsanitized dangerouslySetInnerHTML",
            "repos": 17,
            "occurrences": 17
          },
          {
            "rule": "VC097",
            "title": "Console.log Left in Production Code",
            "repos": 11,
            "occurrences": 48
          },
          {
            "rule": "VC037",
            "title": "Stack Traces Exposed in API Responses",
            "repos": 4,
            "occurrences": 5
          },
          {
            "rule": "VC080",
            "title": "Potential Regular Expression DoS (ReDoS)",
            "repos": 3,
            "occurrences": 6
          },
          {
            "rule": "VC024",
            "title": "File Write/Save Without Size Limit",
            "repos": 2,
            "occurrences": 47
          },
          {
            "rule": "VC098",
            "title": "Synchronous File Operations",
            "repos": 2,
            "occurrences": 47
          },
          {
            "rule": "VC104",
            "title": "Empty Catch Block",
            "repos": 2,
            "occurrences": 8
          }
        ]
      },
      "repos": [
        {
          "id": "09513177ee805bcc",
          "files": 175,
          "appFindings": 72,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "claude-code"
          ]
        },
        {
          "id": "13dc8e3f4fa6dc30",
          "files": 269,
          "appFindings": 41,
          "vendoredFindings": 138,
          "grade": "F",
          "score": 28,
          "detectedPlatforms": [
            "bolt"
          ]
        },
        {
          "id": "18644a815642dcbc",
          "files": 44,
          "appFindings": 33,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 18,
          "detectedPlatforms": []
        },
        {
          "id": "1b6b73f5ea21c550",
          "files": 82,
          "appFindings": 16,
          "vendoredFindings": 7,
          "grade": "F",
          "score": 31,
          "detectedPlatforms": []
        },
        {
          "id": "1df23315e0f65e19",
          "files": 79,
          "appFindings": 59,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "212849eace2bf1de",
          "files": 95,
          "appFindings": 20,
          "vendoredFindings": 6,
          "grade": "F",
          "score": 36,
          "detectedPlatforms": [
            "claude-code"
          ]
        },
        {
          "id": "2478e5472cf7ab7e",
          "files": 41,
          "appFindings": 11,
          "vendoredFindings": 0,
          "grade": "B",
          "score": 84,
          "detectedPlatforms": []
        },
        {
          "id": "2cc2ae6944ebfbc0",
          "files": 155,
          "appFindings": 61,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "2f31f3d8e9fde3c4",
          "files": 534,
          "appFindings": 193,
          "vendoredFindings": 6,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "2f4d140425fecdfc",
          "files": 144,
          "appFindings": 87,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "claude-code"
          ]
        },
        {
          "id": "3a5696fa9dc226d7",
          "files": 113,
          "appFindings": 25,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 50,
          "detectedPlatforms": []
        },
        {
          "id": "3a5835f0c75f1d3d",
          "files": 120,
          "appFindings": 27,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 31,
          "detectedPlatforms": []
        },
        {
          "id": "41d5407b731f747a",
          "files": 109,
          "appFindings": 34,
          "vendoredFindings": 12,
          "grade": "F",
          "score": 40,
          "detectedPlatforms": []
        },
        {
          "id": "48dddc0f8d0199a0",
          "files": 27,
          "appFindings": 6,
          "vendoredFindings": 0,
          "grade": "B",
          "score": 84,
          "detectedPlatforms": []
        },
        {
          "id": "4b04f5458427fb51",
          "files": 147,
          "appFindings": 16,
          "vendoredFindings": 1,
          "grade": "D",
          "score": 65,
          "detectedPlatforms": []
        },
        {
          "id": "4b2f0d5423190867",
          "files": 64,
          "appFindings": 17,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 43,
          "detectedPlatforms": []
        },
        {
          "id": "4cba3b2d9209d143",
          "files": 24,
          "appFindings": 74,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "503a7990daaf401c",
          "files": 66,
          "appFindings": 11,
          "vendoredFindings": 0,
          "grade": "C",
          "score": 75,
          "detectedPlatforms": []
        },
        {
          "id": "537bd92f931119f2",
          "files": 8000,
          "appFindings": 2112,
          "vendoredFindings": 6,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "v0"
          ]
        },
        {
          "id": "58e5c4e272de204a",
          "files": 118,
          "appFindings": 22,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 26,
          "detectedPlatforms": []
        },
        {
          "id": "59b7f7686868f319",
          "files": 116,
          "appFindings": 113,
          "vendoredFindings": 1,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "claude-code"
          ]
        },
        {
          "id": "5d2e3e139116eb1f",
          "files": 94,
          "appFindings": 31,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 19,
          "detectedPlatforms": []
        },
        {
          "id": "64d6c8288c730c34",
          "files": 86,
          "appFindings": 6,
          "vendoredFindings": 5,
          "grade": "B",
          "score": 84,
          "detectedPlatforms": []
        },
        {
          "id": "6a6f4f0b37a0f3b6",
          "files": 170,
          "appFindings": 37,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 31,
          "detectedPlatforms": []
        },
        {
          "id": "6ecfc8be8b779e08",
          "files": 44,
          "appFindings": 13,
          "vendoredFindings": 1,
          "grade": "D",
          "score": 63,
          "detectedPlatforms": []
        },
        {
          "id": "72b742a6c4da371d",
          "files": 36,
          "appFindings": 50,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "774ee855ad42153d",
          "files": 231,
          "appFindings": 60,
          "vendoredFindings": 2,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "claude-code"
          ]
        },
        {
          "id": "81420afe3a51d3ad",
          "files": 169,
          "appFindings": 26,
          "vendoredFindings": 0,
          "grade": "D",
          "score": 63,
          "detectedPlatforms": []
        },
        {
          "id": "95e7bbb6945b217f",
          "files": 222,
          "appFindings": 87,
          "vendoredFindings": 9,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "9dd6fe7d21891144",
          "files": 86,
          "appFindings": 100,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "a0137c310ff78064",
          "files": 85,
          "appFindings": 8,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 52,
          "detectedPlatforms": []
        },
        {
          "id": "a4418479eee776c6",
          "files": 166,
          "appFindings": 25,
          "vendoredFindings": 14,
          "grade": "D",
          "score": 63,
          "detectedPlatforms": [
            "claude-code"
          ]
        },
        {
          "id": "aac0513d2a7dd986",
          "files": 31,
          "appFindings": 9,
          "vendoredFindings": 0,
          "grade": "D",
          "score": 70,
          "detectedPlatforms": []
        },
        {
          "id": "ac8016069a089d68",
          "files": 92,
          "appFindings": 21,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 30,
          "detectedPlatforms": []
        },
        {
          "id": "b4ee4f284c6665ad",
          "files": 1981,
          "appFindings": 569,
          "vendoredFindings": 8,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "cursor"
          ]
        },
        {
          "id": "b5ccb592e545c517",
          "files": 194,
          "appFindings": 23,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 52,
          "detectedPlatforms": []
        },
        {
          "id": "bdd0511e3cb05688",
          "files": 121,
          "appFindings": 41,
          "vendoredFindings": 2,
          "grade": "F",
          "score": 36,
          "detectedPlatforms": [
            "claude-code"
          ]
        },
        {
          "id": "c2c76913fceb66df",
          "files": 14,
          "appFindings": 5,
          "vendoredFindings": 0,
          "grade": "B",
          "score": 84,
          "detectedPlatforms": []
        },
        {
          "id": "c4776524f69e69a8",
          "files": 100,
          "appFindings": 31,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 34,
          "detectedPlatforms": []
        },
        {
          "id": "c68b1cbe840e9e01",
          "files": 102,
          "appFindings": 8,
          "vendoredFindings": 5,
          "grade": "B",
          "score": 84,
          "detectedPlatforms": []
        },
        {
          "id": "cf15d413184f3112",
          "files": 72,
          "appFindings": 17,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "d0a456e9b466cc5d",
          "files": 482,
          "appFindings": 24,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        },
        {
          "id": "d4538963f13c89c7",
          "files": 71,
          "appFindings": 40,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 11,
          "detectedPlatforms": []
        },
        {
          "id": "d5f6a30ac939b502",
          "files": 109,
          "appFindings": 45,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 42,
          "detectedPlatforms": []
        },
        {
          "id": "dc278ae31db125dd",
          "files": 33,
          "appFindings": 4,
          "vendoredFindings": 0,
          "grade": "B",
          "score": 84,
          "detectedPlatforms": []
        },
        {
          "id": "dd776eaf5da7290c",
          "files": 125,
          "appFindings": 27,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 46,
          "detectedPlatforms": []
        },
        {
          "id": "e52e8b7ba607d1a0",
          "files": 31,
          "appFindings": 12,
          "vendoredFindings": 0,
          "grade": "D",
          "score": 63,
          "detectedPlatforms": []
        },
        {
          "id": "ee56df7ff7cd7549",
          "files": 130,
          "appFindings": 54,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": [
            "claude-code"
          ]
        },
        {
          "id": "fbabbe428a55303b",
          "files": 97,
          "appFindings": 22,
          "vendoredFindings": 5,
          "grade": "F",
          "score": 18,
          "detectedPlatforms": []
        },
        {
          "id": "fd7c2dca071bc04b",
          "files": 39,
          "appFindings": 143,
          "vendoredFindings": 0,
          "grade": "F",
          "score": 0,
          "detectedPlatforms": []
        }
      ]
    }
  ]
}
