{"version": "2.1.0", "$schema": "https://json.schemastore.org/sarif-2.1.0.json", "runs": [{"tool": {"driver": {"name": "Repobility", "informationUri": "https://repobility.com", "rules": [{"id": "scanner-ecd9adfd915b2f10", "name": "Stray `console.log` in TS/JS \u2014 backtest-v10.js:133", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 backtest-v10.js:133"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-84ccb29de06d71a7", "name": "Stray `console.log` in TS/JS \u2014 serve-node.js:134", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 serve-node.js:134"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ac4e61deba5ce2e4", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/kalshi-key.js:43", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/kalshi-key.js:43"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ebb7c66e974d9f7d", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-background.js:192", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-background.js:192"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-52aadc30de347f63", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-picks-premium.js:83", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-picks-premium.js:83"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d7f0715af4be8374", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/admin-queue-process.js:119", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/admin-queue-process.js:119"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-acc24a217a948c30", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/scan-ap-mentions.js:80", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/scan-ap-mentions.js:80"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6dea0a90bd54bef9", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/kalshi-execute-background.js:571", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/kalshi-execute-background.js:571"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0513ea1ac4ca3a03", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/build-ratings-background.js:87", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/build-ratings-background.js:87"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b110b5004dc4fed1", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-mlb-props.js:6", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-mlb-props.js:6"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5967b6f61adfb4ec", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-props.js:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-props.js:7"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6186ef5ab1e6acf5", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-truth.js:9", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-truth.js:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-09b5fb4cb9d5ace0", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/track-clv.js:204", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/track-clv.js:204"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6d2457c566d7e513", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/kalshi-sell.js:100", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/kalshi-sell.js:100"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-df6c21eb2930d2b3", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/verify-picks.js:173", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/verify-picks.js:173"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e36d7373fc384721", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-v2-background.js:208", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-v2-background.js:208"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7e11d7a97c3487cd", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/exodus-test.js:23", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/exodus-test.js:23"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-df65af0734dfd42d", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/patch-picks-beta.js:36", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/patch-picks-beta.js:36"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f73af74eef4a5bd0", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-alpha-background.js:225", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-alpha-background.js:225"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4f32b370eb56a85c", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-mvp.js:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-mvp.js:7"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-af31f7128756600a", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-clv.js:11", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-clv.js:11"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c8efa75513f8315e", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/run-ratings.js:24", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/run-ratings.js:24"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2b63e67a0d94ef03", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/admin-publish.js:228", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/admin-publish.js:228"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-08acd912042a81fc", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-mvp-background.js:223", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-mvp-background.js:223"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ca06741655adf137", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-picks-beta.js:74", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-picks-beta.js:74"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-19af04c528c7df9a", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-picks.js:74", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-picks.js:74"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6d243a9fc3ba50ba", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/search-x.js:49", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/search-x.js:49"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6c75547402701203", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-mlb-background.js:210", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-mlb-background.js:210"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-892f16181b79602a", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/confirm-starters-mlb.js:41", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/confirm-starters-mlb.js:41"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-73a4eb2e1d73df35", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-guardian-background.js:104", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-guardian-background.js:104"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8052f8f96be6d966", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/matching-engine-background.js:65", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/matching-engine-background.js:65"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-945eb459a17c4810", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/admin-auto-draft.js:44", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/admin-auto-draft.js:44"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5242b5433b425903", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-mlb.js:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-mlb.js:7"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-de85e4562fc279b3", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/bootstrap-optimize.js:15", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/bootstrap-optimize.js:15"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-45f9becb177446b8", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-fox.js:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-fox.js:7"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-27c31ed6633b6a09", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/run-truth-bets.js:33", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/run-truth-bets.js:33"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-36e8906a7dde77bf", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/auth-sms-verify.js:74", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/auth-sms-verify.js:74"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8526e484ee9482e9", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/kalshi-scan.js:234", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/kalshi-scan.js:234"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-80b67c852b295ef9", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/priority-signup.js:77", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/priority-signup.js:77"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-37eeecee6e01bba4", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks.js:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks.js:7"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-897fac898181da1f", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/patch-picks.js:36", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/patch-picks.js:36"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d6f75c16788a29de", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-mlb-props-background.js:125", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-mlb-props-background.js:125"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-68854932eefd45e9", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-alpha.js:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-alpha.js:7"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0e4bc6444812759b", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/p2p-stake.js:65", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/p2p-stake.js:65"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8cd4052e9126ddc0", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/truth-stories.js:41", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/truth-stories.js:41"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-90fce6e305fb47f6", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/bettoredge-auth.js:38", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/bettoredge-auth.js:38"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-49f232e78a54f989", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/exodus-scan-background.js:51", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/exodus-scan-background.js:51"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4d45ced888c3f6de", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/test-webet-pipeline.js:18", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/test-webet-pipeline.js:18"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bd116085179e7624", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/betty-webhook.js:207", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/betty-webhook.js:207"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5e49befec421d982", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/create-p2p-bet.js:444", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/create-p2p-bet.js:444"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4ea3949fe4dfbdc8", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-kalshi-scan.js:9", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-kalshi-scan.js:9"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d847c41be9efb162", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/webit-mock-pay.js:78", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/webit-mock-pay.js:78"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f0fb75b725bfca46", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-beta-background.js:434", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-beta-background.js:434"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-99cf065c13a773e8", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-props-background.js:174", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-props-background.js:174"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-30f38b929cea89f4", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-exodus.js:33", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-exodus.js:33"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-834cc2d05118887b", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/run-picks-v2.js:27", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/run-picks-v2.js:27"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a85336f8864ff2b4", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/run-exodus.js:34", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/run-exodus.js:34"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1207210d972d871d", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/auth-sms-start.js:69", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/auth-sms-start.js:69"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8ec9b09396393a32", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/exodus-post-truth.js:51", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/exodus-post-truth.js:51"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-48620a5a8709a677", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/check-resolution.js:95", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/check-resolution.js:95"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9a8f621486335931", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/grok-pipeline-background.js:61", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/grok-pipeline-background.js:61"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-75450d5819cc5b14", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-bettoredge.js:46", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-bettoredge.js:46"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-bfaf336cceabcec7", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-webet-content-background.js:53", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-webet-content-background.js:53"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-763c74353f117215", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/resolve-p2p-bet.js:29", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/resolve-p2p-bet.js:29"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-414b0649a909a685", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-beta.js:7", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-beta.js:7"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0b99cc923ee97ab6", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-truth-content-background.js:318", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-truth-content-background.js:318"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3a86afe60a5378df", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/exodus-challenge.js:123", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/exodus-challenge.js:123"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-1c3bf9d076d98882", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-fox-background.js:146", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-fox-background.js:146"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c75c4472eef2433e", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-webet-content.js:31", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-webet-content.js:31"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-af9619805306d306", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/self-optimize.js:27", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/self-optimize.js:27"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-85cb1fe3d0cae3c4", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-guardian.js:6", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-guardian.js:6"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d662ea12266fc317", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-fox-picks.js:65", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-fox-picks.js:65"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-116a0f1e7a48a408", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-kalshi.js:8", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-kalshi.js:8"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d1dc45ed0466583e", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/admin-feed.js:105", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/admin-feed.js:105"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-051fedbc0a8d15fb", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-exodus.js:13", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-exodus.js:13"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0e800c1b8142a741", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-be-background.js:216", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-be-background.js:216"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-41ca4332daa7a88e", "name": "Stray `console.log` in TS/JS \u2014 netlify/functions/capture-opening-lines.js:31", "shortDescription": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/capture-opening-lines.js:31"}, "fullDescription": {"text": "Replace with the toast helper, an error boundary, or remove. `console.warn` / `console.error` are acceptable.\n\nWhy: Hygiene \u2014 easy to leak debug output.\nRule id: fq.console-leak"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6f8598f2a186c866", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 claude/_next/static/chunks/00ilazh50sdzh.js:1", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 claude/_next/static/chunks/00ilazh50sdzh.js:1"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-490cd743fdc62a25", "name": "`dangerouslySetInnerHTML` used in a React component \u2014 claude/_next/static/chunks/0ht900cau6_ur.js:31", "shortDescription": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 claude/_next/static/chunks/0ht900cau6_ur.js:31"}, "fullDescription": {"text": "Open XSS surface unless the input is provably trusted. Replace with explicit JSX or sanitize via a vetted library.\n\nWhy: OWASP basics. Already partially flagged by the security analyzer.\nRule id: fq.dangerous-html"}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f6f4e3397d7badc0", "name": "Insecure pattern 'cors_wildcard' in serve-node.js:18", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in serve-node.js:18"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b44947cd6727133c", "name": "Insecure pattern 'direct_innerhtml_assignment' in nav.js:41", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in nav.js:41"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-aa00aabd6075b783", "name": "Insecure pattern 'direct_innerhtml_assignment' in wbai-login.js:52", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in wbai-login.js:52"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c91a3840a6399647", "name": "Insecure pattern 'direct_innerhtml_assignment' in finalboss/index.html:207", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in finalboss/index.html:207"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-673f3223a499aeb6", "name": "Insecure pattern 'direct_innerhtml_assignment' in edge/index.html:1113", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in edge/index.html:1113"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-59ae22d5bfd74d86", "name": "Insecure pattern 'direct_innerhtml_assignment' in edge/beta/better-edge/index.html:688", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in edge/beta/better-edge/index.html:688"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-535c5f5246717a20", "name": "Insecure pattern 'direct_innerhtml_assignment' in p2p-sports/index.html:340", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in p2p-sports/index.html:340"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b59d46794bb95038", "name": "Insecure pattern 'direct_innerhtml_assignment' in p2p-sports/bet/index.html:151", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in p2p-sports/bet/index.html:151"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e871ab2f0af6b0b8", "name": "Insecure pattern 'direct_innerhtml_assignment' in pick3p2p/index.html:1019", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in pick3p2p/index.html:1019"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7d754460970df381", "name": "Insecure pattern 'direct_innerhtml_assignment' in mvp/index.html:1288", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mvp/index.html:1288"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4bbed908df9b2838", "name": "Insecure pattern 'direct_innerhtml_assignment' in dashboard/index.html:2078", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in dashboard/index.html:2078"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9cfeeca301e2deba", "name": "Insecure pattern 'local_storage_auth_token' in dashboard/index.html:3534", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in dashboard/index.html:3534"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a0c1e55a970c9a37", "name": "Insecure pattern 'direct_innerhtml_assignment' in guardian/digest/index.html:498", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in guardian/digest/index.html:498"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c439a3494f61d829", "name": "Insecure pattern 'direct_innerhtml_assignment' in p2p-trending/index.html:378", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in p2p-trending/index.html:378"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5d1530d374086440", "name": "Insecure pattern 'direct_innerhtml_assignment' in webetai/index.html:1003", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in webetai/index.html:1003"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4384e6b2eecd17cf", "name": "Insecure pattern 'direct_innerhtml_assignment' in percentile/index.html:758", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in percentile/index.html:758"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-76a9e4d65ee9fc22", "name": "Insecure pattern 'direct_innerhtml_assignment' in admin/index.html:295", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in admin/index.html:295"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-faa7b24677c5bcd7", "name": "Insecure pattern 'local_storage_auth_token' in admin/index.html:338", "shortDescription": {"text": "Insecure pattern 'local_storage_auth_token' in admin/index.html:338"}, "fullDescription": {"text": "Found a known-risky pattern (local_storage_auth_token). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0e6218b175b6dfe9", "name": "Insecure pattern 'direct_innerhtml_assignment' in mvpalpha/index.html:319", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mvpalpha/index.html:319"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d8c132c01d525903", "name": "Insecure pattern 'direct_innerhtml_assignment' in betty/index.html:1055", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in betty/index.html:1055"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-378a9315c7571b9c", "name": "Insecure pattern 'direct_innerhtml_assignment' in betty/blog/index.html:586", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in betty/blog/index.html:586"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-45c0071b3b4bdc3a", "name": "Insecure pattern 'direct_innerhtml_assignment' in betty/live/index.html:350", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in betty/live/index.html:350"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c1c576006f522a62", "name": "Insecure pattern 'direct_innerhtml_assignment' in betty/beta/index.html:651", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in betty/beta/index.html:651"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4ff283442dc4b783", "name": "Insecure pattern 'direct_innerhtml_assignment' in mlb/index.html:693", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mlb/index.html:693"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3cc2979c00e0c154", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-fox.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-fox.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-bde9ba196c85d121", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/bet-image.js:15", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/bet-image.js:15"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1f3ba3ff9c77997a", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/betty-admin-reply.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/betty-admin-reply.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e2d8e6309be47e5d", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-matching.js:11", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-matching.js:11"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4a0265f9914649b5", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-p2p-bet.js:5", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-p2p-bet.js:5"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-599df10a98c3da08", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-alpha.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-alpha.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-da35574a6569d2fc", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/accept-bet.js:19", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/accept-bet.js:19"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ba591771c80e7413", "name": "Insecure pattern 'weak_hash' in netlify/functions/admin-queue-process.js:47", "shortDescription": {"text": "Insecure pattern 'weak_hash' in netlify/functions/admin-queue-process.js:47"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-03619a34ba18d333", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/voicebet-tts.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/voicebet-tts.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b1113235a5e705ed", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/scan-ap-mentions.js:14", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/scan-ap-mentions.js:14"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-40efd1633c295ab4", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-bettoredge-markets.js:8", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-bettoredge-markets.js:8"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-32937f94dd06f72a", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-truth.js:10", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-truth.js:10"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-179278241f86d3b6", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/kalshi-execute-background.js:17", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/kalshi-execute-background.js:17"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-102bf0ce9ca43077", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-beta.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-beta.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3c5432033569b572", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-v2.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-v2.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c2fe3f311927d588", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/market-bet.js:17", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/market-bet.js:17"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c811283923462f68", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-mlb-props.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-mlb-props.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b0c45bfddfb81ba2", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/upload-media.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/upload-media.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-14b3dcd4e5aabc73", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-backtest.js:5", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-backtest.js:5"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a147738b3ac72bcd", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3d6f00bdd03f6937", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/track-clv.js:8", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/track-clv.js:8"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9b6cf7046e7847ad", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-props.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-props.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6f4a75899108cadd", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-kalshi-scan.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-kalshi-scan.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c7e7dbab3847ed98", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/grok-chat.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/grok-chat.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d80b85f62f0c3a8a", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/kalshi-sell.js:12", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/kalshi-sell.js:12"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-221b1e1eed765897", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/verify-picks.js:18", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/verify-picks.js:18"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d2d054f3358ac095", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/exodus-test.js:10", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/exodus-test.js:10"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3bd2e629a9177368", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-trending-challenges.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-trending-challenges.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-007be2832735e31e", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-truth-feed.js:11", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-truth-feed.js:11"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cbfde3d631bd0f22", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-p2p-leaderboard.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-p2p-leaderboard.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-37c56f135b0452ec", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/betty-chat-beta.js:5", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/betty-chat-beta.js:5"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6fb16e66c67c060b", "name": "Insecure pattern 'weak_hash' in netlify/functions/post-to-x.js:25", "shortDescription": {"text": "Insecure pattern 'weak_hash' in netlify/functions/post-to-x.js:25"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cf14af8ac73fb743", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/post-to-x.js:14", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/post-to-x.js:14"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e9a7212303194527", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-mlb.js:8", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-mlb.js:8"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0b192b6c379ae0a9", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/xai-analyze.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/xai-analyze.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-20d4572792146213", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/patch-picks-beta.js:5", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/patch-picks-beta.js:5"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c6e86df0cd59b75c", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/p2p-challenge.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/p2p-challenge.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b78fd65dabf4d446", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-matching.js:11", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-matching.js:11"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5c2d57af7c21c52f", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-fox.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-fox.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4ce64572d38a37e5", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-rankings.js:119", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-rankings.js:119"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5b8eb1f593f5b8e6", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/send-bet-sms.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/send-bet-sms.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d7a3d345d04bbd41", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/x-oauth-callback.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/x-oauth-callback.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e068324dd7d447c1", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-be.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-be.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-be3d83b3d1478067", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/search-x-users.js:8", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/search-x-users.js:8"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-73adc1f2c4cc420f", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-polymarket.js:16", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-polymarket.js:16"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-52d88dab7bde7ebd", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/claude-process.js:5", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/claude-process.js:5"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ec1fcbc4d285fc02", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-ratings.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-ratings.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b345e6bfc1044a9a", "name": "Insecure pattern 'weak_hash' in netlify/functions/admin-publish.js:78", "shortDescription": {"text": "Insecure pattern 'weak_hash' in netlify/functions/admin-publish.js:78"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7652530f5d4fcc45", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-publish.js:10", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-publish.js:10"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0a6c3f6510fee55e", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-beta.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-beta.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4654ab7b586d7e83", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-history.js:9", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-history.js:9"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-063d8ac80e40c06b", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3ae2d0ec7b86297a", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/post-truth-reply.js:12", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/post-truth-reply.js:12"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e662682c3bd67259", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/create-p2p-bet-web.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/create-p2p-bet-web.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7755467dca83bbb2", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-alpha.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-alpha.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-40d0738d438f26b4", "name": "Insecure pattern 'weak_hash' in netlify/functions/search-x.js:398", "shortDescription": {"text": "Insecure pattern 'weak_hash' in netlify/functions/search-x.js:398"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-928c6b216334fe91", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/search-x.js:12", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/search-x.js:12"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7f271f4f2b5c51fc", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-auth.js:10", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-auth.js:10"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7ea0222286492a97", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-kalshi-paper.js:11", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-kalshi-paper.js:11"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4c7f4ad54f328d72", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/kalshi-cancel.js:11", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/kalshi-cancel.js:11"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-13597d28fe78c817", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/matching-engine-background.js:32", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/matching-engine-background.js:32"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-91385f40af64764f", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-guardian.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-guardian.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ade1add015ef0345", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-bet.js:9", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-bet.js:9"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d556c0fecc8ea51a", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/publish-blog-post.js:13", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/publish-blog-post.js:13"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-93e545499b47de49", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/challenge-sms.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/challenge-sms.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ad6d862ea81af47f", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-truth-bets.js:13", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-truth-bets.js:13"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2110ff0c8c036a6f", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/kalshi-scan.js:13", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/kalshi-scan.js:13"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-35c6559b7a0fea95", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-queue.js:12", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-queue.js:12"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-39712761e5be39a5", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/priority-signup.js:10", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/priority-signup.js:10"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a015444e561f2a65", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/patch-picks.js:5", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/patch-picks.js:5"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-acc3b5d31a4e38d9", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-mvp.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-mvp.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a88adcfee70130a4", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/truth-stories.js:9", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/truth-stories.js:9"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5a1932420dc3ce16", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-kalshi.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-kalshi.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9cc3ad97e5d02ac4", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/serve-media.js:34", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/serve-media.js:34"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c2b820eadbc408a6", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/exodus-scan-background.js:20", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/exodus-scan-background.js:20"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1157b7a4cfc9b7c5", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/betty-sms.js:8", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/betty-sms.js:8"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f61791aaa2dd485e", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/phone-verify.js:11", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/phone-verify.js:11"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e92e8007f0f9f37f", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-p2p-user.js:5", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-p2p-user.js:5"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-bffba8e230029b97", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d41db846e79802cd", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/test-webet-pipeline.js:10", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/test-webet-pipeline.js:10"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6a9ac91c84f04c11", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/create-p2p-bet.js:14", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/create-p2p-bet.js:14"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-fcf487ee5a93906d", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/claude-execute.js:5", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/claude-execute.js:5"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e4bfcdca6140d469", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-props.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-props.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-92e26c4f5a9b5da3", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-mlb-props.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-mlb-props.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-21dad69f607180ed", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/convert-bet.js:15", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/convert-bet.js:15"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-029675c588a2c543", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-exodus.js:16", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-exodus.js:16"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-247e128d02e959e1", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-v2.js:8", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-v2.js:8"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8a69553bcd3d620c", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/create-bet.js:24", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/create-bet.js:24"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-10003caf0b59bdc3", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-sniper.js:8", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-sniper.js:8"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-53c434a12065c9f2", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/convert-bet-batch.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/convert-bet-batch.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-75ff237720d638fa", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-exodus.js:13", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-exodus.js:13"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c549a003f5d4e547", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/exodus-post-truth.js:23", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/exodus-post-truth.js:23"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-78bf42f39ace7b26", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/check-resolution.js:16", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/check-resolution.js:16"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-49e45d8d950e17f9", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/market-bet-settle.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/market-bet-settle.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a54ff9f6599ae093", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-guardian.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-guardian.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-52ff9a9020894019", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-blog-post.js:12", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-blog-post.js:12"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-73e3d75d5ee6923d", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/betty-chat.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/betty-chat.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4488787b59459079", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-props.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-props.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-023801e172b6fba4", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-analytics.js:8", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-analytics.js:8"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-689146d879f35a5a", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-bettoredge.js:9", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-bettoredge.js:9"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7d549bf70bb8c75b", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/resolve-p2p-bet.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/resolve-p2p-bet.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5bb24225876cba54", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-alpha.js:8", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-alpha.js:8"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-feb3d31052f7459f", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/generate-truth-content-background.js:15", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/generate-truth-content-background.js:15"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ff4948c71430e973", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-ratings.js:10", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-ratings.js:10"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3d58b0d4652b9cba", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/exodus-challenge.js:17", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/exodus-challenge.js:17"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cf6860bbdaee12a7", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/markets.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/markets.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f70d7a34e0191c40", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-webet-content.js:11", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-webet-content.js:11"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e21af13ea5f2e0cb", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-alpha-sim.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-alpha-sim.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3bccbff65c14e637", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/accept-p2p-bet-web.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/accept-p2p-bet-web.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ec6d7ff3bb9392b5", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-mvp.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-mvp.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f0137ea2fc5b3ee7", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-mvp.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-mvp.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cc67610f94c16124", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-be.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-be.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e1745b0487dd2318", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-fox-picks.js:8", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-fox-picks.js:8"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-76d3c86c1f8d1482", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-feed.js:9", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-feed.js:9"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-04498186858964fb", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-beta.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-beta.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8b15672b4085fd1d", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-compose-post.js:9", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-compose-post.js:9"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0ff5edd8531f13f0", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-kalshi.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-kalshi.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-89511d96664a613b", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-mlb.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-mlb.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-34da32d8a493e62d", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-mlb.js:7", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-mlb.js:7"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-72a9e9687257224c", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/get-betty-convos.js:6", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-betty-convos.js:6"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b3ad7f02a3af8b01", "name": "Insecure pattern 'weak_hash' in netlify/functions/admin-metrics.js:81", "shortDescription": {"text": "Insecure pattern 'weak_hash' in netlify/functions/admin-metrics.js:81"}, "fullDescription": {"text": "Found a known-risky pattern (weak_hash). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ace11920646586ba", "name": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-metrics.js:10", "shortDescription": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-metrics.js:10"}, "fullDescription": {"text": "Found a known-risky pattern (cors_wildcard). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9f2e0fb55679d638", "name": "Insecure pattern 'direct_innerhtml_assignment' in mlb-props/index.html:390", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mlb-props/index.html:390"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d9dce7a8cff2205d", "name": "Insecure pattern 'direct_innerhtml_assignment' in alpha/index.html:1277", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in alpha/index.html:1277"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-877aabd314a46da1", "name": "Insecure pattern 'dangerous_innerhtml' in claude/index.html:1", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in claude/index.html:1"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4c46c93342dc7cd9", "name": "Insecure pattern 'dangerous_innerhtml' in claude/404.html:1", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in claude/404.html:1"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-33aa1e5c882bb849", "name": "Insecure pattern 'dangerous_innerhtml' in claude/_not-found.html:1", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in claude/_not-found.html:1"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f7aa25d4b7f0f153", "name": "Insecure pattern 'dangerous_innerhtml' in claude/_next/static/chunks/00ilazh50sdzh.js:1", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in claude/_next/static/chunks/00ilazh50sdzh.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4ac10e07b178210e", "name": "Insecure pattern 'direct_innerhtml_assignment' in claude/_next/static/chunks/00ilazh50sdzh.js:1", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in claude/_next/static/chunks/00ilazh50sdzh.js:1"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-6b9a796317f06ba0", "name": "Insecure pattern 'dangerous_innerhtml' in claude/_next/static/chunks/0ht900cau6_ur.js:31", "shortDescription": {"text": "Insecure pattern 'dangerous_innerhtml' in claude/_next/static/chunks/0ht900cau6_ur.js:31"}, "fullDescription": {"text": "Found a known-risky pattern (dangerous_innerhtml). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d6613a2f61f003af", "name": "Insecure pattern 'direct_innerhtml_assignment' in edge-beta/index.html:1252", "shortDescription": {"text": "Insecure pattern 'direct_innerhtml_assignment' in edge-beta/index.html:1252"}, "fullDescription": {"text": "Found a known-risky pattern (direct_innerhtml_assignment). Review and replace if possible."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4601e3ad3bb28677", "name": "No CI/CD pipelines detected", "shortDescription": {"text": "No CI/CD pipelines detected"}, "fullDescription": {"text": "No GitHub Actions, GitLab CI, or CircleCI configs found. Without CI you can't gate deploys on tests/lints."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c2edcbfa4930ef31", "name": "Very large file: netlify/functions/generate-picks-background.js (1786 lines)", "shortDescription": {"text": "Very large file: netlify/functions/generate-picks-background.js (1786 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-33af12737f1c873b", "name": "Very large file: netlify/functions/generate-picks-alpha-background.js (4514 lines)", "shortDescription": {"text": "Very large file: netlify/functions/generate-picks-alpha-background.js (4514 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-4f6d11acdd79bbb2", "name": "Very large file: netlify/functions/generate-picks-mvp-background.js (4618 lines)", "shortDescription": {"text": "Very large file: netlify/functions/generate-picks-mvp-background.js (4618 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fbe090097ded056f", "name": "Very large file: netlify/functions/generate-picks-mlb-background.js (1358 lines)", "shortDescription": {"text": "Very large file: netlify/functions/generate-picks-mlb-background.js (1358 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e951823cc8c097d0", "name": "Very large file: netlify/functions/generate-picks-beta-background.js (3870 lines)", "shortDescription": {"text": "Very large file: netlify/functions/generate-picks-beta-background.js (3870 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9c9278dde00018ee", "name": "Very large file: netlify/functions/generate-fox-background.js (1185 lines)", "shortDescription": {"text": "Very large file: netlify/functions/generate-fox-background.js (1185 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-36d29f12c449949e", "name": "Very large file: netlify/functions/generate-picks-be-background.js (2198 lines)", "shortDescription": {"text": "Very large file: netlify/functions/generate-picks-be-background.js (2198 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6893a6c8b0861585", "name": "Very low test-to-source ratio", "shortDescription": {"text": "Very low test-to-source ratio"}, "fullDescription": {"text": "4 test file(s) for 195 source file(s) (ratio 0.02). Consider adding integration or unit tests for critical paths."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-141b30a41e03817b", "name": "No license file detected", "shortDescription": {"text": "No license file detected"}, "fullDescription": {"text": "No LICENSE/COPYING/NOTICE file was found. Generated repositories often omit licensing, which blocks reuse and automated intake."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-faccb9061e9b52a0", "name": "No README detected", "shortDescription": {"text": "No README detected"}, "fullDescription": {"text": "No README file was found. Generated repos without README context are hard to operate, validate, or safely hand off."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 879 console/debugger/print-style debug statements in non-test source. This is a common fast-generation residue before production cleanup."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-72b2a6250083a784", "name": "Placeholder or mock-heavy implementation detected", "shortDescription": {"text": "Placeholder or mock-heavy implementation detected"}, "fullDescription": {"text": "Found 22 placeholder/mock markers across 9 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b9088664ace7f748", "name": "Composite production-readiness gap", "shortDescription": {"text": "Composite production-readiness gap"}, "fullDescription": {"text": "Multiple low-cost hardening controls are missing together: license, ci, tests, operator-readme. Opus verification showed these co-occurring gaps are a better readiness signal than reading each flag in isolation."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-749d4bc1bd66df5f", "name": "Agent instructions exist but release-hardening basics are missing", "shortDescription": {"text": "Agent instructions exist but release-hardening basics are missing"}, "fullDescription": {"text": "AI-coder instruction files were found, but the repo is missing license, ci, tests, operator-readme. Treat this as a contract gap: the agent is guided, but the generated output is not yet guarded by the controls that make it repeatable."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3e4f5fb8cddb8a9c", "name": "Commented-code block (7 lines) in backtest-v10.js:2", "shortDescription": {"text": "Commented-code block (7 lines) in backtest-v10.js:2"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5420b2900475efba", "name": "`fetch()` without try/.catch or AbortSignal \u2014 backtest-v10.js:132", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 backtest-v10.js:132"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-461059ce2f400f6d", "name": "Commented-code block (5 lines) in nav.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in nav.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e2644565decf959e", "name": "`fetch()` without try/.catch or AbortSignal \u2014 wbai-login.js:91", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 wbai-login.js:91"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0654c86bfc8ffe82", "name": "Commented-code block (5 lines) in netlify/functions/kalshi-key.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/kalshi-key.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-95f5d625bc436cb4", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/kalshi-key.js:28", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/kalshi-key.js:28"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3a61437b41fba692", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-background.js:201", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-background.js:201"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8c75c8cb0f3f1560", "name": "Commented-code block (5 lines) in netlify/functions/get-picks-premium.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/get-picks-premium.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d170c85cc643f2fa", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/bootstrap-kalshi-key.js:63", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/bootstrap-kalshi-key.js:63"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1918e3572306d2d3", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/voicebet-tts.js:25", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/voicebet-tts.js:25"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2ab925325aa931c9", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/scan-ap-mentions.js:69", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/scan-ap-mentions.js:69"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d95a51d5174a291c", "name": "Commented-code block (6 lines) in netlify/functions/kalshi-execute-background.js:271", "shortDescription": {"text": "Commented-code block (6 lines) in netlify/functions/kalshi-execute-background.js:271"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-cbb4ffa42abecf89", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/kalshi-execute-background.js:628", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/kalshi-execute-background.js:628"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-294cfa15a5a7ea08", "name": "Commented-code block (6 lines) in netlify/functions/build-ratings-background.js:1", "shortDescription": {"text": "Commented-code block (6 lines) in netlify/functions/build-ratings-background.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6e58664ba3a2bd24", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/build-ratings-background.js:450", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/build-ratings-background.js:450"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5bc7b2212b4e38cb", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/upload-media.js:48", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/upload-media.js:48"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1758cb60bb5ae021", "name": "Commented-code block (5 lines) in netlify/functions/track-clv.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/track-clv.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-764089757e0806fc", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/track-clv.js:192", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/track-clv.js:192"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-f42be86c5eae521d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-kalshi-scan.js:30", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-kalshi-scan.js:30"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9f927b985c19a4de", "name": "Commented-code block (7 lines) in netlify/functions/verify-picks.js:4", "shortDescription": {"text": "Commented-code block (7 lines) in netlify/functions/verify-picks.js:4"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-81a093197806466f", "name": "Commented-code block (9 lines) in netlify/functions/generate-picks-v2-background.js:1", "shortDescription": {"text": "Commented-code block (9 lines) in netlify/functions/generate-picks-v2-background.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3388ff1cb8d27fbf", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-v2-background.js:220", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-v2-background.js:220"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d577b404f0f2913c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/exodus-test.js:36", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/exodus-test.js:36"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-546e1d20569606d1", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-truth-feed.js:52", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-truth-feed.js:52"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-bf9a78c3b9586ed6", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/post-to-x.js:87", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/post-to-x.js:87"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8682286d9631605a", "name": "Commented-code block (5 lines) in netlify/functions/get-results-mlb.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/get-results-mlb.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-d3177aa733e5b6c0", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/xai-analyze.js:34", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/xai-analyze.js:34"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-60ae98abc6cc1932", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/p2p-challenge.js:91", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/p2p-challenge.js:91"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-aacf338bb16e0624", "name": "Commented-code block (15 lines) in netlify/functions/generate-picks-alpha-background.js:1", "shortDescription": {"text": "Commented-code block (15 lines) in netlify/functions/generate-picks-alpha-background.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7d611055c8af546d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-alpha-background.js:550", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-alpha-background.js:550"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-42f79d8dedb4edab", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/x-oauth-callback.js:47", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/x-oauth-callback.js:47"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-eb54cf4ccc7e254d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-polymarket.js:65", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-polymarket.js:65"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9391b79ac47a7b72", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/claude-process.js:34", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/claude-process.js:34"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2cef49c7507d9532", "name": "Commented-code block (5 lines) in netlify/functions/trigger-clv.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/trigger-clv.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-54b15f4de1f3393c", "name": "Commented-code block (13 lines) in netlify/functions/generate-picks-mvp-background.js:1", "shortDescription": {"text": "Commented-code block (13 lines) in netlify/functions/generate-picks-mvp-background.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5483d5c319e818e9", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-mvp-background.js:566", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-mvp-background.js:566"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-35e027b3145c01a6", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/post-truth-reply.js:61", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/post-truth-reply.js:61"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d8e3a71536f76a61", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/create-p2p-bet-web.js:173", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/create-p2p-bet-web.js:173"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-278044369672ce32", "name": "Commented-code block (6 lines) in netlify/functions/search-x.js:1", "shortDescription": {"text": "Commented-code block (6 lines) in netlify/functions/search-x.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-52fff0efab3bbfef", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/search-x.js:151", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/search-x.js:151"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-17a394208dee259c", "name": "Commented-code block (5 lines) in netlify/functions/generate-picks-mlb-background.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/generate-picks-mlb-background.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a13ada30aa0254d5", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-mlb-background.js:582", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-mlb-background.js:582"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8b232c0bb7ff980f", "name": "Commented-code block (5 lines) in netlify/functions/confirm-starters-mlb.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/confirm-starters-mlb.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6f39214592bb1243", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/confirm-starters-mlb.js:87", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/confirm-starters-mlb.js:87"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-e04090931f1de66f", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-guardian-background.js:129", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-guardian-background.js:129"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-cb2303d48cdfd5e5", "name": "Commented-code block (6 lines) in netlify/functions/get-kalshi-paper.js:1", "shortDescription": {"text": "Commented-code block (6 lines) in netlify/functions/get-kalshi-paper.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-4956b8bfda1883e4", "name": "Commented-code block (5 lines) in netlify/functions/matching-engine-background.js:45", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/matching-engine-background.js:45"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e73586c7c34d0cc3", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/matching-engine-background.js:234", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/matching-engine-background.js:234"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-db1d98eee8636950", "name": "Commented-code block (7 lines) in netlify/functions/admin-auto-draft.js:1", "shortDescription": {"text": "Commented-code block (7 lines) in netlify/functions/admin-auto-draft.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7975201b6053ec22", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/admin-auto-draft.js:212", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/admin-auto-draft.js:212"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2e3d0161849fb843", "name": "Commented-code block (5 lines) in netlify/functions/bootstrap-optimize.js:19", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/bootstrap-optimize.js:19"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-0e101f182f7b992b", "name": "Commented-code block (5 lines) in netlify/functions/auth-sms-verify.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/auth-sms-verify.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a65cc611875d12e4", "name": "Commented-code block (5 lines) in netlify/functions/kalshi-scan.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/kalshi-scan.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-16dea678503f10fb", "name": "Commented-code block (6 lines) in netlify/functions/admin-queue.js:1", "shortDescription": {"text": "Commented-code block (6 lines) in netlify/functions/admin-queue.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-263d623c91bf282b", "name": "Commented-code block (5 lines) in netlify/functions/generate-picks-mlb-props-background.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/generate-picks-mlb-props-background.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-3ff218db5f042626", "name": "Commented-code block (5 lines) in netlify/functions/p2p-stake.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/p2p-stake.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-c50d6b6760f98d24", "name": "Commented-code block (6 lines) in netlify/functions/bettoredge-auth.js:1", "shortDescription": {"text": "Commented-code block (6 lines) in netlify/functions/bettoredge-auth.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-b4157b812b6bafe8", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/bettoredge-auth.js:22", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/bettoredge-auth.js:22"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-7351af4e9feb7cf7", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/exodus-scan-background.js:441", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/exodus-scan-background.js:441"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-06dc4bde441ebf27", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/betty-sms.js:90", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/betty-sms.js:90"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-50184f0610479aba", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/phone-verify.js:58", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/phone-verify.js:58"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-61c9520d5c745a23", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/betty-webhook.js:92", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/betty-webhook.js:92"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3c952986e1fb31ae", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/create-p2p-bet.js:174", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/create-p2p-bet.js:174"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b2723bf86f7a0b8e", "name": "Commented-code block (6 lines) in netlify/functions/trigger-kalshi-scan.js:1", "shortDescription": {"text": "Commented-code block (6 lines) in netlify/functions/trigger-kalshi-scan.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-8db59d0dba25e57c", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/trigger-kalshi-scan.js:44", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/trigger-kalshi-scan.js:44"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3908c69dde5bcffd", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/claude-execute.js:33", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/claude-execute.js:33"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-3a291cbb7b3f98cd", "name": "Commented-code block (5 lines) in netlify/functions/webit-mock-pay.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/webit-mock-pay.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-54fc0aa0408b3b86", "name": "Commented-code block (5 lines) in netlify/functions/generate-picks-beta-background.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/generate-picks-beta-background.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-7720821c917919c8", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-beta-background.js:443", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-beta-background.js:443"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-94e75b2bf4f8139d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/auth-x-callback.js:63", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/auth-x-callback.js:63"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-38931eed96195acb", "name": "Commented-code block (5 lines) in netlify/functions/generate-picks-props-background.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/generate-picks-props-background.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1329642b99fd5803", "name": "Commented-code block (12 lines) in netlify/functions/convert-bet.js:1", "shortDescription": {"text": "Commented-code block (12 lines) in netlify/functions/convert-bet.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-347783c28d1ad0a8", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/convert-bet.js:558", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/convert-bet.js:558"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c4810a95e10582be", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/admin-sniper.js:67", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/admin-sniper.js:67"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-053cd01906af8743", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/convert-bet-batch.js:192", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/convert-bet-batch.js:192"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c8ec7c33eb14b908", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/auth-sms-start.js:56", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/auth-sms-start.js:56"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-486d9b08efe7064d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/exodus-post-truth.js:34", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/exodus-post-truth.js:34"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-867e5b7484e3f1fa", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/grok-pipeline-background.js:137", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/grok-pipeline-background.js:137"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1246083a2f0155f2", "name": "Commented-code block (5 lines) in netlify/functions/get-results-alpha.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/get-results-alpha.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-f5cf73a4fcc2bb29", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-truth-content-background.js:365", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-truth-content-background.js:365"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2b317e07891a0a6b", "name": "Commented-code block (7 lines) in netlify/functions/get-ratings.js:1", "shortDescription": {"text": "Commented-code block (7 lines) in netlify/functions/get-ratings.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-164bfd8db81a00ad", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-ratings.js:35", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-ratings.js:35"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b23559b4c6fff9e3", "name": "Commented-code block (5 lines) in netlify/functions/generate-fox-background.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/generate-fox-background.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-5364454ece405d6b", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-fox-background.js:130", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-fox-background.js:130"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-90b2ccbdf6536f70", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/markets.js:41", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/markets.js:41"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-969d0a58a158b4ae", "name": "Commented-code block (6 lines) in netlify/functions/self-optimize.js:1", "shortDescription": {"text": "Commented-code block (6 lines) in netlify/functions/self-optimize.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-caa1ff8ee8593e37", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/self-optimize.js:63", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/self-optimize.js:63"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c77fd429403b8c48", "name": "Commented-code block (5 lines) in netlify/functions/get-fox-picks.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/get-fox-picks.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-1eb5f27e78ebf40f", "name": "Commented-code block (5 lines) in netlify/functions/trigger-kalshi.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/trigger-kalshi.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-54d9d61cac2e3d9d", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/admin-feed.js:230", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/admin-feed.js:230"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-070820742d7429b6", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/trigger-exodus.js:23", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/trigger-exodus.js:23"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9720ef40e5a9aab1", "name": "Commented-code block (5 lines) in netlify/functions/generate-picks-be-background.js:1", "shortDescription": {"text": "Commented-code block (5 lines) in netlify/functions/generate-picks-be-background.js:1"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-771cd18f2e9af6c5", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-be-background.js:225", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-be-background.js:225"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-da91d5fe468afa32", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/admin-compose-post.js:109", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/admin-compose-post.js:109"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-5d6d3ec068af6d04", "name": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-betty-convos.js:31", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-betty-convos.js:31"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0388b2ac47fe4247", "name": "`fetch()` without try/.catch or AbortSignal \u2014 claude/_next/static/chunks/159~m3zkbqs12.js:21", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 claude/_next/static/chunks/159~m3zkbqs12.js:21"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-662b834490068664", "name": "Legacy-named symbol `unstable_legacy` in claude/_next/static/chunks/00ilazh50sdzh.js:1", "shortDescription": {"text": "Legacy-named symbol `unstable_legacy` in claude/_next/static/chunks/00ilazh50sdzh.js:1"}, "fullDescription": {"text": "Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-49c0d3e7717d6939", "name": "`fetch()` without try/.catch or AbortSignal \u2014 claude/_next/static/chunks/09wmpm-jfenx..js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 claude/_next/static/chunks/09wmpm-jfenx..js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-072aac9b5ca5b724", "name": "`fetch()` without try/.catch or AbortSignal \u2014 claude/_next/static/chunks/turbopack-0g3m74-_xjj-i.js:1", "shortDescription": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 claude/_next/static/chunks/turbopack-0g3m74-_xjj-i.js:1"}, "fullDescription": {"text": "Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4d223bfdf539b12d", "name": "42 env vars used in code but missing from .env.example", "shortDescription": {"text": "42 env vars used in code but missing from .env.example"}, "fullDescription": {"text": "Drift between code and config docs. The first few: `ADMIN_EMAIL`, `ADMIN_KEY`, `ADMIN_PASSWORD`, `ADMIN_SECRET`, `ALPHA_RUN_KEY`, `BETTOREDGE_PASSWORD`, `BETTOREDGE_TOKEN`, `BETTOREDGE_USERNAME` + 34 more. Add them (with a placeholder/comment) to .env.example so onboarding doesn't break."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/22592"}, "properties": {"repository": "wcgbk/webet-social-intelligence", "repoUrl": "https://github.com/wcgbk/webet-social-intelligence", "branch": "main"}, "results": [{"ruleId": "scanner-ecd9adfd915b2f10", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 backtest-v10.js:133"}, "properties": {"repobilityId": "33cb7d0211bb70cf", "scanner": "scanner-primary", "fingerprint": "ecd9adfd915b2f10", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-84ccb29de06d71a7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 serve-node.js:134"}, "properties": {"repobilityId": "281c1208a2f63c5c", "scanner": "scanner-primary", "fingerprint": "84ccb29de06d71a7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ac4e61deba5ce2e4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/kalshi-key.js:43"}, "properties": {"repobilityId": "d32aedfcdb5a2bde", "scanner": "scanner-primary", "fingerprint": "ac4e61deba5ce2e4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ebb7c66e974d9f7d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-background.js:192"}, "properties": {"repobilityId": "8af2e4eee6d47a4b", "scanner": "scanner-primary", "fingerprint": "ebb7c66e974d9f7d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-52aadc30de347f63", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-picks-premium.js:83"}, "properties": {"repobilityId": "4035b57bd1135fed", "scanner": "scanner-primary", "fingerprint": "52aadc30de347f63", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d7f0715af4be8374", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/admin-queue-process.js:119"}, "properties": {"repobilityId": "34f1a4c58925e94a", "scanner": "scanner-primary", "fingerprint": "d7f0715af4be8374", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-acc24a217a948c30", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/scan-ap-mentions.js:80"}, "properties": {"repobilityId": "663c76008165cdb8", "scanner": "scanner-primary", "fingerprint": "acc24a217a948c30", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6dea0a90bd54bef9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/kalshi-execute-background.js:571"}, "properties": {"repobilityId": "7766092773692ad8", "scanner": "scanner-primary", "fingerprint": "6dea0a90bd54bef9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0513ea1ac4ca3a03", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/build-ratings-background.js:87"}, "properties": {"repobilityId": "d7e4a17cd5eace35", "scanner": "scanner-primary", "fingerprint": "0513ea1ac4ca3a03", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-b110b5004dc4fed1", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-mlb-props.js:6"}, "properties": {"repobilityId": "74bcfd3d73058061", "scanner": "scanner-primary", "fingerprint": "b110b5004dc4fed1", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5967b6f61adfb4ec", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-props.js:7"}, "properties": {"repobilityId": "6e670b728f7b94ea", "scanner": "scanner-primary", "fingerprint": "5967b6f61adfb4ec", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6186ef5ab1e6acf5", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-truth.js:9"}, "properties": {"repobilityId": "6c026fda4032a31c", "scanner": "scanner-primary", "fingerprint": "6186ef5ab1e6acf5", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-09b5fb4cb9d5ace0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/track-clv.js:204"}, "properties": {"repobilityId": "5dacc9d6a5c1de13", "scanner": "scanner-primary", "fingerprint": "09b5fb4cb9d5ace0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6d2457c566d7e513", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/kalshi-sell.js:100"}, "properties": {"repobilityId": "ac886fec3a448e98", "scanner": "scanner-primary", "fingerprint": "6d2457c566d7e513", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-df6c21eb2930d2b3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/verify-picks.js:173"}, "properties": {"repobilityId": "35d56ca85e8dc3bf", "scanner": "scanner-primary", "fingerprint": "df6c21eb2930d2b3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-e36d7373fc384721", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-v2-background.js:208"}, "properties": {"repobilityId": "e16164c6d8e57191", "scanner": "scanner-primary", "fingerprint": "e36d7373fc384721", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-7e11d7a97c3487cd", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/exodus-test.js:23"}, "properties": {"repobilityId": "61951d8887768a4e", "scanner": "scanner-primary", "fingerprint": "7e11d7a97c3487cd", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-df65af0734dfd42d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/patch-picks-beta.js:36"}, "properties": {"repobilityId": "fb14843cc6847678", "scanner": "scanner-primary", "fingerprint": "df65af0734dfd42d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f73af74eef4a5bd0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-alpha-background.js:225"}, "properties": {"repobilityId": "bffa129c0011099e", "scanner": "scanner-primary", "fingerprint": "f73af74eef4a5bd0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4f32b370eb56a85c", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-mvp.js:7"}, "properties": {"repobilityId": "de6fa4ef19830218", "scanner": "scanner-primary", "fingerprint": "4f32b370eb56a85c", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-af31f7128756600a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-clv.js:11"}, "properties": {"repobilityId": "09e361472b442093", "scanner": "scanner-primary", "fingerprint": "af31f7128756600a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c8efa75513f8315e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/run-ratings.js:24"}, "properties": {"repobilityId": "d3c6cf621e05d89a", "scanner": "scanner-primary", "fingerprint": "c8efa75513f8315e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-2b63e67a0d94ef03", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/admin-publish.js:228"}, "properties": {"repobilityId": "db57eb161e7757e9", "scanner": "scanner-primary", "fingerprint": "2b63e67a0d94ef03", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-08acd912042a81fc", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-mvp-background.js:223"}, "properties": {"repobilityId": "9bc2e1893121f1ea", "scanner": "scanner-primary", "fingerprint": "08acd912042a81fc", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-ca06741655adf137", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-picks-beta.js:74"}, "properties": {"repobilityId": "4e6ae7c8c73a604e", "scanner": "scanner-primary", "fingerprint": "ca06741655adf137", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-19af04c528c7df9a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-picks.js:74"}, "properties": {"repobilityId": "398fe7f82c1aaa31", "scanner": "scanner-primary", "fingerprint": "19af04c528c7df9a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6d243a9fc3ba50ba", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/search-x.js:49"}, "properties": {"repobilityId": "12e4ffb66101fdde", "scanner": "scanner-primary", "fingerprint": "6d243a9fc3ba50ba", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6c75547402701203", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-mlb-background.js:210"}, "properties": {"repobilityId": "6d95d9d6a791e853", "scanner": "scanner-primary", "fingerprint": "6c75547402701203", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-892f16181b79602a", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/confirm-starters-mlb.js:41"}, "properties": {"repobilityId": "d23098cb7244ff50", "scanner": "scanner-primary", "fingerprint": "892f16181b79602a", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-73a4eb2e1d73df35", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-guardian-background.js:104"}, "properties": {"repobilityId": "4c4dcf47c38f4535", "scanner": "scanner-primary", "fingerprint": "73a4eb2e1d73df35", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8052f8f96be6d966", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/matching-engine-background.js:65"}, "properties": {"repobilityId": "79eb49e0e30faeff", "scanner": "scanner-primary", "fingerprint": "8052f8f96be6d966", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-945eb459a17c4810", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/admin-auto-draft.js:44"}, "properties": {"repobilityId": "887eedabfa663eed", "scanner": "scanner-primary", "fingerprint": "945eb459a17c4810", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5242b5433b425903", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-mlb.js:7"}, "properties": {"repobilityId": "2c911c877accf8c7", "scanner": "scanner-primary", "fingerprint": "5242b5433b425903", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-de85e4562fc279b3", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/bootstrap-optimize.js:15"}, "properties": {"repobilityId": "822189bd9b111113", "scanner": "scanner-primary", "fingerprint": "de85e4562fc279b3", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-45f9becb177446b8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-fox.js:7"}, "properties": {"repobilityId": "734ef4a298b7ccee", "scanner": "scanner-primary", "fingerprint": "45f9becb177446b8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-27c31ed6633b6a09", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/run-truth-bets.js:33"}, "properties": {"repobilityId": "d4ee56f1aeeda8d1", "scanner": "scanner-primary", "fingerprint": "27c31ed6633b6a09", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-36e8906a7dde77bf", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/auth-sms-verify.js:74"}, "properties": {"repobilityId": "05987bccc8d98af8", "scanner": "scanner-primary", "fingerprint": "36e8906a7dde77bf", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8526e484ee9482e9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/kalshi-scan.js:234"}, "properties": {"repobilityId": "2adc124c68523fe7", "scanner": "scanner-primary", "fingerprint": "8526e484ee9482e9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-80b67c852b295ef9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/priority-signup.js:77"}, "properties": {"repobilityId": "af52c067fb13cfde", "scanner": "scanner-primary", "fingerprint": "80b67c852b295ef9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-37eeecee6e01bba4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks.js:7"}, "properties": {"repobilityId": "41be8cc4091839c6", "scanner": "scanner-primary", "fingerprint": "37eeecee6e01bba4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-897fac898181da1f", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/patch-picks.js:36"}, "properties": {"repobilityId": "d7e6c383fdacd9db", "scanner": "scanner-primary", "fingerprint": "897fac898181da1f", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d6f75c16788a29de", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-mlb-props-background.js:125"}, "properties": {"repobilityId": "17bc867ff5060e2f", "scanner": "scanner-primary", "fingerprint": "d6f75c16788a29de", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-68854932eefd45e9", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-alpha.js:7"}, "properties": {"repobilityId": "6cf1ed114f544ee3", "scanner": "scanner-primary", "fingerprint": "68854932eefd45e9", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0e4bc6444812759b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/p2p-stake.js:65"}, "properties": {"repobilityId": "a274fec0bd1a62c9", "scanner": "scanner-primary", "fingerprint": "0e4bc6444812759b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8cd4052e9126ddc0", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/truth-stories.js:41"}, "properties": {"repobilityId": "fc6374430f3263f6", "scanner": "scanner-primary", "fingerprint": "8cd4052e9126ddc0", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-90fce6e305fb47f6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/bettoredge-auth.js:38"}, "properties": {"repobilityId": "0f4933df4cb1ba95", "scanner": "scanner-primary", "fingerprint": "90fce6e305fb47f6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-49f232e78a54f989", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/exodus-scan-background.js:51"}, "properties": {"repobilityId": "9a0fe14173efdd67", "scanner": "scanner-primary", "fingerprint": "49f232e78a54f989", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4d45ced888c3f6de", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/test-webet-pipeline.js:18"}, "properties": {"repobilityId": "79adcceb0424fa4f", "scanner": "scanner-primary", "fingerprint": "4d45ced888c3f6de", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bd116085179e7624", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/betty-webhook.js:207"}, "properties": {"repobilityId": "baa1edd0d9b5d43a", "scanner": "scanner-primary", "fingerprint": "bd116085179e7624", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-5e49befec421d982", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/create-p2p-bet.js:444"}, "properties": {"repobilityId": "8d44bb92f348a91a", "scanner": "scanner-primary", "fingerprint": "5e49befec421d982", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-4ea3949fe4dfbdc8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-kalshi-scan.js:9"}, "properties": {"repobilityId": "ca4bd450bd4d5f6e", "scanner": "scanner-primary", "fingerprint": "4ea3949fe4dfbdc8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d847c41be9efb162", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/webit-mock-pay.js:78"}, "properties": {"repobilityId": "265576513a723ac4", "scanner": "scanner-primary", "fingerprint": "d847c41be9efb162", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-f0fb75b725bfca46", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-beta-background.js:434"}, "properties": {"repobilityId": "2870e8f32f493718", "scanner": "scanner-primary", "fingerprint": "f0fb75b725bfca46", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-99cf065c13a773e8", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-props-background.js:174"}, "properties": {"repobilityId": "0fa4188585e43fff", "scanner": "scanner-primary", "fingerprint": "99cf065c13a773e8", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-30f38b929cea89f4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-exodus.js:33"}, "properties": {"repobilityId": "b48d88d2b0a3be5e", "scanner": "scanner-primary", "fingerprint": "30f38b929cea89f4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-834cc2d05118887b", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/run-picks-v2.js:27"}, "properties": {"repobilityId": "889dbefe7045fcab", "scanner": "scanner-primary", "fingerprint": "834cc2d05118887b", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-a85336f8864ff2b4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/run-exodus.js:34"}, "properties": {"repobilityId": "788c918ae775081a", "scanner": "scanner-primary", "fingerprint": "a85336f8864ff2b4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1207210d972d871d", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/auth-sms-start.js:69"}, "properties": {"repobilityId": "07b71760d08078bc", "scanner": "scanner-primary", "fingerprint": "1207210d972d871d", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-8ec9b09396393a32", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/exodus-post-truth.js:51"}, "properties": {"repobilityId": "a091a72c232198d9", "scanner": "scanner-primary", "fingerprint": "8ec9b09396393a32", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-48620a5a8709a677", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/check-resolution.js:95"}, "properties": {"repobilityId": "0e857057822383d2", "scanner": "scanner-primary", "fingerprint": "48620a5a8709a677", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-9a8f621486335931", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/grok-pipeline-background.js:61"}, "properties": {"repobilityId": "c989a962ab736e30", "scanner": "scanner-primary", "fingerprint": "9a8f621486335931", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-75450d5819cc5b14", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-bettoredge.js:46"}, "properties": {"repobilityId": "b110b1b68710b102", "scanner": "scanner-primary", "fingerprint": "75450d5819cc5b14", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-bfaf336cceabcec7", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-webet-content-background.js:53"}, "properties": {"repobilityId": "73214fcf180516e3", "scanner": "scanner-primary", "fingerprint": "bfaf336cceabcec7", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-763c74353f117215", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/resolve-p2p-bet.js:29"}, "properties": {"repobilityId": "ac97b806cee3b3f2", "scanner": "scanner-primary", "fingerprint": "763c74353f117215", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-414b0649a909a685", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-picks-beta.js:7"}, "properties": {"repobilityId": "14ea99963dce845a", "scanner": "scanner-primary", "fingerprint": "414b0649a909a685", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0b99cc923ee97ab6", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-truth-content-background.js:318"}, "properties": {"repobilityId": "9b608a87a146a2c6", "scanner": "scanner-primary", "fingerprint": "0b99cc923ee97ab6", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-3a86afe60a5378df", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/exodus-challenge.js:123"}, "properties": {"repobilityId": "086481729772c30a", "scanner": "scanner-primary", "fingerprint": "3a86afe60a5378df", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-1c3bf9d076d98882", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-fox-background.js:146"}, "properties": {"repobilityId": "cf051981d546a97d", "scanner": "scanner-primary", "fingerprint": "1c3bf9d076d98882", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-c75c4472eef2433e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-webet-content.js:31"}, "properties": {"repobilityId": "a7d71eab9d40375c", "scanner": "scanner-primary", "fingerprint": "c75c4472eef2433e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-af9619805306d306", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/self-optimize.js:27"}, "properties": {"repobilityId": "442899cac5045198", "scanner": "scanner-primary", "fingerprint": "af9619805306d306", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-85cb1fe3d0cae3c4", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-guardian.js:6"}, "properties": {"repobilityId": "759bb6d2e3601603", "scanner": "scanner-primary", "fingerprint": "85cb1fe3d0cae3c4", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d662ea12266fc317", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/get-fox-picks.js:65"}, "properties": {"repobilityId": "d469234a283bdd40", "scanner": "scanner-primary", "fingerprint": "d662ea12266fc317", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-116a0f1e7a48a408", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-kalshi.js:8"}, "properties": {"repobilityId": "d601e2011e760ec9", "scanner": "scanner-primary", "fingerprint": "116a0f1e7a48a408", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-d1dc45ed0466583e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/admin-feed.js:105"}, "properties": {"repobilityId": "a29dbea55aee0a13", "scanner": "scanner-primary", "fingerprint": "d1dc45ed0466583e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-051fedbc0a8d15fb", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/trigger-exodus.js:13"}, "properties": {"repobilityId": "6edf6784e0cf7343", "scanner": "scanner-primary", "fingerprint": "051fedbc0a8d15fb", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-0e800c1b8142a741", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/generate-picks-be-background.js:216"}, "properties": {"repobilityId": "6975633bc0562e39", "scanner": "scanner-primary", "fingerprint": "0e800c1b8142a741", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-41ca4332daa7a88e", "level": "note", "message": {"text": "Stray `console.log` in TS/JS \u2014 netlify/functions/capture-opening-lines.js:31"}, "properties": {"repobilityId": "5dbff2214e7144ff", "scanner": "scanner-primary", "fingerprint": "41ca4332daa7a88e", "layer": "frontend", "severity": "low", "confidence": 1.0, "tags": ["frontend-quality", "fq.console-leak"]}}, {"ruleId": "scanner-6f8598f2a186c866", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 claude/_next/static/chunks/00ilazh50sdzh.js:1"}, "properties": {"repobilityId": "eaaa0568d7403434", "scanner": "scanner-primary", "fingerprint": "6f8598f2a186c866", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-490cd743fdc62a25", "level": "warning", "message": {"text": "`dangerouslySetInnerHTML` used in a React component \u2014 claude/_next/static/chunks/0ht900cau6_ur.js:31"}, "properties": {"repobilityId": "4d5bff0b373df5b6", "scanner": "scanner-primary", "fingerprint": "490cd743fdc62a25", "layer": "frontend", "severity": "medium", "confidence": 1.0, "tags": ["frontend-quality", "fq.dangerous-html"]}}, {"ruleId": "scanner-f6f4e3397d7badc0", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in serve-node.js:18"}, "properties": {"repobilityId": "e25cf5578a2711d9", "scanner": "scanner-primary", "fingerprint": "f6f4e3397d7badc0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "serve-node.js"}, "region": {"startLine": 18}}}]}, {"ruleId": "scanner-b44947cd6727133c", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in nav.js:41"}, "properties": {"repobilityId": "ee8c11152af886da", "scanner": "scanner-primary", "fingerprint": "b44947cd6727133c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "nav.js"}, "region": {"startLine": 41}}}]}, {"ruleId": "scanner-aa00aabd6075b783", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in wbai-login.js:52"}, "properties": {"repobilityId": "c1a234f75b6e315c", "scanner": "scanner-primary", "fingerprint": "aa00aabd6075b783", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "wbai-login.js"}, "region": {"startLine": 52}}}]}, {"ruleId": "scanner-c91a3840a6399647", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in finalboss/index.html:207"}, "properties": {"repobilityId": "d5f3c35434abc674", "scanner": "scanner-primary", "fingerprint": "c91a3840a6399647", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "finalboss/index.html"}, "region": {"startLine": 207}}}]}, {"ruleId": "scanner-673f3223a499aeb6", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in edge/index.html:1113"}, "properties": {"repobilityId": "ed4e31cdd3abb9e1", "scanner": "scanner-primary", "fingerprint": "673f3223a499aeb6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "edge/index.html"}, "region": {"startLine": 1113}}}]}, {"ruleId": "scanner-59ae22d5bfd74d86", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in edge/beta/better-edge/index.html:688"}, "properties": {"repobilityId": "0be30ed03a03e7f7", "scanner": "scanner-primary", "fingerprint": "59ae22d5bfd74d86", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "edge/beta/better-edge/index.html"}, "region": {"startLine": 688}}}]}, {"ruleId": "scanner-535c5f5246717a20", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in p2p-sports/index.html:340"}, "properties": {"repobilityId": "45c6128187877499", "scanner": "scanner-primary", "fingerprint": "535c5f5246717a20", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "p2p-sports/index.html"}, "region": {"startLine": 340}}}]}, {"ruleId": "scanner-b59d46794bb95038", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in p2p-sports/bet/index.html:151"}, "properties": {"repobilityId": "8c1992a73a6c3047", "scanner": "scanner-primary", "fingerprint": "b59d46794bb95038", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "p2p-sports/bet/index.html"}, "region": {"startLine": 151}}}]}, {"ruleId": "scanner-e871ab2f0af6b0b8", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in pick3p2p/index.html:1019"}, "properties": {"repobilityId": "eb70f8aa4727a46a", "scanner": "scanner-primary", "fingerprint": "e871ab2f0af6b0b8", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "pick3p2p/index.html"}, "region": {"startLine": 1019}}}]}, {"ruleId": "scanner-7d754460970df381", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mvp/index.html:1288"}, "properties": {"repobilityId": "1b6c58fc0bafa73f", "scanner": "scanner-primary", "fingerprint": "7d754460970df381", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mvp/index.html"}, "region": {"startLine": 1288}}}]}, {"ruleId": "scanner-4bbed908df9b2838", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in dashboard/index.html:2078"}, "properties": {"repobilityId": "1d59152a7617eeef", "scanner": "scanner-primary", "fingerprint": "4bbed908df9b2838", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "dashboard/index.html"}, "region": {"startLine": 2078}}}]}, {"ruleId": "scanner-9cfeeca301e2deba", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in dashboard/index.html:3534"}, "properties": {"repobilityId": "6f0a64e243f177ac", "scanner": "scanner-primary", "fingerprint": "9cfeeca301e2deba", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "dashboard/index.html"}, "region": {"startLine": 3534}}}]}, {"ruleId": "scanner-a0c1e55a970c9a37", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in guardian/digest/index.html:498"}, "properties": {"repobilityId": "389084ac494f9f6f", "scanner": "scanner-primary", "fingerprint": "a0c1e55a970c9a37", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "guardian/digest/index.html"}, "region": {"startLine": 498}}}]}, {"ruleId": "scanner-c439a3494f61d829", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in p2p-trending/index.html:378"}, "properties": {"repobilityId": "b4787e6c207f8504", "scanner": "scanner-primary", "fingerprint": "c439a3494f61d829", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "p2p-trending/index.html"}, "region": {"startLine": 378}}}]}, {"ruleId": "scanner-5d1530d374086440", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in webetai/index.html:1003"}, "properties": {"repobilityId": "53d16bb14e007cbd", "scanner": "scanner-primary", "fingerprint": "5d1530d374086440", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "webetai/index.html"}, "region": {"startLine": 1003}}}]}, {"ruleId": "scanner-4384e6b2eecd17cf", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in percentile/index.html:758"}, "properties": {"repobilityId": "90c4e42cb0892962", "scanner": "scanner-primary", "fingerprint": "4384e6b2eecd17cf", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "percentile/index.html"}, "region": {"startLine": 758}}}]}, {"ruleId": "scanner-76a9e4d65ee9fc22", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in admin/index.html:295"}, "properties": {"repobilityId": "d75ddf931ed139f4", "scanner": "scanner-primary", "fingerprint": "76a9e4d65ee9fc22", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "admin/index.html"}, "region": {"startLine": 295}}}]}, {"ruleId": "scanner-faa7b24677c5bcd7", "level": "warning", "message": {"text": "Insecure pattern 'local_storage_auth_token' in admin/index.html:338"}, "properties": {"repobilityId": "eab292f5cfbe8289", "scanner": "scanner-primary", "fingerprint": "faa7b24677c5bcd7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "local_storage_auth_token"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "admin/index.html"}, "region": {"startLine": 338}}}]}, {"ruleId": "scanner-0e6218b175b6dfe9", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mvpalpha/index.html:319"}, "properties": {"repobilityId": "a5e4fbac2489af42", "scanner": "scanner-primary", "fingerprint": "0e6218b175b6dfe9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mvpalpha/index.html"}, "region": {"startLine": 319}}}]}, {"ruleId": "scanner-d8c132c01d525903", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in betty/index.html:1055"}, "properties": {"repobilityId": "24d1b8b1d62fb53b", "scanner": "scanner-primary", "fingerprint": "d8c132c01d525903", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "betty/index.html"}, "region": {"startLine": 1055}}}]}, {"ruleId": "scanner-378a9315c7571b9c", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in betty/blog/index.html:586"}, "properties": {"repobilityId": "c5716e7b4b2b2a7d", "scanner": "scanner-primary", "fingerprint": "378a9315c7571b9c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "betty/blog/index.html"}, "region": {"startLine": 586}}}]}, {"ruleId": "scanner-45c0071b3b4bdc3a", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in betty/live/index.html:350"}, "properties": {"repobilityId": "1be83e15bedf253d", "scanner": "scanner-primary", "fingerprint": "45c0071b3b4bdc3a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "betty/live/index.html"}, "region": {"startLine": 350}}}]}, {"ruleId": "scanner-c1c576006f522a62", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in betty/beta/index.html:651"}, "properties": {"repobilityId": "ca40dc95663d0623", "scanner": "scanner-primary", "fingerprint": "c1c576006f522a62", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "betty/beta/index.html"}, "region": {"startLine": 651}}}]}, {"ruleId": "scanner-4ff283442dc4b783", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mlb/index.html:693"}, "properties": {"repobilityId": "0fd1ff81372adce3", "scanner": "scanner-primary", "fingerprint": "4ff283442dc4b783", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mlb/index.html"}, "region": {"startLine": 693}}}]}, {"ruleId": "scanner-3cc2979c00e0c154", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-fox.js:6"}, "properties": {"repobilityId": "10e17a5b906c3c68", "scanner": "scanner-primary", "fingerprint": "3cc2979c00e0c154", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-fox.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-bde9ba196c85d121", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/bet-image.js:15"}, "properties": {"repobilityId": "c443ba49492f9dde", "scanner": "scanner-primary", "fingerprint": "bde9ba196c85d121", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/bet-image.js"}, "region": {"startLine": 15}}}]}, {"ruleId": "scanner-1f3ba3ff9c77997a", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/betty-admin-reply.js:7"}, "properties": {"repobilityId": "0e6cbcc1e23b03a2", "scanner": "scanner-primary", "fingerprint": "1f3ba3ff9c77997a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/betty-admin-reply.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-e2d8e6309be47e5d", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-matching.js:11"}, "properties": {"repobilityId": "453a32a94d67b7c0", "scanner": "scanner-primary", "fingerprint": "e2d8e6309be47e5d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-matching.js"}, "region": {"startLine": 11}}}]}, {"ruleId": "scanner-4a0265f9914649b5", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-p2p-bet.js:5"}, "properties": {"repobilityId": "142ffe4929471139", "scanner": "scanner-primary", "fingerprint": "4a0265f9914649b5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-p2p-bet.js"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-599df10a98c3da08", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-alpha.js:6"}, "properties": {"repobilityId": "e79dea69da4d9adb", "scanner": "scanner-primary", "fingerprint": "599df10a98c3da08", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-picks-alpha.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-da35574a6569d2fc", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/accept-bet.js:19"}, "properties": {"repobilityId": "dd8c59043f899bd0", "scanner": "scanner-primary", "fingerprint": "da35574a6569d2fc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/accept-bet.js"}, "region": {"startLine": 19}}}]}, {"ruleId": "scanner-ba591771c80e7413", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in netlify/functions/admin-queue-process.js:47"}, "properties": {"repobilityId": "8285f2a2a57e9bce", "scanner": "scanner-primary", "fingerprint": "ba591771c80e7413", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/admin-queue-process.js"}, "region": {"startLine": 47}}}]}, {"ruleId": "scanner-03619a34ba18d333", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/voicebet-tts.js:7"}, "properties": {"repobilityId": "f840a867152fba83", "scanner": "scanner-primary", "fingerprint": "03619a34ba18d333", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/voicebet-tts.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-b1113235a5e705ed", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/scan-ap-mentions.js:14"}, "properties": {"repobilityId": "6b9f209201616be5", "scanner": "scanner-primary", "fingerprint": "b1113235a5e705ed", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/scan-ap-mentions.js"}, "region": {"startLine": 14}}}]}, {"ruleId": "scanner-40efd1633c295ab4", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-bettoredge-markets.js:8"}, "properties": {"repobilityId": "9bff8fd4d8e6f735", "scanner": "scanner-primary", "fingerprint": "40efd1633c295ab4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-bettoredge-markets.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-32937f94dd06f72a", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-truth.js:10"}, "properties": {"repobilityId": "c66a5994877b748c", "scanner": "scanner-primary", "fingerprint": "32937f94dd06f72a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-truth.js"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-179278241f86d3b6", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/kalshi-execute-background.js:17"}, "properties": {"repobilityId": "6d12d3edab4d56bb", "scanner": "scanner-primary", "fingerprint": "179278241f86d3b6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/kalshi-execute-background.js"}, "region": {"startLine": 17}}}]}, {"ruleId": "scanner-102bf0ce9ca43077", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-beta.js:6"}, "properties": {"repobilityId": "f5b3214989cf834d", "scanner": "scanner-primary", "fingerprint": "102bf0ce9ca43077", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-results-beta.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-3c5432033569b572", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-v2.js:6"}, "properties": {"repobilityId": "25d476c6141176c7", "scanner": "scanner-primary", "fingerprint": "3c5432033569b572", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-picks-v2.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-c2fe3f311927d588", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/market-bet.js:17"}, "properties": {"repobilityId": "2ed3dc5507bb8890", "scanner": "scanner-primary", "fingerprint": "c2fe3f311927d588", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/market-bet.js"}, "region": {"startLine": 17}}}]}, {"ruleId": "scanner-c811283923462f68", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-mlb-props.js:7"}, "properties": {"repobilityId": "b0e49b7ab764bc22", "scanner": "scanner-primary", "fingerprint": "c811283923462f68", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-results-mlb-props.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-b0c45bfddfb81ba2", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/upload-media.js:7"}, "properties": {"repobilityId": "197e0cfa339987e7", "scanner": "scanner-primary", "fingerprint": "b0c45bfddfb81ba2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/upload-media.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-14b3dcd4e5aabc73", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-backtest.js:5"}, "properties": {"repobilityId": "fa72f763a644e8a9", "scanner": "scanner-primary", "fingerprint": "14b3dcd4e5aabc73", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-backtest.js"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-a147738b3ac72bcd", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results.js:7"}, "properties": {"repobilityId": "d72512e94a7809ee", "scanner": "scanner-primary", "fingerprint": "a147738b3ac72bcd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-results.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-3d6f00bdd03f6937", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/track-clv.js:8"}, "properties": {"repobilityId": "780263161d145722", "scanner": "scanner-primary", "fingerprint": "3d6f00bdd03f6937", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/track-clv.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-9b6cf7046e7847ad", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-props.js:7"}, "properties": {"repobilityId": "761f02333f9e2dee", "scanner": "scanner-primary", "fingerprint": "9b6cf7046e7847ad", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-results-props.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-6f4a75899108cadd", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-kalshi-scan.js:7"}, "properties": {"repobilityId": "a81911ddb73c8fa7", "scanner": "scanner-primary", "fingerprint": "6f4a75899108cadd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-kalshi-scan.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-c7e7dbab3847ed98", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/grok-chat.js:6"}, "properties": {"repobilityId": "3f36e370fb97efd7", "scanner": "scanner-primary", "fingerprint": "c7e7dbab3847ed98", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/grok-chat.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-d80b85f62f0c3a8a", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/kalshi-sell.js:12"}, "properties": {"repobilityId": "7ce105c37c5c15d4", "scanner": "scanner-primary", "fingerprint": "d80b85f62f0c3a8a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/kalshi-sell.js"}, "region": {"startLine": 12}}}]}, {"ruleId": "scanner-221b1e1eed765897", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/verify-picks.js:18"}, "properties": {"repobilityId": "43b08cd96606e500", "scanner": "scanner-primary", "fingerprint": "221b1e1eed765897", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/verify-picks.js"}, "region": {"startLine": 18}}}]}, {"ruleId": "scanner-d2d054f3358ac095", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/exodus-test.js:10"}, "properties": {"repobilityId": "d01e004abd3cd4f6", "scanner": "scanner-primary", "fingerprint": "d2d054f3358ac095", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/exodus-test.js"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-3bd2e629a9177368", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-trending-challenges.js:6"}, "properties": {"repobilityId": "3fb3099a48414128", "scanner": "scanner-primary", "fingerprint": "3bd2e629a9177368", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-trending-challenges.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-007be2832735e31e", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-truth-feed.js:11"}, "properties": {"repobilityId": "99fc3c5838c9e69a", "scanner": "scanner-primary", "fingerprint": "007be2832735e31e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-truth-feed.js"}, "region": {"startLine": 11}}}]}, {"ruleId": "scanner-cbfde3d631bd0f22", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-p2p-leaderboard.js:6"}, "properties": {"repobilityId": "3db9346a77e8cd2e", "scanner": "scanner-primary", "fingerprint": "cbfde3d631bd0f22", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-p2p-leaderboard.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-37c56f135b0452ec", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/betty-chat-beta.js:5"}, "properties": {"repobilityId": "619f726a03d548bb", "scanner": "scanner-primary", "fingerprint": "37c56f135b0452ec", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/betty-chat-beta.js"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-6fb16e66c67c060b", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in netlify/functions/post-to-x.js:25"}, "properties": {"repobilityId": "c623afdd42c4855d", "scanner": "scanner-primary", "fingerprint": "6fb16e66c67c060b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/post-to-x.js"}, "region": {"startLine": 25}}}]}, {"ruleId": "scanner-cf14af8ac73fb743", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/post-to-x.js:14"}, "properties": {"repobilityId": "94144a501a8bd64c", "scanner": "scanner-primary", "fingerprint": "cf14af8ac73fb743", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/post-to-x.js"}, "region": {"startLine": 14}}}]}, {"ruleId": "scanner-e9a7212303194527", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-mlb.js:8"}, "properties": {"repobilityId": "8167dab0c98175c1", "scanner": "scanner-primary", "fingerprint": "e9a7212303194527", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-results-mlb.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-0b192b6c379ae0a9", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/xai-analyze.js:6"}, "properties": {"repobilityId": "698f99d1f245056a", "scanner": "scanner-primary", "fingerprint": "0b192b6c379ae0a9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/xai-analyze.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-20d4572792146213", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/patch-picks-beta.js:5"}, "properties": {"repobilityId": "cf13eeb74d8eca73", "scanner": "scanner-primary", "fingerprint": "20d4572792146213", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/patch-picks-beta.js"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-c6e86df0cd59b75c", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/p2p-challenge.js:6"}, "properties": {"repobilityId": "03b245c9a71b6213", "scanner": "scanner-primary", "fingerprint": "c6e86df0cd59b75c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/p2p-challenge.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-b78fd65dabf4d446", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-matching.js:11"}, "properties": {"repobilityId": "ac7ffee09564b724", "scanner": "scanner-primary", "fingerprint": "b78fd65dabf4d446", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-matching.js"}, "region": {"startLine": 11}}}]}, {"ruleId": "scanner-5c2d57af7c21c52f", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-fox.js:7"}, "properties": {"repobilityId": "6a39772c24c177a6", "scanner": "scanner-primary", "fingerprint": "5c2d57af7c21c52f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-results-fox.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-4ce64572d38a37e5", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-rankings.js:119"}, "properties": {"repobilityId": "31ac365eeb69962e", "scanner": "scanner-primary", "fingerprint": "4ce64572d38a37e5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-rankings.js"}, "region": {"startLine": 119}}}]}, {"ruleId": "scanner-5b8eb1f593f5b8e6", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/send-bet-sms.js:7"}, "properties": {"repobilityId": "c25f30ee4bffe905", "scanner": "scanner-primary", "fingerprint": "5b8eb1f593f5b8e6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/send-bet-sms.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-d7a3d345d04bbd41", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/x-oauth-callback.js:6"}, "properties": {"repobilityId": "8a18451bc76639c4", "scanner": "scanner-primary", "fingerprint": "d7a3d345d04bbd41", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/x-oauth-callback.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-e068324dd7d447c1", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-be.js:7"}, "properties": {"repobilityId": "1fcb623c579cddff", "scanner": "scanner-primary", "fingerprint": "e068324dd7d447c1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-picks-be.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-be3d83b3d1478067", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/search-x-users.js:8"}, "properties": {"repobilityId": "767ea2d116ec12d5", "scanner": "scanner-primary", "fingerprint": "be3d83b3d1478067", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/search-x-users.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-73adc1f2c4cc420f", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-polymarket.js:16"}, "properties": {"repobilityId": "e4f4444ca57a9ecf", "scanner": "scanner-primary", "fingerprint": "73adc1f2c4cc420f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-polymarket.js"}, "region": {"startLine": 16}}}]}, {"ruleId": "scanner-52d88dab7bde7ebd", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/claude-process.js:5"}, "properties": {"repobilityId": "bc1c99620bbc829c", "scanner": "scanner-primary", "fingerprint": "52d88dab7bde7ebd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/claude-process.js"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-ec1fcbc4d285fc02", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-ratings.js:7"}, "properties": {"repobilityId": "187e14172203165b", "scanner": "scanner-primary", "fingerprint": "ec1fcbc4d285fc02", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-ratings.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-b345e6bfc1044a9a", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in netlify/functions/admin-publish.js:78"}, "properties": {"repobilityId": "8ca951d9e1f67dc7", "scanner": "scanner-primary", "fingerprint": "b345e6bfc1044a9a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/admin-publish.js"}, "region": {"startLine": 78}}}]}, {"ruleId": "scanner-7652530f5d4fcc45", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-publish.js:10"}, "properties": {"repobilityId": "03d7a14528585090", "scanner": "scanner-primary", "fingerprint": "7652530f5d4fcc45", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/admin-publish.js"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-0a6c3f6510fee55e", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-beta.js:7"}, "properties": {"repobilityId": "c89bf9dc2dec4108", "scanner": "scanner-primary", "fingerprint": "0a6c3f6510fee55e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-picks-beta.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-4654ab7b586d7e83", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-history.js:9"}, "properties": {"repobilityId": "2ce62776e01fc066", "scanner": "scanner-primary", "fingerprint": "4654ab7b586d7e83", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/admin-history.js"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-063d8ac80e40c06b", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks.js:7"}, "properties": {"repobilityId": "ca10be36a7921394", "scanner": "scanner-primary", "fingerprint": "063d8ac80e40c06b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-picks.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-3ae2d0ec7b86297a", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/post-truth-reply.js:12"}, "properties": {"repobilityId": "053f6adfc8919b35", "scanner": "scanner-primary", "fingerprint": "3ae2d0ec7b86297a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/post-truth-reply.js"}, "region": {"startLine": 12}}}]}, {"ruleId": "scanner-e662682c3bd67259", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/create-p2p-bet-web.js:7"}, "properties": {"repobilityId": "1482ed0a0d627bab", "scanner": "scanner-primary", "fingerprint": "e662682c3bd67259", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/create-p2p-bet-web.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-7755467dca83bbb2", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-alpha.js:7"}, "properties": {"repobilityId": "813a792b14b38042", "scanner": "scanner-primary", "fingerprint": "7755467dca83bbb2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-picks-alpha.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-40d0738d438f26b4", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in netlify/functions/search-x.js:398"}, "properties": {"repobilityId": "4f53bbf915e7e793", "scanner": "scanner-primary", "fingerprint": "40d0738d438f26b4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/search-x.js"}, "region": {"startLine": 398}}}]}, {"ruleId": "scanner-928c6b216334fe91", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/search-x.js:12"}, "properties": {"repobilityId": "6f0e3224b9ac3846", "scanner": "scanner-primary", "fingerprint": "928c6b216334fe91", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/search-x.js"}, "region": {"startLine": 12}}}]}, {"ruleId": "scanner-7f271f4f2b5c51fc", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-auth.js:10"}, "properties": {"repobilityId": "07f943295b5a4f0b", "scanner": "scanner-primary", "fingerprint": "7f271f4f2b5c51fc", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/admin-auth.js"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-7ea0222286492a97", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-kalshi-paper.js:11"}, "properties": {"repobilityId": "38de5730ccf95102", "scanner": "scanner-primary", "fingerprint": "7ea0222286492a97", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-kalshi-paper.js"}, "region": {"startLine": 11}}}]}, {"ruleId": "scanner-4c7f4ad54f328d72", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/kalshi-cancel.js:11"}, "properties": {"repobilityId": "3a0d91231aa59f02", "scanner": "scanner-primary", "fingerprint": "4c7f4ad54f328d72", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/kalshi-cancel.js"}, "region": {"startLine": 11}}}]}, {"ruleId": "scanner-13597d28fe78c817", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/matching-engine-background.js:32"}, "properties": {"repobilityId": "0b4401eb7ac8a2b1", "scanner": "scanner-primary", "fingerprint": "13597d28fe78c817", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/matching-engine-background.js"}, "region": {"startLine": 32}}}]}, {"ruleId": "scanner-91385f40af64764f", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-guardian.js:7"}, "properties": {"repobilityId": "439d4fdf577d65c3", "scanner": "scanner-primary", "fingerprint": "91385f40af64764f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-guardian.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-ade1add015ef0345", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-bet.js:9"}, "properties": {"repobilityId": "3a2bb3fc0f77ade6", "scanner": "scanner-primary", "fingerprint": "ade1add015ef0345", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-bet.js"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-d556c0fecc8ea51a", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/publish-blog-post.js:13"}, "properties": {"repobilityId": "6e8ccbf17da5afeb", "scanner": "scanner-primary", "fingerprint": "d556c0fecc8ea51a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/publish-blog-post.js"}, "region": {"startLine": 13}}}]}, {"ruleId": "scanner-93e545499b47de49", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/challenge-sms.js:7"}, "properties": {"repobilityId": "a7a59a538329613a", "scanner": "scanner-primary", "fingerprint": "93e545499b47de49", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/challenge-sms.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-ad6d862ea81af47f", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-truth-bets.js:13"}, "properties": {"repobilityId": "3654bb57965e3908", "scanner": "scanner-primary", "fingerprint": "ad6d862ea81af47f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-truth-bets.js"}, "region": {"startLine": 13}}}]}, {"ruleId": "scanner-2110ff0c8c036a6f", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/kalshi-scan.js:13"}, "properties": {"repobilityId": "22df802353333e9a", "scanner": "scanner-primary", "fingerprint": "2110ff0c8c036a6f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/kalshi-scan.js"}, "region": {"startLine": 13}}}]}, {"ruleId": "scanner-35c6559b7a0fea95", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-queue.js:12"}, "properties": {"repobilityId": "878314776867b2b8", "scanner": "scanner-primary", "fingerprint": "35c6559b7a0fea95", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/admin-queue.js"}, "region": {"startLine": 12}}}]}, {"ruleId": "scanner-39712761e5be39a5", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/priority-signup.js:10"}, "properties": {"repobilityId": "6b6a8c8643cc39ec", "scanner": "scanner-primary", "fingerprint": "39712761e5be39a5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/priority-signup.js"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-a015444e561f2a65", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/patch-picks.js:5"}, "properties": {"repobilityId": "02873b5825445d69", "scanner": "scanner-primary", "fingerprint": "a015444e561f2a65", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/patch-picks.js"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-acc3b5d31a4e38d9", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-mvp.js:7"}, "properties": {"repobilityId": "bc4c2c86d28a1e0e", "scanner": "scanner-primary", "fingerprint": "acc3b5d31a4e38d9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-picks-mvp.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-a88adcfee70130a4", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/truth-stories.js:9"}, "properties": {"repobilityId": "b4db60376089868d", "scanner": "scanner-primary", "fingerprint": "a88adcfee70130a4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/truth-stories.js"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-5a1932420dc3ce16", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-kalshi.js:6"}, "properties": {"repobilityId": "c95858a40abc5b36", "scanner": "scanner-primary", "fingerprint": "5a1932420dc3ce16", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-kalshi.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-9cc3ad97e5d02ac4", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/serve-media.js:34"}, "properties": {"repobilityId": "6d354dab84e7bc8e", "scanner": "scanner-primary", "fingerprint": "9cc3ad97e5d02ac4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/serve-media.js"}, "region": {"startLine": 34}}}]}, {"ruleId": "scanner-c2b820eadbc408a6", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/exodus-scan-background.js:20"}, "properties": {"repobilityId": "997e3ffe38ac0c1b", "scanner": "scanner-primary", "fingerprint": "c2b820eadbc408a6", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/exodus-scan-background.js"}, "region": {"startLine": 20}}}]}, {"ruleId": "scanner-1157b7a4cfc9b7c5", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/betty-sms.js:8"}, "properties": {"repobilityId": "91abdcb566facf53", "scanner": "scanner-primary", "fingerprint": "1157b7a4cfc9b7c5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/betty-sms.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-f61791aaa2dd485e", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/phone-verify.js:11"}, "properties": {"repobilityId": "c36beb38b58c2cd9", "scanner": "scanner-primary", "fingerprint": "f61791aaa2dd485e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/phone-verify.js"}, "region": {"startLine": 11}}}]}, {"ruleId": "scanner-e92e8007f0f9f37f", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-p2p-user.js:5"}, "properties": {"repobilityId": "ce690e96ced5cabe", "scanner": "scanner-primary", "fingerprint": "e92e8007f0f9f37f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-p2p-user.js"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-bffba8e230029b97", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks.js:6"}, "properties": {"repobilityId": "f89df9bedbb65017", "scanner": "scanner-primary", "fingerprint": "bffba8e230029b97", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-picks.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-d41db846e79802cd", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/test-webet-pipeline.js:10"}, "properties": {"repobilityId": "edf79b6b636cf7bb", "scanner": "scanner-primary", "fingerprint": "d41db846e79802cd", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/test-webet-pipeline.js"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-6a9ac91c84f04c11", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/create-p2p-bet.js:14"}, "properties": {"repobilityId": "a3e577ae85073e8f", "scanner": "scanner-primary", "fingerprint": "6a9ac91c84f04c11", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/create-p2p-bet.js"}, "region": {"startLine": 14}}}]}, {"ruleId": "scanner-fcf487ee5a93906d", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/claude-execute.js:5"}, "properties": {"repobilityId": "9e78f84bf46a2660", "scanner": "scanner-primary", "fingerprint": "fcf487ee5a93906d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/claude-execute.js"}, "region": {"startLine": 5}}}]}, {"ruleId": "scanner-e4bfcdca6140d469", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-props.js:6"}, "properties": {"repobilityId": "c0fe74478a816f7f", "scanner": "scanner-primary", "fingerprint": "e4bfcdca6140d469", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-picks-props.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-92e26c4f5a9b5da3", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-mlb-props.js:7"}, "properties": {"repobilityId": "00db5d360c81039e", "scanner": "scanner-primary", "fingerprint": "92e26c4f5a9b5da3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-picks-mlb-props.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-21dad69f607180ed", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/convert-bet.js:15"}, "properties": {"repobilityId": "d8c47322fed8ac8b", "scanner": "scanner-primary", "fingerprint": "21dad69f607180ed", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/convert-bet.js"}, "region": {"startLine": 15}}}]}, {"ruleId": "scanner-029675c588a2c543", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-exodus.js:16"}, "properties": {"repobilityId": "104772e2c68d70e7", "scanner": "scanner-primary", "fingerprint": "029675c588a2c543", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-exodus.js"}, "region": {"startLine": 16}}}]}, {"ruleId": "scanner-247e128d02e959e1", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-v2.js:8"}, "properties": {"repobilityId": "d130fb4cb0e4b7e8", "scanner": "scanner-primary", "fingerprint": "247e128d02e959e1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-picks-v2.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-8a69553bcd3d620c", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/create-bet.js:24"}, "properties": {"repobilityId": "415b6e1161396341", "scanner": "scanner-primary", "fingerprint": "8a69553bcd3d620c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/create-bet.js"}, "region": {"startLine": 24}}}]}, {"ruleId": "scanner-10003caf0b59bdc3", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-sniper.js:8"}, "properties": {"repobilityId": "c4003f2bc322a3cf", "scanner": "scanner-primary", "fingerprint": "10003caf0b59bdc3", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/admin-sniper.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-53c434a12065c9f2", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/convert-bet-batch.js:7"}, "properties": {"repobilityId": "d62b625504753108", "scanner": "scanner-primary", "fingerprint": "53c434a12065c9f2", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/convert-bet-batch.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-75ff237720d638fa", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-exodus.js:13"}, "properties": {"repobilityId": "15e43ed0be99931a", "scanner": "scanner-primary", "fingerprint": "75ff237720d638fa", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-exodus.js"}, "region": {"startLine": 13}}}]}, {"ruleId": "scanner-c549a003f5d4e547", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/exodus-post-truth.js:23"}, "properties": {"repobilityId": "518ab990a8b714c1", "scanner": "scanner-primary", "fingerprint": "c549a003f5d4e547", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/exodus-post-truth.js"}, "region": {"startLine": 23}}}]}, {"ruleId": "scanner-78bf42f39ace7b26", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/check-resolution.js:16"}, "properties": {"repobilityId": "82aa795595e8d918", "scanner": "scanner-primary", "fingerprint": "78bf42f39ace7b26", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/check-resolution.js"}, "region": {"startLine": 16}}}]}, {"ruleId": "scanner-49e45d8d950e17f9", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/market-bet-settle.js:7"}, "properties": {"repobilityId": "98285a95366c73ff", "scanner": "scanner-primary", "fingerprint": "49e45d8d950e17f9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/market-bet-settle.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-a54ff9f6599ae093", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-guardian.js:6"}, "properties": {"repobilityId": "1bc9008855d95886", "scanner": "scanner-primary", "fingerprint": "a54ff9f6599ae093", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-guardian.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-52ff9a9020894019", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-blog-post.js:12"}, "properties": {"repobilityId": "499ce6a6d0e0d76f", "scanner": "scanner-primary", "fingerprint": "52ff9a9020894019", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-blog-post.js"}, "region": {"startLine": 12}}}]}, {"ruleId": "scanner-73e3d75d5ee6923d", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/betty-chat.js:6"}, "properties": {"repobilityId": "dad2a4ff881e12dd", "scanner": "scanner-primary", "fingerprint": "73e3d75d5ee6923d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/betty-chat.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-4488787b59459079", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-props.js:7"}, "properties": {"repobilityId": "4d2b83ce67784375", "scanner": "scanner-primary", "fingerprint": "4488787b59459079", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-picks-props.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-023801e172b6fba4", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-analytics.js:8"}, "properties": {"repobilityId": "56192d005fa1f7db", "scanner": "scanner-primary", "fingerprint": "023801e172b6fba4", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-analytics.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-689146d879f35a5a", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-bettoredge.js:9"}, "properties": {"repobilityId": "c762b6874f079ca2", "scanner": "scanner-primary", "fingerprint": "689146d879f35a5a", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-bettoredge.js"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-7d549bf70bb8c75b", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/resolve-p2p-bet.js:7"}, "properties": {"repobilityId": "191786bc0d4b395d", "scanner": "scanner-primary", "fingerprint": "7d549bf70bb8c75b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/resolve-p2p-bet.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-5bb24225876cba54", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-alpha.js:8"}, "properties": {"repobilityId": "9f60d232a368e198", "scanner": "scanner-primary", "fingerprint": "5bb24225876cba54", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-results-alpha.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-feb3d31052f7459f", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/generate-truth-content-background.js:15"}, "properties": {"repobilityId": "81a11f6e96a20615", "scanner": "scanner-primary", "fingerprint": "feb3d31052f7459f", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/generate-truth-content-background.js"}, "region": {"startLine": 15}}}]}, {"ruleId": "scanner-ff4948c71430e973", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-ratings.js:10"}, "properties": {"repobilityId": "5b8229060c284f08", "scanner": "scanner-primary", "fingerprint": "ff4948c71430e973", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-ratings.js"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-3d58b0d4652b9cba", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/exodus-challenge.js:17"}, "properties": {"repobilityId": "a5daf5b276bcc147", "scanner": "scanner-primary", "fingerprint": "3d58b0d4652b9cba", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/exodus-challenge.js"}, "region": {"startLine": 17}}}]}, {"ruleId": "scanner-cf6860bbdaee12a7", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/markets.js:7"}, "properties": {"repobilityId": "3b46dc31aee0d5c0", "scanner": "scanner-primary", "fingerprint": "cf6860bbdaee12a7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/markets.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-f70d7a34e0191c40", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-webet-content.js:11"}, "properties": {"repobilityId": "1204de80e62f09d6", "scanner": "scanner-primary", "fingerprint": "f70d7a34e0191c40", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-webet-content.js"}, "region": {"startLine": 11}}}]}, {"ruleId": "scanner-e21af13ea5f2e0cb", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-alpha-sim.js:7"}, "properties": {"repobilityId": "d86f1c1e5b774a35", "scanner": "scanner-primary", "fingerprint": "e21af13ea5f2e0cb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-picks-alpha-sim.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-3bccbff65c14e637", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/accept-p2p-bet-web.js:7"}, "properties": {"repobilityId": "116b0399c6108ac2", "scanner": "scanner-primary", "fingerprint": "3bccbff65c14e637", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/accept-p2p-bet-web.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-ec6d7ff3bb9392b5", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-results-mvp.js:6"}, "properties": {"repobilityId": "f471817c9409b088", "scanner": "scanner-primary", "fingerprint": "ec6d7ff3bb9392b5", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-results-mvp.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-f0137ea2fc5b3ee7", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-mvp.js:6"}, "properties": {"repobilityId": "e7d154564d93f62b", "scanner": "scanner-primary", "fingerprint": "f0137ea2fc5b3ee7", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-picks-mvp.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-cc67610f94c16124", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-be.js:6"}, "properties": {"repobilityId": "55e5a79e873345a4", "scanner": "scanner-primary", "fingerprint": "cc67610f94c16124", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-picks-be.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-e1745b0487dd2318", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-fox-picks.js:8"}, "properties": {"repobilityId": "dc7ed972408506c9", "scanner": "scanner-primary", "fingerprint": "e1745b0487dd2318", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-fox-picks.js"}, "region": {"startLine": 8}}}]}, {"ruleId": "scanner-76d3c86c1f8d1482", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-feed.js:9"}, "properties": {"repobilityId": "593545967789cf2d", "scanner": "scanner-primary", "fingerprint": "76d3c86c1f8d1482", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/admin-feed.js"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-04498186858964fb", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-beta.js:6"}, "properties": {"repobilityId": "5a8f696eb7e33d7b", "scanner": "scanner-primary", "fingerprint": "04498186858964fb", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-picks-beta.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-8b15672b4085fd1d", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-compose-post.js:9"}, "properties": {"repobilityId": "736f1dac6486cf75", "scanner": "scanner-primary", "fingerprint": "8b15672b4085fd1d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/admin-compose-post.js"}, "region": {"startLine": 9}}}]}, {"ruleId": "scanner-0ff5edd8531f13f0", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-kalshi.js:6"}, "properties": {"repobilityId": "a349da1981c5d84e", "scanner": "scanner-primary", "fingerprint": "0ff5edd8531f13f0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-kalshi.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-89511d96664a613b", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/run-picks-mlb.js:6"}, "properties": {"repobilityId": "cf46889d39ad90fa", "scanner": "scanner-primary", "fingerprint": "89511d96664a613b", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/run-picks-mlb.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-34da32d8a493e62d", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-picks-mlb.js:7"}, "properties": {"repobilityId": "c159746aa721b624", "scanner": "scanner-primary", "fingerprint": "34da32d8a493e62d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-picks-mlb.js"}, "region": {"startLine": 7}}}]}, {"ruleId": "scanner-72a9e9687257224c", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/get-betty-convos.js:6"}, "properties": {"repobilityId": "2e6989e73e510b45", "scanner": "scanner-primary", "fingerprint": "72a9e9687257224c", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/get-betty-convos.js"}, "region": {"startLine": 6}}}]}, {"ruleId": "scanner-b3ad7f02a3af8b01", "level": "warning", "message": {"text": "Insecure pattern 'weak_hash' in netlify/functions/admin-metrics.js:81"}, "properties": {"repobilityId": "760d736077786f30", "scanner": "scanner-primary", "fingerprint": "b3ad7f02a3af8b01", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "weak_hash"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/admin-metrics.js"}, "region": {"startLine": 81}}}]}, {"ruleId": "scanner-ace11920646586ba", "level": "warning", "message": {"text": "Insecure pattern 'cors_wildcard' in netlify/functions/admin-metrics.js:10"}, "properties": {"repobilityId": "dbd3057a1f9632d5", "scanner": "scanner-primary", "fingerprint": "ace11920646586ba", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "cors_wildcard"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "netlify/functions/admin-metrics.js"}, "region": {"startLine": 10}}}]}, {"ruleId": "scanner-9f2e0fb55679d638", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in mlb-props/index.html:390"}, "properties": {"repobilityId": "f0e57a08fadc2833", "scanner": "scanner-primary", "fingerprint": "9f2e0fb55679d638", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "mlb-props/index.html"}, "region": {"startLine": 390}}}]}, {"ruleId": "scanner-d9dce7a8cff2205d", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in alpha/index.html:1277"}, "properties": {"repobilityId": "c4c04f7c78590e91", "scanner": "scanner-primary", "fingerprint": "d9dce7a8cff2205d", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "alpha/index.html"}, "region": {"startLine": 1277}}}]}, {"ruleId": "scanner-877aabd314a46da1", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in claude/index.html:1"}, "properties": {"repobilityId": "1e0d2873309dc886", "scanner": "scanner-primary", "fingerprint": "877aabd314a46da1", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "claude/index.html"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4c46c93342dc7cd9", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in claude/404.html:1"}, "properties": {"repobilityId": "156d9ed8a666b2e9", "scanner": "scanner-primary", "fingerprint": "4c46c93342dc7cd9", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "claude/404.html"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-33aa1e5c882bb849", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in claude/_not-found.html:1"}, "properties": {"repobilityId": "cabb421bf78340fc", "scanner": "scanner-primary", "fingerprint": "33aa1e5c882bb849", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "claude/_not-found.html"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-f7aa25d4b7f0f153", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in claude/_next/static/chunks/00ilazh50sdzh.js:1"}, "properties": {"repobilityId": "4a50a7a28e4be95d", "scanner": "scanner-primary", "fingerprint": "f7aa25d4b7f0f153", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "claude/_next/static/chunks/00ilazh50sdzh.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-4ac10e07b178210e", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in claude/_next/static/chunks/00ilazh50sdzh.js:1"}, "properties": {"repobilityId": "0d098d90db1f4459", "scanner": "scanner-primary", "fingerprint": "4ac10e07b178210e", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "claude/_next/static/chunks/00ilazh50sdzh.js"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-6b9a796317f06ba0", "level": "warning", "message": {"text": "Insecure pattern 'dangerous_innerhtml' in claude/_next/static/chunks/0ht900cau6_ur.js:31"}, "properties": {"repobilityId": "03ede32f46fa3b62", "scanner": "scanner-primary", "fingerprint": "6b9a796317f06ba0", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "dangerous_innerhtml"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "claude/_next/static/chunks/0ht900cau6_ur.js"}, "region": {"startLine": 31}}}]}, {"ruleId": "scanner-d6613a2f61f003af", "level": "warning", "message": {"text": "Insecure pattern 'direct_innerhtml_assignment' in edge-beta/index.html:1252"}, "properties": {"repobilityId": "1b5fd4b4aa5b6724", "scanner": "scanner-primary", "fingerprint": "d6613a2f61f003af", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["owasp", "direct_innerhtml_assignment"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "edge-beta/index.html"}, "region": {"startLine": 1252}}}]}, {"ruleId": "scanner-4601e3ad3bb28677", "level": "warning", "message": {"text": "No CI/CD pipelines detected"}, "properties": {"repobilityId": "c3ee439bce2bc51e", "scanner": "scanner-primary", "fingerprint": "4601e3ad3bb28677", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-c2edcbfa4930ef31", "level": "note", "message": {"text": "Very large file: netlify/functions/generate-picks-background.js (1786 lines)"}, "properties": {"repobilityId": "c33e36c53bc2a0b1", "scanner": "scanner-primary", "fingerprint": "c2edcbfa4930ef31", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-33af12737f1c873b", "level": "note", "message": {"text": "Very large file: netlify/functions/generate-picks-alpha-background.js (4514 lines)"}, "properties": {"repobilityId": "5a29d2c1515ad0be", "scanner": "scanner-primary", "fingerprint": "33af12737f1c873b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-4f6d11acdd79bbb2", "level": "note", "message": {"text": "Very large file: netlify/functions/generate-picks-mvp-background.js (4618 lines)"}, "properties": {"repobilityId": "82099cba5d6db70d", "scanner": "scanner-primary", "fingerprint": "4f6d11acdd79bbb2", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-fbe090097ded056f", "level": "note", "message": {"text": "Very large file: netlify/functions/generate-picks-mlb-background.js (1358 lines)"}, "properties": {"repobilityId": "113538a0953fcfa3", "scanner": "scanner-primary", "fingerprint": "fbe090097ded056f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e951823cc8c097d0", "level": "note", "message": {"text": "Very large file: netlify/functions/generate-picks-beta-background.js (3870 lines)"}, "properties": {"repobilityId": "9bb58198421b6d7b", "scanner": "scanner-primary", "fingerprint": "e951823cc8c097d0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-9c9278dde00018ee", "level": "note", "message": {"text": "Very large file: netlify/functions/generate-fox-background.js (1185 lines)"}, "properties": {"repobilityId": "2476fecfbecdf828", "scanner": "scanner-primary", "fingerprint": "9c9278dde00018ee", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-36d29f12c449949e", "level": "note", "message": {"text": "Very large file: netlify/functions/generate-picks-be-background.js (2198 lines)"}, "properties": {"repobilityId": "b49a302e3a847808", "scanner": "scanner-primary", "fingerprint": "36d29f12c449949e", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6893a6c8b0861585", "level": "warning", "message": {"text": "Very low test-to-source ratio"}, "properties": {"repobilityId": "54a7de3f06314bf0", "scanner": "scanner-primary", "fingerprint": "6893a6c8b0861585", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["tests", "coverage"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "42bddaf2b2671092", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-faccb9061e9b52a0", "level": "note", "message": {"text": "No README detected"}, "properties": {"repobilityId": "0d880b856cdcc697", "scanner": "scanner-primary", "fingerprint": "faccb9061e9b52a0", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["docs", "readme", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "d4a3448ddb3d7877", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-72b2a6250083a784", "level": "warning", "message": {"text": "Placeholder or mock-heavy implementation detected"}, "properties": {"repobilityId": "fd87df897fdeec05", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "20ab249d2bd648b8", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "warning", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "ce5ef97a70863ae7", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-749d4bc1bd66df5f", "level": "warning", "message": {"text": "Agent instructions exist but release-hardening basics are missing"}, "properties": {"repobilityId": "0d0e94461d790f40", "scanner": "scanner-primary", "fingerprint": "749d4bc1bd66df5f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["agent-instructions", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "cda6bf9810eea5db", "scanner": "scanner-primary", "fingerprint": "ea8f3013f588db25", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-8424db9c75e04ba4", "level": "none", "message": {"text": "Very short observed git history"}, "properties": {"repobilityId": "a361e5e5442a8d78", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-3e4f5fb8cddb8a9c", "level": "none", "message": {"text": "Commented-code block (7 lines) in backtest-v10.js:2"}, "properties": {"repobilityId": "d3e54b8ee75cba20", "scanner": "scanner-primary", "fingerprint": "3e4f5fb8cddb8a9c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5420b2900475efba", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 backtest-v10.js:132"}, "properties": {"repobilityId": "7cd8bcf2eb134519", "scanner": "scanner-primary", "fingerprint": "5420b2900475efba", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-461059ce2f400f6d", "level": "none", "message": {"text": "Commented-code block (5 lines) in nav.js:1"}, "properties": {"repobilityId": "faaf6f1fa4cf7d31", "scanner": "scanner-primary", "fingerprint": "461059ce2f400f6d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e2644565decf959e", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 wbai-login.js:91"}, "properties": {"repobilityId": "b18b5b9503635bb8", "scanner": "scanner-primary", "fingerprint": "e2644565decf959e", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0654c86bfc8ffe82", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/kalshi-key.js:1"}, "properties": {"repobilityId": "328584d546c5d79f", "scanner": "scanner-primary", "fingerprint": "0654c86bfc8ffe82", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-95f5d625bc436cb4", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/kalshi-key.js:28"}, "properties": {"repobilityId": "5d923a0a51c5e33e", "scanner": "scanner-primary", "fingerprint": "95f5d625bc436cb4", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3a61437b41fba692", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-background.js:201"}, "properties": {"repobilityId": "f61d590d3deb6ef1", "scanner": "scanner-primary", "fingerprint": "3a61437b41fba692", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8c75c8cb0f3f1560", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/get-picks-premium.js:1"}, "properties": {"repobilityId": "fe19c811cbc90ee8", "scanner": "scanner-primary", "fingerprint": "8c75c8cb0f3f1560", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d170c85cc643f2fa", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/bootstrap-kalshi-key.js:63"}, "properties": {"repobilityId": "1d55326d1c828a03", "scanner": "scanner-primary", "fingerprint": "d170c85cc643f2fa", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1918e3572306d2d3", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/voicebet-tts.js:25"}, "properties": {"repobilityId": "b96300c94060d302", "scanner": "scanner-primary", "fingerprint": "1918e3572306d2d3", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2ab925325aa931c9", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/scan-ap-mentions.js:69"}, "properties": {"repobilityId": "42f939e110004910", "scanner": "scanner-primary", "fingerprint": "2ab925325aa931c9", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d95a51d5174a291c", "level": "none", "message": {"text": "Commented-code block (6 lines) in netlify/functions/kalshi-execute-background.js:271"}, "properties": {"repobilityId": "9a0e3eb8d0b87685", "scanner": "scanner-primary", "fingerprint": "d95a51d5174a291c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-cbb4ffa42abecf89", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/kalshi-execute-background.js:628"}, "properties": {"repobilityId": "3b78a13dbf1bad7b", "scanner": "scanner-primary", "fingerprint": "cbb4ffa42abecf89", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-294cfa15a5a7ea08", "level": "none", "message": {"text": "Commented-code block (6 lines) in netlify/functions/build-ratings-background.js:1"}, "properties": {"repobilityId": "eddbecc25d397dba", "scanner": "scanner-primary", "fingerprint": "294cfa15a5a7ea08", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6e58664ba3a2bd24", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/build-ratings-background.js:450"}, "properties": {"repobilityId": "4b340ed7d9b54f3e", "scanner": "scanner-primary", "fingerprint": "6e58664ba3a2bd24", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5bc7b2212b4e38cb", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/upload-media.js:48"}, "properties": {"repobilityId": "5f85bd7f97cc960a", "scanner": "scanner-primary", "fingerprint": "5bc7b2212b4e38cb", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1758cb60bb5ae021", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/track-clv.js:1"}, "properties": {"repobilityId": "d33dfb6e206e513a", "scanner": "scanner-primary", "fingerprint": "1758cb60bb5ae021", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-764089757e0806fc", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/track-clv.js:192"}, "properties": {"repobilityId": "14031d313da5989d", "scanner": "scanner-primary", "fingerprint": "764089757e0806fc", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-f42be86c5eae521d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-kalshi-scan.js:30"}, "properties": {"repobilityId": "466e2c0ba917975f", "scanner": "scanner-primary", "fingerprint": "f42be86c5eae521d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9f927b985c19a4de", "level": "none", "message": {"text": "Commented-code block (7 lines) in netlify/functions/verify-picks.js:4"}, "properties": {"repobilityId": "ec156d3a7a41ebd9", "scanner": "scanner-primary", "fingerprint": "9f927b985c19a4de", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-81a093197806466f", "level": "none", "message": {"text": "Commented-code block (9 lines) in netlify/functions/generate-picks-v2-background.js:1"}, "properties": {"repobilityId": "5882a687b40edaa7", "scanner": "scanner-primary", "fingerprint": "81a093197806466f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3388ff1cb8d27fbf", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-v2-background.js:220"}, "properties": {"repobilityId": "c0c20582319a4577", "scanner": "scanner-primary", "fingerprint": "3388ff1cb8d27fbf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d577b404f0f2913c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/exodus-test.js:36"}, "properties": {"repobilityId": "a0feef61e14072e7", "scanner": "scanner-primary", "fingerprint": "d577b404f0f2913c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-546e1d20569606d1", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-truth-feed.js:52"}, "properties": {"repobilityId": "6411feba773228f8", "scanner": "scanner-primary", "fingerprint": "546e1d20569606d1", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-bf9a78c3b9586ed6", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/post-to-x.js:87"}, "properties": {"repobilityId": "be65c0c2419841e8", "scanner": "scanner-primary", "fingerprint": "bf9a78c3b9586ed6", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8682286d9631605a", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/get-results-mlb.js:1"}, "properties": {"repobilityId": "eb803b094db2a3f6", "scanner": "scanner-primary", "fingerprint": "8682286d9631605a", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-d3177aa733e5b6c0", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/xai-analyze.js:34"}, "properties": {"repobilityId": "fb98ab96bcb4e502", "scanner": "scanner-primary", "fingerprint": "d3177aa733e5b6c0", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-60ae98abc6cc1932", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/p2p-challenge.js:91"}, "properties": {"repobilityId": "c267be92d3e3e95d", "scanner": "scanner-primary", "fingerprint": "60ae98abc6cc1932", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-aacf338bb16e0624", "level": "none", "message": {"text": "Commented-code block (15 lines) in netlify/functions/generate-picks-alpha-background.js:1"}, "properties": {"repobilityId": "352f42dd6632f3e5", "scanner": "scanner-primary", "fingerprint": "aacf338bb16e0624", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7d611055c8af546d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-alpha-background.js:550"}, "properties": {"repobilityId": "d78908e2faa676aa", "scanner": "scanner-primary", "fingerprint": "7d611055c8af546d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-42f79d8dedb4edab", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/x-oauth-callback.js:47"}, "properties": {"repobilityId": "096954c2636eb0b8", "scanner": "scanner-primary", "fingerprint": "42f79d8dedb4edab", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-eb54cf4ccc7e254d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-polymarket.js:65"}, "properties": {"repobilityId": "8455192c15817a38", "scanner": "scanner-primary", "fingerprint": "eb54cf4ccc7e254d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9391b79ac47a7b72", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/claude-process.js:34"}, "properties": {"repobilityId": "685037f7260cd784", "scanner": "scanner-primary", "fingerprint": "9391b79ac47a7b72", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2cef49c7507d9532", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/trigger-clv.js:1"}, "properties": {"repobilityId": "f230fd2b134817d9", "scanner": "scanner-primary", "fingerprint": "2cef49c7507d9532", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-54b15f4de1f3393c", "level": "none", "message": {"text": "Commented-code block (13 lines) in netlify/functions/generate-picks-mvp-background.js:1"}, "properties": {"repobilityId": "66383c34e6070b67", "scanner": "scanner-primary", "fingerprint": "54b15f4de1f3393c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5483d5c319e818e9", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-mvp-background.js:566"}, "properties": {"repobilityId": "5d9b7fbd5138fda4", "scanner": "scanner-primary", "fingerprint": "5483d5c319e818e9", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-35e027b3145c01a6", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/post-truth-reply.js:61"}, "properties": {"repobilityId": "66907d101b6584d6", "scanner": "scanner-primary", "fingerprint": "35e027b3145c01a6", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-d8e3a71536f76a61", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/create-p2p-bet-web.js:173"}, "properties": {"repobilityId": "f4b4a35fde101192", "scanner": "scanner-primary", "fingerprint": "d8e3a71536f76a61", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-278044369672ce32", "level": "none", "message": {"text": "Commented-code block (6 lines) in netlify/functions/search-x.js:1"}, "properties": {"repobilityId": "7d6c5bc4e5d0652c", "scanner": "scanner-primary", "fingerprint": "278044369672ce32", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-52fff0efab3bbfef", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/search-x.js:151"}, "properties": {"repobilityId": "887b069a7d08e86d", "scanner": "scanner-primary", "fingerprint": "52fff0efab3bbfef", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-17a394208dee259c", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/generate-picks-mlb-background.js:1"}, "properties": {"repobilityId": "f95385b16c7993ed", "scanner": "scanner-primary", "fingerprint": "17a394208dee259c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a13ada30aa0254d5", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-mlb-background.js:582"}, "properties": {"repobilityId": "20669342d5fdb8b8", "scanner": "scanner-primary", "fingerprint": "a13ada30aa0254d5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-8b232c0bb7ff980f", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/confirm-starters-mlb.js:1"}, "properties": {"repobilityId": "47b08cd59740aba7", "scanner": "scanner-primary", "fingerprint": "8b232c0bb7ff980f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-6f39214592bb1243", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/confirm-starters-mlb.js:87"}, "properties": {"repobilityId": "27a2cc5388aa0245", "scanner": "scanner-primary", "fingerprint": "6f39214592bb1243", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-e04090931f1de66f", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-guardian-background.js:129"}, "properties": {"repobilityId": "cc5ea48eabc48d48", "scanner": "scanner-primary", "fingerprint": "e04090931f1de66f", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-cb2303d48cdfd5e5", "level": "none", "message": {"text": "Commented-code block (6 lines) in netlify/functions/get-kalshi-paper.js:1"}, "properties": {"repobilityId": "6bc1e8ff0c338758", "scanner": "scanner-primary", "fingerprint": "cb2303d48cdfd5e5", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-4956b8bfda1883e4", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/matching-engine-background.js:45"}, "properties": {"repobilityId": "139e4ddb7eca88b0", "scanner": "scanner-primary", "fingerprint": "4956b8bfda1883e4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e73586c7c34d0cc3", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/matching-engine-background.js:234"}, "properties": {"repobilityId": "0462b718f1d547b3", "scanner": "scanner-primary", "fingerprint": "e73586c7c34d0cc3", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-db1d98eee8636950", "level": "none", "message": {"text": "Commented-code block (7 lines) in netlify/functions/admin-auto-draft.js:1"}, "properties": {"repobilityId": "d85b9f3fef35ae73", "scanner": "scanner-primary", "fingerprint": "db1d98eee8636950", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7975201b6053ec22", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/admin-auto-draft.js:212"}, "properties": {"repobilityId": "b087ba7d59ec48d1", "scanner": "scanner-primary", "fingerprint": "7975201b6053ec22", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2e3d0161849fb843", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/bootstrap-optimize.js:19"}, "properties": {"repobilityId": "b0e58c208de8a60d", "scanner": "scanner-primary", "fingerprint": "2e3d0161849fb843", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-0e101f182f7b992b", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/auth-sms-verify.js:1"}, "properties": {"repobilityId": "0d74d5f6b7fa9540", "scanner": "scanner-primary", "fingerprint": "0e101f182f7b992b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a65cc611875d12e4", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/kalshi-scan.js:1"}, "properties": {"repobilityId": "e807e4200d45fe2c", "scanner": "scanner-primary", "fingerprint": "a65cc611875d12e4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-16dea678503f10fb", "level": "none", "message": {"text": "Commented-code block (6 lines) in netlify/functions/admin-queue.js:1"}, "properties": {"repobilityId": "54ef3e13d67b54d5", "scanner": "scanner-primary", "fingerprint": "16dea678503f10fb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-263d623c91bf282b", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/generate-picks-mlb-props-background.js:1"}, "properties": {"repobilityId": "91cdc09407bb7ecf", "scanner": "scanner-primary", "fingerprint": "263d623c91bf282b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-3ff218db5f042626", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/p2p-stake.js:1"}, "properties": {"repobilityId": "b67d60fd15696268", "scanner": "scanner-primary", "fingerprint": "3ff218db5f042626", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-c50d6b6760f98d24", "level": "none", "message": {"text": "Commented-code block (6 lines) in netlify/functions/bettoredge-auth.js:1"}, "properties": {"repobilityId": "5f350422b38b9fe4", "scanner": "scanner-primary", "fingerprint": "c50d6b6760f98d24", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-b4157b812b6bafe8", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/bettoredge-auth.js:22"}, "properties": {"repobilityId": "4d515ee20425c207", "scanner": "scanner-primary", "fingerprint": "b4157b812b6bafe8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-7351af4e9feb7cf7", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/exodus-scan-background.js:441"}, "properties": {"repobilityId": "b94a2d0047646799", "scanner": "scanner-primary", "fingerprint": "7351af4e9feb7cf7", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-06dc4bde441ebf27", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/betty-sms.js:90"}, "properties": {"repobilityId": "95affd8ce4ada138", "scanner": "scanner-primary", "fingerprint": "06dc4bde441ebf27", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-50184f0610479aba", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/phone-verify.js:58"}, "properties": {"repobilityId": "e352eda085e79e46", "scanner": "scanner-primary", "fingerprint": "50184f0610479aba", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-61c9520d5c745a23", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/betty-webhook.js:92"}, "properties": {"repobilityId": "e84ed633f3b8ac5f", "scanner": "scanner-primary", "fingerprint": "61c9520d5c745a23", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3c952986e1fb31ae", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/create-p2p-bet.js:174"}, "properties": {"repobilityId": "92342bc59ae4de2c", "scanner": "scanner-primary", "fingerprint": "3c952986e1fb31ae", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b2723bf86f7a0b8e", "level": "none", "message": {"text": "Commented-code block (6 lines) in netlify/functions/trigger-kalshi-scan.js:1"}, "properties": {"repobilityId": "195f3f0cbfa30eb6", "scanner": "scanner-primary", "fingerprint": "b2723bf86f7a0b8e", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-8db59d0dba25e57c", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/trigger-kalshi-scan.js:44"}, "properties": {"repobilityId": "13d8f6cd1ce56e62", "scanner": "scanner-primary", "fingerprint": "8db59d0dba25e57c", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3908c69dde5bcffd", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/claude-execute.js:33"}, "properties": {"repobilityId": "1d8b127839c90d54", "scanner": "scanner-primary", "fingerprint": "3908c69dde5bcffd", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-3a291cbb7b3f98cd", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/webit-mock-pay.js:1"}, "properties": {"repobilityId": "136e9c8c80c2d566", "scanner": "scanner-primary", "fingerprint": "3a291cbb7b3f98cd", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-54fc0aa0408b3b86", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/generate-picks-beta-background.js:1"}, "properties": {"repobilityId": "60c67973a97f532d", "scanner": "scanner-primary", "fingerprint": "54fc0aa0408b3b86", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-7720821c917919c8", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-beta-background.js:443"}, "properties": {"repobilityId": "e11416d297a58a89", "scanner": "scanner-primary", "fingerprint": "7720821c917919c8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-94e75b2bf4f8139d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/auth-x-callback.js:63"}, "properties": {"repobilityId": "5e05caf13cd1f2c1", "scanner": "scanner-primary", "fingerprint": "94e75b2bf4f8139d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-38931eed96195acb", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/generate-picks-props-background.js:1"}, "properties": {"repobilityId": "bd776c5c65a0ba08", "scanner": "scanner-primary", "fingerprint": "38931eed96195acb", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1329642b99fd5803", "level": "none", "message": {"text": "Commented-code block (12 lines) in netlify/functions/convert-bet.js:1"}, "properties": {"repobilityId": "93090fccaac00f9c", "scanner": "scanner-primary", "fingerprint": "1329642b99fd5803", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-347783c28d1ad0a8", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/convert-bet.js:558"}, "properties": {"repobilityId": "78f0c9df2e8bde20", "scanner": "scanner-primary", "fingerprint": "347783c28d1ad0a8", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c4810a95e10582be", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/admin-sniper.js:67"}, "properties": {"repobilityId": "b625d96ab7dcea11", "scanner": "scanner-primary", "fingerprint": "c4810a95e10582be", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-053cd01906af8743", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/convert-bet-batch.js:192"}, "properties": {"repobilityId": "58ae5afb0d8e6911", "scanner": "scanner-primary", "fingerprint": "053cd01906af8743", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c8ec7c33eb14b908", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/auth-sms-start.js:56"}, "properties": {"repobilityId": "1de539e55fc5559b", "scanner": "scanner-primary", "fingerprint": "c8ec7c33eb14b908", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-486d9b08efe7064d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/exodus-post-truth.js:34"}, "properties": {"repobilityId": "553a30e5933728d9", "scanner": "scanner-primary", "fingerprint": "486d9b08efe7064d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-867e5b7484e3f1fa", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/grok-pipeline-background.js:137"}, "properties": {"repobilityId": "41d737d70f6d76b3", "scanner": "scanner-primary", "fingerprint": "867e5b7484e3f1fa", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-1246083a2f0155f2", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/get-results-alpha.js:1"}, "properties": {"repobilityId": "cb298feae39f6c72", "scanner": "scanner-primary", "fingerprint": "1246083a2f0155f2", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-f5cf73a4fcc2bb29", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-truth-content-background.js:365"}, "properties": {"repobilityId": "0974fbf9b44b141d", "scanner": "scanner-primary", "fingerprint": "f5cf73a4fcc2bb29", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2b317e07891a0a6b", "level": "none", "message": {"text": "Commented-code block (7 lines) in netlify/functions/get-ratings.js:1"}, "properties": {"repobilityId": "f9cb14b5c298c4ee", "scanner": "scanner-primary", "fingerprint": "2b317e07891a0a6b", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-164bfd8db81a00ad", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-ratings.js:35"}, "properties": {"repobilityId": "120e75891a9e5812", "scanner": "scanner-primary", "fingerprint": "164bfd8db81a00ad", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-b23559b4c6fff9e3", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/generate-fox-background.js:1"}, "properties": {"repobilityId": "0d4cb8a7707afa16", "scanner": "scanner-primary", "fingerprint": "b23559b4c6fff9e3", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-5364454ece405d6b", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-fox-background.js:130"}, "properties": {"repobilityId": "10a4d0fc356ec8de", "scanner": "scanner-primary", "fingerprint": "5364454ece405d6b", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-90b2ccbdf6536f70", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/markets.js:41"}, "properties": {"repobilityId": "9d2de7151b9db19c", "scanner": "scanner-primary", "fingerprint": "90b2ccbdf6536f70", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-969d0a58a158b4ae", "level": "none", "message": {"text": "Commented-code block (6 lines) in netlify/functions/self-optimize.js:1"}, "properties": {"repobilityId": "a67603a671055e18", "scanner": "scanner-primary", "fingerprint": "969d0a58a158b4ae", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-caa1ff8ee8593e37", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/self-optimize.js:63"}, "properties": {"repobilityId": "5f8910250d449c3d", "scanner": "scanner-primary", "fingerprint": "caa1ff8ee8593e37", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c77fd429403b8c48", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/get-fox-picks.js:1"}, "properties": {"repobilityId": "03bae23629527e06", "scanner": "scanner-primary", "fingerprint": "c77fd429403b8c48", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-1eb5f27e78ebf40f", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/trigger-kalshi.js:1"}, "properties": {"repobilityId": "5c1e748d93b81c35", "scanner": "scanner-primary", "fingerprint": "1eb5f27e78ebf40f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-54d9d61cac2e3d9d", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/admin-feed.js:230"}, "properties": {"repobilityId": "db1436783aca7f5c", "scanner": "scanner-primary", "fingerprint": "54d9d61cac2e3d9d", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-070820742d7429b6", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/trigger-exodus.js:23"}, "properties": {"repobilityId": "28ab6d8a110d6df1", "scanner": "scanner-primary", "fingerprint": "070820742d7429b6", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-9720ef40e5a9aab1", "level": "none", "message": {"text": "Commented-code block (5 lines) in netlify/functions/generate-picks-be-background.js:1"}, "properties": {"repobilityId": "c115ed9f0d752a11", "scanner": "scanner-primary", "fingerprint": "9720ef40e5a9aab1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-771cd18f2e9af6c5", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/generate-picks-be-background.js:225"}, "properties": {"repobilityId": "20dfd04ebe7ba75a", "scanner": "scanner-primary", "fingerprint": "771cd18f2e9af6c5", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-da91d5fe468afa32", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/admin-compose-post.js:109"}, "properties": {"repobilityId": "a10ca3a36157fc0e", "scanner": "scanner-primary", "fingerprint": "da91d5fe468afa32", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-5d6d3ec068af6d04", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 netlify/functions/get-betty-convos.js:31"}, "properties": {"repobilityId": "a0a70787bf9cfe30", "scanner": "scanner-primary", "fingerprint": "5d6d3ec068af6d04", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-0388b2ac47fe4247", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 claude/_next/static/chunks/159~m3zkbqs12.js:21"}, "properties": {"repobilityId": "0dbc152dec4b582f", "scanner": "scanner-primary", "fingerprint": "0388b2ac47fe4247", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-662b834490068664", "level": "note", "message": {"text": "Legacy-named symbol `unstable_legacy` in claude/_next/static/chunks/00ilazh50sdzh.js:1"}, "properties": {"repobilityId": "d754f3c21f6798a2", "scanner": "scanner-primary", "fingerprint": "662b834490068664", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "legacy-marker", "dead-code"]}}, {"ruleId": "scanner-49c0d3e7717d6939", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 claude/_next/static/chunks/09wmpm-jfenx..js:1"}, "properties": {"repobilityId": "f5783406c9e462af", "scanner": "scanner-primary", "fingerprint": "49c0d3e7717d6939", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-072aac9b5ca5b724", "level": "warning", "message": {"text": "`fetch()` without try/.catch or AbortSignal \u2014 claude/_next/static/chunks/turbopack-0g3m74-_xjj-i.js:1"}, "properties": {"repobilityId": "86c481c4acd52206", "scanner": "scanner-primary", "fingerprint": "072aac9b5ca5b724", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-4d223bfdf539b12d", "level": "note", "message": {"text": "42 env vars used in code but missing from .env.example"}, "properties": {"repobilityId": "5bbbd2b50dcb630d", "scanner": "scanner-primary", "fingerprint": "4d223bfdf539b12d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "config-drift"]}}]}]}