{"version": "2.1.0", "$schema": "https://json.schemastore.org/sarif-2.1.0.json", "runs": [{"tool": {"driver": {"name": "Repobility", "informationUri": "https://repobility.com", "rules": [{"id": "scanner-ef208f37c0fc56df", "name": "Possibly dead Python function: quic_event_received", "shortDescription": {"text": "Possibly dead Python function: quic_event_received"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2d42a8eb3c218dec", "name": "Possibly dead Python function: worker", "shortDescription": {"text": "Possibly dead Python function: worker"}, "fullDescription": {"text": "No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler."}, "properties": {"scanner": "scanner-primary", "layer": "software", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3331dd8dc52f6c82", "name": "Privileged port 17 in use", "shortDescription": {"text": "Privileged port 17 in use"}, "fullDescription": {"text": "Port 17 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9c02d5aab21701dc", "name": "Privileged port 52 in use", "shortDescription": {"text": "Privileged port 52 in use"}, "fullDescription": {"text": "Port 52 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-9da2f874573b2832", "name": "Privileged port 54 in use", "shortDescription": {"text": "Privileged port 54 in use"}, "fullDescription": {"text": "Port 54 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-eca0470ecc7423bc", "name": "Privileged port 12 in use", "shortDescription": {"text": "Privileged port 12 in use"}, "fullDescription": {"text": "Port 12 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-59946ae24458f3b4", "name": "Privileged port 34 in use", "shortDescription": {"text": "Privileged port 34 in use"}, "fullDescription": {"text": "Port 34 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-8a3762e3f0ca622d", "name": "Privileged port 56 in use", "shortDescription": {"text": "Privileged port 56 in use"}, "fullDescription": {"text": "Port 56 is privileged (<1024). Make sure the service runs with the right caps or front it with a non-privileged port via a load balancer."}, "properties": {"scanner": "scanner-primary", "layer": "network", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2170d4a3370b5947", "name": "Dockerfile runs as root: scripts/bench/Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: scripts/bench/Dockerfile"}, "fullDescription": {"text": "No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-1491b987d03e9f50", "name": "Dockerfile runs as root: scripts/peer-linux/tokio-hyper/Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: scripts/peer-linux/tokio-hyper/Dockerfile"}, "fullDescription": {"text": "No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-d947653a42d5dd26", "name": "Docker base image is tag-pinned but not digest-pinned: rust:slim-bookworm", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: rust:slim-bookworm"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-5258c9174f3dca86", "name": "Docker base image is tag-pinned but not digest-pinned: debian:bookworm-slim", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: debian:bookworm-slim"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-44fa30071088a830", "name": "Dockerfile runs as root: scripts/peer-linux/nginx/Dockerfile", "shortDescription": {"text": "Dockerfile runs as root: scripts/peer-linux/nginx/Dockerfile"}, "fullDescription": {"text": "No non-root USER set. Containers running as root expand the blast radius of any vulnerability inside the image."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-0e0106432d1d8815", "name": "Docker base image is tag-pinned but not digest-pinned: debian:bookworm-slim", "shortDescription": {"text": "Docker base image is tag-pinned but not digest-pinned: debian:bookworm-slim"}, "fullDescription": {"text": "Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-aa5acaa49eb8315b", "name": "Containers defined but no K8s/orchestration manifest found", "shortDescription": {"text": "Containers defined but no K8s/orchestration manifest found"}, "fullDescription": {"text": "Repo has Dockerfiles/compose but no Kubernetes/Nomad manifests. If the target deployment is K8s, the manifests may live in a separate ops repo."}, "properties": {"scanner": "scanner-primary", "layer": "hardware", "severity": "low", "confidence": 1.0}}, {"id": "scanner-9710c8d059e53154", "name": "No frontend routes/components detected", "shortDescription": {"text": "No frontend routes/components detected"}, "fullDescription": {"text": "No React/Vue/Next routes were found. This is fine for backend-only repos."}, "properties": {"scanner": "scanner-primary", "layer": "frontend", "severity": "info", "confidence": 1.0}}, {"id": "scanner-6372cebde0220094", "name": "No auth library detected", "shortDescription": {"text": "No auth library detected"}, "fullDescription": {"text": "The scanner did not find any standard auth library (JWT, OAuth, NextAuth, Auth0, etc.). The repo has auth/admin/session surface indicators, so auth may live in custom code, in a separate service, or be missing."}, "properties": {"scanner": "scanner-primary", "layer": "security", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-4601e3ad3bb28677", "name": "No CI/CD pipelines detected", "shortDescription": {"text": "No CI/CD pipelines detected"}, "fullDescription": {"text": "No GitHub Actions, GitLab CI, or CircleCI configs found. Without CI you can't gate deploys on tests/lints."}, "properties": {"scanner": "scanner-primary", "layer": "cicd", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-a3049e2027528829", "name": "Very large file: apps/webserver/test.py (1390 lines)", "shortDescription": {"text": "Very large file: apps/webserver/test.py (1390 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-7de46fe6e0dfcd99", "name": "Very large file: scripts/bench/cli.py (1454 lines)", "shortDescription": {"text": "Very large file: scripts/bench/cli.py (1454 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b21fbe8be44bb14b", "name": "Very large file: crates/proto/tls/src/client.rs (2087 lines)", "shortDescription": {"text": "Very large file: crates/proto/tls/src/client.rs (2087 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0de019c4f1239c65", "name": "Very large file: crates/proto/http/src/client.rs (1986 lines)", "shortDescription": {"text": "Very large file: crates/proto/http/src/client.rs (1986 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-a18ea58f135f5b46", "name": "Very large file: crates/proto/quic/src/diag.rs (1183 lines)", "shortDescription": {"text": "Very large file: crates/proto/quic/src/diag.rs (1183 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ac537c31885d1b33", "name": "Very large file: crates/proto/quic/src/tls.rs (1553 lines)", "shortDescription": {"text": "Very large file: crates/proto/quic/src/tls.rs (1553 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-c06aab6d0c730cce", "name": "Very large file: crates/proto/quic/src/endpoint.rs (1409 lines)", "shortDescription": {"text": "Very large file: crates/proto/quic/src/endpoint.rs (1409 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-17852a4b7bcb5011", "name": "Very large file: crates/proto/quic/src/conn/tx.rs (2044 lines)", "shortDescription": {"text": "Very large file: crates/proto/quic/src/conn/tx.rs (2044 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2bc810cdf3968e78", "name": "Very large file: crates/proto/quic/src/conn/mod.rs (2423 lines)", "shortDescription": {"text": "Very large file: crates/proto/quic/src/conn/mod.rs (2423 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-d8edaadb88347db1", "name": "Very large file: crates/proto/quic/src/conn/cfg.rs (1364 lines)", "shortDescription": {"text": "Very large file: crates/proto/quic/src/conn/cfg.rs (1364 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-e5240a55c9c20a30", "name": "Very large file: crates/proto/quic/src/conn/rx.rs (1414 lines)", "shortDescription": {"text": "Very large file: crates/proto/quic/src/conn/rx.rs (1414 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ad199c1ea362df54", "name": "Very large file: crates/proto/http2/src/server.rs (2841 lines)", "shortDescription": {"text": "Very large file: crates/proto/http2/src/server.rs (2841 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b4bf80e3160f1111", "name": "Very large file: crates/proto/http2/src/client.rs (1959 lines)", "shortDescription": {"text": "Very large file: crates/proto/http2/src/client.rs (1959 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-500fea23b9f817b3", "name": "Very large file: crates/drivers/gve/src/dqo.rs (1252 lines)", "shortDescription": {"text": "Very large file: crates/drivers/gve/src/dqo.rs (1252 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-2c94ed2edb22b6df", "name": "Very large file: crates/drivers/gve/src/init.rs (1317 lines)", "shortDescription": {"text": "Very large file: crates/drivers/gve/src/init.rs (1317 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-23ac1d315f69c21d", "name": "Very large file: crates/runtime/executor/src/reactor/tcp.rs (1351 lines)", "shortDescription": {"text": "Very large file: crates/runtime/executor/src/reactor/tcp.rs (1351 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-fe3708f8b5e1e398", "name": "Very large file: crates/runtime/executor/src/reactor/udp.rs (1519 lines)", "shortDescription": {"text": "Very large file: crates/runtime/executor/src/reactor/udp.rs (1519 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-dfefd65dc1a51f11", "name": "Very large file: crates/net/tcp/src/state.rs (1904 lines)", "shortDescription": {"text": "Very large file: crates/net/tcp/src/state.rs (1904 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-f4708a7e7f5283b5", "name": "Very large file: crates/net/tcp/src/receive.rs (1377 lines)", "shortDescription": {"text": "Very large file: crates/net/tcp/src/receive.rs (1377 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-79da66eea6ace1d8", "name": "Very large file: crates/net/tcp/src/tests.rs (5580 lines)", "shortDescription": {"text": "Very large file: crates/net/tcp/src/tests.rs (5580 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-b931cfe4945a4159", "name": "Very large file: tools/hvf-runner/src/userspace_net/mod.rs (1942 lines)", "shortDescription": {"text": "Very large file: tools/hvf-runner/src/userspace_net/mod.rs (1942 lines)"}, "fullDescription": {"text": "Files with >800 lines often hide complexity hotspots and discourage tests."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-6893a6c8b0861585", "name": "Very low test-to-source ratio", "shortDescription": {"text": "Very low test-to-source ratio"}, "fullDescription": {"text": "16 test file(s) for 255 source file(s) (ratio 0.06). Consider adding integration or unit tests for critical paths."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-141b30a41e03817b", "name": "No license file detected", "shortDescription": {"text": "No license file detected"}, "fullDescription": {"text": "No LICENSE/COPYING/NOTICE file was found. Generated repositories often omit licensing, which blocks reuse and automated intake."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-3ab5d313dda8e5f9", "name": "Debug logging residue appears in source files", "shortDescription": {"text": "Debug logging residue appears in source files"}, "fullDescription": {"text": "Found 106 console/debugger/print-style debug statements in non-test source. This is a common fast-generation residue before production cleanup."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-72b2a6250083a784", "name": "Placeholder or mock-heavy implementation detected", "shortDescription": {"text": "Placeholder or mock-heavy implementation detected"}, "fullDescription": {"text": "Found 172 placeholder/mock markers across 29 source files. This often means the repo looks complete while core flows still use generated scaffolding or fake data."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2d0c7b7ab8f8aacf", "name": "Critical user flow still appears backed by mock or placeholder data", "shortDescription": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "fullDescription": {"text": "A payment/auth/admin/order/billing-style flow contains mock, fake, TODO, dummy, or placeholder markers in runtime source. In the Fable corpus this is a high-leverage completeness smell: the app can look finished while the money, identity, or tenant flow is still scaffolded."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-b9088664ace7f748", "name": "Composite production-readiness gap", "shortDescription": {"text": "Composite production-readiness gap"}, "fullDescription": {"text": "Multiple low-cost hardening controls are missing together: license, ci. Opus verification showed these co-occurring gaps are a better readiness signal than reading each flag in isolation."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-ea8f3013f588db25", "name": "Shallow git history limits provenance confidence", "shortDescription": {"text": "Shallow git history limits provenance confidence"}, "fullDescription": {"text": "The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-8424db9c75e04ba4", "name": "Very short observed git history", "shortDescription": {"text": "Very short observed git history"}, "fullDescription": {"text": "The repo has multiple source files but two or fewer visible commits. This is not a failure by itself, but it lowers confidence in evolution-based diagnosis."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a9a41844b73315cf", "name": "Commented-code block (8 lines) in apps/webserver/test.py:76", "shortDescription": {"text": "Commented-code block (8 lines) in apps/webserver/test.py:76"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-a954faac1e10db39", "name": "Network/subprocess call without timeout or try/except \u2014 apps/webserver/test.py:468", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 apps/webserver/test.py:468"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-c466d781136a6e3d", "name": "Commented-code block (5 lines) in scripts/h3-get-discard.py:2", "shortDescription": {"text": "Commented-code block (5 lines) in scripts/h3-get-discard.py:2"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-895dd56282446759", "name": "Commented-code block (6 lines) in scripts/bench/envs.py:53", "shortDescription": {"text": "Commented-code block (6 lines) in scripts/bench/envs.py:53"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-ac01cc8f5b8e0869", "name": "Stub function `build` (body is just `pass`/`return`) \u2014 scripts/bench/envs.py:541", "shortDescription": {"text": "Stub function `build` (body is just `pass`/`return`) \u2014 scripts/bench/envs.py:541"}, "fullDescription": {"text": "Likely an AI scaffold that was never filled in. Remove or implement."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-429b48c3ebe12b2c", "name": "Commented-code block (10 lines) in scripts/bench/workloads.py:248", "shortDescription": {"text": "Commented-code block (10 lines) in scripts/bench/workloads.py:248"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e91c790c37f8f4a1", "name": "Commented-code block (6 lines) in scripts/bench/cli.py:163", "shortDescription": {"text": "Commented-code block (6 lines) in scripts/bench/cli.py:163"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-040c0f1bbee0f479", "name": "Network/subprocess call without timeout or try/except \u2014 scripts/bench/cli.py:742", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/bench/cli.py:742"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-84f10b21fdf1a13f", "name": "Commented-code block (7 lines) in scripts/bench/h2_profile.py:7", "shortDescription": {"text": "Commented-code block (7 lines) in scripts/bench/h2_profile.py:7"}, "fullDescription": {"text": "A long run of `//` or `#` lines usually means abandoned code. Delete or move to git history. Keeps the canvas + dead-code detection honest."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "info", "confidence": 1.0}}, {"id": "scanner-e5942c8564556da2", "name": "Network/subprocess call without timeout or try/except \u2014 scripts/bench/h2_profile.py:76", "shortDescription": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/bench/h2_profile.py:76"}, "fullDescription": {"text": "`subprocess.run(...)` here lacks both a `timeout=` arg and an enclosing try/except. This is exactly the class of bug that took down our git-clone earlier (HTTP/2 stream cancel surfaced as a fatal). Add a `timeout=` and wrap in try/except, or use a wrapper that retries."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "medium", "confidence": 1.0}}, {"id": "scanner-2c04133e54348533", "name": "Near-duplicate function bodies in 2 places", "shortDescription": {"text": "Near-duplicate function bodies in 2 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nscripts/bench/chart_sweep.py:wrap, scripts/bench/chart_rate.py:wrap\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}, {"id": "scanner-0027e313ade46c8f", "name": "Near-duplicate function bodies in 7 places", "shortDescription": {"text": "Near-duplicate function bodies in 7 places"}, "fullDescription": {"text": "Functions with the same first-5-line body hash:\nscripts/bench/envs.py:build, scripts/bench/envs.py:build, scripts/bench/envs.py:build, scripts/bench/envs.py:build\n\nThis is *the* AI-coder failure mode (4\u00d7 more duplication in vibe-coded repos \u2014 see https://jw.hn/ai-code-hygiene). Consolidate or document why they're separate."}, "properties": {"scanner": "scanner-primary", "layer": "quality", "severity": "low", "confidence": 1.0}}]}}, "automationDetails": {"id": "repobility/17687"}, "properties": {"repository": "r2jitu/waitless", "repoUrl": "https://github.com/r2jitu/waitless", "branch": "main"}, "results": [{"ruleId": "scanner-ef208f37c0fc56df", "level": "note", "message": {"text": "Possibly dead Python function: quic_event_received"}, "properties": {"repobilityId": "b9ef8cf6f8632238", "scanner": "scanner-primary", "fingerprint": "ef208f37c0fc56df", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/h3-get-discard.py:28"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2d42a8eb3c218dec", "level": "note", "message": {"text": "Possibly dead Python function: worker"}, "properties": {"repobilityId": "fbe2b50200068803", "scanner": "scanner-primary", "fingerprint": "2d42a8eb3c218dec", "layer": "software", "severity": "low", "confidence": 1.0, "tags": ["dead-code"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/bench/workloads.py:933"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-3331dd8dc52f6c82", "level": "warning", "message": {"text": "Privileged port 17 in use"}, "properties": {"repobilityId": "0bf38fb8f89ec589", "scanner": "scanner-primary", "fingerprint": "3331dd8dc52f6c82", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/renew-and-deploy.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9c02d5aab21701dc", "level": "warning", "message": {"text": "Privileged port 52 in use"}, "properties": {"repobilityId": "2b6877fa37212075", "scanner": "scanner-primary", "fingerprint": "9c02d5aab21701dc", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/gcp.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-9da2f874573b2832", "level": "warning", "message": {"text": "Privileged port 54 in use"}, "properties": {"repobilityId": "cfa860c24fdc3eef", "scanner": "scanner-primary", "fingerprint": "9da2f874573b2832", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/gcp.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-eca0470ecc7423bc", "level": "warning", "message": {"text": "Privileged port 12 in use"}, "properties": {"repobilityId": "65e7eefa33f2def4", "scanner": "scanner-primary", "fingerprint": "eca0470ecc7423bc", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/gcp.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-59946ae24458f3b4", "level": "warning", "message": {"text": "Privileged port 34 in use"}, "properties": {"repobilityId": "2febb579b1c7080d", "scanner": "scanner-primary", "fingerprint": "59946ae24458f3b4", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/gcp.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-8a3762e3f0ca622d", "level": "warning", "message": {"text": "Privileged port 56 in use"}, "properties": {"repobilityId": "104b02b29065e84a", "scanner": "scanner-primary", "fingerprint": "8a3762e3f0ca622d", "layer": "network", "severity": "medium", "confidence": 1.0, "tags": ["security", "ports"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/gcp.sh"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-2170d4a3370b5947", "level": "warning", "message": {"text": "Dockerfile runs as root: scripts/bench/Dockerfile"}, "properties": {"repobilityId": "ddbe044dd01608ef", "scanner": "scanner-primary", "fingerprint": "2170d4a3370b5947", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-1491b987d03e9f50", "level": "warning", "message": {"text": "Dockerfile runs as root: scripts/peer-linux/tokio-hyper/Dockerfile"}, "properties": {"repobilityId": "bc14135127ba0ec3", "scanner": "scanner-primary", "fingerprint": "1491b987d03e9f50", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-d947653a42d5dd26", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: rust:slim-bookworm"}, "properties": {"repobilityId": "4f65f8cd21933f67", "scanner": "scanner-primary", "fingerprint": "d947653a42d5dd26", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/peer-linux/tokio-hyper/Dockerfile"}, "region": {"startLine": 4}}}]}, {"ruleId": "scanner-5258c9174f3dca86", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: debian:bookworm-slim"}, "properties": {"repobilityId": "f665387213634113", "scanner": "scanner-primary", "fingerprint": "5258c9174f3dca86", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/peer-linux/tokio-hyper/Dockerfile"}, "region": {"startLine": 16}}}]}, {"ruleId": "scanner-44fa30071088a830", "level": "warning", "message": {"text": "Dockerfile runs as root: scripts/peer-linux/nginx/Dockerfile"}, "properties": {"repobilityId": "42c41778799ec49c", "scanner": "scanner-primary", "fingerprint": "44fa30071088a830", "layer": "hardware", "severity": "medium", "confidence": 1.0, "tags": ["security", "container"]}}, {"ruleId": "scanner-0e0106432d1d8815", "level": "note", "message": {"text": "Docker base image is tag-pinned but not digest-pinned: debian:bookworm-slim"}, "properties": {"repobilityId": "4ea9f3007f10f401", "scanner": "scanner-primary", "fingerprint": "0e0106432d1d8815", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["supply-chain", "docker", "pinned-dependencies"]}, "locations": [{"physicalLocation": {"artifactLocation": {"uri": "scripts/peer-linux/nginx/Dockerfile"}, "region": {"startLine": 1}}}]}, {"ruleId": "scanner-aa5acaa49eb8315b", "level": "note", "message": {"text": "Containers defined but no K8s/orchestration manifest found"}, "properties": {"repobilityId": "b230ea9b68736081", "scanner": "scanner-primary", "fingerprint": "aa5acaa49eb8315b", "layer": "hardware", "severity": "low", "confidence": 1.0, "tags": ["coverage", "deployment"]}}, {"ruleId": "scanner-9710c8d059e53154", "level": "none", "message": {"text": "No frontend routes/components detected"}, "properties": {"repobilityId": "44ca61485762e494", "scanner": "scanner-primary", "fingerprint": "9710c8d059e53154", "layer": "frontend", "severity": "info", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-6372cebde0220094", "level": "warning", "message": {"text": "No auth library detected"}, "properties": {"repobilityId": "a5b6035a5bbf8054", "scanner": "scanner-primary", "fingerprint": "6372cebde0220094", "layer": "security", "severity": "medium", "confidence": 1.0, "tags": ["coverage", "auth"]}}, {"ruleId": "scanner-4601e3ad3bb28677", "level": "warning", "message": {"text": "No CI/CD pipelines detected"}, "properties": {"repobilityId": "c3ee439bce2bc51e", "scanner": "scanner-primary", "fingerprint": "4601e3ad3bb28677", "layer": "cicd", "severity": "medium", "confidence": 1.0, "tags": ["coverage"]}}, {"ruleId": "scanner-a3049e2027528829", "level": "note", "message": {"text": "Very large file: apps/webserver/test.py (1390 lines)"}, "properties": {"repobilityId": "3d6854986e291cc0", "scanner": "scanner-primary", "fingerprint": "a3049e2027528829", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-7de46fe6e0dfcd99", "level": "note", "message": {"text": "Very large file: scripts/bench/cli.py (1454 lines)"}, "properties": {"repobilityId": "674540023b581a08", "scanner": "scanner-primary", "fingerprint": "7de46fe6e0dfcd99", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b21fbe8be44bb14b", "level": "note", "message": {"text": "Very large file: crates/proto/tls/src/client.rs (2087 lines)"}, "properties": {"repobilityId": "195c71fbfa463c19", "scanner": "scanner-primary", "fingerprint": "b21fbe8be44bb14b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-0de019c4f1239c65", "level": "note", "message": {"text": "Very large file: crates/proto/http/src/client.rs (1986 lines)"}, "properties": {"repobilityId": "47b34b9d7fe4582e", "scanner": "scanner-primary", "fingerprint": "0de019c4f1239c65", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-a18ea58f135f5b46", "level": "note", "message": {"text": "Very large file: crates/proto/quic/src/diag.rs (1183 lines)"}, "properties": {"repobilityId": "872cfa74bb919c49", "scanner": "scanner-primary", "fingerprint": "a18ea58f135f5b46", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ac537c31885d1b33", "level": "note", "message": {"text": "Very large file: crates/proto/quic/src/tls.rs (1553 lines)"}, "properties": {"repobilityId": "f7c5e5dc8e22b666", "scanner": "scanner-primary", "fingerprint": "ac537c31885d1b33", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-c06aab6d0c730cce", "level": "note", "message": {"text": "Very large file: crates/proto/quic/src/endpoint.rs (1409 lines)"}, "properties": {"repobilityId": "3b07ced784b17598", "scanner": "scanner-primary", "fingerprint": "c06aab6d0c730cce", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-17852a4b7bcb5011", "level": "note", "message": {"text": "Very large file: crates/proto/quic/src/conn/tx.rs (2044 lines)"}, "properties": {"repobilityId": "5eb4cff12a4a8468", "scanner": "scanner-primary", "fingerprint": "17852a4b7bcb5011", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2bc810cdf3968e78", "level": "note", "message": {"text": "Very large file: crates/proto/quic/src/conn/mod.rs (2423 lines)"}, "properties": {"repobilityId": "084812659b5f4b8b", "scanner": "scanner-primary", "fingerprint": "2bc810cdf3968e78", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-d8edaadb88347db1", "level": "note", "message": {"text": "Very large file: crates/proto/quic/src/conn/cfg.rs (1364 lines)"}, "properties": {"repobilityId": "56a1a71a38354390", "scanner": "scanner-primary", "fingerprint": "d8edaadb88347db1", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-e5240a55c9c20a30", "level": "note", "message": {"text": "Very large file: crates/proto/quic/src/conn/rx.rs (1414 lines)"}, "properties": {"repobilityId": "1863695584f13a9b", "scanner": "scanner-primary", "fingerprint": "e5240a55c9c20a30", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-ad199c1ea362df54", "level": "note", "message": {"text": "Very large file: crates/proto/http2/src/server.rs (2841 lines)"}, "properties": {"repobilityId": "005775c2e8ba368a", "scanner": "scanner-primary", "fingerprint": "ad199c1ea362df54", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b4bf80e3160f1111", "level": "note", "message": {"text": "Very large file: crates/proto/http2/src/client.rs (1959 lines)"}, "properties": {"repobilityId": "9d0866c16160f6b2", "scanner": "scanner-primary", "fingerprint": "b4bf80e3160f1111", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-500fea23b9f817b3", "level": "note", "message": {"text": "Very large file: crates/drivers/gve/src/dqo.rs (1252 lines)"}, "properties": {"repobilityId": "32cc0e0afcf5e79f", "scanner": "scanner-primary", "fingerprint": "500fea23b9f817b3", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-2c94ed2edb22b6df", "level": "note", "message": {"text": "Very large file: crates/drivers/gve/src/init.rs (1317 lines)"}, "properties": {"repobilityId": "ca3a0c3a4f58a826", "scanner": "scanner-primary", "fingerprint": "2c94ed2edb22b6df", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-23ac1d315f69c21d", "level": "note", "message": {"text": "Very large file: crates/runtime/executor/src/reactor/tcp.rs (1351 lines)"}, "properties": {"repobilityId": "1a4b83dde063c2b3", "scanner": "scanner-primary", "fingerprint": "23ac1d315f69c21d", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-fe3708f8b5e1e398", "level": "note", "message": {"text": "Very large file: crates/runtime/executor/src/reactor/udp.rs (1519 lines)"}, "properties": {"repobilityId": "388f7f03ef1fb2c2", "scanner": "scanner-primary", "fingerprint": "fe3708f8b5e1e398", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-dfefd65dc1a51f11", "level": "note", "message": {"text": "Very large file: crates/net/tcp/src/state.rs (1904 lines)"}, "properties": {"repobilityId": "44e1e8ad5dedb47b", "scanner": "scanner-primary", "fingerprint": "dfefd65dc1a51f11", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-f4708a7e7f5283b5", "level": "note", "message": {"text": "Very large file: crates/net/tcp/src/receive.rs (1377 lines)"}, "properties": {"repobilityId": "09e7a76913775daf", "scanner": "scanner-primary", "fingerprint": "f4708a7e7f5283b5", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-79da66eea6ace1d8", "level": "note", "message": {"text": "Very large file: crates/net/tcp/src/tests.rs (5580 lines)"}, "properties": {"repobilityId": "850127503b1b7bd4", "scanner": "scanner-primary", "fingerprint": "79da66eea6ace1d8", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-b931cfe4945a4159", "level": "note", "message": {"text": "Very large file: tools/hvf-runner/src/userspace_net/mod.rs (1942 lines)"}, "properties": {"repobilityId": "414479571cf02576", "scanner": "scanner-primary", "fingerprint": "b931cfe4945a4159", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["complexity"]}}, {"ruleId": "scanner-6893a6c8b0861585", "level": "warning", "message": {"text": "Very low test-to-source ratio"}, "properties": {"repobilityId": "54a7de3f06314bf0", "scanner": "scanner-primary", "fingerprint": "6893a6c8b0861585", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["tests", "coverage"]}}, {"ruleId": "scanner-141b30a41e03817b", "level": "note", "message": {"text": "No license file detected"}, "properties": {"repobilityId": "18e5614e0093a42f", "scanner": "scanner-primary", "fingerprint": "141b30a41e03817b", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["license", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-3ab5d313dda8e5f9", "level": "note", "message": {"text": "Debug logging residue appears in source files"}, "properties": {"repobilityId": "1e6ac921ffbdcef8", "scanner": "scanner-primary", "fingerprint": "3ab5d313dda8e5f9", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["debug", "cleanup", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-72b2a6250083a784", "level": "warning", "message": {"text": "Placeholder or mock-heavy implementation detected"}, "properties": {"repobilityId": "8f854c99d76ddfb5", "scanner": "scanner-primary", "fingerprint": "72b2a6250083a784", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "incomplete", "generated-repo-pattern"]}}, {"ruleId": "scanner-2d0c7b7ab8f8aacf", "level": "warning", "message": {"text": "Critical user flow still appears backed by mock or placeholder data"}, "properties": {"repobilityId": "f1329287dd2d752f", "scanner": "scanner-primary", "fingerprint": "2d0c7b7ab8f8aacf", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["placeholder", "mock-data", "critical-flow", "generated-repo-pattern"]}}, {"ruleId": "scanner-b9088664ace7f748", "level": "note", "message": {"text": "Composite production-readiness gap"}, "properties": {"repobilityId": "afc2fded498e056d", "scanner": "scanner-primary", "fingerprint": "b9088664ace7f748", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["production-readiness", "repo-hardening", "generated-repo-pattern"]}}, {"ruleId": "scanner-ea8f3013f588db25", "level": "note", "message": {"text": "Shallow git history limits provenance confidence"}, "properties": {"repobilityId": "795441aa14a3685a", "scanner": "scanner-primary", "fingerprint": "ea8f3013f588db25", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-8424db9c75e04ba4", "level": "none", "message": {"text": "Very short observed git history"}, "properties": {"repobilityId": "ebf91abaf2226655", "scanner": "scanner-primary", "fingerprint": "8424db9c75e04ba4", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["provenance", "git-history", "generated-repo-pattern"]}}, {"ruleId": "scanner-a9a41844b73315cf", "level": "none", "message": {"text": "Commented-code block (8 lines) in apps/webserver/test.py:76"}, "properties": {"repobilityId": "60f23f0a19858534", "scanner": "scanner-primary", "fingerprint": "a9a41844b73315cf", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-a954faac1e10db39", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 apps/webserver/test.py:468"}, "properties": {"repobilityId": "8b6157bff2b21645", "scanner": "scanner-primary", "fingerprint": "a954faac1e10db39", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-c466d781136a6e3d", "level": "none", "message": {"text": "Commented-code block (5 lines) in scripts/h3-get-discard.py:2"}, "properties": {"repobilityId": "505048b6e69fa8fe", "scanner": "scanner-primary", "fingerprint": "c466d781136a6e3d", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-895dd56282446759", "level": "none", "message": {"text": "Commented-code block (6 lines) in scripts/bench/envs.py:53"}, "properties": {"repobilityId": "9cc41a6d1922d81e", "scanner": "scanner-primary", "fingerprint": "895dd56282446759", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-ac01cc8f5b8e0869", "level": "note", "message": {"text": "Stub function `build` (body is just `pass`/`return`) \u2014 scripts/bench/envs.py:541"}, "properties": {"repobilityId": "14575291b05fa307", "scanner": "scanner-primary", "fingerprint": "ac01cc8f5b8e0869", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "empty-handler", "dead-code"]}}, {"ruleId": "scanner-429b48c3ebe12b2c", "level": "none", "message": {"text": "Commented-code block (10 lines) in scripts/bench/workloads.py:248"}, "properties": {"repobilityId": "9f4b2c657c0b4d3a", "scanner": "scanner-primary", "fingerprint": "429b48c3ebe12b2c", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e91c790c37f8f4a1", "level": "none", "message": {"text": "Commented-code block (6 lines) in scripts/bench/cli.py:163"}, "properties": {"repobilityId": "8504ea9d23389036", "scanner": "scanner-primary", "fingerprint": "e91c790c37f8f4a1", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-040c0f1bbee0f479", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/bench/cli.py:742"}, "properties": {"repobilityId": "3bda29d7894279bf", "scanner": "scanner-primary", "fingerprint": "040c0f1bbee0f479", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-84f10b21fdf1a13f", "level": "none", "message": {"text": "Commented-code block (7 lines) in scripts/bench/h2_profile.py:7"}, "properties": {"repobilityId": "84e1c9d325aa8e97", "scanner": "scanner-primary", "fingerprint": "84f10b21fdf1a13f", "layer": "quality", "severity": "info", "confidence": 1.0, "tags": ["integrity", "commented-code", "dead-code"]}}, {"ruleId": "scanner-e5942c8564556da2", "level": "warning", "message": {"text": "Network/subprocess call without timeout or try/except \u2014 scripts/bench/h2_profile.py:76"}, "properties": {"repobilityId": "0e0bf2ae6aa824eb", "scanner": "scanner-primary", "fingerprint": "e5942c8564556da2", "layer": "quality", "severity": "medium", "confidence": 1.0, "tags": ["integrity", "fragile-runtime", "robustness"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "bb43306e9fa2a97a", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-0027e313ade46c8f", "level": "note", "message": {"text": "Near-duplicate function bodies in 7 places"}, "properties": {"repobilityId": "425559a51fe26b7e", "scanner": "scanner-primary", "fingerprint": "0027e313ade46c8f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-0027e313ade46c8f", "level": "note", "message": {"text": "Near-duplicate function bodies in 7 places"}, "properties": {"repobilityId": "b346f0ec7145cb32", "scanner": "scanner-primary", "fingerprint": "0027e313ade46c8f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-0027e313ade46c8f", "level": "note", "message": {"text": "Near-duplicate function bodies in 7 places"}, "properties": {"repobilityId": "30968a55fbbbd59f", "scanner": "scanner-primary", "fingerprint": "0027e313ade46c8f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-0027e313ade46c8f", "level": "note", "message": {"text": "Near-duplicate function bodies in 7 places"}, "properties": {"repobilityId": "3c2b897e68115869", "scanner": "scanner-primary", "fingerprint": "0027e313ade46c8f", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "84129ad6ef4c6c5a", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}, {"ruleId": "scanner-2c04133e54348533", "level": "note", "message": {"text": "Near-duplicate function bodies in 2 places"}, "properties": {"repobilityId": "12202cb67a4ccd12", "scanner": "scanner-primary", "fingerprint": "2c04133e54348533", "layer": "quality", "severity": "low", "confidence": 1.0, "tags": ["integrity", "duplicate", "dry"]}}]}]}