Scanner deep-dive
DeepSeek V4 Flash by DeepSeek ↗
General-Purpose LLM · agentic-v1 · scored on 140/140 repositories. Strict scoring (unfinished repos counted as misses).
Methodology note
Full coverage. One of two third-party LLM scanners to date to cover both languages. The Python results are the 2.1.0 runs, unchanged (three runs per repository). The 74 TypeScript / JS repositories were scanned once each on 2026-09-03 through the standard agentic-v1 harness with the TS/JS variant of the prompt (prompt hash sha256:45a1200d61e6), for $2.33 in total at off-peak rates. Six of those runs initially failed validation on an invalid JSON escape in the model's own message; the validator now repairs that, and the six outputs were re-validated from the stored session transcript rather than re-run, so no finding was regenerated.41.8
F3 (strict)
43.1
F2 (strict)
40.7%
Recall (strict)
56.3%
Precision
140/140
Repos scored
deepseek-v4-flash
Model
$4
Total cost
232s
Avg latency
§
Per-repository breakdown
Each bar shows true positives, false positives, and misses on one repository; bar length is proportional to that repo's labeled vulnerabilities. Ranked by F2.
| Repository | TP | FP | FN | Recall % | F2 |
|---|---|---|---|---|---|
| pythonssti | 2 | 0 | 0 | 100.0 | 100.0 |
| react-test-bench | 1 | 0 | 0 | 100.0 | 100.0 |
| intentionally-vulnerable-python-application | 6 | 1 | 1 | 81.0 | 81.7 |
| vfapi | 8 | 4 | 1 | 85.2 | 80.5 |
| vulnpy | 63 | 15 | 17 | 78.8 | 79.0 |
| node-api-goat | 6 | 5 | 1 | 85.7 | 76.9 |
| vulnerable-api | 10 | 2 | 4 | 73.8 | 75.2 |
| dsvw | 19 | 2 | 8 | 71.6 | 74.6 |
| vuln-node-express | 4 | 3 | 1 | 80.0 | 74.1 |
| dsvpwa | 24 | 9 | 8 | 74.0 | 73.8 |
| lets-be-bad-guys | 17 | 2 | 7 | 69.5 | 72.7 |
| insecure-web | 7 | 4 | 2 | 74.1 | 71.9 |
| dvblab | 16 | 6 | 6 | 71.2 | 71.4 |
| vampi | 11 | 7 | 4 | 73.3 | 70.5 |
| python-insecure-app | 5 | 1 | 3 | 66.7 | 69.3 |
| vulnerable-flask-app | 14 | 4 | 7 | 65.1 | 67.0 |
| vc-codex-high-seeded-v2-marketplace-commerce-fastapi | 16 | 4 | 9 | 64.0 | 66.7 |
| python-app | 14 | 5 | 7 | 65.1 | 66.2 |
| vulnerable-tornado-app | 9 | 4 | 5 | 64.3 | 65.5 |
| vc-codex-high-seeded-v2-hr-payroll-django | 15 | 3 | 10 | 60.0 | 63.6 |
| vc-codex-high-seeded-v2-property-management-fastapi | 16 | 6 | 10 | 61.5 | 63.5 |
| vc-codex-high-seeded-v2-fintech-lending-fastapi | 17 | 2 | 12 | 58.6 | 63.0 |
| vc-claude-code-seeded-v2-fintech-lending-fastapi | 17 | 4 | 12 | 58.6 | 62.0 |
| vc-codex-high-seeded-v2-support-desk-fastapi | 16 | 2 | 12 | 57.1 | 61.5 |
| dvna | 11 | 11 | 6 | 64.7 | 61.1 |
| vc-codex-high-seeded-v2-crm-saas-django | 14 | 3 | 11 | 56.0 | 59.8 |
| damn-vulnerable-flask-application | 8 | 6 | 6 | 59.5 | 59.5 |
| ivna | 12 | 13 | 7 | 63.2 | 59.4 |
| vc-kimi-code-seeded-v2-fintech-lending-fastapi | 18 | 4 | 15 | 54.5 | 58.4 |
| vc-kimi-code-seeded-v2-property-management-fastapi | 16 | 2 | 14 | 53.3 | 58.0 |
| owasp-web-playground | 16 | 8 | 12 | 56.0 | 57.6 |
| vc-kimi-code-seeded-v2-legal-case-django | 14 | 5 | 12 | 53.8 | 56.9 |
| vc-codex-high-seeded-v2-logistics-dispatch-fastapi | 15 | 3 | 14 | 51.7 | 56.0 |
| vulnerable-node | 11 | 4 | 10 | 52.4 | 55.6 |
| vc-kimi-code-seeded-v2-crm-saas-django | 14 | 5 | 13 | 51.8 | 55.1 |
| vc-kimi-code-seeded-v2-hr-payroll-django | 15 | 5 | 14 | 51.7 | 55.1 |
| threatbyte | 13 | 2 | 13 | 50.0 | 54.8 |
| vc-codex-high-seeded-v2-legal-case-django | 13 | 6 | 12 | 52.0 | 54.6 |
| vc-codex-seeded-v2-marketplace-commerce-fastapi | 14 | 2 | 15 | 48.3 | 53.0 |
| vulnerable-rest-api-owasp-2023 | 10 | 25 | 5 | 66.7 | 52.6 |
| vc-claude-code-seeded-v2-support-desk-fastapi | 16 | 1 | 18 | 47.1 | 52.3 |
| vc-codex-seeded-v2-support-desk-fastapi | 14 | 0 | 16 | 46.7 | 52.2 |
| vc-codex-seeded-v2-property-management-fastapi | 15 | 5 | 16 | 48.4 | 52.1 |
| vc-codex-seeded-v2-logistics-dispatch-fastapi | 14 | 2 | 16 | 46.7 | 51.5 |
| vc-claude-code-seeded-v2-legal-case-django | 14 | 1 | 17 | 45.2 | 50.4 |
| nextjs-vulnerable-app | 1 | 5 | 0 | 100.0 | 50.0 |
| vc-claude-code-seeded-v2-logistics-dispatch-fastapi | 15 | 4 | 18 | 45.5 | 49.7 |
| vc-codex-high-seeded-v2-healthcare-clinic-django | 12 | 5 | 14 | 46.2 | 49.6 |
| vc-codex-seeded-v2-crm-saas-django | 16 | 10 | 18 | 47.1 | 49.4 |
| vc-codex-high-seeded-v3-marketplace-commerce-express | 20 | 7 | 24 | 45.5 | 49.3 |
| vc-claude-code-seeded-v3-fintech-lending-express | 19 | 14 | 21 | 47.5 | 49.2 |
| vc-codex-seeded-v2-hr-payroll-django | 17 | 1 | 22 | 43.6 | 48.9 |
| vc-claude-code-seeded-v3-property-management-fastify-vue | 15 | 12 | 17 | 46.9 | 48.4 |
| vc-claude-code-seeded-v2-education-lms-django | 14 | 3 | 18 | 43.8 | 48.3 |
| vc-kimi-code-seeded-v2-logistics-dispatch-fastapi | 14 | 7 | 17 | 45.2 | 48.3 |
| vc-codex-seeded-v2-fintech-lending-fastapi | 16 | 2 | 21 | 43.2 | 48.2 |
| vc-deepseek-v4-flash-seeded-v3-crm-saas-nestjs-angular | 10 | 6 | 12 | 45.5 | 48.1 |
| vc-codex-high-seeded-v3-support-desk-nestjs-angular | 16 | 11 | 19 | 45.7 | 47.9 |
| dvpwa | 10 | 3 | 13 | 43.5 | 47.4 |
| extremely-vulnerable-flask-app | 14 | 2 | 18 | 42.7 | 47.4 |
| vc-codex-high-seeded-v2-education-lms-django | 11 | 5 | 14 | 44.0 | 47.4 |
| vc-claude-code-seeded-v2-property-management-fastapi | 14 | 2 | 19 | 42.4 | 47.3 |
| vulnerable-app-angular | 5 | 16 | 3 | 62.5 | 47.2 |
| vc-claude-code-seeded-v2-hr-payroll-django | 12 | 7 | 15 | 44.4 | 47.2 |
| vc-kimi-code-seeded-v2-support-desk-fastapi | 12 | 3 | 16 | 42.9 | 47.2 |
| vulnerable-python-apps | 10 | 8 | 12 | 45.5 | 47.1 |
| vc-claude-code-seeded-v2-crm-saas-django | 12 | 5 | 16 | 42.9 | 46.5 |
| vc-codex-seeded-v2-legal-case-django | 14 | 6 | 19 | 42.4 | 46.1 |
| pygoat | 33 | 11 | 45 | 41.9 | 45.9 |
| vc-kimi-code-seeded-v2-education-lms-django | 12 | 7 | 16 | 42.9 | 45.8 |
| vc-claude-code-seeded-v2-healthcare-clinic-django | 12 | 4 | 17 | 41.4 | 45.5 |
| vc-codex-high-seeded-v3-hr-payroll-remix | 19 | 22 | 23 | 45.2 | 45.5 |
| vc-deepseek-v4-pro-seeded-v3-logistics-dispatch-fastify-vue | 13 | 10 | 17 | 43.3 | 45.5 |
| vc-kimi-code-seeded-v2-marketplace-commerce-fastapi | 11 | 3 | 16 | 40.7 | 45.1 |
| damn-vulnerable-graphql-application | 14 | 6 | 22 | 40.3 | 44.0 |
| vc-kimi-code-seeded-v2-healthcare-clinic-django | 12 | 5 | 18 | 40.0 | 43.8 |
| vc-deepseek-v4-pro-seeded-v3-support-desk-nestjs-angular | 8 | 8 | 11 | 42.1 | 43.5 |
| vc-kimi-code-seeded-v3-logistics-dispatch-fastify-vue | 19 | 24 | 25 | 43.2 | 43.4 |
| vc-claude-code-seeded-v3-logistics-dispatch-fastify-vue | 20 | 8 | 31 | 39.2 | 43.1 |
| vc-kimi-code-seeded-v3-fintech-lending-express | 17 | 14 | 25 | 40.5 | 42.7 |
| vulnnodeapp | 12 | 16 | 17 | 41.4 | 41.7 |
| vc-kimi-code-seeded-v3-legal-case-remix | 16 | 13 | 25 | 39.0 | 41.5 |
| vc-codex-seeded-v2-healthcare-clinic-django | 15 | 2 | 26 | 36.6 | 41.4 |
| vc-claude-code-seeded-v3-marketplace-commerce-express | 16 | 19 | 24 | 40.0 | 41.0 |
| vc-claude-code-seeded-v3-education-lms-nextjs | 17 | 40 | 21 | 44.7 | 40.7 |
| vc-deepseek-v4-flash-seeded-v3-logistics-dispatch-fastify-vue | 11 | 12 | 17 | 39.3 | 40.7 |
| vulpy | 20 | 3 | 37 | 35.7 | 40.4 |
| vc-claude-code-seeded-v3-crm-saas-nestjs-angular | 18 | 10 | 31 | 36.7 | 40.2 |
| vc-claude-code-seeded-v3-legal-case-remix | 11 | 14 | 17 | 39.3 | 40.1 |
| ninjasworkout | 9 | 16 | 13 | 40.9 | 39.8 |
| vc-kimi-code-seeded-v3-marketplace-commerce-express | 17 | 26 | 26 | 39.5 | 39.5 |
| vc-claude-code-seeded-v2-marketplace-commerce-fastapi | 11 | 1 | 21 | 34.4 | 39.3 |
| nodegoat | 11 | 18 | 17 | 39.3 | 39.0 |
| nodejs-goof | 7 | 15 | 10 | 41.2 | 38.9 |
| vc-deepseek-v4-flash-seeded-v3-healthcare-clinic-nextjs | 9 | 11 | 15 | 37.5 | 38.8 |
| vc-deepseek-v4-flash-seeded-v3-property-management-fastify-vue | 9 | 9 | 16 | 36.0 | 38.1 |
| vc-kimi-code-seeded-v3-education-lms-nextjs | 17 | 24 | 29 | 37.0 | 37.8 |
| vc-kimi-code-seeded-v3-property-management-fastify-vue | 13 | 31 | 19 | 40.6 | 37.8 |
| vc-claude-code-seeded-v3-hr-payroll-remix | 13 | 12 | 24 | 35.1 | 37.6 |
| vc-deepseek-v4-flash-seeded-v3-education-lms-nextjs | 10 | 13 | 18 | 35.7 | 37.0 |
| vc-deepseek-v4-flash-seeded-v3-legal-case-remix | 8 | 12 | 14 | 36.4 | 37.0 |
| vc-deepseek-v4-pro-seeded-v3-healthcare-clinic-nextjs | 9 | 11 | 17 | 34.6 | 36.3 |
| vc-kimi-code-seeded-v3-support-desk-nestjs-angular | 11 | 13 | 21 | 34.4 | 36.2 |
| vc-codex-high-seeded-v3-legal-case-remix | 17 | 31 | 30 | 36.2 | 36.0 |
| flask-xss | 9 | 2 | 21 | 31.1 | 35.6 |
| vc-deepseek-v4-flash-seeded-v3-marketplace-commerce-express | 7 | 9 | 14 | 33.3 | 35.0 |
| vc-deepseek-v4-flash-seeded-v3-hr-payroll-remix | 7 | 22 | 11 | 38.9 | 34.7 |
| vc-codex-high-seeded-v3-crm-saas-nestjs-angular | 12 | 15 | 25 | 32.4 | 34.3 |
| vuln-node-express-swagger | 16 | 23 | 33 | 32.6 | 34.0 |
| vc-codex-high-seeded-v3-logistics-dispatch-fastify-vue | 14 | 13 | 31 | 31.1 | 33.8 |
| vc-codex-high-seeded-v3-fintech-lending-express | 12 | 10 | 27 | 30.8 | 33.7 |
| vc-codex-high-seeded-v3-healthcare-clinic-nextjs | 13 | 12 | 29 | 30.9 | 33.7 |
| vc-codex-high-seeded-v3-property-management-fastify-vue | 13 | 12 | 29 | 30.9 | 33.7 |
| vc-deepseek-v4-flash-seeded-v3-fintech-lending-express | 7 | 10 | 15 | 31.8 | 33.3 |
| vulnerable-nodejs | 6 | 11 | 13 | 31.6 | 32.3 |
| vc-deepseek-v4-pro-seeded-v3-property-management-fastify-vue | 6 | 13 | 13 | 31.6 | 31.6 |
| xvna | 4 | 12 | 8 | 33.3 | 31.2 |
| vc-kimi-code-seeded-v3-crm-saas-nestjs-angular | 12 | 26 | 28 | 30.0 | 30.3 |
| vc-codex-high-seeded-v3-education-lms-nextjs | 13 | 10 | 35 | 27.1 | 30.2 |
| vc-codex-seeded-v2-education-lms-django | 9 | 3 | 26 | 25.7 | 29.6 |
| vc-deepseek-v4-pro-seeded-v3-marketplace-commerce-express | 8 | 23 | 18 | 30.8 | 29.6 |
| vc-kimi-code-seeded-v3-healthcare-clinic-nextjs | 10 | 17 | 26 | 27.8 | 29.2 |
| vc-deepseek-v4-pro-seeded-v3-legal-case-remix | 7 | 14 | 18 | 28.0 | 28.9 |
| djangoat | 13 | 8 | 39 | 24.4 | 27.7 |
| vc-claude-code-seeded-v3-support-desk-nestjs-angular | 10 | 11 | 31 | 24.4 | 27.0 |
| juice-shop-goof | 12 | 9 | 39 | 23.5 | 26.7 |
| vc-deepseek-v4-pro-seeded-v3-education-lms-nextjs | 7 | 18 | 20 | 25.9 | 26.3 |
| simply-vulnerable-react | 1 | 16 | 0 | 100.0 | 23.8 |
| vulnerable-react-fatih | 2 | 17 | 5 | 28.6 | 21.3 |
| vc-deepseek-v4-pro-seeded-v3-crm-saas-nestjs-angular | 6 | 17 | 24 | 20.0 | 21.0 |
| vc-deepseek-v4-pro-seeded-v3-fintech-lending-express | 5 | 13 | 22 | 18.5 | 19.8 |
| juice-shop | 13 | 36 | 68 | 16.1 | 17.4 |
| vc-deepseek-v4-flash-seeded-v3-support-desk-nestjs-angular | 4 | 17 | 20 | 16.7 | 17.1 |
| vc-claude-code-seeded-v3-healthcare-clinic-nextjs | 6 | 22 | 37 | 14.0 | 15.0 |
| vc-deepseek-v4-pro-seeded-v3-hr-payroll-remix | 3 | 9 | 23 | 11.5 | 12.9 |
| dvws-node | 0 | 0 | 77 | 0.0 | 0.0 |
| oss-oopssec-store | 0 | 0 | 40 | 0.0 | 0.0 |
| react-security | 0 | 0 | 7 | 0.0 | 0.0 |
| reactvulna | 0 | 10 | 1 | 0.0 | 0.0 |
| vc-kimi-code-seeded-v3-hr-payroll-remix | 0 | 0 | 36 | 0.0 | 0.0 |
§
Detection by severity
| Severity | TP | FP | FN | Recall % |
|---|---|---|---|---|
| Critical | 147 | 0 | 11 | 93.0 |
| High | 1105 | 1 | 1743 | 38.8 |
| Medium | 379 | 3 | 587 | 39.2 |
| Low | 49 | 2 | 117 | 29.5 |
§
Detection by vulnerability class
| CWE family | TP | FP | FN | Recall % |
|---|---|---|---|---|
| HTTP Header Injection | 2 | 0 | 0 | 100.0 |
| Insecure Deserialization | 47 | 0 | 1 | 97.9 |
| Command / OS Injection | 126 | 0 | 10 | 92.6 |
| XML External Entities | 55 | 0 | 9 | 85.9 |
| SQL Injection | 131 | 0 | 23 | 85.1 |
| Code Injection / RFI | 68 | 0 | 12 | 85.0 |
| Path Traversal | 82 | 0 | 22 | 78.8 |
| Open Redirect | 69 | 0 | 19 | 78.4 |
| XPath Injection | 13 | 0 | 4 | 76.5 |
| Server-Side Request Forgery | 69 | 1 | 24 | 74.2 |
| Cross-Site Scripting | 125 | 0 | 81 | 60.7 |
| Security Misconfiguration | 85 | 0 | 119 | 41.7 |
| Broken Access Control / IDOR | 76 | 0 | 156 | 32.8 |
| Sensitive Data Exposure | 104 | 0 | 245 | 29.8 |
| Hardcoded Credentials | 61 | 0 | 155 | 28.2 |
| Other | 515 | 2 | 1370 | 27.3 |
| Missing Authentication / Authorization | 43 | 3 | 130 | 24.9 |
| Denial of Service | 9 | 0 | 78 | 10.3 |
§
LLM operational metrics
56,744
Avg input tokens
18,502
Avg output tokens
830,212
Avg total tokens
232s
Avg latency / repo
3.6%
JSON repair rate
192
Total runs
±18.0
F2 run-to-run σ
§
Cost
$4
Total cost
$0.02
Cost / run
$0.001
Cost / 100 LOC
741,034
Lines of code scanned
188
Successful runs