{"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": "MINED111", "name": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or ", "shortDescription": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "fullDescription": {"text": "Either narrow the exception type, log the exception with `logger.exception(...)`, or re-raise after handling."}, "properties": {"scanner": "repobility-ast-engine", "category": "quality", "severity": "medium", "confidence": 1.0, "cwe": "", "owasp": ""}}, {"id": "DKR001", "name": "Docker final stage has no non-root USER", "shortDescription": {"text": "Docker final stage has no non-root USER"}, "fullDescription": {"text": "Add a non-root USER in the final runtime stage after files and permissions are prepared."}, "properties": {"scanner": "repobility-docker", "category": "docker", "severity": "medium", "confidence": 0.82, "cwe": "", "owasp": ""}}, {"id": "DKR003", "name": "Dockerfile base image uses the latest tag", "shortDescription": {"text": "Dockerfile base image uses the latest tag"}, "fullDescription": {"text": "Pin to a maintained version tag or digest and update it deliberately through dependency automation."}, "properties": {"scanner": "repobility-docker", "category": "docker", "severity": "medium", "confidence": 0.94, "cwe": "", "owasp": ""}}, {"id": "DKR009", "name": "Dockerfile separates apt update from install", "shortDescription": {"text": "Dockerfile separates apt update from install"}, "fullDescription": {"text": "Combine update and install in the same RUN instruction and clean package indexes in that layer."}, "properties": {"scanner": "repobility-docker", "category": "docker", "severity": "medium", "confidence": 0.86, "cwe": "", "owasp": ""}}, {"id": "DKR007", "name": "Docker build context has no .dockerignore", "shortDescription": {"text": "Docker build context has no .dockerignore"}, "fullDescription": {"text": "Add .dockerignore with at least .git, .env, private keys, dependency folders, build outputs, and local databases."}, "properties": {"scanner": "repobility-docker", "category": "docker", "severity": "medium", "confidence": 0.9, "cwe": "", "owasp": ""}}, {"id": "DKR018", "name": "Database dump or local database file is included in Docker build context", "shortDescription": {"text": "Database dump or local database file is included in Docker build context"}, "fullDescription": {"text": "Move database dumps outside the Docker build context or exclude them with .dockerignore. Keep backup and restore artifacts in private object storage or a dedicated backup workflow."}, "properties": {"scanner": "repobility-docker", "category": "docker", "severity": "medium", "confidence": 0.86, "cwe": "", "owasp": ""}}, {"id": "AIC004", "name": "Suspicious implementation file appears unreferenced", "shortDescription": {"text": "Suspicious implementation file appears unreferenced"}, "fullDescription": {"text": "Confirm whether this file is reachable. If not, delete it; if yes, wire it through explicit imports, routes, or entry points and add a test that proves the path executes."}, "properties": {"scanner": "repobility-ai-code-hygiene", "category": "quality", "severity": "medium", "confidence": 0.78, "cwe": "", "owasp": ""}}, {"id": "AIC001", "name": "Parallel implementation file sits beside a canonical file", "shortDescription": {"text": "Parallel implementation file sits beside a canonical file"}, "fullDescription": {"text": "Merge the intended change into the canonical file, update tests/imports, and delete the parallel implementation if it is not the active entry point."}, "properties": {"scanner": "repobility-ai-code-hygiene", "category": "quality", "severity": "medium", "confidence": 0.82, "cwe": "", "owasp": ""}}, {"id": "COMP001", "name": "[COMP001] High cognitive complexity: Function `report_summary` has cognitive complexity 18 (SonarSource scale). Cognitiv", "shortDescription": {"text": "[COMP001] High cognitive complexity: Function `report_summary` has cognitive complexity 18 (SonarSource scale). Cognitive complexity measures how hard the function is for a human to understand \u2014 nested branches, boolean chains, and recursio"}, "fullDescription": {"text": "Extract nested branches into named helper functions; flatten early-return / guard clauses; replace long if/elif chains with dispatch dicts or polymorphism. SonarQube's threshold for 'should refactor' is 15 \u2014 yours is 18."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "medium", "confidence": 0.95, "cwe": "", "owasp": ""}}, {"id": "CORE_NO_CI", "name": "No CI/CD configuration found", "shortDescription": {"text": "No CI/CD configuration found"}, "fullDescription": {"text": "Add a CI/CD pipeline: create .github/workflows/ci.yml for GitHub Actions with steps to lint, test, and build on every push and pull request."}, "properties": {"scanner": "repobility-core", "category": "practices", "severity": "medium", "confidence": null, "cwe": "", "owasp": ""}}, {"id": "DKR011", "name": "Dockerfile installs recommended OS packages", "shortDescription": {"text": "Dockerfile installs recommended OS packages"}, "fullDescription": {"text": "Add `--no-install-recommends` and explicitly list only packages the image needs."}, "properties": {"scanner": "repobility-docker", "category": "docker", "severity": "low", "confidence": 0.72, "cwe": "", "owasp": ""}}, {"id": "AIC005", "name": "Duplicate top-level symbol appears in a patch-style file", "shortDescription": {"text": "Duplicate top-level symbol appears in a patch-style file"}, "fullDescription": {"text": "Keep one authoritative implementation, update imports to point at it, and remove or rename the duplicate symbol."}, "properties": {"scanner": "repobility-ai-code-hygiene", "category": "quality", "severity": "low", "confidence": 0.64, "cwe": "", "owasp": ""}}, {"id": "AIC003", "name": "Duplicated implementation block across source files", "shortDescription": {"text": "Duplicated implementation block across source files"}, "fullDescription": {"text": "Extract the shared behavior into one function/module or delete the inactive duplicate after proving which path is used."}, "properties": {"scanner": "repobility-ai-code-hygiene", "category": "quality", "severity": "low", "confidence": 0.86, "cwe": "", "owasp": ""}}, {"id": "AIC002", "name": "Source file name looks like an AI patch artifact", "shortDescription": {"text": "Source file name looks like an AI patch artifact"}, "fullDescription": {"text": "Rename it to the domain concept it implements or merge it into the existing module it was meant to change."}, "properties": {"scanner": "repobility-ai-code-hygiene", "category": "quality", "severity": "low", "confidence": 0.62, "cwe": "", "owasp": ""}}, {"id": "AIC007", "name": "Generated build artifact directory is present at repository root", "shortDescription": {"text": "Generated build artifact directory is present at repository root"}, "fullDescription": {"text": "Remove generated output from version control, add it to .gitignore and .dockerignore where relevant, and regenerate it in CI or release jobs."}, "properties": {"scanner": "repobility-ai-code-hygiene", "category": "quality", "severity": "low", "confidence": 0.7, "cwe": "", "owasp": ""}}, {"id": "DKR002", "name": "Dockerfile base image is selected through a build variable", "shortDescription": {"text": "Dockerfile base image is selected through a build variable"}, "fullDescription": {"text": "Resolve the variable to a versioned tag or digest in production builds and document the allowed images."}, "properties": {"scanner": "repobility-docker", "category": "docker", "severity": "info", "confidence": 0.48, "cwe": "", "owasp": ""}}, {"id": "MINED075", "name": "[MINED075] C Malloc No Check: malloc/calloc/realloc return value used without checking for NULL.", "shortDescription": {"text": "[MINED075] C Malloc No Check: malloc/calloc/realloc return value used without checking for NULL."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-690 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 1.0, "cwe": "", "owasp": ""}}, {"id": "MINED045", "name": "[MINED045] Ts Non Null Assertion (and 5 more): Same pattern found in 5 additional files. Review if needed.", "shortDescription": {"text": "[MINED045] Ts Non Null Assertion (and 5 more): Same pattern found in 5 additional files. Review if needed."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-476 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "MINED046", "name": "[MINED046] Dart Print: print() in Flutter goes to console. Use debugPrint / logger.", "shortDescription": {"text": "[MINED046] Dart Print: print() in Flutter goes to console. Use debugPrint / logger."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-532 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 1.0, "cwe": "", "owasp": ""}}, {"id": "MINED041", "name": "[MINED041] Rust Unimplemented Macro (and 3 more): Same pattern found in 3 additional files. Review if needed.", "shortDescription": {"text": "[MINED041] Rust Unimplemented Macro (and 3 more): Same pattern found in 3 additional files. Review if needed."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-1188 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "MINED022", "name": "[MINED022] C Strcpy (and 1 more): Same pattern found in 1 additional files. Review if needed.", "shortDescription": {"text": "[MINED022] C Strcpy (and 1 more): Same pattern found in 1 additional files. Review if needed."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-120 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "MINED039", "name": "[MINED039] Rust Todo Macro (and 3 more): Same pattern found in 3 additional files. Review if needed.", "shortDescription": {"text": "[MINED039] Rust Todo Macro (and 3 more): Same pattern found in 3 additional files. Review if needed."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-1188 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "MINED042", "name": "[MINED042] Cpp New Without Delete: C++ raw new without RAII / unique_ptr \u2014 memory leak risk.", "shortDescription": {"text": "[MINED042] Cpp New Without Delete: C++ raw new without RAII / unique_ptr \u2014 memory leak risk."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-401 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 1.0, "cwe": "", "owasp": ""}}, {"id": "MINED068", "name": "[MINED068] Rust Unsafe Block (and 19 more): Same pattern found in 19 additional files. Review if needed.", "shortDescription": {"text": "[MINED068] Rust Unsafe Block (and 19 more): Same pattern found in 19 additional files. Review if needed."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-119 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "MINED057", "name": "[MINED057] Todo Bomb: Code path with a TODO/FIXME/HACK comment that gates correctness \u2014 left for later but never resolve", "shortDescription": {"text": "[MINED057] Todo Bomb: Code path with a TODO/FIXME/HACK comment that gates correctness \u2014 left for later but never resolved."}, "fullDescription": {"text": "Review and fix per the pattern semantics."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 1.0, "cwe": "", "owasp": ""}}, {"id": "MINED048", "name": "[MINED048] Php Error Suppress (and 1 more): Same pattern found in 1 additional files. Review if needed.", "shortDescription": {"text": "[MINED048] Php Error Suppress (and 1 more): Same pattern found in 1 additional files. Review if needed."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-755 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "MINED066", "name": "[MINED066] Rust Panic Macro (and 26 more): Same pattern found in 26 additional files. Review if needed.", "shortDescription": {"text": "[MINED066] Rust Panic Macro (and 26 more): Same pattern found in 26 additional files. Review if needed."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-755 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "MINED015", "name": "[MINED015] Ruby Eval Call (and 2 more): Same pattern found in 2 additional files. Review if needed.", "shortDescription": {"text": "[MINED015] Ruby Eval Call (and 2 more): Same pattern found in 2 additional files. Review if needed."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-95 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "SEC128", "name": "[SEC128] Async function without await \u2014 fire-and-forget Promise (AI mistake) (and 8 more): Same pattern found in 8 addit", "shortDescription": {"text": "[SEC128] Async function without await \u2014 fire-and-forget Promise (AI mistake) (and 8 more): Same pattern found in 8 additional files. Review if needed."}, "fullDescription": {"text": "Add `await` before each async call, or chain with `.then`. If you intentionally want fire-and-forget, prefix with `void` (TS) or assign to `_` (Python with `asyncio.create_task`) to make the intent explicit and survive lint."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "MINED011", "name": "[MINED011] Scala Get On Option (and 6 more): Same pattern found in 6 additional files. Review if needed.", "shortDescription": {"text": "[MINED011] Scala Get On Option (and 6 more): Same pattern found in 6 additional files. Review if needed."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-476 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "MINED059", "name": "[MINED059] Rust Expect In Prod (and 15 more): Same pattern found in 15 additional files. Review if needed.", "shortDescription": {"text": "[MINED059] Rust Expect In Prod (and 15 more): Same pattern found in 15 additional files. Review if needed."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-755 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "MINED003", "name": "[MINED003] Rust Unwrap In Prod (and 96 more): Same pattern found in 96 additional files. Review if needed.", "shortDescription": {"text": "[MINED003] Rust Unwrap In Prod (and 96 more): Same pattern found in 96 additional files. Review if needed."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-755 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "MINED004", "name": "[MINED004] Weak Crypto (and 12 more): Same pattern found in 12 additional files. Review if needed.", "shortDescription": {"text": "[MINED004] Weak Crypto (and 12 more): Same pattern found in 12 additional files. Review if needed."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-327 / A02:2021 for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "MINED043", "name": "[MINED043] Http Not Https (and 10 more): Same pattern found in 10 additional files. Review if needed.", "shortDescription": {"text": "[MINED043] Http Not Https (and 10 more): Same pattern found in 10 additional files. Review if needed."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-319 / A02:2021 for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "info", "confidence": 0.2, "cwe": "", "owasp": ""}}, {"id": "MINED134", "name": "[MINED134] Binary file `third-party/folly/src/folly/debugging/symbolizer/test/test-xindex.o` committed in source repo: `", "shortDescription": {"text": "[MINED134] Binary file `third-party/folly/src/folly/debugging/symbolizer/test/test-xindex.o` committed in source repo: `third-party/folly/src/folly/debugging/symbolizer/test/test-xindex.o` is a .o binary (4,194,464 bytes) committed to a rep"}, "fullDescription": {"text": "Audit the binary's provenance. If it's vendored library code, document it in a VENDORED.md. If it's a build artifact, add the extension to .gitignore and rebuild from source."}, "properties": {"scanner": "repobility-supply-chain", "category": "dependency", "severity": "high", "confidence": 0.9, "cwe": "", "owasp": ""}}, {"id": "MINED118", "name": "[MINED118] Dockerfile FROM `martenseemann/quic-network-simulator-endpoint:latest` not pinned by digest: `FROM martenseem", "shortDescription": {"text": "[MINED118] Dockerfile FROM `martenseemann/quic-network-simulator-endpoint:latest` not pinned by digest: `FROM martenseemann/quic-network-simulator-endpoint:latest` resolves the tag at build time. The registry CAN re-push a different image f"}, "fullDescription": {"text": "Replace with: `FROM martenseemann/quic-network-simulator-endpoint:latest@sha256:<digest>`. Get the digest from `docker manifest inspect`. Re-pin via a scheduled bot (Renovate, Dependabot)."}, "properties": {"scanner": "repobility-supply-chain", "category": "dependency", "severity": "high", "confidence": 0.9, "cwe": "", "owasp": ""}}, {"id": "MINED115", "name": "[MINED115] Action `actions/upload-artifact` pinned to mutable ref `@v6`: `uses: actions/upload-artifact@v6` resolves at ", "shortDescription": {"text": "[MINED115] Action `actions/upload-artifact` pinned to mutable ref `@v6`: `uses: actions/upload-artifact@v6` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compro"}, "fullDescription": {"text": "Replace with: `uses: actions/upload-artifact@<40-char-sha>  # v6` and let Dependabot bump it on a scheduled cadence."}, "properties": {"scanner": "repobility-supply-chain", "category": "dependency", "severity": "high", "confidence": 0.9, "cwe": "", "owasp": ""}}, {"id": "MINED113", "name": "[MINED113] Express POST /sourceList has no auth: Express route POST /sourceList declared without an auth middleware in i", "shortDescription": {"text": "[MINED113] Express POST /sourceList has no auth: Express route POST /sourceList declared without an auth middleware in its handler chain. Destructive methods (POST/PUT/DELETE/PATCH) on unauthenticated routes are OWASP A01:2021 broken access"}, "fullDescription": {"text": "Add an auth middleware: app.post('/sourceList', requireAuth, handler) \u2014 or mount the router under app.use('/api', authMiddleware) and ensure the path is covered. If truly public, mark with a comment."}, "properties": {"scanner": "repobility-route-auth", "category": "quality", "severity": "high", "confidence": 0.8, "cwe": "", "owasp": ""}}, {"id": "MINED106", "name": "[MINED106] Phantom test coverage: test_static_init: Test function `test_static_init` runs code but contains no assert / ", "shortDescription": {"text": "[MINED106] Phantom test coverage: test_static_init: Test function `test_static_init` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "fullDescription": {"text": "Add an explicit assertion that captures the test's intent, or remove the test."}, "properties": {"scanner": "repobility-ast-engine", "category": "quality", "severity": "high", "confidence": 1.0, "cwe": "", "owasp": ""}}, {"id": "MINED108", "name": "[MINED108] `self.assertTrue` used but never assigned in __init__: Method `test_lease_pairing_basic` of class `TestLeaseP", "shortDescription": {"text": "[MINED108] `self.assertTrue` used but never assigned in __init__: Method `test_lease_pairing_basic` of class `TestLeasePairing` reads `self.assertTrue`, but no assignment to it exists in __init__ (and no class-level fallback). This raises A"}, "fullDescription": {"text": "Initialize `self.assertTrue = <default>` in __init__, or add a class-level default."}, "properties": {"scanner": "repobility-ast-engine", "category": "quality", "severity": "high", "confidence": 1.0, "cwe": "", "owasp": ""}}, {"id": "DKR006", "name": "Dockerfile pipes a remote script into a shell", "shortDescription": {"text": "Dockerfile pipes a remote script into a shell"}, "fullDescription": {"text": "Download the artifact, verify its checksum or signature, pin the version, and then execute it."}, "properties": {"scanner": "repobility-docker", "category": "docker", "severity": "high", "confidence": 0.92, "cwe": "", "owasp": ""}}, {"id": "DKR014", "name": "Dockerfile copies the entire context without .dockerignore", "shortDescription": {"text": "Dockerfile copies the entire context without .dockerignore"}, "fullDescription": {"text": "Create .dockerignore before using broad context copies, or copy only the required files and directories."}, "properties": {"scanner": "repobility-docker", "category": "docker", "severity": "high", "confidence": 0.92, "cwe": "", "owasp": ""}}, {"id": "DKR015", "name": "Docker build context is very large", "shortDescription": {"text": "Docker build context is very large"}, "fullDescription": {"text": "Shrink the build context with .dockerignore, move generated/runtime data outside the build context, and copy only the manifest files needed for cached dependency layers."}, "properties": {"scanner": "repobility-docker", "category": "docker", "severity": "high", "confidence": 0.92, "cwe": "", "owasp": ""}}, {"id": "MINED002", "name": "[MINED002] Dart Null Bang: value! throws on null. Use ?. or null check.", "shortDescription": {"text": "[MINED002] Dart Null Bang: value! throws on null. Use ?. or null check."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-476 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "high", "confidence": 1.0, "cwe": "", "owasp": ""}}, {"id": "MINED107", "name": "[MINED107] Missing import: `stat` used but not imported: The file uses `stat.something(...)` but never imports `stat`. T", "shortDescription": {"text": "[MINED107] Missing import: `stat` used but not imported: The file uses `stat.something(...)` but never imports `stat`. This raises NameError at runtime the first time the line executes."}, "fullDescription": {"text": "Add `import stat` at the top of the file."}, "properties": {"scanner": "repobility-ast-engine", "category": "quality", "severity": "critical", "confidence": 1.0, "cwe": "", "owasp": ""}}, {"id": "MINED005", "name": "[MINED005] Lua Loadstring: loadstring/load executes Lua code. Code injection.", "shortDescription": {"text": "[MINED005] Lua Loadstring: loadstring/load executes Lua code. Code injection."}, "fullDescription": {"text": "Review and fix per the pattern semantics. See CWE-95 /  for context."}, "properties": {"scanner": "repobility-threat-engine", "category": "quality", "severity": "critical", "confidence": 1.0, "cwe": "", "owasp": ""}}]}}, "automationDetails": {"id": "repobility/1157"}, "properties": {"repository": "facebook/hhvm", "repoUrl": "https://github.com/facebook/hhvm", "branch": "master"}, "results": [{"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115820, "scanner": "repobility-ast-engine", "fingerprint": "c60445e3b19854bf4a7c991010b2ab5f1e5e5f9f398528d0a577dc685cfdd5ca", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|c60445e3b19854bf4a7c991010b2ab5f1e5e5f9f398528d0a577dc685cfdd5ca"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/compiler/test/fixtures/py-cpp-transport/out/py/gen-py/test/fixtures/py_cpp_transport/MyService.py"}, "region": {"startLine": 634}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115819, "scanner": "repobility-ast-engine", "fingerprint": "d81a995d531db09345549b81176a6b6449a6b10a76e660f9ade3c2d90fa78dc8", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|d81a995d531db09345549b81176a6b6449a6b10a76e660f9ade3c2d90fa78dc8"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/compiler/test/fixtures/py-cpp-transport/out/py/gen-py/test/fixtures/py_cpp_transport/MyService.py"}, "region": {"startLine": 600}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115818, "scanner": "repobility-ast-engine", "fingerprint": "c8d55561da460e9690c67aab4a8cf7da4822a236a139bbdc92ea5a4e4a496207", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|c8d55561da460e9690c67aab4a8cf7da4822a236a139bbdc92ea5a4e4a496207"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/compiler/test/fixtures/py-cpp-transport/out/py/gen-py/test/fixtures/py_cpp_transport/MyService.py"}, "region": {"startLine": 589}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115817, "scanner": "repobility-ast-engine", "fingerprint": "b2971a76f00879cf1f61ae24965bd8912216bb0e5d3a4f332f471faf7c2a8e63", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|b2971a76f00879cf1f61ae24965bd8912216bb0e5d3a4f332f471faf7c2a8e63"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/compiler/test/fixtures/types/out/py/gen-py/module/SomeService.py"}, "region": {"startLine": 790}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115816, "scanner": "repobility-ast-engine", "fingerprint": "13bd05e121c1fcfecc172da9e72b75a3a518d585758106eab6424ee9e1b8d478", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|13bd05e121c1fcfecc172da9e72b75a3a518d585758106eab6424ee9e1b8d478"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/compiler/test/fixtures/types/out/py/gen-py/module/SomeService.py"}, "region": {"startLine": 779}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115815, "scanner": "repobility-ast-engine", "fingerprint": "b36942115b8ef414a52fac6638660dc01e780682fa07b84adde24cf7ca8e1ffc", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|b36942115b8ef414a52fac6638660dc01e780682fa07b84adde24cf7ca8e1ffc"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/compiler/test/fixtures/types/out/py/gen-py/module/SomeService.py"}, "region": {"startLine": 745}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115814, "scanner": "repobility-ast-engine", "fingerprint": "393da735c31a88416e91d80c6fd10e77be5b306d5fa0ac375d6dbf4955eb2748", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|393da735c31a88416e91d80c6fd10e77be5b306d5fa0ac375d6dbf4955eb2748"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/compiler/test/fixtures/types/out/py/gen-py/module/SomeService.py"}, "region": {"startLine": 734}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115811, "scanner": "repobility-ast-engine", "fingerprint": "f646c80e6a9621df486d7710c71a479fc5366439eea5e37c870ad3ce3b874e3b", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|f646c80e6a9621df486d7710c71a479fc5366439eea5e37c870ad3ce3b874e3b"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/tbb/src/python/tbb/pool.py"}, "region": {"startLine": 632}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115810, "scanner": "repobility-ast-engine", "fingerprint": "53efd31b7b7a8a6e759f4d33c8214d4683e50f94639a1092ee6a54bc800d6a50", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|53efd31b7b7a8a6e759f4d33c8214d4683e50f94639a1092ee6a54bc800d6a50"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/tbb/src/python/tbb/pool.py"}, "region": {"startLine": 390}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115809, "scanner": "repobility-ast-engine", "fingerprint": "6cc1c12d624eb3934421ce7cfa25b1dc93e64c47a8c4552f6413448c3b043e04", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|6cc1c12d624eb3934421ce7cfa25b1dc93e64c47a8c4552f6413448c3b043e04"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/tbb/src/python/tbb/pool.py"}, "region": {"startLine": 294}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115808, "scanner": "repobility-ast-engine", "fingerprint": "508bd1a7631926945cee6a8f5c9a6bb9ebb435d19d7a229a670184b115944eb8", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|508bd1a7631926945cee6a8f5c9a6bb9ebb435d19d7a229a670184b115944eb8"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/tbb/src/python/tbb/__init__.py"}, "region": {"startLine": 300}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115807, "scanner": "repobility-ast-engine", "fingerprint": "a57ad1e69b15910a5cccf8512dc9c5915141a0a42b1433f37910e418e92c77df", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|a57ad1e69b15910a5cccf8512dc9c5915141a0a42b1433f37910e418e92c77df"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/tbb/src/python/tbb/__init__.py"}, "region": {"startLine": 234}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115806, "scanner": "repobility-ast-engine", "fingerprint": "a0bdcbb98027c316b58a9f4094d1a0ff2527149ed3f118e1d1341100a3b6dce7", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|a0bdcbb98027c316b58a9f4094d1a0ff2527149ed3f118e1d1341100a3b6dce7"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/tbb/src/python/tbb/__init__.py"}, "region": {"startLine": 115}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115805, "scanner": "repobility-ast-engine", "fingerprint": "50f17f79c8872dbff4f7acd9c42717be9c9b9bd10a3a74e8ddcf396620a88e04", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|50f17f79c8872dbff4f7acd9c42717be9c9b9bd10a3a74e8ddcf396620a88e04"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/tbb/src/python/tbb/__init__.py"}, "region": {"startLine": 73}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115804, "scanner": "repobility-ast-engine", "fingerprint": "e31a5c699ea8806fa70c3e5403bb8b981583385d066746bfacf8c59ff6287151", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|e31a5c699ea8806fa70c3e5403bb8b981583385d066746bfacf8c59ff6287151"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/tbb/src/python/tbb/__init__.py"}, "region": {"startLine": 224}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115803, "scanner": "repobility-ast-engine", "fingerprint": "89d1bbf5ebc70b1602b2e96bdef416eef3fd9cc08bddeeaa29ddd92f6a28f1dc", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|89d1bbf5ebc70b1602b2e96bdef416eef3fd9cc08bddeeaa29ddd92f6a28f1dc"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/tbb/src/python/setup.py"}, "region": {"startLine": 47}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115802, "scanner": "repobility-ast-engine", "fingerprint": "9eb16dee1ee187ad19ad0eef5d4f862a065fee389dfa0dff15e58aa41f647b06", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|9eb16dee1ee187ad19ad0eef5d4f862a065fee389dfa0dff15e58aa41f647b06"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/extra/duktape/duktape-2.3.0/extras/cbor/cbordecode.py"}, "region": {"startLine": 19}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115801, "scanner": "repobility-ast-engine", "fingerprint": "4158b3251b26fcaf538099dd1b2251552327d85e8c1ce265e1de30ae751f8f5b", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|4158b3251b26fcaf538099dd1b2251552327d85e8c1ce265e1de30ae751f8f5b"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/extra/duktape/duktape-2.3.0/tools/scan_strings.py"}, "region": {"startLine": 45}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115800, "scanner": "repobility-ast-engine", "fingerprint": "33fe71c954c10edba33e231470c05f80b0bd577f5a855228de3e429f81178d12", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|33fe71c954c10edba33e231470c05f80b0bd577f5a855228de3e429f81178d12"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/python/test/request_context.py"}, "region": {"startLine": 173}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115794, "scanner": "repobility-ast-engine", "fingerprint": "8cdef07b5d08625bcd5e88a86a160bb5126df47549908f53557556f9db665510", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|8cdef07b5d08625bcd5e88a86a160bb5126df47549908f53557556f9db665510"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/coro/scripts/co_bt.py"}, "region": {"startLine": 503}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115793, "scanner": "repobility-ast-engine", "fingerprint": "25185e91e93047a4c212cd736c60cb330f1ebfa285eea6ff11aa968fe32d0a4d", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|25185e91e93047a4c212cd736c60cb330f1ebfa285eea6ff11aa968fe32d0a4d"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/coro/scripts/co_bt.py"}, "region": {"startLine": 241}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115772, "scanner": "repobility-ast-engine", "fingerprint": "da8f4cf050a386856cd6df81bda2ec461b40a44254b299268e2fc2637b279064", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|da8f4cf050a386856cd6df81bda2ec461b40a44254b299268e2fc2637b279064"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/McrouterTestCase.py"}, "region": {"startLine": 163}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115771, "scanner": "repobility-ast-engine", "fingerprint": "fe416e06d9880bd111c0c84d7265a15685bc71c8b7b28e49bd15d0089b67882c", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|fe416e06d9880bd111c0c84d7265a15685bc71c8b7b28e49bd15d0089b67882c"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/MCProcess.py"}, "region": {"startLine": 267}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115770, "scanner": "repobility-ast-engine", "fingerprint": "ac5536cee8c40ef0ed34a6e383641d5cbd68e4aadff98632cd42bfb61ffca530", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|ac5536cee8c40ef0ed34a6e383641d5cbd68e4aadff98632cd42bfb61ffca530"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/MCProcess.py"}, "region": {"startLine": 120}}}]}, {"ruleId": "MINED111", "level": "warning", "message": {"text": "[MINED111] Bare except continues silently: Bare `except:` (or `except Exception:`) that runs code without re-raising or logging the exception. Hides real failures and makes bugs hard to diagnose."}, "properties": {"repobilityId": 115768, "scanner": "repobility-ast-engine", "fingerprint": "491d6339808579caa2819bd37e94ebf54e292061e27df32411787e440d770d56", "category": "quality", "severity": "medium", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "bare-except-without-pass", "owasp": null, "cwe_ids": [], "languages": ["python"], "observations_count": 21610}, "scanner": "repobility-ast-engine", "correlation_key": "fp|491d6339808579caa2819bd37e94ebf54e292061e27df32411787e440d770d56"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_mcrouter_errors.py"}, "region": {"startLine": 356}}}]}, {"ruleId": "DKR001", "level": "warning", "message": {"text": "Docker final stage has no non-root USER"}, "properties": {"repobilityId": 115742, "scanner": "repobility-docker", "fingerprint": "67a5a307198d16461dd7d746cabad9c84fae152c2a6301f185eb4a2c21548299", "category": "docker", "severity": "medium", "confidence": 0.82, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "No USER directive was found in the final runtime stage.", "evidence": {"rule_id": "DKR001", "scanner": "repobility-docker", "final_base": "$BASE_IMAGE", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://cheatsheetseries.owasp.org/cheatsheets/Docker_Security_Cheat_Sheet.html", "https://github.com/hadolint/hadolint"], "correlation_key": "fp|67a5a307198d16461dd7d746cabad9c84fae152c2a6301f185eb4a2c21548299"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/watchman/src/watchman/build/package/watchman-deb/Dockerfile"}, "region": {"startLine": 2}}}]}, {"ruleId": "DKR001", "level": "warning", "message": {"text": "Docker final stage has no non-root USER"}, "properties": {"repobilityId": 115740, "scanner": "repobility-docker", "fingerprint": "5f3fd00312a82e8683e9e1e2295ede6abfde1904747627cd846f5bbfb128de4e", "category": "docker", "severity": "medium", "confidence": 0.82, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "No USER directive was found in the final runtime stage.", "evidence": {"rule_id": "DKR001", "scanner": "repobility-docker", "final_base": "$BASE_IMAGE", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://cheatsheetseries.owasp.org/cheatsheets/Docker_Security_Cheat_Sheet.html", "https://github.com/hadolint/hadolint"], "correlation_key": "fp|5f3fd00312a82e8683e9e1e2295ede6abfde1904747627cd846f5bbfb128de4e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/watchman/src/watchman/build/package/watchman-build/Dockerfile"}, "region": {"startLine": 2}}}]}, {"ruleId": "DKR001", "level": "warning", "message": {"text": "Docker final stage has no non-root USER"}, "properties": {"repobilityId": 115738, "scanner": "repobility-docker", "fingerprint": "8650f65036eeed4a237f54986ed8697043aa11e58d3067077adc9201ab5472b5", "category": "docker", "severity": "medium", "confidence": 0.82, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "No USER directive was found in the final runtime stage.", "evidence": {"rule_id": "DKR001", "scanner": "repobility-docker", "final_base": "ubuntu:$UBUNTU_VERSION", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://cheatsheetseries.owasp.org/cheatsheets/Docker_Security_Cheat_Sheet.html", "https://github.com/hadolint/hadolint"], "correlation_key": "fp|8650f65036eeed4a237f54986ed8697043aa11e58d3067077adc9201ab5472b5"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/watchman/src/watchman/build/package/ubuntu-env/Dockerfile"}, "region": {"startLine": 2}}}]}, {"ruleId": "DKR001", "level": "warning", "message": {"text": "Docker final stage has no non-root USER"}, "properties": {"repobilityId": 115735, "scanner": "repobility-docker", "fingerprint": "9f3d21dcd555410b5115cad35d0ecec609c28c2ce5e0f8f8a94433643e100743", "category": "docker", "severity": "medium", "confidence": 0.82, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "No USER directive was found in the final runtime stage.", "evidence": {"rule_id": "DKR001", "scanner": "repobility-docker", "final_base": "fedora:$FEDORA_VERSION", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://cheatsheetseries.owasp.org/cheatsheets/Docker_Security_Cheat_Sheet.html", "https://github.com/hadolint/hadolint"], "correlation_key": "fp|9f3d21dcd555410b5115cad35d0ecec609c28c2ce5e0f8f8a94433643e100743"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/watchman/src/watchman/build/package/fedora-env/Dockerfile"}, "region": {"startLine": 2}}}]}, {"ruleId": "DKR001", "level": "warning", "message": {"text": "Docker final stage has no non-root USER"}, "properties": {"repobilityId": 115732, "scanner": "repobility-docker", "fingerprint": "fd6eb00d817cd8834aab350f7ce77114058d7d6cf6cbcc5a6c5867d77dc52caf", "category": "docker", "severity": "medium", "confidence": 0.82, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "No USER directive was found in the final runtime stage.", "evidence": {"rule_id": "DKR001", "scanner": "repobility-docker", "final_base": "martenseemann/quic-network-simulator-endpoint:latest", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://cheatsheetseries.owasp.org/cheatsheets/Docker_Security_Cheat_Sheet.html", "https://github.com/hadolint/hadolint"], "correlation_key": "fp|fd6eb00d817cd8834aab350f7ce77114058d7d6cf6cbcc5a6c5867d77dc52caf"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/proxygen/src/proxygen/httpserver/samples/hq/quic-interop/Dockerfile"}, "region": {"startLine": 23}}}]}, {"ruleId": "DKR003", "level": "warning", "message": {"text": "Dockerfile base image uses the latest tag"}, "properties": {"repobilityId": 115731, "scanner": "repobility-docker", "fingerprint": "a0c564210b5410ffa03484f0035c068a8186dbf91b4bbab66fe289c2e1f110a7", "category": "docker", "severity": "medium", "confidence": 0.94, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Image tag is latest.", "evidence": {"image": "martenseemann/quic-network-simulator-endpoint:latest", "rule_id": "DKR003", "scanner": "repobility-docker", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://docs.docker.com/scout/policy/", "https://github.com/hadolint/hadolint"], "correlation_key": "fp|a0c564210b5410ffa03484f0035c068a8186dbf91b4bbab66fe289c2e1f110a7"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/proxygen/src/proxygen/httpserver/samples/hq/quic-interop/Dockerfile"}, "region": {"startLine": 23}}}]}, {"ruleId": "DKR009", "level": "warning", "message": {"text": "Dockerfile separates apt update from install"}, "properties": {"repobilityId": 115728, "scanner": "repobility-docker", "fingerprint": "bceb7cd1b059c5193eaf4941d2175904623fd7a0f1de02a8e02385106b6b9542", "category": "docker", "severity": "medium", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Package index update appears without package installation in the same layer.", "evidence": {"rule_id": "DKR009", "scanner": "repobility-docker", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://github.com/hadolint/hadolint"], "correlation_key": "fp|bceb7cd1b059c5193eaf4941d2175904623fd7a0f1de02a8e02385106b6b9542"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/proxygen/src/proxygen/httpserver/samples/hq/quic-interop/Dockerfile"}, "region": {"startLine": 8}}}]}, {"ruleId": "DKR003", "level": "warning", "message": {"text": "Dockerfile base image uses the latest tag"}, "properties": {"repobilityId": 115727, "scanner": "repobility-docker", "fingerprint": "543723f377bb98c225efd2188ff7231145c82f86f038b1fb740ccbe924a86383", "category": "docker", "severity": "medium", "confidence": 0.94, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Image tag is latest.", "evidence": {"image": "martenseemann/quic-network-simulator-endpoint:latest", "rule_id": "DKR003", "scanner": "repobility-docker", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://docs.docker.com/scout/policy/", "https://github.com/hadolint/hadolint"], "correlation_key": "fp|543723f377bb98c225efd2188ff7231145c82f86f038b1fb740ccbe924a86383"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/proxygen/src/proxygen/httpserver/samples/hq/quic-interop/Dockerfile"}, "region": {"startLine": 4}}}]}, {"ruleId": "DKR001", "level": "warning", "message": {"text": "Docker final stage has no non-root USER"}, "properties": {"repobilityId": 115726, "scanner": "repobility-docker", "fingerprint": "15a400db6613f9a0ba1206c3e9b66f46339cbee3ad858e37acd0e97de6f5bbdd", "category": "docker", "severity": "medium", "confidence": 0.82, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "No USER directive was found in the final runtime stage.", "evidence": {"rule_id": "DKR001", "scanner": "repobility-docker", "final_base": "ubuntu:focal", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://cheatsheetseries.owasp.org/cheatsheets/Docker_Security_Cheat_Sheet.html", "https://github.com/hadolint/hadolint"], "correlation_key": "fp|15a400db6613f9a0ba1206c3e9b66f46339cbee3ad858e37acd0e97de6f5bbdd"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/scripts/docker/ubuntu/Dockerfile"}, "region": {"startLine": 3}}}]}, {"ruleId": "DKR001", "level": "warning", "message": {"text": "Docker final stage has no non-root USER"}, "properties": {"repobilityId": 115725, "scanner": "repobility-docker", "fingerprint": "451f6bcfef4ab06e9f3cbfc08c635a684f5a9dc27a5bdd73a6b87aa6fbe6a7b9", "category": "docker", "severity": "medium", "confidence": 0.82, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "No USER directive was found in the final runtime stage.", "evidence": {"rule_id": "DKR001", "scanner": "repobility-docker", "final_base": "almalinux:latest@sha256:a21996e1faa92e26a48c7fe3ae5652efc4b0eacb4ead710f0cca9167251dd27e", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://cheatsheetseries.owasp.org/cheatsheets/Docker_Security_Cheat_Sheet.html", "https://github.com/hadolint/hadolint"], "correlation_key": "fp|451f6bcfef4ab06e9f3cbfc08c635a684f5a9dc27a5bdd73a6b87aa6fbe6a7b9"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/scripts/docker/almalinux/Dockerfile"}, "region": {"startLine": 22}}}]}, {"ruleId": "DKR007", "level": "warning", "message": {"text": "Docker build context has no .dockerignore"}, "properties": {"repobilityId": 115724, "scanner": "repobility-docker", "fingerprint": "c98378cf8c37e4866e89d6ca06a24b7e8c44654aa34e6e4bf1367c4a4c0c5b44", "category": "docker", "severity": "medium", "confidence": 0.9, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Dockerfile exists but repository root has no .dockerignore.", "evidence": {"rule_id": "DKR007", "scanner": "repobility-docker", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/"], "correlation_key": "fp|c98378cf8c37e4866e89d6ca06a24b7e8c44654aa34e6e4bf1367c4a4c0c5b44"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".dockerignore"}, "region": {"startLine": 1}}}]}, {"ruleId": "DKR001", "level": "warning", "message": {"text": "Docker final stage has no non-root USER"}, "properties": {"repobilityId": 115723, "scanner": "repobility-docker", "fingerprint": "2d2208484c91d91d396bb391119712bf46319d44b21645394b977aa95113373d", "category": "docker", "severity": "medium", "confidence": 0.82, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "No USER directive was found in the final runtime stage.", "evidence": {"rule_id": "DKR001", "scanner": "repobility-docker", "final_base": "ghcr.io/xtruder/nix-devcontainer:v1", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://cheatsheetseries.owasp.org/cheatsheets/Docker_Security_Cheat_Sheet.html", "https://github.com/hadolint/hadolint"], "correlation_key": "fp|2d2208484c91d91d396bb391119712bf46319d44b21645394b977aa95113373d"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".devcontainer/Dockerfile"}, "region": {"startLine": 1}}}]}, {"ruleId": "DKR018", "level": "warning", "message": {"text": "Database dump or local database file is included in Docker build context"}, "properties": {"repobilityId": 115722, "scanner": "repobility-docker", "fingerprint": "655485f8d8d660f19955b099504360fbf5ff0f88b2be2fc7d9501b5ab7e7369f", "category": "docker", "severity": "medium", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Database-like artifacts are reachable from the Docker build context and are not ignored.", "evidence": {"rule_id": "DKR018", "scanner": "repobility-docker", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://docs.docker.com/engine/storage/volumes/"], "correlation_key": "fp|655485f8d8d660f19955b099504360fbf5ff0f88b2be2fc7d9501b5ab7e7369f", "database_artifacts": [{"path": "hphp/test/slow/ext_pdo/persistent.db", "size_mb": 0.0}]}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".dockerignore"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC004", "level": "warning", "message": {"text": "Suspicious implementation file appears unreferenced"}, "properties": {"repobilityId": 115687, "scanner": "repobility-ai-code-hygiene", "fingerprint": "6c67df6d29a90463c73f0bf7387cc33d42d71b883eff32451a36441d118cf300", "category": "quality", "severity": "medium", "confidence": 0.78, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "Patch-style source file has no detected inbound reference from other repository files.", "evidence": {"suffix": "rewrite", "rule_id": "AIC004", "scanner": "repobility-ai-code-hygiene", "references": ["https://knip.dev/", "https://github.com/jendrikseipp/vulture"], "correlation_key": "fp|6c67df6d29a90463c73f0bf7387cc33d42d71b883eff32451a36441d118cf300"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/sql/sql_query_rewrite.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC004", "level": "warning", "message": {"text": "Suspicious implementation file appears unreferenced"}, "properties": {"repobilityId": 115686, "scanner": "repobility-ai-code-hygiene", "fingerprint": "48cc62ce202664bec08bbbdb7c54b121b55be7bc95fd3a66df2f6b6df91d027c", "category": "quality", "severity": "medium", "confidence": 0.78, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "Patch-style source file has no detected inbound reference from other repository files.", "evidence": {"suffix": "rewrite", "rule_id": "AIC004", "scanner": "repobility-ai-code-hygiene", "references": ["https://knip.dev/", "https://github.com/jendrikseipp/vulture"], "correlation_key": "fp|48cc62ce202664bec08bbbdb7c54b121b55be7bc95fd3a66df2f6b6df91d027c"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/include/mysql/plugin_query_rewrite.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC004", "level": "warning", "message": {"text": "Suspicious implementation file appears unreferenced"}, "properties": {"repobilityId": 115685, "scanner": "repobility-ai-code-hygiene", "fingerprint": "03bd77b6762e07f95e47c05a39fedf92cbe72b4b3568aebf6b67be3a9825a6bb", "category": "quality", "severity": "medium", "confidence": 0.78, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "Patch-style source file has no detected inbound reference from other repository files.", "evidence": {"suffix": "final", "rule_id": "AIC004", "scanner": "repobility-ai-code-hygiene", "references": ["https://knip.dev/", "https://github.com/jendrikseipp/vulture"], "correlation_key": "fp|03bd77b6762e07f95e47c05a39fedf92cbe72b4b3568aebf6b67be3a9825a6bb"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/elab/passes/validate_method_private_final.rs"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC001", "level": "warning", "message": {"text": "Parallel implementation file sits beside a canonical file"}, "properties": {"repobilityId": 115680, "scanner": "repobility-ai-code-hygiene", "fingerprint": "c6819c79101983776a9971159afe0207c5582665435c7955b97fbcf076aa6114", "category": "quality", "severity": "medium", "confidence": 0.82, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "Source filename has a patch-style suffix and a same-directory canonical sibling exists.", "evidence": {"suffix": "old", "rule_id": "AIC001", "scanner": "repobility-ai-code-hygiene", "references": ["https://arxiv.org/abs/2601.15195", "https://knip.dev/"], "canonical_file": "third-party/fb-mysql/8.0.20/extra/icu/source/common/unicode/utf.h", "correlation_key": "fp|c6819c79101983776a9971159afe0207c5582665435c7955b97fbcf076aa6114"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/extra/icu/source/common/unicode/utf_old.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC001", "level": "warning", "message": {"text": "Parallel implementation file sits beside a canonical file"}, "properties": {"repobilityId": 115679, "scanner": "repobility-ai-code-hygiene", "fingerprint": "82dd5a9d6e237916da7110a462bd514aacf30d64e11f04e28e6f4448e22ee19e", "category": "quality", "severity": "medium", "confidence": 0.82, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "Source filename has a patch-style suffix and a same-directory canonical sibling exists.", "evidence": {"suffix": "copy", "rule_id": "AIC001", "scanner": "repobility-ai-code-hygiene", "references": ["https://arxiv.org/abs/2601.15195", "https://knip.dev/"], "canonical_file": "hphp/runtime/vm/jit/vasm.cpp", "correlation_key": "fp|82dd5a9d6e237916da7110a462bd514aacf30d64e11f04e28e6f4448e22ee19e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/runtime/vm/jit/vasm-copy.cpp"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC001", "level": "warning", "message": {"text": "Parallel implementation file sits beside a canonical file"}, "properties": {"repobilityId": 115676, "scanner": "repobility-ai-code-hygiene", "fingerprint": "d1e14df8e6dc071e307ffcc08e14d2d13783ade483b0ae47cf4b3e452d78a206", "category": "quality", "severity": "medium", "confidence": 0.82, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "Source filename has a patch-style suffix and a same-directory canonical sibling exists.", "evidence": {"suffix": "clean", "rule_id": "AIC001", "scanner": "repobility-ai-code-hygiene", "references": ["https://arxiv.org/abs/2601.15195", "https://knip.dev/"], "canonical_file": "hphp/runtime/vm/jit/cfg.cpp", "correlation_key": "fp|d1e14df8e6dc071e307ffcc08e14d2d13783ade483b0ae47cf4b3e452d78a206"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/runtime/vm/jit/cfg-clean.cpp"}, "region": {"startLine": 1}}}]}, {"ruleId": "COMP001", "level": "warning", "message": {"text": "[COMP001] High cognitive complexity: Function `report_summary` has cognitive complexity 18 (SonarSource scale). Cognitive complexity measures how hard the function is for a human to understand \u2014 nested branches, boolean chains, and recursion all weigh in. Breakdown: elif=4, else=1, for=3, if=3, nested_bonus=7."}, "properties": {"repobilityId": 115665, "scanner": "repobility-threat-engine", "fingerprint": "06e45324d039282388dba0795f2860b8991f924d38653198a9276716390559ee", "category": "quality", "severity": "medium", "confidence": 0.95, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "AST-derived cognitive complexity score = 18 (severity threshold for medium: 15+).", "evidence": {"scanner": "repobility-threat-engine", "function": "report_summary", "breakdown": {"if": 3, "for": 3, "elif": 4, "else": 1, "nested_bonus": 7}, "complexity": 18, "correlation_key": "fp|06e45324d039282388dba0795f2860b8991f924d38653198a9276716390559ee"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hh_asdiff/hh_asdiff.py"}, "region": {"startLine": 127}}}]}, {"ruleId": "CORE_NO_CI", "level": "warning", "message": {"text": "No CI/CD configuration found"}, "properties": {"repobilityId": 115604, "scanner": "repobility-core", "fingerprint": "ca5da3551af97272c4f099fc472740148135a15816b81b90bd862e8f91ec66ce", "category": "practices", "severity": "medium", "confidence": null, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"rule_id": "CORE_NO_CI", "scanner": "repobility-core", "correlation_key": "repo|practices|core_no_ci"}}}, {"ruleId": "DKR011", "level": "note", "message": {"text": "Dockerfile installs recommended OS packages"}, "properties": {"repobilityId": 115729, "scanner": "repobility-docker", "fingerprint": "779119c769dafe97df2aa1b49660dc0c3e9448c62275e3211d90a79bfb03f413", "category": "docker", "severity": "low", "confidence": 0.72, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "apt install appears without --no-install-recommends.", "evidence": {"rule_id": "DKR011", "scanner": "repobility-docker", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://github.com/hadolint/hadolint"], "correlation_key": "fp|779119c769dafe97df2aa1b49660dc0c3e9448c62275e3211d90a79bfb03f413"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/proxygen/src/proxygen/httpserver/samples/hq/quic-interop/Dockerfile"}, "region": {"startLine": 13}}}]}, {"ruleId": "AIC005", "level": "note", "message": {"text": "Duplicate top-level symbol appears in a patch-style file"}, "properties": {"repobilityId": 115720, "scanner": "repobility-ai-code-hygiene", "fingerprint": "66d4ff15793c310c57e83da032b2c8bb2a9058a7e659d277362aab49239f812f", "category": "quality", "severity": "low", "confidence": 0.64, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Patch-style file defines a top-level symbol also defined in another source file.", "evidence": {"symbol": "Parser_state", "rule_id": "AIC005", "scanner": "repobility-ai-code-hygiene", "references": ["https://github.com/jendrikseipp/vulture", "https://knip.dev/"], "duplicate_file": "third-party/fb-mysql/8.0.20/sql/sql_class.h", "correlation_key": "fp|66d4ff15793c310c57e83da032b2c8bb2a9058a7e659d277362aab49239f812f"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/sql/sql_query_rewrite.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC005", "level": "note", "message": {"text": "Duplicate top-level symbol appears in a patch-style file"}, "properties": {"repobilityId": 115719, "scanner": "repobility-ai-code-hygiene", "fingerprint": "0bf9123236a36066a8f6715c6686b897e5af78370db16ca9c8f20b9c27638f08", "category": "quality", "severity": "low", "confidence": 0.64, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Patch-style file defines a top-level symbol also defined in another source file.", "evidence": {"symbol": "Copy_field", "rule_id": "AIC005", "scanner": "repobility-ai-code-hygiene", "references": ["https://github.com/jendrikseipp/vulture", "https://knip.dev/"], "duplicate_file": "third-party/fb-mysql/8.0.20/sql/field.h", "correlation_key": "fp|0bf9123236a36066a8f6715c6686b897e5af78370db16ca9c8f20b9c27638f08"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/sql/sql_update.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC005", "level": "note", "message": {"text": "Duplicate top-level symbol appears in a patch-style file"}, "properties": {"repobilityId": 115718, "scanner": "repobility-ai-code-hygiene", "fingerprint": "a06c99707753395d8b0943c31b03e3bcedb172558fd8b54bd53d9861920c1e57", "category": "quality", "severity": "low", "confidence": 0.64, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Patch-style file defines a top-level symbol also defined in another source file.", "evidence": {"symbol": "Consumer_type", "rule_id": "AIC005", "scanner": "repobility-ai-code-hygiene", "references": ["https://github.com/jendrikseipp/vulture", "https://knip.dev/"], "duplicate_file": "third-party/fb-mysql/8.0.20/sql/auth/auth_common.h", "correlation_key": "fp|a06c99707753395d8b0943c31b03e3bcedb172558fd8b54bd53d9861920c1e57"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/sql/sql_rewrite.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115717, "scanner": "repobility-ai-code-hygiene", "fingerprint": "afe0c6f38cf119138c5c362f567f774909b86bdf035e586e22df4345eb3caaef", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/runtime/vm/jit/cfg-clean.cpp", "duplicate_line": 1, "correlation_key": "fp|afe0c6f38cf119138c5c362f567f774909b86bdf035e586e22df4345eb3caaef"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/hhvm_cxx/hhvm_hhbc_defs/as-hhbc-ffi.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115716, "scanner": "repobility-ai-code-hygiene", "fingerprint": "2003fd60e0def04ba256c87569d57693acb7aad34006994bb2f69ac290980559", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/compiler/compiler-systemlib.h", "duplicate_line": 3, "correlation_key": "fp|2003fd60e0def04ba256c87569d57693acb7aad34006994bb2f69ac290980559"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/hhvm_cxx/hhvm_hhbc_defs/as-hhbc-ffi.cpp"}, "region": {"startLine": 3}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115715, "scanner": "repobility-ai-code-hygiene", "fingerprint": "9bc3172176ce1c14aec3ed8d7b4f735e08604acfebe3b75d6f37d5429029613e", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/runtime/vm/jit/cfg-clean.cpp", "duplicate_line": 1, "correlation_key": "fp|9bc3172176ce1c14aec3ed8d7b4f735e08604acfebe3b75d6f37d5429029613e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/hhvm_cxx/hhvm_hhbc_defs/as-hhbc-ffi.cpp"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115714, "scanner": "repobility-ai-code-hygiene", "fingerprint": "d41bacc6fcad4dc2694a61645fa927085c11bc62bb6ff2e7e0ab6b4ff7155814", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/hack/src/hackc/bytecode_printer/print_opcode.rs", "duplicate_line": 21, "correlation_key": "fp|d41bacc6fcad4dc2694a61645fa927085c11bc62bb6ff2e7e0ab6b4ff7155814"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/emitter/instruction_sequence.rs"}, "region": {"startLine": 124}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115713, "scanner": "repobility-ai-code-hygiene", "fingerprint": "88332d1ca37af3cf5a0ec10c5feba0fea2756c1acf0f3849836569098933c62a", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/hack/src/hackc/emitter/emit_memoize_function.rs", "duplicate_line": 235, "correlation_key": "fp|88332d1ca37af3cf5a0ec10c5feba0fea2756c1acf0f3849836569098933c62a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/emitter/emit_memoize_method.rs"}, "region": {"startLine": 334}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115712, "scanner": "repobility-ai-code-hygiene", "fingerprint": "3f057945fa314facb1eab5b7b83564d57d9f46c494359d75af1f0e4724d48724", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/hack/src/hackc/cli/asm.rs", "duplicate_line": 13, "correlation_key": "fp|3f057945fa314facb1eab5b7b83564d57d9f46c494359d75af1f0e4724d48724"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/cli/asm_ir.rs"}, "region": {"startLine": 11}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115711, "scanner": "repobility-ai-code-hygiene", "fingerprint": "8025bc65b5c519fb0ca8392152186071d11d5c14438a7a5ddc9aea5452362661", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/hack/src/elab/passes/validate_class_member.rs", "duplicate_line": 71, "correlation_key": "fp|8025bc65b5c519fb0ca8392152186071d11d5c14438a7a5ddc9aea5452362661"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/elab/passes/validate_class_methods.rs"}, "region": {"startLine": 81}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115710, "scanner": "repobility-ai-code-hygiene", "fingerprint": "15021b05de58942625552cfe4431061a6e6efe9a5120246c5f44d6d8dc4fb901", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/hack/src/diagnostics/fmt_plain.rs", "duplicate_line": 12, "correlation_key": "fp|15021b05de58942625552cfe4431061a6e6efe9a5120246c5f44d6d8dc4fb901"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/diagnostics/fmt_raw.rs"}, "region": {"startLine": 15}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115709, "scanner": "repobility-ai-code-hygiene", "fingerprint": "ad5c42607a8c5c38a6cd205df370b6fec0210d20d2255a38f389e79b1db4476a", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/hack/src/deps/rust/file_info.rs", "duplicate_line": 96, "correlation_key": "fp|ad5c42607a8c5c38a6cd205df370b6fec0210d20d2255a38f389e79b1db4476a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/deps/rust/prim_defs.rs"}, "region": {"startLine": 8}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115708, "scanner": "repobility-ai-code-hygiene", "fingerprint": "990eaeed95e5d7f873bd170299f6a940f5d20206dab44649d2d07bd0ee868cab", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/compiler/compiler-systemlib.h", "duplicate_line": 3, "correlation_key": "fp|990eaeed95e5d7f873bd170299f6a940f5d20206dab44649d2d07bd0ee868cab"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/package.h"}, "region": {"startLine": 3}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115707, "scanner": "repobility-ai-code-hygiene", "fingerprint": "5b90862616ca65ca1b1b0a3d47d4484d9c017d4f2e14141cec24cc8a32869aca", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/runtime/vm/jit/cfg-clean.cpp", "duplicate_line": 1, "correlation_key": "fp|5b90862616ca65ca1b1b0a3d47d4484d9c017d4f2e14141cec24cc8a32869aca"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/package.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115706, "scanner": "repobility-ai-code-hygiene", "fingerprint": "4689be151f1b6e7164493d37ddd93ac05a3f11cd1f9910d59d73dce3e621534e", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/compiler/compiler-systemlib.h", "duplicate_line": 3, "correlation_key": "fp|4689be151f1b6e7164493d37ddd93ac05a3f11cd1f9910d59d73dce3e621534e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/option.h"}, "region": {"startLine": 3}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115705, "scanner": "repobility-ai-code-hygiene", "fingerprint": "cd4872cf364b51c60006c8622beab33c9fda13169977e5fe284690080dbdcee1", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/runtime/vm/jit/cfg-clean.cpp", "duplicate_line": 1, "correlation_key": "fp|cd4872cf364b51c60006c8622beab33c9fda13169977e5fe284690080dbdcee1"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/option.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115704, "scanner": "repobility-ai-code-hygiene", "fingerprint": "ded7566109c1b7be22a3a13e68bc613373f206df3d55f5fe3c8255fc51bce122", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/compiler/compiler-systemlib.h", "duplicate_line": 3, "correlation_key": "fp|ded7566109c1b7be22a3a13e68bc613373f206df3d55f5fe3c8255fc51bce122"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/option.cpp"}, "region": {"startLine": 3}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115703, "scanner": "repobility-ai-code-hygiene", "fingerprint": "fbca9d416ec06e2c20762223dff8fc64587b7981016f5c9bd5260281d73597d5", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/runtime/vm/jit/cfg-clean.cpp", "duplicate_line": 1, "correlation_key": "fp|fbca9d416ec06e2c20762223dff8fc64587b7981016f5c9bd5260281d73597d5"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/option.cpp"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115702, "scanner": "repobility-ai-code-hygiene", "fingerprint": "ba73bb2cfbe4dc0e39ce2d6e561f69bfd331548ee8622223010e356a71d604a6", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/compiler/compiler-systemlib.h", "duplicate_line": 3, "correlation_key": "fp|ba73bb2cfbe4dc0e39ce2d6e561f69bfd331548ee8622223010e356a71d604a6"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/decl-provider.h"}, "region": {"startLine": 3}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115701, "scanner": "repobility-ai-code-hygiene", "fingerprint": "d25c0ab7dadaed143d990e0b18afdbd59f9599f2f51e0f43887e64a18fac6cb2", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/runtime/vm/jit/cfg-clean.cpp", "duplicate_line": 1, "correlation_key": "fp|d25c0ab7dadaed143d990e0b18afdbd59f9599f2f51e0f43887e64a18fac6cb2"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/decl-provider.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115700, "scanner": "repobility-ai-code-hygiene", "fingerprint": "f029393a70deb66979cc520e672df01cc1b7cfcadf5260165ad0316d52685a74", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/compiler/compiler-systemlib.h", "duplicate_line": 3, "correlation_key": "fp|f029393a70deb66979cc520e672df01cc1b7cfcadf5260165ad0316d52685a74"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/decl-provider.cpp"}, "region": {"startLine": 3}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115699, "scanner": "repobility-ai-code-hygiene", "fingerprint": "c9687ed7490e0c1c046a753d046e262c951ac9d7cd448eeca020d107069f160a", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/runtime/vm/jit/cfg-clean.cpp", "duplicate_line": 1, "correlation_key": "fp|c9687ed7490e0c1c046a753d046e262c951ac9d7cd448eeca020d107069f160a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/decl-provider.cpp"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115698, "scanner": "repobility-ai-code-hygiene", "fingerprint": "d90d5b771809df030e2acfbe31b53b402260d1ec20f7ea9c762740432b3d688f", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/compiler/compiler-systemlib.h", "duplicate_line": 3, "correlation_key": "fp|d90d5b771809df030e2acfbe31b53b402260d1ec20f7ea9c762740432b3d688f"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/compiler.h"}, "region": {"startLine": 3}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115697, "scanner": "repobility-ai-code-hygiene", "fingerprint": "52abf0a18a38e1179b91017a84acb636123e9814364195b75a97a59193960134", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/runtime/vm/jit/cfg-clean.cpp", "duplicate_line": 1, "correlation_key": "fp|52abf0a18a38e1179b91017a84acb636123e9814364195b75a97a59193960134"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/compiler.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115696, "scanner": "repobility-ai-code-hygiene", "fingerprint": "e26d1c22dbeeced54809f7d3c709776b15258e50a9c98d64d15873898d6fab9d", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/runtime/vm/jit/cfg-clean.cpp", "duplicate_line": 1, "correlation_key": "fp|e26d1c22dbeeced54809f7d3c709776b15258e50a9c98d64d15873898d6fab9d"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/compiler-systemlib.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115695, "scanner": "repobility-ai-code-hygiene", "fingerprint": "301da43eb9b13e730720be38730714d576c8a3bf82a1b8caccab609c95603681", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/runtime/vm/jit/cfg-clean.cpp", "duplicate_line": 1, "correlation_key": "fp|301da43eb9b13e730720be38730714d576c8a3bf82a1b8caccab609c95603681"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/compiler-systemlib.cpp"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115694, "scanner": "repobility-ai-code-hygiene", "fingerprint": "9d4950a094c2872ec2f4a5b1720038799d9f7181e4cc79144fa0bdc20bf98da6", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "third-party/fb-mysql/8.0.20/include/mysql/plugin_query_rewrite.h", "duplicate_line": 1, "correlation_key": "fp|9d4950a094c2872ec2f4a5b1720038799d9f7181e4cc79144fa0bdc20bf98da6"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/sql/sql_update.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115693, "scanner": "repobility-ai-code-hygiene", "fingerprint": "e63d35f8a6e17a2168b18556866d9bcbd0daf6dd980c5e393e46e3561c62d502", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "third-party/fb-mysql/8.0.20/include/mysql/plugin_query_rewrite.h", "duplicate_line": 1, "correlation_key": "fp|e63d35f8a6e17a2168b18556866d9bcbd0daf6dd980c5e393e46e3561c62d502"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/sql/sql_rewrite.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115692, "scanner": "repobility-ai-code-hygiene", "fingerprint": "2c3201fc6e6e75524f040654ea6b9033a30b92b809eedaf02c2b31011812b0ab", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "third-party/fb-mysql/8.0.20/include/mysql/plugin_query_rewrite.h", "duplicate_line": 1, "correlation_key": "fp|2c3201fc6e6e75524f040654ea6b9033a30b92b809eedaf02c2b31011812b0ab"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/sql/sql_query_rewrite.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115691, "scanner": "repobility-ai-code-hygiene", "fingerprint": "fbd60aaa1ffd53884ddcd64a048f9ab4585420e9f7f4fa0862d46857db066f0a", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "third-party/fb-mysql/8.0.20/include/mysql/plugin_query_rewrite.h", "duplicate_line": 1, "correlation_key": "fp|fbd60aaa1ffd53884ddcd64a048f9ab4585420e9f7f4fa0862d46857db066f0a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/sql/mdl_context_backup.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115690, "scanner": "repobility-ai-code-hygiene", "fingerprint": "0c4c0e9721cb0e635ef53f9c8b57ad588d903b84638859cd9377c0b4f5c05f55", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/runtime/vm/jit/cfg-clean.cpp", "duplicate_line": 1, "correlation_key": "fp|0c4c0e9721cb0e635ef53f9c8b57ad588d903b84638859cd9377c0b4f5c05f55"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/runtime/vm/jit/vasm-copy.cpp"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115689, "scanner": "repobility-ai-code-hygiene", "fingerprint": "61bd130cafbd067faacd33781cf4a91c9563d7e858346ce185898f56946916fb", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/runtime/vm/jit/cfg-clean.cpp", "duplicate_line": 1, "correlation_key": "fp|61bd130cafbd067faacd33781cf4a91c9563d7e858346ce185898f56946916fb"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/runtime/vm/jit/ssa-tmp.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC003", "level": "note", "message": {"text": "Duplicated implementation block across source files"}, "properties": {"repobilityId": 115688, "scanner": "repobility-ai-code-hygiene", "fingerprint": "8b06b05d2e8366596180325592c0463801bcef3bc946ec7b2ce73d1fb2219c8e", "category": "quality", "severity": "low", "confidence": 0.86, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "A normalized source-code window appears in two different non-test files.", "evidence": {"lines": 12, "rule_id": "AIC003", "scanner": "repobility-ai-code-hygiene", "references": ["https://jscpd.dev/"], "duplicate_file": "hphp/runtime/vm/jit/cfg-clean.cpp", "duplicate_line": 1, "correlation_key": "fp|8b06b05d2e8366596180325592c0463801bcef3bc946ec7b2ce73d1fb2219c8e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/runtime/vm/jit/ssa-tmp.cpp"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC002", "level": "note", "message": {"text": "Source file name looks like an AI patch artifact"}, "properties": {"repobilityId": 115684, "scanner": "repobility-ai-code-hygiene", "fingerprint": "9f005f65897dd5468614a9037fa68f3172ccc24613ab2c855c3a1fba56b87840", "category": "quality", "severity": "low", "confidence": 0.62, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Source filename contains a temporary or patch-style suffix.", "evidence": {"suffix": "rewrite", "rule_id": "AIC002", "scanner": "repobility-ai-code-hygiene", "references": ["https://arxiv.org/abs/2601.15195"], "correlation_key": "fp|9f005f65897dd5468614a9037fa68f3172ccc24613ab2c855c3a1fba56b87840"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/sql/sql_query_rewrite.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC002", "level": "note", "message": {"text": "Source file name looks like an AI patch artifact"}, "properties": {"repobilityId": 115683, "scanner": "repobility-ai-code-hygiene", "fingerprint": "71f49c3808aa88c4cf447ec33971b9a8ba95c58ff4a0949154500a8104419dbb", "category": "quality", "severity": "low", "confidence": 0.62, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Source filename contains a temporary or patch-style suffix.", "evidence": {"suffix": "rewrite", "rule_id": "AIC002", "scanner": "repobility-ai-code-hygiene", "references": ["https://arxiv.org/abs/2601.15195"], "correlation_key": "fp|71f49c3808aa88c4cf447ec33971b9a8ba95c58ff4a0949154500a8104419dbb"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/sql/sql_rewrite.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC002", "level": "note", "message": {"text": "Source file name looks like an AI patch artifact"}, "properties": {"repobilityId": 115682, "scanner": "repobility-ai-code-hygiene", "fingerprint": "79e1e4ce639f892bb6a6be16a1fd8e801cc4346546c94026c529b4df3221ab2b", "category": "quality", "severity": "low", "confidence": 0.62, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Source filename contains a temporary or patch-style suffix.", "evidence": {"suffix": "backup", "rule_id": "AIC002", "scanner": "repobility-ai-code-hygiene", "references": ["https://arxiv.org/abs/2601.15195"], "correlation_key": "fp|79e1e4ce639f892bb6a6be16a1fd8e801cc4346546c94026c529b4df3221ab2b"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/sql/mdl_context_backup.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC002", "level": "note", "message": {"text": "Source file name looks like an AI patch artifact"}, "properties": {"repobilityId": 115681, "scanner": "repobility-ai-code-hygiene", "fingerprint": "4eeec0a13b1a7a8731941bf52102e5aaf05c17c9df7e433c1463dd16b334753e", "category": "quality", "severity": "low", "confidence": 0.62, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Source filename contains a temporary or patch-style suffix.", "evidence": {"suffix": "rewrite", "rule_id": "AIC002", "scanner": "repobility-ai-code-hygiene", "references": ["https://arxiv.org/abs/2601.15195"], "correlation_key": "fp|4eeec0a13b1a7a8731941bf52102e5aaf05c17c9df7e433c1463dd16b334753e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/include/mysql/plugin_query_rewrite.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC002", "level": "note", "message": {"text": "Source file name looks like an AI patch artifact"}, "properties": {"repobilityId": 115678, "scanner": "repobility-ai-code-hygiene", "fingerprint": "f255e32de305f091a45a7b3eea50842ad6377d0dfce8a26e946cc4315d131a1d", "category": "quality", "severity": "low", "confidence": 0.62, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Source filename contains a temporary or patch-style suffix.", "evidence": {"suffix": "tmp", "rule_id": "AIC002", "scanner": "repobility-ai-code-hygiene", "references": ["https://arxiv.org/abs/2601.15195"], "correlation_key": "fp|f255e32de305f091a45a7b3eea50842ad6377d0dfce8a26e946cc4315d131a1d"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/runtime/vm/jit/ssa-tmp.h"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC002", "level": "note", "message": {"text": "Source file name looks like an AI patch artifact"}, "properties": {"repobilityId": 115677, "scanner": "repobility-ai-code-hygiene", "fingerprint": "bc5f83e95981189282f725068d4a5aead19f4de28550460829ffd84c2b281031", "category": "quality", "severity": "low", "confidence": 0.62, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Source filename contains a temporary or patch-style suffix.", "evidence": {"suffix": "tmp", "rule_id": "AIC002", "scanner": "repobility-ai-code-hygiene", "references": ["https://arxiv.org/abs/2601.15195"], "correlation_key": "fp|bc5f83e95981189282f725068d4a5aead19f4de28550460829ffd84c2b281031"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/runtime/vm/jit/ssa-tmp.cpp"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC002", "level": "note", "message": {"text": "Source file name looks like an AI patch artifact"}, "properties": {"repobilityId": 115675, "scanner": "repobility-ai-code-hygiene", "fingerprint": "c9cb25432400f4f24b7e1726ad78403c23115d8b1f9439a3142894cb5e1859cc", "category": "quality", "severity": "low", "confidence": 0.62, "triageState": "open", "verdict": "needs_review", "isResolved": false, "reason": "Source filename contains a temporary or patch-style suffix.", "evidence": {"suffix": "final", "rule_id": "AIC002", "scanner": "repobility-ai-code-hygiene", "references": ["https://arxiv.org/abs/2601.15195"], "correlation_key": "fp|c9cb25432400f4f24b7e1726ad78403c23115d8b1f9439a3142894cb5e1859cc"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/elab/passes/validate_method_private_final.rs"}, "region": {"startLine": 1}}}]}, {"ruleId": "AIC007", "level": "note", "message": {"text": "Generated build artifact directory is present at repository root"}, "properties": {"repobilityId": 115674, "scanner": "repobility-ai-code-hygiene", "fingerprint": "9ce25f11f897b8a8b2478fd0136724866f111b604484c20a5c690bce80d94da1", "category": "quality", "severity": "low", "confidence": 0.7, "triageState": "open", "verdict": "likely", "isResolved": false, "reason": "Repository root contains a common generated artifact directory.", "evidence": {"rule_id": "AIC007", "scanner": "repobility-ai-code-hygiene", "directory": "build", "references": ["https://git-scm.com/docs/gitignore", "https://arxiv.org/abs/2601.15195"], "correlation_key": "fp|9ce25f11f897b8a8b2478fd0136724866f111b604484c20a5c690bce80d94da1"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "build"}, "region": {"startLine": 1}}}]}, {"ruleId": "COMP001", "level": "note", "message": {"text": "[COMP001] High cognitive complexity: Function `split_lines` has cognitive complexity 13 (SonarSource scale). Cognitive complexity measures how hard the function is for a human to understand \u2014 nested branches, boolean chains, and recursion all weigh in. Breakdown: elif=3, for=2, if=2, nested_bonus=5, or=1."}, "properties": {"repobilityId": 115666, "scanner": "repobility-threat-engine", "fingerprint": "63f02b39259d051ff72ec17084e15ce77b207c73985c8f53492c0656ebacbc71", "category": "quality", "severity": "low", "confidence": 0.95, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "AST-derived cognitive complexity score = 13 (severity threshold for low: 8+).", "evidence": {"scanner": "repobility-threat-engine", "function": "split_lines", "breakdown": {"if": 2, "or": 1, "for": 2, "elif": 3, "nested_bonus": 5}, "complexity": 13, "correlation_key": "fp|63f02b39259d051ff72ec17084e15ce77b207c73985c8f53492c0656ebacbc71"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hh_asdiff/parsing.py"}, "region": {"startLine": 28}}}]}, {"ruleId": "DKR002", "level": "none", "message": {"text": "Dockerfile base image is selected through a build variable"}, "properties": {"repobilityId": 115741, "scanner": "repobility-docker", "fingerprint": "d6ef8d996c54ed5a48d0474c6a661a633b938fd431686decd4530d3a2cd6ffc7", "category": "docker", "severity": "info", "confidence": 0.48, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Base image contains a variable; manual review is needed to avoid false positives.", "evidence": {"image": "$BASE_IMAGE", "rule_id": "DKR002", "scanner": "repobility-docker", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://docs.docker.com/scout/policy/"], "correlation_key": "fp|d6ef8d996c54ed5a48d0474c6a661a633b938fd431686decd4530d3a2cd6ffc7"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/watchman/src/watchman/build/package/watchman-deb/Dockerfile"}, "region": {"startLine": 2}}}]}, {"ruleId": "DKR002", "level": "none", "message": {"text": "Dockerfile base image is selected through a build variable"}, "properties": {"repobilityId": 115739, "scanner": "repobility-docker", "fingerprint": "ee9c57308f1d3bb670923cefa34d44b6bf2c37214400248447171f9150438c5b", "category": "docker", "severity": "info", "confidence": 0.48, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Base image contains a variable; manual review is needed to avoid false positives.", "evidence": {"image": "$BASE_IMAGE", "rule_id": "DKR002", "scanner": "repobility-docker", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://docs.docker.com/scout/policy/"], "correlation_key": "fp|ee9c57308f1d3bb670923cefa34d44b6bf2c37214400248447171f9150438c5b"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/watchman/src/watchman/build/package/watchman-build/Dockerfile"}, "region": {"startLine": 2}}}]}, {"ruleId": "DKR002", "level": "none", "message": {"text": "Dockerfile base image is selected through a build variable"}, "properties": {"repobilityId": 115736, "scanner": "repobility-docker", "fingerprint": "4cb58d0376c26c9e2eccbc21eaafbacf3d8025f43c87065361f56d8fc5e55132", "category": "docker", "severity": "info", "confidence": 0.48, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Base image contains a variable; manual review is needed to avoid false positives.", "evidence": {"image": "ubuntu:$UBUNTU_VERSION", "rule_id": "DKR002", "scanner": "repobility-docker", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://docs.docker.com/scout/policy/"], "correlation_key": "fp|4cb58d0376c26c9e2eccbc21eaafbacf3d8025f43c87065361f56d8fc5e55132"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/watchman/src/watchman/build/package/ubuntu-env/Dockerfile"}, "region": {"startLine": 2}}}]}, {"ruleId": "DKR002", "level": "none", "message": {"text": "Dockerfile base image is selected through a build variable"}, "properties": {"repobilityId": 115733, "scanner": "repobility-docker", "fingerprint": "f72fc6821eb9d729602fbd5efd5c8551a6a32fe8822a6c9a7a4a24b4c4af1690", "category": "docker", "severity": "info", "confidence": 0.48, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Base image contains a variable; manual review is needed to avoid false positives.", "evidence": {"image": "fedora:$FEDORA_VERSION", "rule_id": "DKR002", "scanner": "repobility-docker", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://docs.docker.com/scout/policy/"], "correlation_key": "fp|f72fc6821eb9d729602fbd5efd5c8551a6a32fe8822a6c9a7a4a24b4c4af1690"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/watchman/src/watchman/build/package/fedora-env/Dockerfile"}, "region": {"startLine": 2}}}]}, {"ruleId": "MINED075", "level": "none", "message": {"text": "[MINED075] C Malloc No Check: malloc/calloc/realloc return value used without checking for NULL."}, "properties": {"repobilityId": 115673, "scanner": "repobility-threat-engine", "fingerprint": "e3cbf5c8ed86b53e70972505969a912a09b41e43e381907ae0f5dc935187c4ed", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "c-malloc-no-check", "owasp": null, "cwe_ids": ["CWE-690"], "languages": ["c", "cpp"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348076+00:00", "triaged_in_corpus": 12, "observations_count": 11735, "ai_coder_pattern_id": 131}, "scanner": "repobility-threat-engine", "correlation_key": "fp|e3cbf5c8ed86b53e70972505969a912a09b41e43e381907ae0f5dc935187c4ed"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/utils/cgroup/cgroupWatcher.c"}, "region": {"startLine": 125}}}]}, {"ruleId": "MINED045", "level": "none", "message": {"text": "[MINED045] Ts Non Null Assertion (and 5 more): Same pattern found in 5 additional files. Review if needed."}, "properties": {"repobilityId": 115670, "scanner": "repobility-threat-engine", "fingerprint": "29579e2a4af6df15e54ac7b6768d3485c072e1347c93f2e5c5a972f11aa15fa2", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 5 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"mined": true, "mining": {"slug": "ts-non-null-assertion", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["typescript", "tsx"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348005+00:00", "triaged_in_corpus": 12, "observations_count": 1810954, "ai_coder_pattern_id": 105}, "scanner": "repobility-threat-engine", "aggregated": true, "correlation_key": "fp|29579e2a4af6df15e54ac7b6768d3485c072e1347c93f2e5c5a972f11aa15fa2", "aggregated_count": 5}}}, {"ruleId": "MINED045", "level": "none", "message": {"text": "[MINED045] Ts Non Null Assertion: x! asserts not null - bypasses null checks - TypeError if wrong."}, "properties": {"repobilityId": 115669, "scanner": "repobility-threat-engine", "fingerprint": "0aa3262103772f022b43c6c023ca72c7a3633e194dafaf0a155184e9a7835755", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "ts-non-null-assertion", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["typescript", "tsx"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348005+00:00", "triaged_in_corpus": 12, "observations_count": 1810954, "ai_coder_pattern_id": 105}, "scanner": "repobility-threat-engine", "correlation_key": "fp|0aa3262103772f022b43c6c023ca72c7a3633e194dafaf0a155184e9a7835755"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/typing/type_mapper_forget.ml"}, "region": {"startLine": 42}}}]}, {"ruleId": "MINED045", "level": "none", "message": {"text": "[MINED045] Ts Non Null Assertion: x! asserts not null - bypasses null checks - TypeError if wrong."}, "properties": {"repobilityId": 115668, "scanner": "repobility-threat-engine", "fingerprint": "7181e96a3e40e53b43324a526648b62495e24385d9742e5f7a1f7a6c011cee88", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "ts-non-null-assertion", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["typescript", "tsx"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348005+00:00", "triaged_in_corpus": 12, "observations_count": 1810954, "ai_coder_pattern_id": 105}, "scanner": "repobility-threat-engine", "correlation_key": "fp|7181e96a3e40e53b43324a526648b62495e24385d9742e5f7a1f7a6c011cee88"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/providers/provider_utils.ml"}, "region": {"startLine": 143}}}]}, {"ruleId": "MINED045", "level": "none", "message": {"text": "[MINED045] Ts Non Null Assertion: x! asserts not null - bypasses null checks - TypeError if wrong."}, "properties": {"repobilityId": 115667, "scanner": "repobility-threat-engine", "fingerprint": "a00dfa1e82af59bc2633e3d982a0962e2475fe38cad04e7e5447e509f0197a49", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "ts-non-null-assertion", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["typescript", "tsx"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348005+00:00", "triaged_in_corpus": 12, "observations_count": 1810954, "ai_coder_pattern_id": 105}, "scanner": "repobility-threat-engine", "correlation_key": "fp|a00dfa1e82af59bc2633e3d982a0962e2475fe38cad04e7e5447e509f0197a49"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/providers/lfu_cache.ml"}, "region": {"startLine": 135}}}]}, {"ruleId": "MINED046", "level": "none", "message": {"text": "[MINED046] Dart Print: print() in Flutter goes to console. Use debugPrint / logger."}, "properties": {"repobilityId": 115662, "scanner": "repobility-threat-engine", "fingerprint": "da3432a8fc1d2d7cc38c5a70d79fb712c04eb5a291d08963b064aad105a5c253", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "dart-print", "owasp": null, "cwe_ids": ["CWE-532"], "languages": ["dart"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348008+00:00", "triaged_in_corpus": 10, "observations_count": 1515005, "ai_coder_pattern_id": 168}, "scanner": "repobility-threat-engine", "correlation_key": "fp|da3432a8fc1d2d7cc38c5a70d79fb712c04eb5a291d08963b064aad105a5c253"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackfmt/doc.ml"}, "region": {"startLine": 186}}}]}, {"ruleId": "MINED041", "level": "none", "message": {"text": "[MINED041] Rust Unimplemented Macro (and 3 more): Same pattern found in 3 additional files. Review if needed."}, "properties": {"repobilityId": 115661, "scanner": "repobility-threat-engine", "fingerprint": "2d0600ed96be259161f231c7ff93d9617804586d8d052419975ad4f50b428231", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 3 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"mined": true, "mining": {"slug": "rust-unimplemented-macro", "owasp": null, "cwe_ids": ["CWE-1188"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347994+00:00", "triaged_in_corpus": 15, "observations_count": 1422, "ai_coder_pattern_id": 115}, "scanner": "repobility-threat-engine", "aggregated": true, "correlation_key": "fp|2d0600ed96be259161f231c7ff93d9617804586d8d052419975ad4f50b428231", "aggregated_count": 3}}}, {"ruleId": "MINED022", "level": "none", "message": {"text": "[MINED022] C Strcpy (and 1 more): Same pattern found in 1 additional files. Review if needed."}, "properties": {"repobilityId": 115657, "scanner": "repobility-threat-engine", "fingerprint": "58fe92dfe6e97b6adfe63db871e448034175d2b56584210bf8112c2ee07eac96", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 1 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"mined": true, "mining": {"slug": "c-strcpy", "owasp": null, "cwe_ids": ["CWE-120"], "languages": ["c", "cpp"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347949+00:00", "triaged_in_corpus": 20, "observations_count": 39114, "ai_coder_pattern_id": 130}, "scanner": "repobility-threat-engine", "aggregated": true, "correlation_key": "fp|58fe92dfe6e97b6adfe63db871e448034175d2b56584210bf8112c2ee07eac96", "aggregated_count": 1}}}, {"ruleId": "MINED039", "level": "none", "message": {"text": "[MINED039] Rust Todo Macro (and 3 more): Same pattern found in 3 additional files. Review if needed."}, "properties": {"repobilityId": 115653, "scanner": "repobility-threat-engine", "fingerprint": "409cb9baeb84d669d0d539b92ee5fc84c4414ac05a9c0ad74592761284feb9a4", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 3 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"mined": true, "mining": {"slug": "rust-todo-macro", "owasp": null, "cwe_ids": ["CWE-1188"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347989+00:00", "triaged_in_corpus": 15, "observations_count": 1561, "ai_coder_pattern_id": 114}, "scanner": "repobility-threat-engine", "aggregated": true, "correlation_key": "fp|409cb9baeb84d669d0d539b92ee5fc84c4414ac05a9c0ad74592761284feb9a4", "aggregated_count": 3}}}, {"ruleId": "MINED042", "level": "none", "message": {"text": "[MINED042] Cpp New Without Delete: C++ raw new without RAII / unique_ptr \u2014 memory leak risk."}, "properties": {"repobilityId": 115649, "scanner": "repobility-threat-engine", "fingerprint": "868a1608bd5324dfc85dccc1200e99340dcb47102877bc181330fa10c699dba8", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "cpp-new-without-delete", "owasp": null, "cwe_ids": ["CWE-401"], "languages": ["cpp"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347996+00:00", "triaged_in_corpus": 12, "observations_count": 4658256, "ai_coder_pattern_id": 134}, "scanner": "repobility-threat-engine", "correlation_key": "fp|868a1608bd5324dfc85dccc1200e99340dcb47102877bc181330fa10c699dba8"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/providers/provider_backend.mli"}, "region": {"startLine": 245}}}]}, {"ruleId": "MINED042", "level": "none", "message": {"text": "[MINED042] Cpp New Without Delete: C++ raw new without RAII / unique_ptr \u2014 memory leak risk."}, "properties": {"repobilityId": 115648, "scanner": "repobility-threat-engine", "fingerprint": "5c553c961ad73672578d22306b313de48c97c79ec867f3b5fc680ca6ba9f10c0", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "cpp-new-without-delete", "owasp": null, "cwe_ids": ["CWE-401"], "languages": ["cpp"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347996+00:00", "triaged_in_corpus": 12, "observations_count": 4658256, "ai_coder_pattern_id": 134}, "scanner": "repobility-threat-engine", "correlation_key": "fp|5c553c961ad73672578d22306b313de48c97c79ec867f3b5fc680ca6ba9f10c0"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/dfind/dfind_env.mli"}, "region": {"startLine": 42}}}]}, {"ruleId": "MINED042", "level": "none", "message": {"text": "[MINED042] Cpp New Without Delete: C++ raw new without RAII / unique_ptr \u2014 memory leak risk."}, "properties": {"repobilityId": 115647, "scanner": "repobility-threat-engine", "fingerprint": "0684f6c2df012e135aff27def64d66e0033372df4f707efe4dfb4d4f9c15fc3a", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "cpp-new-without-delete", "owasp": null, "cwe_ids": ["CWE-401"], "languages": ["cpp"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347996+00:00", "triaged_in_corpus": 12, "observations_count": 4658256, "ai_coder_pattern_id": 134}, "scanner": "repobility-threat-engine", "correlation_key": "fp|0684f6c2df012e135aff27def64d66e0033372df4f707efe4dfb4d4f9c15fc3a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/dfind/dfind_env.ml"}, "region": {"startLine": 51}}}]}, {"ruleId": "MINED068", "level": "none", "message": {"text": "[MINED068] Rust Unsafe Block (and 19 more): Same pattern found in 19 additional files. Review if needed."}, "properties": {"repobilityId": 115646, "scanner": "repobility-threat-engine", "fingerprint": "04ed065e2d605d3f532910c9511ae17a58fd76183f166f13a05343699926ee14", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 19 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"mined": true, "mining": {"slug": "rust-unsafe-block", "owasp": null, "cwe_ids": ["CWE-119"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348060+00:00", "triaged_in_corpus": 12, "observations_count": 42383, "ai_coder_pattern_id": 116}, "scanner": "repobility-threat-engine", "aggregated": true, "correlation_key": "fp|04ed065e2d605d3f532910c9511ae17a58fd76183f166f13a05343699926ee14", "aggregated_count": 19}}}, {"ruleId": "MINED068", "level": "none", "message": {"text": "[MINED068] Rust Unsafe Block: unsafe { ... } block. Compiler safety guarantees disabled inside."}, "properties": {"repobilityId": 115645, "scanner": "repobility-threat-engine", "fingerprint": "f0111938586fd3a56321a354cab67fb77668c0cca47a74bd44e860019f4f503e", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-unsafe-block", "owasp": null, "cwe_ids": ["CWE-119"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348060+00:00", "triaged_in_corpus": 12, "observations_count": 42383, "ai_coder_pattern_id": 116}, "scanner": "repobility-threat-engine", "correlation_key": "fp|f0111938586fd3a56321a354cab67fb77668c0cca47a74bd44e860019f4f503e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/ffi/vector.rs"}, "region": {"startLine": 42}}}]}, {"ruleId": "MINED068", "level": "none", "message": {"text": "[MINED068] Rust Unsafe Block: unsafe { ... } block. Compiler safety guarantees disabled inside."}, "properties": {"repobilityId": 115644, "scanner": "repobility-threat-engine", "fingerprint": "cb53c08052e4ec6012fd763db460b83bac143ca1c133a7ea5bdeef7b862227cb", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-unsafe-block", "owasp": null, "cwe_ids": ["CWE-119"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348060+00:00", "triaged_in_corpus": 12, "observations_count": 42383, "ai_coder_pattern_id": 116}, "scanner": "repobility-threat-engine", "correlation_key": "fp|cb53c08052e4ec6012fd763db460b83bac143ca1c133a7ea5bdeef7b862227cb"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/deps/deps_rust/typing_deps.rs"}, "region": {"startLine": 91}}}]}, {"ruleId": "MINED068", "level": "none", "message": {"text": "[MINED068] Rust Unsafe Block: unsafe { ... } block. Compiler safety guarantees disabled inside."}, "properties": {"repobilityId": 115643, "scanner": "repobility-threat-engine", "fingerprint": "7286b64193c72d60914b4e170f02e0cbb3de6e34eb0e8f3eef59e7ea13181d48", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-unsafe-block", "owasp": null, "cwe_ids": ["CWE-119"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348060+00:00", "triaged_in_corpus": 12, "observations_count": 42383, "ai_coder_pattern_id": 116}, "scanner": "repobility-threat-engine", "correlation_key": "fp|7286b64193c72d60914b4e170f02e0cbb3de6e34eb0e8f3eef59e7ea13181d48"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/depgraph/depgraph_reader/byteutils.rs"}, "region": {"startLine": 31}}}]}, {"ruleId": "MINED057", "level": "none", "message": {"text": "[MINED057] Todo Bomb: Code path with a TODO/FIXME/HACK comment that gates correctness \u2014 left for later but never resolved."}, "properties": {"repobilityId": 115642, "scanner": "repobility-threat-engine", "fingerprint": "a0bdccfb367dcbca3424f7392a0de57ab6bfc3aa9ec8c590d362645e3bb125fc", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "todo-bomb", "owasp": null, "cwe_ids": [], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348035+00:00", "triaged_in_corpus": 10, "observations_count": 255662, "ai_coder_pattern_id": 4}, "scanner": "repobility-threat-engine", "correlation_key": "fp|a0bdccfb367dcbca3424f7392a0de57ab6bfc3aa9ec8c590d362645e3bb125fc"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/typing/typing_enforceable_hint.ml"}, "region": {"startLine": 202}}}]}, {"ruleId": "MINED057", "level": "none", "message": {"text": "[MINED057] Todo Bomb: Code path with a TODO/FIXME/HACK comment that gates correctness \u2014 left for later but never resolved."}, "properties": {"repobilityId": 115641, "scanner": "repobility-threat-engine", "fingerprint": "625f87772d91f108ad25819fa1bfb2d1a6b999a196be5a1fe3b00f9c83333243", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "todo-bomb", "owasp": null, "cwe_ids": [], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348035+00:00", "triaged_in_corpus": 10, "observations_count": 255662, "ai_coder_pattern_id": 4}, "scanner": "repobility-threat-engine", "correlation_key": "fp|625f87772d91f108ad25819fa1bfb2d1a6b999a196be5a1fe3b00f9c83333243"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/decl/pos/pos_or_decl.mli"}, "region": {"startLine": 58}}}]}, {"ruleId": "MINED048", "level": "none", "message": {"text": "[MINED048] Php Error Suppress (and 1 more): Same pattern found in 1 additional files. Review if needed."}, "properties": {"repobilityId": 115640, "scanner": "repobility-threat-engine", "fingerprint": "d71724ef9ebc40c9f37835e9a17943f9474ef3b21970d0351d917057cdfb2b85", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 1 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"mined": true, "mining": {"slug": "php-error-suppress", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["php"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348013+00:00", "triaged_in_corpus": 12, "observations_count": 849118, "ai_coder_pattern_id": 166}, "scanner": "repobility-threat-engine", "aggregated": true, "correlation_key": "fp|d71724ef9ebc40c9f37835e9a17943f9474ef3b21970d0351d917057cdfb2b85", "aggregated_count": 1}}}, {"ruleId": "MINED048", "level": "none", "message": {"text": "[MINED048] Php Error Suppress: @function() suppresses errors silently. Hides real issues."}, "properties": {"repobilityId": 115639, "scanner": "repobility-threat-engine", "fingerprint": "c70a6b50331b2476f11add761aa5b93a1fe2699acf0dc3a1adafa748eb506cd8", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "php-error-suppress", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["php"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348013+00:00", "triaged_in_corpus": 12, "observations_count": 849118, "ai_coder_pattern_id": 166}, "scanner": "repobility-threat-engine", "correlation_key": "fp|c70a6b50331b2476f11add761aa5b93a1fe2699acf0dc3a1adafa748eb506cd8"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/naming/naming_sqlite.mli"}, "region": {"startLine": 17}}}]}, {"ruleId": "MINED048", "level": "none", "message": {"text": "[MINED048] Php Error Suppress: @function() suppresses errors silently. Hides real issues."}, "properties": {"repobilityId": 115638, "scanner": "repobility-threat-engine", "fingerprint": "e463aaa77a8f4fb085deab38702b505b6f2cc546aed11857c9b157006c7ee30a", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "php-error-suppress", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["php"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348013+00:00", "triaged_in_corpus": 12, "observations_count": 849118, "ai_coder_pattern_id": 166}, "scanner": "repobility-threat-engine", "correlation_key": "fp|e463aaa77a8f4fb085deab38702b505b6f2cc546aed11857c9b157006c7ee30a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/diagnostics/user_diagnostic.ml"}, "region": {"startLine": 15}}}]}, {"ruleId": "MINED048", "level": "none", "message": {"text": "[MINED048] Php Error Suppress: @function() suppresses errors silently. Hides real issues."}, "properties": {"repobilityId": 115637, "scanner": "repobility-threat-engine", "fingerprint": "6c1a011009ba265f8556ba661471d55cb4b71f4e3a2bec295f25257068db9b62", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "php-error-suppress", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["php"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348013+00:00", "triaged_in_corpus": 12, "observations_count": 849118, "ai_coder_pattern_id": 166}, "scanner": "repobility-threat-engine", "correlation_key": "fp|6c1a011009ba265f8556ba661471d55cb4b71f4e3a2bec295f25257068db9b62"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/decl/decl_counters.ml"}, "region": {"startLine": 54}}}]}, {"ruleId": "MINED066", "level": "none", "message": {"text": "[MINED066] Rust Panic Macro (and 26 more): Same pattern found in 26 additional files. Review if needed."}, "properties": {"repobilityId": 115636, "scanner": "repobility-threat-engine", "fingerprint": "b71825dff6a859ee4361bbcb50129eedeb37fd9b50ec7cc30f8bd4d28c8925aa", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 26 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"mined": true, "mining": {"slug": "rust-panic-macro", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348055+00:00", "triaged_in_corpus": 12, "observations_count": 48611, "ai_coder_pattern_id": 113}, "scanner": "repobility-threat-engine", "aggregated": true, "correlation_key": "fp|b71825dff6a859ee4361bbcb50129eedeb37fd9b50ec7cc30f8bd4d28c8925aa", "aggregated_count": 26}}}, {"ruleId": "MINED066", "level": "none", "message": {"text": "[MINED066] Rust Panic Macro: panic!() unwinds the stack. Use Result for recoverable errors."}, "properties": {"repobilityId": 115635, "scanner": "repobility-threat-engine", "fingerprint": "a278602ad039b16639e7723eb58890b0460a23274f0f2120e31115c567b4663a", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-panic-macro", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348055+00:00", "triaged_in_corpus": 12, "observations_count": 48611, "ai_coder_pattern_id": 113}, "scanner": "repobility-threat-engine", "correlation_key": "fp|a278602ad039b16639e7723eb58890b0460a23274f0f2120e31115c567b4663a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/elab/passes/elab_const_expr.rs"}, "region": {"startLine": 214}}}]}, {"ruleId": "MINED066", "level": "none", "message": {"text": "[MINED066] Rust Panic Macro: panic!() unwinds the stack. Use Result for recoverable errors."}, "properties": {"repobilityId": 115634, "scanner": "repobility-threat-engine", "fingerprint": "098d9a235beb610858b70a2c6466aa6bc8bc763275a64d10d6eb7000b2bade7e", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-panic-macro", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348055+00:00", "triaged_in_corpus": 12, "observations_count": 48611, "ai_coder_pattern_id": 113}, "scanner": "repobility-threat-engine", "correlation_key": "fp|098d9a235beb610858b70a2c6466aa6bc8bc763275a64d10d6eb7000b2bade7e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/depgraph/depgraph_reader/byteutils.rs"}, "region": {"startLine": 36}}}]}, {"ruleId": "MINED066", "level": "none", "message": {"text": "[MINED066] Rust Panic Macro: panic!() unwinds the stack. Use Result for recoverable errors."}, "properties": {"repobilityId": 115633, "scanner": "repobility-threat-engine", "fingerprint": "25926db9b23d436435de359b9458285901ccf1df3de8ec6325a1da3692dca5d9", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-panic-macro", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348055+00:00", "triaged_in_corpus": 12, "observations_count": 48611, "ai_coder_pattern_id": 113}, "scanner": "repobility-threat-engine", "correlation_key": "fp|25926db9b23d436435de359b9458285901ccf1df3de8ec6325a1da3692dca5d9"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/client/ide_service/rust_batch_index_ffi.rs"}, "region": {"startLine": 136}}}]}, {"ruleId": "MINED015", "level": "none", "message": {"text": "[MINED015] Ruby Eval Call (and 2 more): Same pattern found in 2 additional files. Review if needed."}, "properties": {"repobilityId": 115632, "scanner": "repobility-threat-engine", "fingerprint": "ed763f34548552ee0e875c08b2b41134cdad2e3ea1bac2c4b26d00fd331a3633", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 2 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"mined": true, "mining": {"slug": "ruby-eval-call", "owasp": null, "cwe_ids": ["CWE-95"], "languages": ["ruby"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347933+00:00", "triaged_in_corpus": 20, "observations_count": 85733, "ai_coder_pattern_id": 161}, "scanner": "repobility-threat-engine", "aggregated": true, "correlation_key": "fp|ed763f34548552ee0e875c08b2b41134cdad2e3ea1bac2c4b26d00fd331a3633", "aggregated_count": 2}}}, {"ruleId": "SEC128", "level": "none", "message": {"text": "[SEC128] Async function without await \u2014 fire-and-forget Promise (AI mistake) (and 8 more): Same pattern found in 8 additional files. Review if needed."}, "properties": {"repobilityId": 115628, "scanner": "repobility-threat-engine", "fingerprint": "43b81e30ecec4542d5b7c1728a77ddf506d2c87684fdce356d7b2b0e14a44049", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 8 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"reason": "Deduplicated summary only: 8 additional occurrences found. The top occurrences remain visible as actionable findings.", "rule_id": "SEC128", "scanner": "repobility-threat-engine", "confidence": 0.2, "correlation_key": "fp|43b81e30ecec4542d5b7c1728a77ddf506d2c87684fdce356d7b2b0e14a44049"}}}, {"ruleId": "MINED011", "level": "none", "message": {"text": "[MINED011] Scala Get On Option (and 6 more): Same pattern found in 6 additional files. Review if needed."}, "properties": {"repobilityId": 115624, "scanner": "repobility-threat-engine", "fingerprint": "43f560a33673a6d33c5fa303d4c04d092cfcfe770423f0cf6073bb06c25e60c3", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 6 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"mined": true, "mining": {"slug": "scala-get-on-option", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["scala"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347923+00:00", "triaged_in_corpus": 15, "observations_count": 140164, "ai_coder_pattern_id": 159}, "scanner": "repobility-threat-engine", "aggregated": true, "correlation_key": "fp|43f560a33673a6d33c5fa303d4c04d092cfcfe770423f0cf6073bb06c25e60c3", "aggregated_count": 6}}}, {"ruleId": "MINED059", "level": "none", "message": {"text": "[MINED059] Rust Expect In Prod (and 15 more): Same pattern found in 15 additional files. Review if needed."}, "properties": {"repobilityId": 115620, "scanner": "repobility-threat-engine", "fingerprint": "b17f1ec465193ef7ce8066123d319303f0c2f0f6555fca5f49c1f6e6239078c9", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 15 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"mined": true, "mining": {"slug": "rust-expect-in-prod", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348039+00:00", "triaged_in_corpus": 12, "observations_count": 175379, "ai_coder_pattern_id": 112}, "scanner": "repobility-threat-engine", "aggregated": true, "correlation_key": "fp|b17f1ec465193ef7ce8066123d319303f0c2f0f6555fca5f49c1f6e6239078c9", "aggregated_count": 15}}}, {"ruleId": "MINED059", "level": "none", "message": {"text": "[MINED059] Rust Expect In Prod: .expect(...) panics same as unwrap with a custom message."}, "properties": {"repobilityId": 115619, "scanner": "repobility-threat-engine", "fingerprint": "306567e77d75141d5c3d1883f5fb9b8f3b70a74a00ce8b0294f9b3a1fea030ce", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-expect-in-prod", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348039+00:00", "triaged_in_corpus": 12, "observations_count": 175379, "ai_coder_pattern_id": 112}, "scanner": "repobility-threat-engine", "correlation_key": "fp|306567e77d75141d5c3d1883f5fb9b8f3b70a74a00ce8b0294f9b3a1fea030ce"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/compile/dump_expr_tree.rs"}, "region": {"startLine": 66}}}]}, {"ruleId": "MINED059", "level": "none", "message": {"text": "[MINED059] Rust Expect In Prod: .expect(...) panics same as unwrap with a custom message."}, "properties": {"repobilityId": 115618, "scanner": "repobility-threat-engine", "fingerprint": "fa749176650bbf1d33c463c736e135a098904629cf30afc188c801208cd398ba", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-expect-in-prod", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348039+00:00", "triaged_in_corpus": 12, "observations_count": 175379, "ai_coder_pattern_id": 112}, "scanner": "repobility-threat-engine", "correlation_key": "fp|fa749176650bbf1d33c463c736e135a098904629cf30afc188c801208cd398ba"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/compile/cargo/options/build.rs"}, "region": {"startLine": 18}}}]}, {"ruleId": "MINED059", "level": "none", "message": {"text": "[MINED059] Rust Expect In Prod: .expect(...) panics same as unwrap with a custom message."}, "properties": {"repobilityId": 115617, "scanner": "repobility-threat-engine", "fingerprint": "126c4eb707fcad6e24912bdc88ff4b03953ab70986c18df5c42bfa8a431da271", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-expect-in-prod", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.348039+00:00", "triaged_in_corpus": 12, "observations_count": 175379, "ai_coder_pattern_id": 112}, "scanner": "repobility-threat-engine", "correlation_key": "fp|126c4eb707fcad6e24912bdc88ff4b03953ab70986c18df5c42bfa8a431da271"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/asdl_to_rust/asdl_to_rust/asdl_to_rust.rs"}, "region": {"startLine": 43}}}]}, {"ruleId": "MINED003", "level": "none", "message": {"text": "[MINED003] Rust Unwrap In Prod (and 96 more): Same pattern found in 96 additional files. Review if needed."}, "properties": {"repobilityId": 115616, "scanner": "repobility-threat-engine", "fingerprint": "ca3e656f6f921259841a652a3b8107c50245a4572efcca19fbe1d1e5a1ed3377", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 96 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"mined": true, "mining": {"slug": "rust-unwrap-in-prod", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347903+00:00", "triaged_in_corpus": 15, "observations_count": 386515, "ai_coder_pattern_id": 111}, "scanner": "repobility-threat-engine", "aggregated": true, "correlation_key": "fp|ca3e656f6f921259841a652a3b8107c50245a4572efcca19fbe1d1e5a1ed3377", "aggregated_count": 96}}}, {"ruleId": "MINED004", "level": "none", "message": {"text": "[MINED004] Weak Crypto (and 12 more): Same pattern found in 12 additional files. Review if needed."}, "properties": {"repobilityId": 115612, "scanner": "repobility-threat-engine", "fingerprint": "b76aba28877d6ca27729ae20a3127a9d43b836bba1fc2bea6f41c13c71aff5b3", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 12 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"mined": true, "mining": {"slug": "weak-crypto", "owasp": "A02:2021", "cwe_ids": ["CWE-327"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347906+00:00", "triaged_in_corpus": 15, "observations_count": 303181, "ai_coder_pattern_id": 13}, "scanner": "repobility-threat-engine", "aggregated": true, "correlation_key": "fp|b76aba28877d6ca27729ae20a3127a9d43b836bba1fc2bea6f41c13c71aff5b3", "aggregated_count": 12}}}, {"ruleId": "MINED043", "level": "none", "message": {"text": "[MINED043] Http Not Https (and 10 more): Same pattern found in 10 additional files. Review if needed."}, "properties": {"repobilityId": 115608, "scanner": "repobility-threat-engine", "fingerprint": "7f2d6d59cbe7894dfe3a7b339026aec55039f00ff23040a911eddbc37a7272a1", "category": "quality", "severity": "info", "confidence": 0.2, "triageState": "false_positive", "verdict": "likely_fp", "isResolved": true, "reason": "Deduplicated summary only: 10 additional occurrences found. The top occurrences remain visible as actionable findings.", "evidence": {"mined": true, "mining": {"slug": "http-not-https", "owasp": "A02:2021", "cwe_ids": ["CWE-319"], "precision": 0.917, "promoted_at": "2026-05-18T14:01:32.347999+00:00", "triaged_in_corpus": 12, "observations_count": 4113831, "ai_coder_pattern_id": 15}, "scanner": "repobility-threat-engine", "aggregated": true, "correlation_key": "fp|7f2d6d59cbe7894dfe3a7b339026aec55039f00ff23040a911eddbc37a7272a1", "aggregated_count": 10}}}, {"ruleId": "MINED043", "level": "none", "message": {"text": "[MINED043] Http Not Https: Hardcoded http:// (not localhost) for endpoints that handle credentials or data."}, "properties": {"repobilityId": 115607, "scanner": "repobility-threat-engine", "fingerprint": "d8287195da920b68ac35607b936250da62e1898f5fb94f2158596dd2b9fa2551", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "http-not-https", "owasp": "A02:2021", "cwe_ids": ["CWE-319"], "precision": 0.917, "promoted_at": "2026-05-18T14:01:32.347999+00:00", "triaged_in_corpus": 12, "observations_count": 4113831, "ai_coder_pattern_id": 15}, "scanner": "repobility-threat-engine", "correlation_key": "fp|d8287195da920b68ac35607b936250da62e1898f5fb94f2158596dd2b9fa2551"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/compiler.h"}, "region": {"startLine": 5}}}]}, {"ruleId": "MINED043", "level": "none", "message": {"text": "[MINED043] Http Not Https: Hardcoded http:// (not localhost) for endpoints that handle credentials or data."}, "properties": {"repobilityId": 115606, "scanner": "repobility-threat-engine", "fingerprint": "dc3cd8b6f1b7ce1cc214cf830125b41c1b801871d34742de1aa93aada09a22fa", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "http-not-https", "owasp": "A02:2021", "cwe_ids": ["CWE-319"], "precision": 0.917, "promoted_at": "2026-05-18T14:01:32.347999+00:00", "triaged_in_corpus": 12, "observations_count": 4113831, "ai_coder_pattern_id": 15}, "scanner": "repobility-threat-engine", "correlation_key": "fp|dc3cd8b6f1b7ce1cc214cf830125b41c1b801871d34742de1aa93aada09a22fa"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/compiler-systemlib.h"}, "region": {"startLine": 5}}}]}, {"ruleId": "MINED043", "level": "none", "message": {"text": "[MINED043] Http Not Https: Hardcoded http:// (not localhost) for endpoints that handle credentials or data."}, "properties": {"repobilityId": 115605, "scanner": "repobility-threat-engine", "fingerprint": "cf8100d28ddd132b718271987fc8e6c72582c81ba3a935d62b039b258dde273e", "category": "quality", "severity": "info", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "http-not-https", "owasp": "A02:2021", "cwe_ids": ["CWE-319"], "precision": 0.917, "promoted_at": "2026-05-18T14:01:32.347999+00:00", "triaged_in_corpus": 12, "observations_count": 4113831, "ai_coder_pattern_id": 15}, "scanner": "repobility-threat-engine", "correlation_key": "fp|cf8100d28ddd132b718271987fc8e6c72582c81ba3a935d62b039b258dde273e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/compiler/compiler-systemlib.cpp"}, "region": {"startLine": 5}}}]}, {"ruleId": "MINED134", "level": "error", "message": {"text": "[MINED134] Binary file `third-party/folly/src/folly/debugging/symbolizer/test/test-xindex.o` committed in source repo: `third-party/folly/src/folly/debugging/symbolizer/test/test-xindex.o` is a .o binary (4,194,464 bytes) committed to a repo that otherwise has 36681 source files. Trojan binaries inside otherwise-normal source repos are a known supply-chain attack: a compromised dependency or PR slips in a binary that gets executed by build scripts."}, "properties": {"repobilityId": 115861, "scanner": "repobility-supply-chain", "fingerprint": "967cdcd158f7107c15c8d3d855013d3878c3d6700ec8714407a58041a2755b5e", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "suspicious-binary-in-src", "owasp": null, "cwe_ids": ["CWE-506"], "languages": ["any"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|967cdcd158f7107c15c8d3d855013d3878c3d6700ec8714407a58041a2755b5e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/debugging/symbolizer/test/test-xindex.o"}, "region": {"startLine": 1}}}]}, {"ruleId": "MINED118", "level": "error", "message": {"text": "[MINED118] Dockerfile FROM `martenseemann/quic-network-simulator-endpoint:latest` not pinned by digest: `FROM martenseemann/quic-network-simulator-endpoint:latest` resolves the tag at build time. The registry CAN re-push a different image for the same tag, so every build is potentially different. Production images should pin to `image@sha256:...` for reproducibility + supply-chain integrity."}, "properties": {"repobilityId": 115860, "scanner": "repobility-supply-chain", "fingerprint": "89ea7c86dfa99626469dc0bac2a4a340b5a00303a0271631d74f545008b6a836", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "docker-from-unpinned", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["dockerfile"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|89ea7c86dfa99626469dc0bac2a4a340b5a00303a0271631d74f545008b6a836"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/proxygen/src/proxygen/httpserver/samples/hq/quic-interop/Dockerfile"}, "region": {"startLine": 23}}}]}, {"ruleId": "MINED118", "level": "error", "message": {"text": "[MINED118] Dockerfile FROM `martenseemann/quic-network-simulator-endpoint:latest` not pinned by digest: `FROM martenseemann/quic-network-simulator-endpoint:latest` resolves the tag at build time. The registry CAN re-push a different image for the same tag, so every build is potentially different. Production images should pin to `image@sha256:...` for reproducibility + supply-chain integrity."}, "properties": {"repobilityId": 115859, "scanner": "repobility-supply-chain", "fingerprint": "6ecc95939a594102dbe1d31428f009ffbb89b7504386a31e3b1f966f06cc09ec", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "docker-from-unpinned", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["dockerfile"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|6ecc95939a594102dbe1d31428f009ffbb89b7504386a31e3b1f966f06cc09ec"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/proxygen/src/proxygen/httpserver/samples/hq/quic-interop/Dockerfile"}, "region": {"startLine": 4}}}]}, {"ruleId": "MINED118", "level": "error", "message": {"text": "[MINED118] Dockerfile FROM `ubuntu:focal` not pinned by digest: `FROM ubuntu:focal` resolves the tag at build time. The registry CAN re-push a different image for the same tag, so every build is potentially different. Production images should pin to `image@sha256:...` for reproducibility + supply-chain integrity."}, "properties": {"repobilityId": 115858, "scanner": "repobility-supply-chain", "fingerprint": "86faafd2c052c4da852867d3de06fb23dbbf13944bb24faefc1e38b3a77c5310", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "docker-from-unpinned", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["dockerfile"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|86faafd2c052c4da852867d3de06fb23dbbf13944bb24faefc1e38b3a77c5310"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/scripts/docker/ubuntu/Dockerfile"}, "region": {"startLine": 2}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `actions/upload-artifact` pinned to mutable ref `@v6`: `uses: actions/upload-artifact@v6` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115857, "scanner": "repobility-supply-chain", "fingerprint": "5c71e12f68238138f0b27483c5678559617e7983f53249aae503ef6f7009c68c", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|5c71e12f68238138f0b27483c5678559617e7983f53249aae503ef6f7009c68c"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/getdeps_linux.yml"}, "region": {"startLine": 135}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `mozilla-actions/sccache-action` pinned to mutable ref `@v0.0.9`: `uses: mozilla-actions/sccache-action@v0.0.9` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115856, "scanner": "repobility-supply-chain", "fingerprint": "28b5fb685266716e39dc6262fcf093f4d333950ec650eb0335bf9c3f807c4bda", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|28b5fb685266716e39dc6262fcf093f4d333950ec650eb0335bf9c3f807c4bda"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/getdeps_linux.yml"}, "region": {"startLine": 34}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout@v6` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115855, "scanner": "repobility-supply-chain", "fingerprint": "3aa5507119c8edf5d54059437c2502633c53bad87ff8b1f170bf82f294d78c94", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|3aa5507119c8edf5d54059437c2502633c53bad87ff8b1f170bf82f294d78c94"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/getdeps_linux.yml"}, "region": {"startLine": 30}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `actions/upload-artifact` pinned to mutable ref `@v6`: `uses: actions/upload-artifact@v6` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115854, "scanner": "repobility-supply-chain", "fingerprint": "6625abf466d08897e5344e4d302907b0885908db5478485d4287c991897f64bf", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|6625abf466d08897e5344e4d302907b0885908db5478485d4287c991897f64bf"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/getdeps_windows.yml"}, "region": {"startLine": 128}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `mozilla-actions/sccache-action` pinned to mutable ref `@v0.0.9`: `uses: mozilla-actions/sccache-action@v0.0.9` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115853, "scanner": "repobility-supply-chain", "fingerprint": "ccfe454a16d5f621ade4192ea158e4db956475088e051bbf46f6c91b761134b3", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|ccfe454a16d5f621ade4192ea158e4db956475088e051bbf46f6c91b761134b3"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/getdeps_windows.yml"}, "region": {"startLine": 46}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `actions/checkout` pinned to mutable ref `@v6`: `uses: actions/checkout@v6` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115852, "scanner": "repobility-supply-chain", "fingerprint": "c3c2791d51d6346bf15c7b219bb704a8ac0663cafd3ba00ddeab2da9be281ac3", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|c3c2791d51d6346bf15c7b219bb704a8ac0663cafd3ba00ddeab2da9be281ac3"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/getdeps_windows.yml"}, "region": {"startLine": 42}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `actions/setup-python` pinned to mutable ref `@v5`: `uses: actions/setup-python@v5` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115851, "scanner": "repobility-supply-chain", "fingerprint": "816858cdfb8ac1ff7fb9ba3e2ca051892af4a6f096112f48f0785a4ea3c2216e", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|816858cdfb8ac1ff7fb9ba3e2ca051892af4a6f096112f48f0785a4ea3c2216e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 174}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `ocaml/setup-ocaml` pinned to mutable ref `@v2`: `uses: ocaml/setup-ocaml@v2` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115850, "scanner": "repobility-supply-chain", "fingerprint": "948444818139322470aee62cd20ec85c92988727c680a3526f5b5352a1a0664b", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|948444818139322470aee62cd20ec85c92988727c680a3526f5b5352a1a0664b"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 169}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `dtolnay/rust-toolchain` pinned to mutable ref `@stable`: `uses: dtolnay/rust-toolchain@stable` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115849, "scanner": "repobility-supply-chain", "fingerprint": "f79dddb3cf90dec9035f55b5970a712805664f2cc3fd5021be69809b906ab017", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|f79dddb3cf90dec9035f55b5970a712805664f2cc3fd5021be69809b906ab017"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 160}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `facebook/install-dotslash` pinned to mutable ref `@latest`: `uses: facebook/install-dotslash@latest` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115848, "scanner": "repobility-supply-chain", "fingerprint": "a9e2b61ce3e52b66ad95f92f475f4a43c2e4c56ba7b773c2d07f2b97b71061cc", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|a9e2b61ce3e52b66ad95f92f475f4a43c2e4c56ba7b773c2d07f2b97b71061cc"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 157}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `actions/checkout` pinned to mutable ref `@v4`: `uses: actions/checkout@v4` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115847, "scanner": "repobility-supply-chain", "fingerprint": "9447dee491a0254441ac86097a0585903f4a1b796164afbb4eacc66ba1dc0723", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|9447dee491a0254441ac86097a0585903f4a1b796164afbb4eacc66ba1dc0723"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 154}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `actions/checkout` pinned to mutable ref `@v4`: `uses: actions/checkout@v4` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115846, "scanner": "repobility-supply-chain", "fingerprint": "de7132f2dd16c36da3b1d0bd4cd65f420e0fa14fa8023893f465171bd24508cd", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|de7132f2dd16c36da3b1d0bd4cd65f420e0fa14fa8023893f465171bd24508cd"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 138}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `actions/setup-python` pinned to mutable ref `@v5`: `uses: actions/setup-python@v5` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115845, "scanner": "repobility-supply-chain", "fingerprint": "2d9faeecc7a541774f1c775f4ab65431a3ae4827effc73c52410cd42e852523b", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|2d9faeecc7a541774f1c775f4ab65431a3ae4827effc73c52410cd42e852523b"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 126}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `ocaml/setup-ocaml` pinned to mutable ref `@v2`: `uses: ocaml/setup-ocaml@v2` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115844, "scanner": "repobility-supply-chain", "fingerprint": "087ea0bf030d78d5985330b20647486d1de280e0a21ccae710bb9c392aef7d11", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|087ea0bf030d78d5985330b20647486d1de280e0a21ccae710bb9c392aef7d11"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 121}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `dtolnay/rust-toolchain` pinned to mutable ref `@stable`: `uses: dtolnay/rust-toolchain@stable` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115843, "scanner": "repobility-supply-chain", "fingerprint": "eafbf4f6dfa3545cb4cb3a4f096b728dd375de60782231a42b3e15bc2eefbdfd", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|eafbf4f6dfa3545cb4cb3a4f096b728dd375de60782231a42b3e15bc2eefbdfd"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 112}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `facebook/install-dotslash` pinned to mutable ref `@latest`: `uses: facebook/install-dotslash@latest` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115842, "scanner": "repobility-supply-chain", "fingerprint": "154db91e15a5b228d48859e0dbd06ec086240c96bf1e14662a9fd187cd0e3076", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|154db91e15a5b228d48859e0dbd06ec086240c96bf1e14662a9fd187cd0e3076"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 109}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `actions/checkout` pinned to mutable ref `@v4`: `uses: actions/checkout@v4` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115841, "scanner": "repobility-supply-chain", "fingerprint": "560df5506ca6b1dcc3dfa13e0881e63e6b8fc4b9abd4823785c84b11862af051", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|560df5506ca6b1dcc3dfa13e0881e63e6b8fc4b9abd4823785c84b11862af051"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 106}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `actions/checkout` pinned to mutable ref `@v4`: `uses: actions/checkout@v4` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115840, "scanner": "repobility-supply-chain", "fingerprint": "2adf371f989e7ebbec5ac71530b24cad335dca11afed573eeb14baab3d9289de", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|2adf371f989e7ebbec5ac71530b24cad335dca11afed573eeb14baab3d9289de"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 88}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `actions/setup-python` pinned to mutable ref `@v5`: `uses: actions/setup-python@v5` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115839, "scanner": "repobility-supply-chain", "fingerprint": "850017fbe4e502111cc94608207027b54f5784f196df3e2aab64994f85119451", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|850017fbe4e502111cc94608207027b54f5784f196df3e2aab64994f85119451"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 79}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `ocaml/setup-ocaml` pinned to mutable ref `@v2`: `uses: ocaml/setup-ocaml@v2` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115838, "scanner": "repobility-supply-chain", "fingerprint": "5bd47b14c4e37d3a635c96eb8338860825637032e9a65814b9b3605b73d5c989", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|5bd47b14c4e37d3a635c96eb8338860825637032e9a65814b9b3605b73d5c989"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 74}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `dtolnay/rust-toolchain` pinned to mutable ref `@stable`: `uses: dtolnay/rust-toolchain@stable` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115837, "scanner": "repobility-supply-chain", "fingerprint": "c221d40cd62cf135c430ac4027f43dbe935e6b495841186b669922b472f2db64", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|c221d40cd62cf135c430ac4027f43dbe935e6b495841186b669922b472f2db64"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 66}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `facebook/install-dotslash` pinned to mutable ref `@latest`: `uses: facebook/install-dotslash@latest` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115836, "scanner": "repobility-supply-chain", "fingerprint": "1deb7d369ec3fe0e100e3c6abb39f42f6764cb5a3021a55faee3345d5285c569", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|1deb7d369ec3fe0e100e3c6abb39f42f6764cb5a3021a55faee3345d5285c569"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 63}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `actions/checkout` pinned to mutable ref `@v4`: `uses: actions/checkout@v4` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115835, "scanner": "repobility-supply-chain", "fingerprint": "96403d7b1d2a3e55ba069a0de68585debb3fbd1804b20051c036ac2dd4030445", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|96403d7b1d2a3e55ba069a0de68585debb3fbd1804b20051c036ac2dd4030445"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 60}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `facebook/install-dotslash` pinned to mutable ref `@latest`: `uses: facebook/install-dotslash@latest` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115834, "scanner": "repobility-supply-chain", "fingerprint": "65895b909d528ee22cdc2f2161d543ce801aabf6d90341ec7928c025a0814a21", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|65895b909d528ee22cdc2f2161d543ce801aabf6d90341ec7928c025a0814a21"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 10}}}]}, {"ruleId": "MINED115", "level": "error", "message": {"text": "[MINED115] Action `actions/checkout` pinned to mutable ref `@v4`: `uses: actions/checkout@v4` resolves at workflow-run time. Tags and branches can be re-pushed by the action owner; that made the tj-actions/changed-files compromise (2025) instantly affect ~23K repos. Pin to a 40-char commit SHA + lock with Dependabot or renovate."}, "properties": {"repobilityId": 115833, "scanner": "repobility-supply-chain", "fingerprint": "0389bf592665eca40a970dcc42590985808baf4b4cd5fc553b6626056f9ce959", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "gha-mutable-ref", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["yaml"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|0389bf592665eca40a970dcc42590985808baf4b4cd5fc553b6626056f9ce959"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fizz/src/.github/workflows/oss-build-and-test.yml"}, "region": {"startLine": 7}}}]}, {"ruleId": "MINED118", "level": "error", "message": {"text": "[MINED118] Dockerfile FROM `ghcr.io/xtruder/nix-devcontainer:v1` not pinned by digest: `FROM ghcr.io/xtruder/nix-devcontainer:v1` resolves the tag at build time. The registry CAN re-push a different image for the same tag, so every build is potentially different. Production images should pin to `image@sha256:...` for reproducibility + supply-chain integrity."}, "properties": {"repobilityId": 115832, "scanner": "repobility-supply-chain", "fingerprint": "741cb2cd79ad4c308d1a91bb8fd4be33d764cb40c82eb5aaba9aec9292b98ec0", "category": "dependency", "severity": "high", "confidence": 0.9, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "docker-from-unpinned", "owasp": "A08:2021", "cwe_ids": ["CWE-829"], "languages": ["dockerfile"], "observations_count": 0}, "scanner": "repobility-supply-chain", "correlation_key": "fp|741cb2cd79ad4c308d1a91bb8fd4be33d764cb40c82eb5aaba9aec9292b98ec0"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".devcontainer/Dockerfile"}, "region": {"startLine": 1}}}]}, {"ruleId": "MINED113", "level": "error", "message": {"text": "[MINED113] Express POST /sourceList has no auth: Express route POST /sourceList declared without an auth middleware in its handler chain. Destructive methods (POST/PUT/DELETE/PATCH) on unauthenticated routes are OWASP A01:2021 broken access control."}, "properties": {"repobilityId": 115831, "scanner": "repobility-route-auth", "fingerprint": "2f0a5e72bd44c1dcd8219248175966eb77a45275ce442cbf06e6e5e783c31185", "category": "quality", "severity": "high", "confidence": 0.8, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "express-destructive-unauth", "owasp": "A01:2021", "cwe_ids": ["CWE-306", "CWE-862"], "languages": ["python", "javascript"], "observations_count": 7836}, "scanner": "repobility-route-auth", "correlation_key": "fp|2f0a5e72bd44c1dcd8219248175966eb77a45275ce442cbf06e6e5e783c31185"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/extra/duktape/duktape-2.3.0/debugger/duk_debug.js"}, "region": {"startLine": 1864}}}]}, {"ruleId": "MINED113", "level": "error", "message": {"text": "[MINED113] Express POST /source has no auth: Express route POST /source declared without an auth middleware in its handler chain. Destructive methods (POST/PUT/DELETE/PATCH) on unauthenticated routes are OWASP A01:2021 broken access control."}, "properties": {"repobilityId": 115830, "scanner": "repobility-route-auth", "fingerprint": "d8833a9b0279c5a7bdc793df70788cc053887fad3be5608ca1f170ede7d7060a", "category": "quality", "severity": "high", "confidence": 0.8, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "express-destructive-unauth", "owasp": "A01:2021", "cwe_ids": ["CWE-306", "CWE-862"], "languages": ["python", "javascript"], "observations_count": 7836}, "scanner": "repobility-route-auth", "correlation_key": "fp|d8833a9b0279c5a7bdc793df70788cc053887fad3be5608ca1f170ede7d7060a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/fb-mysql/8.0.20/extra/duktape/duktape-2.3.0/debugger/duk_debug.js"}, "region": {"startLine": 1863}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_static_init: Test function `test_static_init` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115799, "scanner": "repobility-ast-engine", "fingerprint": "01c7f9d1113f11b44f5afc7b42dced169caf64fd3429ddf638fafab88ec627f3", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|01c7f9d1113f11b44f5afc7b42dced169caf64fd3429ddf638fafab88ec627f3"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/logging/test/fatal_test.py"}, "region": {"startLine": 118}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_other_category: Test function `test_other_category` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115798, "scanner": "repobility-ast-engine", "fingerprint": "50c7ffdc189b3428722e6c9fbcebada017207b8d49f493124ed85ce876095208", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|50c7ffdc189b3428722e6c9fbcebada017207b8d49f493124ed85ce876095208"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/logging/test/fatal_test.py"}, "region": {"startLine": 108}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_none: Test function `test_none` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115797, "scanner": "repobility-ast-engine", "fingerprint": "4af558d8c5d6f98f6b6d116143438736beffec733c7923ac03be04c5772debc1", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|4af558d8c5d6f98f6b6d116143438736beffec733c7923ac03be04c5772debc1"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/logging/test/fatal_test.py"}, "region": {"startLine": 102}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_immediate: Test function `test_immediate` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115796, "scanner": "repobility-ast-engine", "fingerprint": "3c96842f6d3b1a654d662acb8bcd8c56773e9b3299078de944d2bc3a41cba6cb", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|3c96842f6d3b1a654d662acb8bcd8c56773e9b3299078de944d2bc3a41cba6cb"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/logging/test/fatal_test.py"}, "region": {"startLine": 97}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_async: Test function `test_async` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115795, "scanner": "repobility-ast-engine", "fingerprint": "0fc69a3a9790d3a6a6e1e423605f823017edf16d53601e5e99d16fb826bd9f65", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|0fc69a3a9790d3a6a6e1e423605f823017edf16d53601e5e99d16fb826bd9f65"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/logging/test/fatal_test.py"}, "region": {"startLine": 92}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_fractional_values: Test function `test_fractional_values` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115792, "scanner": "repobility-ast-engine", "fingerprint": "5b1ad8dad4c4423f9176968c6b317a72ddc5da91215f3897b4f619565399070d", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|5b1ad8dad4c4423f9176968c6b317a72ddc5da91215f3897b4f619565399070d"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/json/test/tests/test_float_format_python_json.py"}, "region": {"startLine": 135}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_integer_valued_doubles: Test function `test_integer_valued_doubles` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115791, "scanner": "repobility-ast-engine", "fingerprint": "bad0e70e41f10b826247dffa9eea1f78758d4654d25ae6593db4cc60df71d480", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|bad0e70e41f10b826247dffa9eea1f78758d4654d25ae6593db4cc60df71d480"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/json/test/tests/test_float_format_python_json.py"}, "region": {"startLine": 132}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_scientific_integer_mantissa: Test function `test_scientific_integer_mantissa` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115790, "scanner": "repobility-ast-engine", "fingerprint": "5f7c4c8b7cff899395a5e59970ba92641d258e19452548ce2cd758936d841744", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|5f7c4c8b7cff899395a5e59970ba92641d258e19452548ce2cd758936d841744"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/json/test/tests/test_float_format_python_json.py"}, "region": {"startLine": 129}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_fractional_values: Test function `test_fractional_values` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115789, "scanner": "repobility-ast-engine", "fingerprint": "45513205d98559b0c81479785b42ad7cdfb0d951c8424b555f5ceebd6eb9625a", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|45513205d98559b0c81479785b42ad7cdfb0d951c8424b555f5ceebd6eb9625a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/json/test/tests/test_float_format_python_json.py"}, "region": {"startLine": 122}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_integer_valued_doubles: Test function `test_integer_valued_doubles` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115788, "scanner": "repobility-ast-engine", "fingerprint": "62f9e6684efe9ee239ff6eebb5a95587fe1b3a8b90151d3f6587419fdc6fe439", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|62f9e6684efe9ee239ff6eebb5a95587fe1b3a8b90151d3f6587419fdc6fe439"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/json/test/tests/test_float_format_python_json.py"}, "region": {"startLine": 119}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_scientific_integer_mantissa: Test function `test_scientific_integer_mantissa` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115787, "scanner": "repobility-ast-engine", "fingerprint": "dc2efda71eaaf45c31da76f153c3465a6928a8a70148f7e76c6ecf792d70d258", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|dc2efda71eaaf45c31da76f153c3465a6928a8a70148f7e76c6ecf792d70d258"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/json/test/tests/test_float_format_python_json.py"}, "region": {"startLine": 116}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_scientific_integer_mantissa: Test function `test_scientific_integer_mantissa` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115786, "scanner": "repobility-ast-engine", "fingerprint": "772cad472a0dd671fe3a2abbf5594c178e15a18dee0716d4fec6adee0e779844", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|772cad472a0dd671fe3a2abbf5594c178e15a18dee0716d4fec6adee0e779844"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/json/test/tests/test_float_format_python_json.py"}, "region": {"startLine": 104}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_fractional_values: Test function `test_fractional_values` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115785, "scanner": "repobility-ast-engine", "fingerprint": "fe4cdb048cf497de5e09b0fe7948cccc57e176772c43c70444335680e48b5f0e", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|fe4cdb048cf497de5e09b0fe7948cccc57e176772c43c70444335680e48b5f0e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/json/test/tests/test_float_format_python_json.py"}, "region": {"startLine": 99}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_scientific_integer_mantissa: Test function `test_scientific_integer_mantissa` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115784, "scanner": "repobility-ast-engine", "fingerprint": "65c98da443817261102488d87296d27839ae4666ca60b377608463c8e0f5db57", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|65c98da443817261102488d87296d27839ae4666ca60b377608463c8e0f5db57"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/json/test/tests/test_float_format_python_json.py"}, "region": {"startLine": 85}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_integer_valued_doubles: Test function `test_integer_valued_doubles` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115783, "scanner": "repobility-ast-engine", "fingerprint": "ee9ae086172d44f2021cdd20dca5dae68bf46f44d8628176fce77ff728c5ecbc", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|ee9ae086172d44f2021cdd20dca5dae68bf46f44d8628176fce77ff728c5ecbc"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/json/test/tests/test_float_format_python_json.py"}, "region": {"startLine": 80}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_fractional_values: Test function `test_fractional_values` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115782, "scanner": "repobility-ast-engine", "fingerprint": "ee6db4cf1159c0ba03fe2a555ed2f9a0f2e431aa2f5288e7d92492338a1c9916", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|ee6db4cf1159c0ba03fe2a555ed2f9a0f2e431aa2f5288e7d92492338a1c9916"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/json/test/tests/test_float_format_python_json.py"}, "region": {"startLine": 77}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_scientific_integer_mantissa: Test function `test_scientific_integer_mantissa` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115781, "scanner": "repobility-ast-engine", "fingerprint": "4efbf66594c1c1ea1eb8b3b60a84bcf6224d7d672b7bef3f32dd21e5bd695793", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|4efbf66594c1c1ea1eb8b3b60a84bcf6224d7d672b7bef3f32dd21e5bd695793"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/json/test/tests/test_float_format_python_json.py"}, "region": {"startLine": 64}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_integer_valued_doubles: Test function `test_integer_valued_doubles` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115780, "scanner": "repobility-ast-engine", "fingerprint": "f283f9de05f2e6e8736a91029fc13977022be855370b36ec4380acbd10e892ec", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|f283f9de05f2e6e8736a91029fc13977022be855370b36ec4380acbd10e892ec"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/json/test/tests/test_float_format_python_json.py"}, "region": {"startLine": 61}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_fractional_values: Test function `test_fractional_values` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115779, "scanner": "repobility-ast-engine", "fingerprint": "cd0128807522d0b610bebadebdbfb6c9a37234bfadc5c39c135d55e6a3982c6f", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|cd0128807522d0b610bebadebdbfb6c9a37234bfadc5c39c135d55e6a3982c6f"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/folly/src/folly/json/test/tests/test_float_format_python_json.py"}, "region": {"startLine": 58}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_all_delete: Test function `test_all_delete` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115778, "scanner": "repobility-ast-engine", "fingerprint": "d901662f29965328a8cbf61229d2ca9fd549cfd3de56e739bb09ab3bca26459f", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|d901662f29965328a8cbf61229d2ca9fd549cfd3de56e739bb09ab3bca26459f"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_axonlog.py"}, "region": {"startLine": 49}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_failed_del: Test function `test_failed_del` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115777, "scanner": "repobility-ast-engine", "fingerprint": "a7b18ca92ed6c32f6a4ac98a5bd9d2747058716b0e5d403203b5ba46c11de2ae", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|a7b18ca92ed6c32f6a4ac98a5bd9d2747058716b0e5d403203b5ba46c11de2ae"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_axonlog.py"}, "region": {"startLine": 26}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_stats_no_requests: Test function `test_stats_no_requests` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115776, "scanner": "repobility-ast-engine", "fingerprint": "d3f2bbd39aad97b57dff2f6740ff5c8e3e3e438f530548fce1e59c2951ae5f52", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|d3f2bbd39aad97b57dff2f6740ff5c8e3e3e438f530548fce1e59c2951ae5f52"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_async_files_attr.py"}, "region": {"startLine": 53}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_bad_config: Test function `test_bad_config` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115775, "scanner": "repobility-ast-engine", "fingerprint": "5368c18865ba0cb2e3ad4f40d848fe92fd0ba4ef7060634e0f9115559b8e004a", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|5368c18865ba0cb2e3ad4f40d848fe92fd0ba4ef7060634e0f9115559b8e004a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_bad_params.py"}, "region": {"startLine": 58}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_stats_no_requests: Test function `test_stats_no_requests` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115774, "scanner": "repobility-ast-engine", "fingerprint": "39dd805a66686bee9879432e0466468e5a698308e08c564a1cfff3030f201ff9", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|39dd805a66686bee9879432e0466468e5a698308e08c564a1cfff3030f201ff9"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_async_files.py"}, "region": {"startLine": 57}}}]}, {"ruleId": "MINED106", "level": "error", "message": {"text": "[MINED106] Phantom test coverage: test_route_handles: Test function `test_route_handles` runs code but contains no assert / expect / should call \u2014 it passes regardless of behaviour. Adds line coverage without verifying anything."}, "properties": {"repobilityId": 115773, "scanner": "repobility-ast-engine", "fingerprint": "aa3dfa73164beddb78811cafb2af54ed4dd2bed7b2d7d3d449ae115f1a0f4d24", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "phantom-test-coverage", "owasp": null, "cwe_ids": ["CWE-1126"], "languages": ["python"], "observations_count": 982154}, "scanner": "repobility-ast-engine", "correlation_key": "fp|aa3dfa73164beddb78811cafb2af54ed4dd2bed7b2d7d3d449ae115f1a0f4d24"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_service_info.py"}, "region": {"startLine": 46}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.assertTrue` used but never assigned in __init__: Method `test_lease_pairing_basic` of class `TestLeasePairing` reads `self.assertTrue`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115767, "scanner": "repobility-ast-engine", "fingerprint": "b010791fed8cce269c522a73e2f18e4724d6791222e552505dce02b1624779bc", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|b010791fed8cce269c522a73e2f18e4724d6791222e552505dce02b1624779bc"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_lease_pairing.py"}, "region": {"startLine": 40}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.create_mcrouter` used but never assigned in __init__: Method `test_lease_pairing_basic` of class `TestLeasePairing` reads `self.create_mcrouter`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115766, "scanner": "repobility-ast-engine", "fingerprint": "9812b1d8e72ff852fcca89a2a8620ae56b2a08619ef4835da889a7d91be91bc3", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|9812b1d8e72ff852fcca89a2a8620ae56b2a08619ef4835da889a7d91be91bc3"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_lease_pairing.py"}, "region": {"startLine": 33}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.add_server` used but never assigned in __init__: Method `create_mcrouter` of class `TestLeasePairing` reads `self.add_server`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115765, "scanner": "repobility-ast-engine", "fingerprint": "ad316f35915f492ad9615dc86662deb4cb012289bb5daf85401e4672fed9a0de", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|ad316f35915f492ad9615dc86662deb4cb012289bb5daf85401e4672fed9a0de"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_lease_pairing.py"}, "region": {"startLine": 24}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.memcacheds` used but never assigned in __init__: Method `create_mcrouter` of class `TestLeasePairing` reads `self.memcacheds`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115764, "scanner": "repobility-ast-engine", "fingerprint": "3b1ccf968b81bfec1d0b1bf9e89b6e1beaa55e43daa4ae2523b83321862d6373", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|3b1ccf968b81bfec1d0b1bf9e89b6e1beaa55e43daa4ae2523b83321862d6373"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_lease_pairing.py"}, "region": {"startLine": 24}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.mcrouter` used but never assigned in __init__: Method `create_mcrouter` of class `TestLeasePairing` reads `self.mcrouter`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115763, "scanner": "repobility-ast-engine", "fingerprint": "3c4ae08e8406840048ab610667ece733d38029123dc359681feeb6686c37d2c7", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|3c4ae08e8406840048ab610667ece733d38029123dc359681feeb6686c37d2c7"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_lease_pairing.py"}, "region": {"startLine": 27}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.add_mcrouter` used but never assigned in __init__: Method `create_mcrouter` of class `TestLeasePairing` reads `self.add_mcrouter`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115762, "scanner": "repobility-ast-engine", "fingerprint": "841521ee9f877c845d7d78a82e523507a7448ce3defec45117564df6ce00e5e2", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|841521ee9f877c845d7d78a82e523507a7448ce3defec45117564df6ce00e5e2"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_lease_pairing.py"}, "region": {"startLine": 26}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.clients` used but never assigned in __init__: Method `create_mcrouter` of class `TestLeasePairing` reads `self.clients`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115761, "scanner": "repobility-ast-engine", "fingerprint": "e5b941b3fa40739853e51d94c11fc54fba8a94e5b78802647e280a97efe0208b", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|e5b941b3fa40739853e51d94c11fc54fba8a94e5b78802647e280a97efe0208b"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_lease_pairing.py"}, "region": {"startLine": 27}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.mcrouter` used but never assigned in __init__: Method `create_mcrouter` of class `TestLeasePairing` reads `self.mcrouter`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115760, "scanner": "repobility-ast-engine", "fingerprint": "effbcbd8edeb11acec73aaeb20bc76e3f9f84347c55f12b0e639e56ad7e1e5c8", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|effbcbd8edeb11acec73aaeb20bc76e3f9f84347c55f12b0e639e56ad7e1e5c8"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_lease_pairing.py"}, "region": {"startLine": 26}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.memcacheds` used but never assigned in __init__: Method `create_mcrouter` of class `TestLeasePairing` reads `self.memcacheds`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115759, "scanner": "repobility-ast-engine", "fingerprint": "042cc77dd441eeff626692f362c6ee9a360685bd583ee4c9975a496d38105a20", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|042cc77dd441eeff626692f362c6ee9a360685bd583ee4c9975a496d38105a20"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_lease_pairing.py"}, "region": {"startLine": 22}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.mcrouter` used but never assigned in __init__: Method `test_basic` of class `TestAdditionalFields` reads `self.mcrouter`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115758, "scanner": "repobility-ast-engine", "fingerprint": "6f0b60d158d9e4214cb649f7781f08975676214d8c8c403abadaf09d1296cedb", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|6f0b60d158d9e4214cb649f7781f08975676214d8c8c403abadaf09d1296cedb"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_additional_fields.py"}, "region": {"startLine": 22}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.mcrouter` used but never assigned in __init__: Method `test_basic` of class `TestAdditionalFields` reads `self.mcrouter`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115757, "scanner": "repobility-ast-engine", "fingerprint": "03fd703b81cdc853d0e72c52c24c224a25e6a1f06355306c77ec9d49b4bcd4d7", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|03fd703b81cdc853d0e72c52c24c224a25e6a1f06355306c77ec9d49b4bcd4d7"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_additional_fields.py"}, "region": {"startLine": 21}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.assertEqual` used but never assigned in __init__: Method `test_basic` of class `TestAdditionalFields` reads `self.assertEqual`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115756, "scanner": "repobility-ast-engine", "fingerprint": "2866b321caf4281ebfd7b1fd31f306ac232946b03c8ab44a4aafe865cc3bb667", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|2866b321caf4281ebfd7b1fd31f306ac232946b03c8ab44a4aafe865cc3bb667"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_additional_fields.py"}, "region": {"startLine": 22}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.assertTrue` used but never assigned in __init__: Method `test_basic` of class `TestAdditionalFields` reads `self.assertTrue`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115755, "scanner": "repobility-ast-engine", "fingerprint": "13ec7a9db94945ec0e3545b7684229d20102b245b53b12fcba8350703dc703d8", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|13ec7a9db94945ec0e3545b7684229d20102b245b53b12fcba8350703dc703d8"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_additional_fields.py"}, "region": {"startLine": 21}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.add_mcrouter` used but never assigned in __init__: Method `setUp` of class `TestAdditionalFields` reads `self.add_mcrouter`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115754, "scanner": "repobility-ast-engine", "fingerprint": "1ae41d7cb3545664189b05faf71af6429d62359a211aa2eee7cb8dc8698518de", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|1ae41d7cb3545664189b05faf71af6429d62359a211aa2eee7cb8dc8698518de"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_additional_fields.py"}, "region": {"startLine": 18}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.add_server` used but never assigned in __init__: Method `setUp` of class `TestAdditionalFields` reads `self.add_server`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115753, "scanner": "repobility-ast-engine", "fingerprint": "f0c74a81b52af9079ff4bf8497384ef016bf7da2ea1c744d6e95595d380ffd9d", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|f0c74a81b52af9079ff4bf8497384ef016bf7da2ea1c744d6e95595d380ffd9d"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_additional_fields.py"}, "region": {"startLine": 17}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.mcrouter` used but never assigned in __init__: Method `setUp` of class `TestAdditionalFields` reads `self.mcrouter`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115752, "scanner": "repobility-ast-engine", "fingerprint": "d1740f75415afe65863f2f00f1a35bef69c081c3dd83b8b67f3fe8d9816328b9", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|d1740f75415afe65863f2f00f1a35bef69c081c3dd83b8b67f3fe8d9816328b9"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_additional_fields.py"}, "region": {"startLine": 18}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.mc` used but never assigned in __init__: Method `setUp` of class `TestAdditionalFields` reads `self.mc`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115751, "scanner": "repobility-ast-engine", "fingerprint": "dad5e273b6dc86fd7d76f1a5fbcd453facc8b637ff0686b2063fc4b550962140", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|dad5e273b6dc86fd7d76f1a5fbcd453facc8b637ff0686b2063fc4b550962140"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_additional_fields.py"}, "region": {"startLine": 17}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.assertEqual` used but never assigned in __init__: Method `test_migrated_failover` of class `TestMigratedFailover` reads `self.assertEqual`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115750, "scanner": "repobility-ast-engine", "fingerprint": "74789e8965f731b2afd88a0294b9310324161ff07367a10349605e4319152529", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|74789e8965f731b2afd88a0294b9310324161ff07367a10349605e4319152529"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_migrated_failover.py"}, "region": {"startLine": 35}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.assertEqual` used but never assigned in __init__: Method `test_migrated_failover` of class `TestMigratedFailover` reads `self.assertEqual`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115749, "scanner": "repobility-ast-engine", "fingerprint": "9ddd92f8c01ead57a2923704c0b1f250d0f255fc17586ccd77d6bfbd4ee0fcba", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|9ddd92f8c01ead57a2923704c0b1f250d0f255fc17586ccd77d6bfbd4ee0fcba"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_migrated_failover.py"}, "region": {"startLine": 31}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.get_mcrouter` used but never assigned in __init__: Method `test_migrated_failover` of class `TestMigratedFailover` reads `self.get_mcrouter`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115748, "scanner": "repobility-ast-engine", "fingerprint": "bf5e425951d182b7ce2aa57fc0dda1320354af08259ed2e4835745129508208a", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|bf5e425951d182b7ce2aa57fc0dda1320354af08259ed2e4835745129508208a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_migrated_failover.py"}, "region": {"startLine": 29}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.add_server` used but never assigned in __init__: Method `test_migrated_failover` of class `TestMigratedFailover` reads `self.add_server`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115747, "scanner": "repobility-ast-engine", "fingerprint": "f16171991cdaace253d5047039d4087a2e554198f2be0b6c83e8e21591a1e3c0", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|f16171991cdaace253d5047039d4087a2e554198f2be0b6c83e8e21591a1e3c0"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_migrated_failover.py"}, "region": {"startLine": 24}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.add_server` used but never assigned in __init__: Method `test_migrated_failover` of class `TestMigratedFailover` reads `self.add_server`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115746, "scanner": "repobility-ast-engine", "fingerprint": "af46a35a167bf77f43c427f516e31c6327a3bac53d41375d29e4b6c0c8ad12e2", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|af46a35a167bf77f43c427f516e31c6327a3bac53d41375d29e4b6c0c8ad12e2"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_migrated_failover.py"}, "region": {"startLine": 23}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.add_server` used but never assigned in __init__: Method `test_migrated_failover` of class `TestMigratedFailover` reads `self.add_server`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115745, "scanner": "repobility-ast-engine", "fingerprint": "1049984f7eb23f4d4656454090ff86eed544ceaa416df28611b130924613625d", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|1049984f7eb23f4d4656454090ff86eed544ceaa416df28611b130924613625d"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_migrated_failover.py"}, "region": {"startLine": 22}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.add_server` used but never assigned in __init__: Method `test_migrated_failover` of class `TestMigratedFailover` reads `self.add_server`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115744, "scanner": "repobility-ast-engine", "fingerprint": "078b8fef891348660b4d9f551cf4135e61e1e171fbb61fcecd3f1bd2da220a24", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|078b8fef891348660b4d9f551cf4135e61e1e171fbb61fcecd3f1bd2da220a24"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_migrated_failover.py"}, "region": {"startLine": 21}}}]}, {"ruleId": "MINED108", "level": "error", "message": {"text": "[MINED108] `self.add_mcrouter` used but never assigned in __init__: Method `get_mcrouter` of class `TestMigratedFailover` reads `self.add_mcrouter`, but no assignment to it exists in __init__ (and no class-level fallback). This raises AttributeError the first time the method runs against an instance."}, "properties": {"repobilityId": 115743, "scanner": "repobility-ast-engine", "fingerprint": "3821c06c742efa7e61cff426b24c6dd98b8b6eb4c4a119a04de695cebd26ca6c", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "self-attr-never-set", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["python"], "observations_count": 25998}, "scanner": "repobility-ast-engine", "correlation_key": "fp|3821c06c742efa7e61cff426b24c6dd98b8b6eb4c4a119a04de695cebd26ca6c"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/test_migrated_failover.py"}, "region": {"startLine": 18}}}]}, {"ruleId": "DKR006", "level": "error", "message": {"text": "Dockerfile pipes a remote script into a shell"}, "properties": {"repobilityId": 115737, "scanner": "repobility-docker", "fingerprint": "874b6f0329d2c03033f3df5d0cebab0ce44aad389521417b6b8e96e93d1338be", "category": "docker", "severity": "high", "confidence": 0.92, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "RUN instruction contains curl/wget piped into a shell.", "evidence": {"rule_id": "DKR006", "scanner": "repobility-docker", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://cheatsheetseries.owasp.org/cheatsheets/Docker_Security_Cheat_Sheet.html"], "correlation_key": "fp|874b6f0329d2c03033f3df5d0cebab0ce44aad389521417b6b8e96e93d1338be"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/watchman/src/watchman/build/package/ubuntu-env/Dockerfile"}, "region": {"startLine": 18}}}]}, {"ruleId": "DKR006", "level": "error", "message": {"text": "Dockerfile pipes a remote script into a shell"}, "properties": {"repobilityId": 115734, "scanner": "repobility-docker", "fingerprint": "963dea1b89e49e553a249c477adde6f0a22c7b0a1308e7355b6f745cff99b607", "category": "docker", "severity": "high", "confidence": 0.92, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "RUN instruction contains curl/wget piped into a shell.", "evidence": {"rule_id": "DKR006", "scanner": "repobility-docker", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/", "https://cheatsheetseries.owasp.org/cheatsheets/Docker_Security_Cheat_Sheet.html"], "correlation_key": "fp|963dea1b89e49e553a249c477adde6f0a22c7b0a1308e7355b6f745cff99b607"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/watchman/src/watchman/build/package/fedora-env/Dockerfile"}, "region": {"startLine": 6}}}]}, {"ruleId": "DKR014", "level": "error", "message": {"text": "Dockerfile copies the entire context without .dockerignore"}, "properties": {"repobilityId": 115730, "scanner": "repobility-docker", "fingerprint": "55ec6487ca9c5a15d65b589eff2c4ce5291dfabaa9848644722b4b9d08091b8e", "category": "docker", "severity": "high", "confidence": 0.92, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Broad context copy and missing .dockerignore were found together.", "evidence": {"rule_id": "DKR014", "scanner": "repobility-docker", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/"], "correlation_key": "fp|55ec6487ca9c5a15d65b589eff2c4ce5291dfabaa9848644722b4b9d08091b8e"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/proxygen/src/proxygen/httpserver/samples/hq/quic-interop/Dockerfile"}, "region": {"startLine": 15}}}]}, {"ruleId": "DKR015", "level": "error", "message": {"text": "Docker build context is very large"}, "properties": {"repobilityId": 115721, "scanner": "repobility-docker", "fingerprint": "b15d4f710afeff2af4cd4ab204332853f9025b78869a0e87bb466a798bb1a15b", "category": "docker", "severity": "high", "confidence": 0.92, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Estimated Docker build context exceeds Repobility's size or file-count threshold.", "evidence": {"capped": true, "rule_id": "DKR015", "scanner": "repobility-docker", "references": ["https://docs.docker.com/develop/develop-images/dockerfile_best-practices/"], "largest_paths": [{"path": "hphp/runtime/ext/fileinfo/libmagic/data_file.inc", "size_mb": 15.1}, {"path": "hphp/hsl/tests/legacy_fixme/ComparisonCoercionTest.codegen", "size_mb": 11.1}, {"path": "hphp/hack/test/hackfmt/tests/big_json_string.php", "size_mb": 4.0}, {"path": "hphp/hack/test/hackfmt/tests/big_json_string.php.exp", "size_mb": 4.0}, {"path": "hphp/hsl/tests/legacy_fixme/EqualityCoercionTest.codegen", "size_mb": 2.1}], "included_files": 50000, "context_size_mb": 156.2, "correlation_key": "fp|b15d4f710afeff2af4cd4ab204332853f9025b78869a0e87bb466a798bb1a15b"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": ".dockerignore"}, "region": {"startLine": 1}}}]}, {"ruleId": "MINED002", "level": "error", "message": {"text": "[MINED002] Dart Null Bang: value! throws on null. Use ?. or null check."}, "properties": {"repobilityId": 115672, "scanner": "repobility-threat-engine", "fingerprint": "ef4ea2b6e4bbbd384f1f51bec3fb9c15fb9d74063c19ff442817de33d69a1aed", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "dart-null-bang", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["dart"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347899+00:00", "triaged_in_corpus": 15, "observations_count": 1434931, "ai_coder_pattern_id": 167}, "scanner": "repobility-threat-engine", "correlation_key": "fp|ef4ea2b6e4bbbd384f1f51bec3fb9c15fb9d74063c19ff442817de33d69a1aed"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/typing/typing_argument.ml"}, "region": {"startLine": 148}}}]}, {"ruleId": "MINED002", "level": "error", "message": {"text": "[MINED002] Dart Null Bang: value! throws on null. Use ?. or null check."}, "properties": {"repobilityId": 115671, "scanner": "repobility-threat-engine", "fingerprint": "2a744d84f1245dd9f616002c897cf1e7a5e405062b576e4d182366b71ed78030", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "dart-null-bang", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["dart"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347899+00:00", "triaged_in_corpus": 15, "observations_count": 1434931, "ai_coder_pattern_id": 167}, "scanner": "repobility-threat-engine", "correlation_key": "fp|2a744d84f1245dd9f616002c897cf1e7a5e405062b576e4d182366b71ed78030"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/typing/type_mapper_forget.ml"}, "region": {"startLine": 42}}}]}, {"ruleId": "COMP001", "level": "error", "message": {"text": "[COMP001] High cognitive complexity: Function `main` has cognitive complexity 32 (SonarSource scale). Cognitive complexity measures how hard the function is for a human to understand \u2014 nested branches, boolean chains, and recursion all weigh in. Breakdown: break=3, continue=3, for=2, if=9, nested_bonus=13, or=1, ternary=1."}, "properties": {"repobilityId": 115664, "scanner": "repobility-threat-engine", "fingerprint": "a4018c50bb2314b20242b7300ab1b87f95ff9e6b05fb065c346b9b78463a829d", "category": "quality", "severity": "high", "confidence": 0.95, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "AST-derived cognitive complexity score = 32 (severity threshold for high: 25+).", "evidence": {"scanner": "repobility-threat-engine", "function": "main", "breakdown": {"if": 9, "or": 1, "for": 2, "break": 3, "ternary": 1, "continue": 3, "nested_bonus": 13}, "complexity": 32, "correlation_key": "fp|a4018c50bb2314b20242b7300ab1b87f95ff9e6b05fb065c346b9b78463a829d"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hh_asdiff/hh_asdiff.py"}, "region": {"startLine": 169}}}]}, {"ruleId": "MINED041", "level": "error", "message": {"text": "[MINED041] Rust Unimplemented Macro: unimplemented!() panics. Same as todo!() but conventionally used for trait stubs."}, "properties": {"repobilityId": 115660, "scanner": "repobility-threat-engine", "fingerprint": "e4937d85c2a5272b9d41641bcf799c64a38f9dc61d36435a8f372a2a8e918aa0", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-unimplemented-macro", "owasp": null, "cwe_ids": ["CWE-1188"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347994+00:00", "triaged_in_corpus": 15, "observations_count": 1422, "ai_coder_pattern_id": 115}, "scanner": "repobility-threat-engine", "correlation_key": "fp|e4937d85c2a5272b9d41641bcf799c64a38f9dc61d36435a8f372a2a8e918aa0"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackrs/ty/reason.rs"}, "region": {"startLine": 182}}}]}, {"ruleId": "MINED041", "level": "error", "message": {"text": "[MINED041] Rust Unimplemented Macro: unimplemented!() panics. Same as todo!() but conventionally used for trait stubs."}, "properties": {"repobilityId": 115659, "scanner": "repobility-threat-engine", "fingerprint": "482f1d2529bb8e7f7f8189c2b5979ad08627d4a07b942fb90be110852c9cfcac", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-unimplemented-macro", "owasp": null, "cwe_ids": ["CWE-1188"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347994+00:00", "triaged_in_corpus": 15, "observations_count": 1422, "ai_coder_pattern_id": 115}, "scanner": "repobility-threat-engine", "correlation_key": "fp|482f1d2529bb8e7f7f8189c2b5979ad08627d4a07b942fb90be110852c9cfcac"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/hhbc/unit_cbindgen.rs"}, "region": {"startLine": 11}}}]}, {"ruleId": "MINED041", "level": "error", "message": {"text": "[MINED041] Rust Unimplemented Macro: unimplemented!() panics. Same as todo!() but conventionally used for trait stubs."}, "properties": {"repobilityId": 115658, "scanner": "repobility-threat-engine", "fingerprint": "5e4ef9b0441add1294f68ae1621ddc5f58c963b8700b47c60d81e721d2412d43", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-unimplemented-macro", "owasp": null, "cwe_ids": ["CWE-1188"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347994+00:00", "triaged_in_corpus": 15, "observations_count": 1422, "ai_coder_pattern_id": 115}, "scanner": "repobility-threat-engine", "correlation_key": "fp|5e4ef9b0441add1294f68ae1621ddc5f58c963b8700b47c60d81e721d2412d43"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/ffi/ffi_ffi_cbindgen.rs"}, "region": {"startLine": 16}}}]}, {"ruleId": "MINED039", "level": "error", "message": {"text": "[MINED039] Rust Todo Macro: todo!() panics when reached. Unimplemented code path."}, "properties": {"repobilityId": 115652, "scanner": "repobility-threat-engine", "fingerprint": "575773f9d4cbdd119be91d66482c38f07797c6cfeb9302929a038763142883dc", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-todo-macro", "owasp": null, "cwe_ids": ["CWE-1188"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347989+00:00", "triaged_in_corpus": 15, "observations_count": 1561, "ai_coder_pattern_id": 114}, "scanner": "repobility-threat-engine", "correlation_key": "fp|575773f9d4cbdd119be91d66482c38f07797c6cfeb9302929a038763142883dc"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/ir/ir_core/func_builder_ex.rs"}, "region": {"startLine": 238}}}]}, {"ruleId": "MINED039", "level": "error", "message": {"text": "[MINED039] Rust Todo Macro: todo!() panics when reached. Unimplemented code path."}, "properties": {"repobilityId": 115651, "scanner": "repobility-threat-engine", "fingerprint": "388f04c92da255cc830a6fe788fae775f1bb6bc0f723fe554bb9ee13930f195c", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-todo-macro", "owasp": null, "cwe_ids": ["CWE-1188"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347989+00:00", "triaged_in_corpus": 15, "observations_count": 1561, "ai_coder_pattern_id": 114}, "scanner": "repobility-threat-engine", "correlation_key": "fp|388f04c92da255cc830a6fe788fae775f1bb6bc0f723fe554bb9ee13930f195c"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/ir/conversions/textual/lib.rs"}, "region": {"startLine": 31}}}]}, {"ruleId": "MINED039", "level": "error", "message": {"text": "[MINED039] Rust Todo Macro: todo!() panics when reached. Unimplemented code path."}, "properties": {"repobilityId": 115650, "scanner": "repobility-threat-engine", "fingerprint": "598b16c32919beaf3e0ef393ceb43176cdd36f5675adac1143a3edf230938cbe", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-todo-macro", "owasp": null, "cwe_ids": ["CWE-1188"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347989+00:00", "triaged_in_corpus": 15, "observations_count": 1561, "ai_coder_pattern_id": 114}, "scanner": "repobility-threat-engine", "correlation_key": "fp|598b16c32919beaf3e0ef393ceb43176cdd36f5675adac1143a3edf230938cbe"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/diagnostics/diagnostics.rs"}, "region": {"startLine": 43}}}]}, {"ruleId": "SEC128", "level": "error", "message": {"text": "[SEC128] Async function without await \u2014 fire-and-forget Promise (AI mistake): Async call invoked without `await` returns an unhandled Promise. The outer function resolves before the inner work completes \u2014 DB writes lost, emails not sent, race conditions. This is one of the top-3 errors AI coders make: they understand async-shape but drop the await keyword when chaining multiple ops. Surfaces as flaky tests or silently dropped data in production."}, "properties": {"repobilityId": 115627, "scanner": "repobility-threat-engine", "fingerprint": "842b3fab2f1f8a1ea5b7cca007ad84ed0eb28853eb0eb42e4302da318e5d5aaa", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"match": "Telemetry.create ()", "reason": "Pattern matched with no mitigating context found", "rule_id": "SEC128", "scanner": "repobility-threat-engine", "confidence": 1.0, "correlation_key": "fp|842b3fab2f1f8a1ea5b7cca007ad84ed0eb28853eb0eb42e4302da318e5d5aaa"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/decl/remote_old_decl_client.ml"}, "region": {"startLine": 122}}}]}, {"ruleId": "SEC128", "level": "error", "message": {"text": "[SEC128] Async function without await \u2014 fire-and-forget Promise (AI mistake): Async call invoked without `await` returns an unhandled Promise. The outer function resolves before the inner work completes \u2014 DB writes lost, emails not sent, race conditions. This is one of the top-3 errors AI coders make: they understand async-shape but drop the await keyword when chaining multiple ops. Surfaces as flaky tests or silently dropped data in production."}, "properties": {"repobilityId": 115626, "scanner": "repobility-threat-engine", "fingerprint": "dce8233c53c7a953fc6c4de67a3111b25b86dfcb591f1dd074d9ed408baf2f74", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"match": "Telemetry.create ()", "reason": "Pattern matched with no mitigating context found", "rule_id": "SEC128", "scanner": "repobility-threat-engine", "confidence": 1.0, "correlation_key": "fp|dce8233c53c7a953fc6c4de67a3111b25b86dfcb591f1dd074d9ed408baf2f74"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/client_and_server/serverRevisionTracker.ml"}, "region": {"startLine": 141}}}]}, {"ruleId": "SEC128", "level": "error", "message": {"text": "[SEC128] Async function without await \u2014 fire-and-forget Promise (AI mistake): Async call invoked without `await` returns an unhandled Promise. The outer function resolves before the inner work completes \u2014 DB writes lost, emails not sent, race conditions. This is one of the top-3 errors AI coders make: they understand async-shape but drop the await keyword when chaining multiple ops. Surfaces as flaky tests or silently dropped data in production."}, "properties": {"repobilityId": 115625, "scanner": "repobility-threat-engine", "fingerprint": "5e3d942f4c601468817959968c68fc46fff81a9e231a7cb072c371dbd8fd4446", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"match": "Telemetry.create ()", "reason": "Pattern matched with no mitigating context found", "rule_id": "SEC128", "scanner": "repobility-threat-engine", "confidence": 1.0, "correlation_key": "fp|5e3d942f4c601468817959968c68fc46fff81a9e231a7cb072c371dbd8fd4446"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/client/ide_service/clientIdeIncremental.ml"}, "region": {"startLine": 143}}}]}, {"ruleId": "MINED011", "level": "error", "message": {"text": "[MINED011] Scala Get On Option: Option.get throws NoSuchElementException on None. Use getOrElse / fold / match."}, "properties": {"repobilityId": 115623, "scanner": "repobility-threat-engine", "fingerprint": "685ed6ec0874925c76854509a638e9f660372468300e5ef8e8accea7d65e086b", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "scala-get-on-option", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["scala"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347923+00:00", "triaged_in_corpus": 15, "observations_count": 140164, "ai_coder_pattern_id": 159}, "scanner": "repobility-threat-engine", "correlation_key": "fp|685ed6ec0874925c76854509a638e9f660372468300e5ef8e8accea7d65e086b"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/globals/globalConfig.ml"}, "region": {"startLine": 20}}}]}, {"ruleId": "MINED011", "level": "error", "message": {"text": "[MINED011] Scala Get On Option: Option.get throws NoSuchElementException on None. Use getOrElse / fold / match."}, "properties": {"repobilityId": 115622, "scanner": "repobility-threat-engine", "fingerprint": "75a1a4da8614d3293ce332916b66b763d46d2d91a393fba88ff68e7753897548", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "scala-get-on-option", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["scala"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347923+00:00", "triaged_in_corpus": 15, "observations_count": 140164, "ai_coder_pattern_id": 159}, "scanner": "repobility-threat-engine", "correlation_key": "fp|75a1a4da8614d3293ce332916b66b763d46d2d91a393fba88ff68e7753897548"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/dfind/dfind_add_file.ml"}, "region": {"startLine": 115}}}]}, {"ruleId": "MINED011", "level": "error", "message": {"text": "[MINED011] Scala Get On Option: Option.get throws NoSuchElementException on None. Use getOrElse / fold / match."}, "properties": {"repobilityId": 115621, "scanner": "repobility-threat-engine", "fingerprint": "05ff34cf474067a9e737ca006bcc8e8cc79cd5f7fbeb954feb745f162dcd0356", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "scala-get-on-option", "owasp": null, "cwe_ids": ["CWE-476"], "languages": ["scala"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347923+00:00", "triaged_in_corpus": 15, "observations_count": 140164, "ai_coder_pattern_id": 159}, "scanner": "repobility-threat-engine", "correlation_key": "fp|05ff34cf474067a9e737ca006bcc8e8cc79cd5f7fbeb954feb745f162dcd0356"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/batch/batch_init.ml"}, "region": {"startLine": 69}}}]}, {"ruleId": "MINED003", "level": "error", "message": {"text": "[MINED003] Rust Unwrap In Prod: .unwrap() panics if None/Err. Acceptable in tests; risky elsewhere."}, "properties": {"repobilityId": 115615, "scanner": "repobility-threat-engine", "fingerprint": "d73721fc468035858b3098c02c422e7f9e80c1c24fc3e6de467e52c613c4f749", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-unwrap-in-prod", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347903+00:00", "triaged_in_corpus": 15, "observations_count": 386515, "ai_coder_pattern_id": 111}, "scanner": "repobility-threat-engine", "correlation_key": "fp|d73721fc468035858b3098c02c422e7f9e80c1c24fc3e6de467e52c613c4f749"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/depgraph/depgraph_reader/byteutils.rs"}, "region": {"startLine": 67}}}]}, {"ruleId": "MINED003", "level": "error", "message": {"text": "[MINED003] Rust Unwrap In Prod: .unwrap() panics if None/Err. Acceptable in tests; risky elsewhere."}, "properties": {"repobilityId": 115614, "scanner": "repobility-threat-engine", "fingerprint": "aad97e35e76495736145939203734b0a6c68d30a50e019b0759a5a5b5c479155", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-unwrap-in-prod", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347903+00:00", "triaged_in_corpus": 15, "observations_count": 386515, "ai_coder_pattern_id": 111}, "scanner": "repobility-threat-engine", "correlation_key": "fp|aad97e35e76495736145939203734b0a6c68d30a50e019b0759a5a5b5c479155"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/asdl_to_rust/lrgen/lrgen.rs"}, "region": {"startLine": 33}}}]}, {"ruleId": "MINED003", "level": "error", "message": {"text": "[MINED003] Rust Unwrap In Prod: .unwrap() panics if None/Err. Acceptable in tests; risky elsewhere."}, "properties": {"repobilityId": 115613, "scanner": "repobility-threat-engine", "fingerprint": "ed33bb3d8f53addecb228c5b30dca269a105008dfa549b3989c2e40a7f6d540c", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "rust-unwrap-in-prod", "owasp": null, "cwe_ids": ["CWE-755"], "languages": ["rust"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347903+00:00", "triaged_in_corpus": 15, "observations_count": 386515, "ai_coder_pattern_id": 111}, "scanner": "repobility-threat-engine", "correlation_key": "fp|ed33bb3d8f53addecb228c5b30dca269a105008dfa549b3989c2e40a7f6d540c"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/asdl_to_rust/asdl_to_rust/asdl_to_rust.rs"}, "region": {"startLine": 38}}}]}, {"ruleId": "MINED004", "level": "error", "message": {"text": "[MINED004] Weak Crypto: MD5/SHA1/DES/RC4 used for security context (not just checksums)."}, "properties": {"repobilityId": 115611, "scanner": "repobility-threat-engine", "fingerprint": "e4ce7b2357c6a355ec49b2a62fddc6f1020559870d89d08ecf390f2db40798ec", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "weak-crypto", "owasp": "A02:2021", "cwe_ids": ["CWE-327"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347906+00:00", "triaged_in_corpus": 15, "observations_count": 303181, "ai_coder_pattern_id": 13}, "scanner": "repobility-threat-engine", "correlation_key": "fp|e4ce7b2357c6a355ec49b2a62fddc6f1020559870d89d08ecf390f2db40798ec"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/ffi_bridge/compiler_ffi_impl.rs"}, "region": {"startLine": 105}}}]}, {"ruleId": "MINED004", "level": "error", "message": {"text": "[MINED004] Weak Crypto: MD5/SHA1/DES/RC4 used for security context (not just checksums)."}, "properties": {"repobilityId": 115610, "scanner": "repobility-threat-engine", "fingerprint": "d49163816933838dd7a01c868fba9aaa17a88cf58fca8dfccdb6142d0a09097f", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "weak-crypto", "owasp": "A02:2021", "cwe_ids": ["CWE-327"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347906+00:00", "triaged_in_corpus": 15, "observations_count": 303181, "ai_coder_pattern_id": 13}, "scanner": "repobility-threat-engine", "correlation_key": "fp|d49163816933838dd7a01c868fba9aaa17a88cf58fca8dfccdb6142d0a09097f"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/hackc/decl_provider/decl_provider.rs"}, "region": {"startLine": 26}}}]}, {"ruleId": "MINED004", "level": "error", "message": {"text": "[MINED004] Weak Crypto: MD5/SHA1/DES/RC4 used for security context (not just checksums)."}, "properties": {"repobilityId": 115609, "scanner": "repobility-threat-engine", "fingerprint": "d68ce86d0b080d77d81943575c879c3af0786d699b70718ad44fe7e8b36e6915", "category": "quality", "severity": "high", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "weak-crypto", "owasp": "A02:2021", "cwe_ids": ["CWE-327"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347906+00:00", "triaged_in_corpus": 15, "observations_count": 303181, "ai_coder_pattern_id": 13}, "scanner": "repobility-threat-engine", "correlation_key": "fp|d68ce86d0b080d77d81943575c879c3af0786d699b70718ad44fe7e8b36e6915"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/doc/tcdump_json_schema.ts"}, "region": {"startLine": 28}}}]}, {"ruleId": "MINED107", "level": "error", "message": {"text": "[MINED107] Missing import: `stat` used but not imported: The file uses `stat.something(...)` but never imports `stat`. This raises NameError at runtime the first time the line executes."}, "properties": {"repobilityId": 115829, "scanner": "repobility-ast-engine", "fingerprint": "79e1143ebf19c547c8b689af5d731615f821173a2291db814feaeb89df9108ea", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "missing-import-python", "owasp": "A06:2021", "cwe_ids": ["CWE-1075"], "languages": ["python"], "observations_count": 2192}, "scanner": "repobility-ast-engine", "correlation_key": "fp|79e1143ebf19c547c8b689af5d731615f821173a2291db814feaeb89df9108ea"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/lib/py/util/Decorators.py"}, "region": {"startLine": 48}}}]}, {"ruleId": "MINED107", "level": "error", "message": {"text": "[MINED107] Missing import: `struct` used but not imported: The file uses `struct.something(...)` but never imports `struct`. This raises NameError at runtime the first time the line executes."}, "properties": {"repobilityId": 115828, "scanner": "repobility-ast-engine", "fingerprint": "f2e5fe4fd73300b944e67b8c2a9265ee45aeed57e38c1bc03e265aaa16f27435", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "missing-import-python", "owasp": "A06:2021", "cwe_ids": ["CWE-1075"], "languages": ["python"], "observations_count": 2192}, "scanner": "repobility-ast-engine", "correlation_key": "fp|f2e5fe4fd73300b944e67b8c2a9265ee45aeed57e38c1bc03e265aaa16f27435"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/lib/py/util/__init__.py"}, "region": {"startLine": 44}}}]}, {"ruleId": "MINED107", "level": "error", "message": {"text": "[MINED107] Missing import: `socket` used but not imported: The file uses `socket.something(...)` but never imports `socket`. This raises NameError at runtime the first time the line executes."}, "properties": {"repobilityId": 115827, "scanner": "repobility-ast-engine", "fingerprint": "465a484e020825e81f5d00b397587a3c0d0fc1c255b3cc96a04a13f9655f7c0d", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "missing-import-python", "owasp": "A06:2021", "cwe_ids": ["CWE-1075"], "languages": ["python"], "observations_count": 2192}, "scanner": "repobility-ast-engine", "correlation_key": "fp|465a484e020825e81f5d00b397587a3c0d0fc1c255b3cc96a04a13f9655f7c0d"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/lib/py/server/TAsyncioServer.py"}, "region": {"startLine": 150}}}]}, {"ruleId": "MINED107", "level": "error", "message": {"text": "[MINED107] Missing import: `string` used but not imported: The file uses `string.something(...)` but never imports `string`. This raises NameError at runtime the first time the line executes."}, "properties": {"repobilityId": 115826, "scanner": "repobility-ast-engine", "fingerprint": "b7d657e082126394a629605d9742e453988f7bab359a34913d8fc53c7652f6ed", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "missing-import-python", "owasp": "A06:2021", "cwe_ids": ["CWE-1075"], "languages": ["python"], "observations_count": 2192}, "scanner": "repobility-ast-engine", "correlation_key": "fp|b7d657e082126394a629605d9742e453988f7bab359a34913d8fc53c7652f6ed"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/lib/py/protocol/TSimpleJSONProtocol.py"}, "region": {"startLine": 637}}}]}, {"ruleId": "MINED107", "level": "error", "message": {"text": "[MINED107] Missing import: `string` used but not imported: The file uses `string.something(...)` but never imports `string`. This raises NameError at runtime the first time the line executes."}, "properties": {"repobilityId": 115825, "scanner": "repobility-ast-engine", "fingerprint": "870ed9097ebb7581a550d0b53f83560f6c132e3d05f98e73190a785c3e9371ad", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "missing-import-python", "owasp": "A06:2021", "cwe_ids": ["CWE-1075"], "languages": ["python"], "observations_count": 2192}, "scanner": "repobility-ast-engine", "correlation_key": "fp|870ed9097ebb7581a550d0b53f83560f6c132e3d05f98e73190a785c3e9371ad"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/lib/py/protocol/TJSONProtocol.py"}, "region": {"startLine": 173}}}]}, {"ruleId": "MINED107", "level": "error", "message": {"text": "[MINED107] Missing import: `struct` used but not imported: The file uses `struct.something(...)` but never imports `struct`. This raises NameError at runtime the first time the line executes."}, "properties": {"repobilityId": 115824, "scanner": "repobility-ast-engine", "fingerprint": "0ba6f49f0b62496cca4063e10585f9fe8f21358ac245e1308981e0efae7e0371", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "missing-import-python", "owasp": "A06:2021", "cwe_ids": ["CWE-1075"], "languages": ["python"], "observations_count": 2192}, "scanner": "repobility-ast-engine", "correlation_key": "fp|0ba6f49f0b62496cca4063e10585f9fe8f21358ac245e1308981e0efae7e0371"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/lib/python/metadata.py"}, "region": {"startLine": 503}}}]}, {"ruleId": "MINED107", "level": "error", "message": {"text": "[MINED107] Missing import: `struct` used but not imported: The file uses `struct.something(...)` but never imports `struct`. This raises NameError at runtime the first time the line executes."}, "properties": {"repobilityId": 115823, "scanner": "repobility-ast-engine", "fingerprint": "13d534a92aefbb0c566fe48db9836baa2e5c7c58660f06f9e2b8bbcf842f559a", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "missing-import-python", "owasp": "A06:2021", "cwe_ids": ["CWE-1075"], "languages": ["python"], "observations_count": 2192}, "scanner": "repobility-ast-engine", "correlation_key": "fp|13d534a92aefbb0c566fe48db9836baa2e5c7c58660f06f9e2b8bbcf842f559a"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/test/thrift-python/struct_test.py"}, "region": {"startLine": 1272}}}]}, {"ruleId": "MINED107", "level": "error", "message": {"text": "[MINED107] Missing import: `struct` used but not imported: The file uses `struct.something(...)` but never imports `struct`. This raises NameError at runtime the first time the line executes."}, "properties": {"repobilityId": 115822, "scanner": "repobility-ast-engine", "fingerprint": "49b3fda5f413dc141d0b27a0ca284fa43296f021961b518b980688ac4124a8f8", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "missing-import-python", "owasp": "A06:2021", "cwe_ids": ["CWE-1075"], "languages": ["python"], "observations_count": 2192}, "scanner": "repobility-ast-engine", "correlation_key": "fp|49b3fda5f413dc141d0b27a0ca284fa43296f021961b518b980688ac4124a8f8"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/test/py/JSONReaderTest.py"}, "region": {"startLine": 35}}}]}, {"ruleId": "MINED107", "level": "error", "message": {"text": "[MINED107] Missing import: `struct` used but not imported: The file uses `struct.something(...)` but never imports `struct`. This raises NameError at runtime the first time the line executes."}, "properties": {"repobilityId": 115821, "scanner": "repobility-ast-engine", "fingerprint": "7bc8416722501e871b4fa971fd7dac56e8b746522ae6974b4b27ed4745c1cbaa", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "missing-import-python", "owasp": "A06:2021", "cwe_ids": ["CWE-1075"], "languages": ["python"], "observations_count": 2192}, "scanner": "repobility-ast-engine", "correlation_key": "fp|7bc8416722501e871b4fa971fd7dac56e8b746522ae6974b4b27ed4745c1cbaa"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/test/JsonToThriftTest/SimpleJSONToThriftTest.py"}, "region": {"startLine": 149}}}]}, {"ruleId": "MINED107", "level": "error", "message": {"text": "[MINED107] Missing import: `struct` used but not imported: The file uses `struct.something(...)` but never imports `struct`. This raises NameError at runtime the first time the line executes."}, "properties": {"repobilityId": 115813, "scanner": "repobility-ast-engine", "fingerprint": "3fc416b5d06c37d5afa9fa59ad233ffa00e7078e7cc64f91fb6558bb784e85af", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "missing-import-python", "owasp": "A06:2021", "cwe_ids": ["CWE-1075"], "languages": ["python"], "observations_count": 2192}, "scanner": "repobility-ast-engine", "correlation_key": "fp|3fc416b5d06c37d5afa9fa59ad233ffa00e7078e7cc64f91fb6558bb784e85af"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/compiler/test/ast_generator_test.py"}, "region": {"startLine": 316}}}]}, {"ruleId": "MINED107", "level": "error", "message": {"text": "[MINED107] Missing import: `ast` used but not imported: The file uses `ast.something(...)` but never imports `ast`. This raises NameError at runtime the first time the line executes."}, "properties": {"repobilityId": 115812, "scanner": "repobility-ast-engine", "fingerprint": "d7b8fd4500991d47dbae741938a53118e4d743ba197bc6c8070b5f8e8b344e92", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "missing-import-python", "owasp": "A06:2021", "cwe_ids": ["CWE-1075"], "languages": ["python"], "observations_count": 2192}, "scanner": "repobility-ast-engine", "correlation_key": "fp|d7b8fd4500991d47dbae741938a53118e4d743ba197bc6c8070b5f8e8b344e92"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/thrift/src/thrift/compiler/test/ast_generator_test.py"}, "region": {"startLine": 401}}}]}, {"ruleId": "MINED107", "level": "error", "message": {"text": "[MINED107] Missing import: `json` used but not imported: The file uses `json.something(...)` but never imports `json`. This raises NameError at runtime the first time the line executes."}, "properties": {"repobilityId": 115769, "scanner": "repobility-ast-engine", "fingerprint": "dd1ae11a0d939ac884e4061fbb43c033e59299faf1e101192be9b85a7d94a707", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "", "isResolved": false, "reason": "", "evidence": {"mined": true, "mining": {"slug": "missing-import-python", "owasp": "A06:2021", "cwe_ids": ["CWE-1075"], "languages": ["python"], "observations_count": 2192}, "scanner": "repobility-ast-engine", "correlation_key": "fp|dd1ae11a0d939ac884e4061fbb43c033e59299faf1e101192be9b85a7d94a707"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "third-party/mcrouter/src/mcrouter/test/MCProcess.py"}, "region": {"startLine": 776}}}]}, {"ruleId": "MINED005", "level": "error", "message": {"text": "[MINED005] Lua Loadstring: loadstring/load executes Lua code. Code injection."}, "properties": {"repobilityId": 115663, "scanner": "repobility-threat-engine", "fingerprint": "8edae41257f1fb378b7ee320d2126ffaacaa6427962a002f8dfafb22902eef62", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "lua-loadstring", "owasp": null, "cwe_ids": ["CWE-95"], "languages": ["lua"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347908+00:00", "triaged_in_corpus": 20, "observations_count": 291730, "ai_coder_pattern_id": 169}, "scanner": "repobility-threat-engine", "correlation_key": "fp|8edae41257f1fb378b7ee320d2126ffaacaa6427962a002f8dfafb22902eef62"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/heap/globalStorage.ml"}, "region": {"startLine": 32}}}]}, {"ruleId": "MINED022", "level": "error", "message": {"text": "[MINED022] C Strcpy: strcpy/strcat dont bounds-check; use strncpy or snprintf."}, "properties": {"repobilityId": 115656, "scanner": "repobility-threat-engine", "fingerprint": "935d264a5f006f056a77de904a54fa170ad68cb6404c76f94854acb1e9b81e54", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "c-strcpy", "owasp": null, "cwe_ids": ["CWE-120"], "languages": ["c", "cpp"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347949+00:00", "triaged_in_corpus": 20, "observations_count": 39114, "ai_coder_pattern_id": 130}, "scanner": "repobility-threat-engine", "correlation_key": "fp|935d264a5f006f056a77de904a54fa170ad68cb6404c76f94854acb1e9b81e54"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/utils/cgroup/cGroup.ml"}, "region": {"startLine": 14}}}]}, {"ruleId": "MINED022", "level": "error", "message": {"text": "[MINED022] C Strcpy: strcpy/strcat dont bounds-check; use strncpy or snprintf."}, "properties": {"repobilityId": 115655, "scanner": "repobility-threat-engine", "fingerprint": "8983f85eaee72b2320cf6b77d9a88e558de3c6dc48b652c4954d82737948a304", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "c-strcpy", "owasp": null, "cwe_ids": ["CWE-120"], "languages": ["c", "cpp"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347949+00:00", "triaged_in_corpus": 20, "observations_count": 39114, "ai_coder_pattern_id": 130}, "scanner": "repobility-threat-engine", "correlation_key": "fp|8983f85eaee72b2320cf6b77d9a88e558de3c6dc48b652c4954d82737948a304"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/server/serverInitTypes.ml"}, "region": {"startLine": 53}}}]}, {"ruleId": "MINED022", "level": "error", "message": {"text": "[MINED022] C Strcpy: strcpy/strcat dont bounds-check; use strncpy or snprintf."}, "properties": {"repobilityId": 115654, "scanner": "repobility-threat-engine", "fingerprint": "af3d290886d37178f197124ac0877aadfefaddfc81e06d064b0aaf3cc9bbfff7", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "c-strcpy", "owasp": null, "cwe_ids": ["CWE-120"], "languages": ["c", "cpp"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347949+00:00", "triaged_in_corpus": 20, "observations_count": 39114, "ai_coder_pattern_id": 130}, "scanner": "repobility-threat-engine", "correlation_key": "fp|af3d290886d37178f197124ac0877aadfefaddfc81e06d064b0aaf3cc9bbfff7"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/diagnostics/user_diagnostic.ml"}, "region": {"startLine": 261}}}]}, {"ruleId": "MINED015", "level": "error", "message": {"text": "[MINED015] Ruby Eval Call: eval() executes arbitrary code. Code injection."}, "properties": {"repobilityId": 115631, "scanner": "repobility-threat-engine", "fingerprint": "412f4e072e3775848bfba360eaa5328d07351501378dc503ea993968ac08a98c", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "ruby-eval-call", "owasp": null, "cwe_ids": ["CWE-95"], "languages": ["ruby"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347933+00:00", "triaged_in_corpus": 20, "observations_count": 85733, "ai_coder_pattern_id": 161}, "scanner": "repobility-threat-engine", "correlation_key": "fp|412f4e072e3775848bfba360eaa5328d07351501378dc503ea993968ac08a98c"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/simplihack/simplihack_interpreter.mli"}, "region": {"startLine": 9}}}]}, {"ruleId": "MINED015", "level": "error", "message": {"text": "[MINED015] Ruby Eval Call: eval() executes arbitrary code. Code injection."}, "properties": {"repobilityId": 115630, "scanner": "repobility-threat-engine", "fingerprint": "ac0e48ad4faf7532ffecb0d2031e21a418014c4662adc77941368ba18a87b8da", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "ruby-eval-call", "owasp": null, "cwe_ids": ["CWE-95"], "languages": ["ruby"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347933+00:00", "triaged_in_corpus": 20, "observations_count": 85733, "ai_coder_pattern_id": 161}, "scanner": "repobility-threat-engine", "correlation_key": "fp|ac0e48ad4faf7532ffecb0d2031e21a418014c4662adc77941368ba18a87b8da"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/milner/milner.ml"}, "region": {"startLine": 157}}}]}, {"ruleId": "MINED015", "level": "error", "message": {"text": "[MINED015] Ruby Eval Call: eval() executes arbitrary code. Code injection."}, "properties": {"repobilityId": 115629, "scanner": "repobility-threat-engine", "fingerprint": "36abeace6b2f9eae21401f078452fa5492eee4c6f9a16b4f437c7fb28a0d9580", "category": "quality", "severity": "critical", "confidence": 1.0, "triageState": "open", "verdict": "confirmed", "isResolved": false, "reason": "Pattern matched with no mitigating context found", "evidence": {"mined": true, "mining": {"slug": "ruby-eval-call", "owasp": null, "cwe_ids": ["CWE-95"], "languages": ["ruby"], "precision": 1.0, "promoted_at": "2026-05-18T14:01:32.347933+00:00", "triaged_in_corpus": 20, "observations_count": 85733, "ai_coder_pattern_id": 161}, "scanner": "repobility-threat-engine", "correlation_key": "fp|36abeace6b2f9eae21401f078452fa5492eee4c6f9a16b4f437c7fb28a0d9580"}}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "hphp/hack/src/client/ide_service/code_actions_services/refactors/add_doc_comment.ml"}, "region": {"startLine": 68}}}]}]}]}