@hoanghainh/komagu 2.4.0 → 2.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +41 -0
- package/LICENSE +202 -0
- package/README.md +1 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/ai-run-stats.json +87 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/auth-model.md +120 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/batches/index.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/batches/injection-001.json +383 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/batches/injection-002.json +205 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/batches/privilege-001.json +838 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/batches/privilege-002.json +124 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/batches/routes-001.json +778 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/batches/routes-002.json +546 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/batches/routes-003.json +661 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/batches/routes-004.json +659 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/batches/routes-005.json +612 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/batches/routes-006.json +106 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/coverage.json +19 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/bola-routes-001.json +516 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/bola-routes-002.json +332 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/bola-routes-003.json +218 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/bola-routes-004.json +561 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/bola-routes-005.json +316 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/bola-routes-006.json +14 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/inj-injection-001.json +782 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/inj-injection-002.json +418 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/priv-privilege-001.json +627 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/priv-privilege-002.json +253 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-1.json +68 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-10.json +68 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-11.json +61 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-12.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-13.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-14.json +66 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-15.json +69 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-16.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-17.json +61 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-18.json +69 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-19.json +64 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-2.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-20.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-21.json +61 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-22.json +50 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-3.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-4.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-5.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-6.json +70 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-7.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-8.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-9.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/findings.json +4857 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/mass-assignment.candidates.json +232 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/report.ja.md +2112 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/report.md +2112 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/routes/routes-001.json +425 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/routes/routes-002.json +333 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/routes/routes-003.json +400 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/routes/routes-004.json +403 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/routes/routes-005.json +398 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/routes/routes-006.json +63 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/score.json +82 -0
- package/assess/lsa/examples/eval-run-6/gptoss-a/stack-profile.json +225 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/ai-run-stats.json +91 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/auth-model.md +120 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/batches/index.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/batches/injection-001.json +383 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/batches/injection-002.json +205 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/batches/privilege-001.json +838 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/batches/privilege-002.json +124 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/batches/routes-001.json +778 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/batches/routes-002.json +546 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/batches/routes-003.json +661 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/batches/routes-004.json +659 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/batches/routes-005.json +612 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/batches/routes-006.json +106 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/coverage.json +21 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/bola-routes-001.json +593 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/bola-routes-002.json +367 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/bola-routes-003.json +207 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/bola-routes-004.json +477 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/bola-routes-005.json +341 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/bola-routes-006.json +14 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/inj-injection-001.json +821 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/inj-injection-002.json +410 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/priv-privilege-001.json +649 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/priv-privilege-002.json +222 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-1.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-10.json +67 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-11.json +68 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-12.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-13.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-14.json +64 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-15.json +70 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-16.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-17.json +61 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-18.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-19.json +65 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-2.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-20.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-21.json +62 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-22.json +50 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-3.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-4.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-5.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-6.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-7.json +64 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-8.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-9.json +60 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/findings.json +4966 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/mass-assignment.candidates.json +232 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/routes/routes-001.json +425 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/routes/routes-002.json +333 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/routes/routes-003.json +400 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/routes/routes-004.json +403 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/routes/routes-005.json +398 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/routes/routes-006.json +63 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/score.json +87 -0
- package/assess/lsa/examples/eval-run-6/gptoss-b/stack-profile.json +225 -0
- package/assess/lsa/examples/eval-run-6/ground-truth.json +851 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/ai-run-stats.json +96 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/auth-model.md +191 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/index.json +60 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/injection-001.json +383 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/injection-002.json +205 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/privilege-001.json +838 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/privilege-002.json +124 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/routes-001.json +778 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/routes-002.json +546 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/routes-003.json +661 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/routes-004.json +659 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/routes-005.json +612 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/routes-006.json +106 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/coverage.json +31 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/bola-routes-001.json +527 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/bola-routes-002.json +568 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/bola-routes-003.json +467 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/bola-routes-004.json +342 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/bola-routes-005.json +693 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/bola-routes-006.json +16 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/inj-injection-001.json +1123 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/inj-injection-002.json +391 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/priv-privilege-001.json +726 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/priv-privilege-002.json +306 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-1.json +137 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-10.json +106 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-11.json +81 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-12.json +135 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-13.json +135 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-14.json +135 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-15.json +110 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-16.json +116 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-17.json +141 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-18.json +135 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-19.json +140 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-2.json +135 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-20.json +82 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-21.json +74 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-22.json +99 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-3.json +140 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-4.json +145 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-5.json +135 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-6.json +135 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-7.json +87 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-8.json +125 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-9.json +135 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings.json +6989 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/mass-assignment.candidates.json +232 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/memory.log +36 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/routes/routes-001.json +425 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/routes/routes-002.json +333 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/routes/routes-003.json +400 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/routes/routes-004.json +403 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/routes/routes-005.json +398 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/routes/routes-006.json +63 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/score.json +106 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/stack-profile.json +225 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-partial/auth-model.md +517 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings/bola-routes-001.json +5 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings/bola-routes-002.json +428 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings/bola-routes-003.json +388 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings/bola-routes-004.json +463 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings/bola-routes-005.json +5 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings/bola-routes-006.json +67 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings/inj-injection-001.json +964 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings.partial.json +1872 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-partial/memory.log +194 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-partial/score.partial.json +108 -0
- package/assess/lsa/examples/eval-run-6/qwen-16k-partial/stack-profile.json +225 -0
- package/assess/lsa/scripts/detect_stack.py +13 -5
- package/assess/lsa/scripts/find_injection.py +35 -2
- package/assess/lsa/scripts/java_routes.py +323 -0
- package/assess/lsa/scripts/laravel_routes.py +102 -0
- package/assess/lsa/scripts/lsa_common.py +72 -2
- package/assess/lsa/scripts/map_routes.py +40 -161
- package/assess/lsa/scripts/merge_findings.py +2 -0
- package/assess/lsa/tests/EVAL-RESULTS.md +126 -0
- package/assess/lsa/tests/test_eval_run_6.py +104 -0
- package/assess/lsa/tests/test_java_legacy_realistic.py +453 -0
- package/assess/lsa/tests/test_laravel_routes.py +95 -0
- package/contracts/schemas/persona-suite.schema.json +38 -2
- package/examples/member-portal/backend-dotnet/Dockerfile +2 -1
- package/examples/member-portal/backend-spring/Dockerfile +2 -0
- package/examples/member-portal/docker-compose.yml +1 -1
- package/examples/member-portal/frontend/Dockerfile +3 -2
- package/examples/member-portal/frontend/package-lock.json +24 -656
- package/examples/member-portal/frontend/package.json +1 -1
- package/operate/ai/client.py +22 -9
- package/operate/ai/runner.py +24 -4
- package/operate/cli/__init__.py +1 -1
- package/operate/cli/commands/fix.py +4 -0
- package/operate/cli/commands/leak_check.py +75 -0
- package/operate/cli/commands/protect.py +32 -3
- package/operate/cli/commands/scan.py +8 -1
- package/operate/cli/commands/test.py +131 -15
- package/operate/cli/main.py +5 -3
- package/operate/cross_user_tester/persona_matrix.py +118 -25
- package/operate/cross_user_tester/runner.py +190 -7
- package/operate/cross_user_tester/session_config.py +180 -0
- package/operate/cross_user_tester/session_http.py +288 -0
- package/operate/devsecops/leak_check.py +314 -0
- package/operate/remediator/runner.py +18 -1
- package/operate/remediator/strategies.py +2 -2
- package/operate/simulate/scenarios.py +2 -2
- package/operate/tests/mock_legacy_session_app.py +160 -0
- package/operate/tests/test_ai_reasoning_effort.py +65 -0
- package/operate/tests/test_ai_route_inventory.py +53 -0
- package/operate/tests/test_cross_user_session.py +565 -0
- package/operate/tests/test_docker_packaging.py +3 -3
- package/operate/tests/test_headless_ai.py +6 -0
- package/operate/tests/test_leak_check.py +250 -0
- package/operate/tests/test_legacy_session_edge.py +192 -0
- package/operate/tests/test_pilot_safeguards.py +245 -0
- package/operate/tests/test_remediator_java_legacy.py +330 -0
- package/package.json +2 -1
- package/remediate/authz/patcher.py +120 -11
- package/remediate/authz/tests/test_bola_patcher.py +4 -1
- package/remediate/edge/coraza/Caddyfile +1 -1
- package/remediate/edge/coraza/Dockerfile +9 -0
- package/remediate/edge/coraza/rules/coraza-crs-custom.conf +12 -0
- package/remediate/edge/coraza/virtual_patcher.py +24 -0
- package/remediate/edge/docker-compose.yml +7 -2
- package/remediate/edge/kong/kong-legacy-session.yaml +51 -0
- package/remediate/edge/mock-backend/Dockerfile +2 -0
- package/remediate/edge/tests/test_edge_security.py +21 -1
- package/remediate/resilience/terraform/backup_worm.tf +39 -1
- package/remediate/resilience/terraform/main.tf +15 -3
- package/remediate/resilience/terraform/variables.tf +11 -0
- package/remediate/resilience/tests/test_resilience.py +16 -0
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
09:52:36 swap=4035.12M compr_pages=64881.
|
|
2
|
+
09:53:36 swap=3979.12M compr_pages=59199. qwen3.5:9b-16k df9cabffde69 7.7 GB 100% GPU 16384 mlx 4 minutes from now
|
|
3
|
+
09:54:36 swap=3979.12M compr_pages=54490. qwen3.5:9b-16k df9cabffde69 7.7 GB 100% GPU 16384 mlx 4 minutes from now
|
|
4
|
+
09:55:37 swap=3947.12M compr_pages=50800. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx 4 minutes from now
|
|
5
|
+
09:56:37 swap=3907.12M compr_pages=44875. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx 3 minutes from now
|
|
6
|
+
09:57:37 swap=3883.12M compr_pages=41637. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx 2 minutes from now
|
|
7
|
+
09:58:37 swap=3883.12M compr_pages=41241. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx About a minute from now
|
|
8
|
+
09:59:37 swap=3883.12M compr_pages=40752. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx 19 seconds from now
|
|
9
|
+
10:00:37 swap=3859.12M compr_pages=40148. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
10
|
+
10:01:37 swap=3859.12M compr_pages=39241. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
11
|
+
10:02:37 swap=3859.12M compr_pages=39063. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
12
|
+
10:03:37 swap=3859.12M compr_pages=38927. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
13
|
+
10:04:37 swap=3859.12M compr_pages=38809. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
14
|
+
10:05:37 swap=3859.12M compr_pages=38871. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
15
|
+
10:06:38 swap=3859.12M compr_pages=38172. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
16
|
+
10:07:38 swap=3859.12M compr_pages=37902. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
17
|
+
10:08:38 swap=3859.12M compr_pages=37864. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
18
|
+
10:09:38 swap=3859.12M compr_pages=37889. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
19
|
+
10:10:38 swap=3859.12M compr_pages=37644. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
20
|
+
10:11:38 swap=3851.12M compr_pages=37970. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
21
|
+
10:12:38 swap=3843.12M compr_pages=65044. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
22
|
+
10:13:38 swap=3843.12M compr_pages=64971. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
23
|
+
10:14:38 swap=3827.12M compr_pages=64578. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
24
|
+
10:15:38 swap=3827.12M compr_pages=64150. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
25
|
+
10:16:38 swap=3819.12M compr_pages=62677. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
26
|
+
10:17:39 swap=3811.12M compr_pages=96962. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
27
|
+
10:18:39 swap=3878.06M compr_pages=112102. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
28
|
+
10:19:39 swap=3878.06M compr_pages=103797. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
29
|
+
10:20:39 swap=3878.06M compr_pages=114963. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
30
|
+
10:21:39 swap=3878.06M compr_pages=110533. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
31
|
+
10:22:39 swap=3878.06M compr_pages=273980. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
32
|
+
10:23:39 swap=3870.06M compr_pages=211233. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
33
|
+
10:24:39 swap=3870.06M compr_pages=108526. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
34
|
+
10:25:39 swap=3870.06M compr_pages=118798. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
35
|
+
10:26:39 swap=4004.38M compr_pages=101431. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
36
|
+
10:27:40 swap=4089.06M compr_pages=84737. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
37
|
+
10:28:40 swap=4204.50M compr_pages=75464. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
38
|
+
10:29:40 swap=4196.50M compr_pages=78904. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
39
|
+
10:30:40 swap=4180.50M compr_pages=77700. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
40
|
+
10:31:40 swap=4148.50M compr_pages=87928. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
41
|
+
10:32:40 swap=4399.19M compr_pages=72290. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
42
|
+
10:33:40 swap=4367.19M compr_pages=80804. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
43
|
+
10:34:40 swap=4359.19M compr_pages=81899. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
44
|
+
10:35:40 swap=4359.19M compr_pages=82155. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
45
|
+
10:36:40 swap=4343.19M compr_pages=79847. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
46
|
+
10:37:41 swap=4327.19M compr_pages=83183. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
47
|
+
10:38:41 swap=4311.19M compr_pages=85176. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
48
|
+
10:39:41 swap=4311.19M compr_pages=79893. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
49
|
+
10:40:41 swap=4303.19M compr_pages=89396. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
50
|
+
10:41:41 swap=4303.19M compr_pages=84304. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
51
|
+
10:42:41 swap=4279.19M compr_pages=92256. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
52
|
+
10:43:41 swap=4255.19M compr_pages=95541. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
53
|
+
10:44:41 swap=4255.19M compr_pages=93634. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
54
|
+
10:45:41 swap=4255.19M compr_pages=91721. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
55
|
+
10:46:41 swap=4566.44M compr_pages=84918. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
56
|
+
10:47:41 swap=4566.44M compr_pages=79129. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
57
|
+
10:48:42 swap=4550.44M compr_pages=82408. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
58
|
+
10:49:42 swap=4542.44M compr_pages=74890. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
59
|
+
10:50:42 swap=4518.44M compr_pages=77523. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
60
|
+
10:51:42 swap=4510.44M compr_pages=78731. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
61
|
+
10:52:42 swap=4494.44M compr_pages=74023. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
62
|
+
10:53:42 swap=4494.44M compr_pages=82684. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
63
|
+
10:54:42 swap=4494.44M compr_pages=78663. qwen3.5:9b-16k df9cabffde69 8.1 GB 100% GPU 16384 mlx Stopping...
|
|
64
|
+
10:55:42 swap=5654.31M compr_pages=263663. qwen3.5:9b-16k df9cabffde69 13 GB 100% GPU 16384 mlx 4 minutes from now
|
|
65
|
+
10:56:42 swap=5707.38M compr_pages=323390. qwen3.5:9b-16k df9cabffde69 13 GB 100% GPU 16384 mlx 3 minutes from now
|
|
66
|
+
10:57:42 swap=5776.06M compr_pages=324464. qwen3.5:9b-16k df9cabffde69 13 GB 100% GPU 16384 mlx 2 minutes from now
|
|
67
|
+
10:58:43 swap=5813.00M compr_pages=320503. qwen3.5:9b-16k df9cabffde69 13 GB 100% GPU 16384 mlx About a minute from now
|
|
68
|
+
10:59:43 swap=5816.88M compr_pages=322897. qwen3.5:9b-16k df9cabffde69 13 GB 100% GPU 16384 mlx 13 seconds from now
|
|
69
|
+
11:00:43 swap=7483.56M compr_pages=212605. qwen3.5:9b-16k df9cabffde69 18 GB 100% GPU 16384 mlx 4 minutes from now
|
|
70
|
+
11:01:43 swap=7139.56M compr_pages=208222. qwen3.5:9b-16k df9cabffde69 18 GB 100% GPU 16384 mlx 3 minutes from now
|
|
71
|
+
11:02:43 swap=7075.56M compr_pages=255099. qwen3.5:9b-16k df9cabffde69 18 GB 100% GPU 16384 mlx 2 minutes from now
|
|
72
|
+
11:03:43 swap=8078.19M compr_pages=187260. qwen3.5:9b-16k df9cabffde69 19 GB 100% GPU 16384 mlx 4 minutes from now
|
|
73
|
+
11:04:43 swap=8038.19M compr_pages=173358. qwen3.5:9b-16k df9cabffde69 19 GB 100% GPU 16384 mlx 3 minutes from now
|
|
74
|
+
11:05:43 swap=8367.44M compr_pages=207183. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx 4 minutes from now
|
|
75
|
+
11:06:43 swap=8487.00M compr_pages=204468. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx 3 minutes from now
|
|
76
|
+
11:07:43 swap=8455.00M compr_pages=232246. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx 2 minutes from now
|
|
77
|
+
11:08:44 swap=8447.00M compr_pages=239444. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx About a minute from now
|
|
78
|
+
11:09:44 swap=8439.00M compr_pages=242980. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx 47 seconds from now
|
|
79
|
+
11:10:44 swap=8415.00M compr_pages=246253. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
80
|
+
11:11:44 swap=8382.94M compr_pages=245169. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
81
|
+
11:12:44 swap=8382.94M compr_pages=244120. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
82
|
+
11:13:44 swap=8382.94M compr_pages=249119. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
83
|
+
11:14:44 swap=8382.94M compr_pages=252691. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
84
|
+
11:15:44 swap=8350.94M compr_pages=249009. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
85
|
+
11:16:44 swap=8238.88M compr_pages=266646. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
86
|
+
11:17:44 swap=8238.88M compr_pages=256759. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
87
|
+
11:18:45 swap=8238.88M compr_pages=265588. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
88
|
+
11:19:45 swap=8230.88M compr_pages=255995. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
89
|
+
11:20:45 swap=8230.88M compr_pages=258677. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
90
|
+
11:21:45 swap=8182.88M compr_pages=261018. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
91
|
+
11:22:45 swap=8182.88M compr_pages=266870. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
92
|
+
11:23:45 swap=8174.88M compr_pages=267543. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
93
|
+
11:24:45 swap=8174.88M compr_pages=263850. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
94
|
+
11:25:45 swap=8174.88M compr_pages=266616. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
95
|
+
11:26:45 swap=8386.25M compr_pages=255322. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
96
|
+
11:27:45 swap=8378.25M compr_pages=252580. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
97
|
+
11:28:46 swap=8354.19M compr_pages=263380. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
98
|
+
11:29:46 swap=8346.19M compr_pages=263499. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
99
|
+
11:30:46 swap=8346.19M compr_pages=263068. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
100
|
+
11:31:46 swap=8346.19M compr_pages=263143. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
101
|
+
11:32:46 swap=8338.19M compr_pages=262997. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
102
|
+
11:33:46 swap=8322.19M compr_pages=261590. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
103
|
+
11:34:46 swap=8470.81M compr_pages=256655. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
104
|
+
11:35:46 swap=8470.81M compr_pages=255705. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
105
|
+
11:36:46 swap=8470.81M compr_pages=262981. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
106
|
+
11:37:46 swap=8454.81M compr_pages=259862. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
107
|
+
11:38:47 swap=8454.81M compr_pages=266087. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
108
|
+
11:39:47 swap=8454.81M compr_pages=268642. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
109
|
+
11:40:47 swap=8430.81M compr_pages=268974. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
110
|
+
11:41:47 swap=8398.81M compr_pages=261050. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
111
|
+
11:42:47 swap=8390.81M compr_pages=260495. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
112
|
+
11:43:47 swap=8390.81M compr_pages=261952. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
113
|
+
11:44:47 swap=8374.81M compr_pages=269987. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
114
|
+
11:45:47 swap=8444.56M compr_pages=257446. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
115
|
+
11:46:47 swap=8444.56M compr_pages=252521. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
116
|
+
11:47:47 swap=8444.56M compr_pages=242793. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
117
|
+
11:48:48 swap=8444.56M compr_pages=240203. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
118
|
+
11:49:48 swap=8444.56M compr_pages=240607. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
119
|
+
11:50:48 swap=8436.56M compr_pages=233075. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
120
|
+
11:51:48 swap=8428.56M compr_pages=241779. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
121
|
+
11:52:48 swap=8420.56M compr_pages=238934. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
122
|
+
11:53:48 swap=8420.56M compr_pages=247984. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
123
|
+
11:54:48 swap=8420.56M compr_pages=250233. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
124
|
+
11:55:48 swap=8583.25M compr_pages=240525. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
125
|
+
11:56:48 swap=8559.25M compr_pages=231459. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
126
|
+
11:57:48 swap=8551.25M compr_pages=226095. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
127
|
+
11:58:48 swap=8551.25M compr_pages=233797. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
128
|
+
11:59:49 swap=8551.25M compr_pages=232769. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
129
|
+
12:00:49 swap=8551.25M compr_pages=239418. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
130
|
+
12:01:49 swap=8551.25M compr_pages=241936. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
131
|
+
12:02:49 swap=8551.25M compr_pages=245847. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
132
|
+
12:03:49 swap=8543.25M compr_pages=271885. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
133
|
+
12:04:49 swap=8543.25M compr_pages=248811. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
134
|
+
12:05:49 swap=8543.25M compr_pages=255818. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx 4 minutes from now
|
|
135
|
+
12:06:49 swap=8837.06M compr_pages=232600. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx 4 minutes from now
|
|
136
|
+
12:07:49 swap=8854.31M compr_pages=228016. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx 3 minutes from now
|
|
137
|
+
12:08:49 swap=12038.00M compr_pages=316416. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx 2 minutes from now
|
|
138
|
+
12:09:50 swap=12288.12M compr_pages=291532. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx About a minute from now
|
|
139
|
+
12:10:50 swap=12250.38M compr_pages=312140. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx 27 seconds from now
|
|
140
|
+
12:11:50 swap=12313.62M compr_pages=316165. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
141
|
+
12:12:50 swap=12352.12M compr_pages=315953. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
142
|
+
12:13:50 swap=12389.81M compr_pages=315281. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
143
|
+
12:14:50 swap=12404.06M compr_pages=314409. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
144
|
+
12:15:50 swap=12438.69M compr_pages=311168. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
145
|
+
12:16:50 swap=12316.19M compr_pages=308629. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
146
|
+
12:17:50 swap=11164.38M compr_pages=79429. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx 4 minutes from now
|
|
147
|
+
12:18:50 swap=11100.38M compr_pages=77184. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx 3 minutes from now
|
|
148
|
+
12:19:51 swap=11092.38M compr_pages=68750. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx 2 minutes from now
|
|
149
|
+
12:20:51 swap=11084.38M compr_pages=68730. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx 59 seconds from now
|
|
150
|
+
12:21:51 swap=11076.38M compr_pages=66627. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
151
|
+
12:22:51 swap=11060.38M compr_pages=66576. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
152
|
+
12:23:51 swap=11060.38M compr_pages=66588. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
153
|
+
12:24:51 swap=11060.38M compr_pages=66461. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
154
|
+
12:25:51 swap=11060.38M compr_pages=66325. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
155
|
+
12:26:51 swap=10924.38M compr_pages=117118. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
156
|
+
12:27:51 swap=10876.38M compr_pages=218682. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
157
|
+
12:28:51 swap=10876.38M compr_pages=193343. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
158
|
+
12:29:52 swap=10876.38M compr_pages=187670. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
159
|
+
12:30:52 swap=10876.38M compr_pages=183000. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
160
|
+
12:31:52 swap=10868.38M compr_pages=179572. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
161
|
+
12:32:52 swap=10860.38M compr_pages=179008. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
162
|
+
12:33:52 swap=10860.38M compr_pages=178277. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
163
|
+
12:34:52 swap=10860.38M compr_pages=177567. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
164
|
+
12:35:52 swap=10860.38M compr_pages=177159. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
165
|
+
12:36:52 swap=10860.38M compr_pages=182111. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
166
|
+
12:37:52 swap=10852.38M compr_pages=180857. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
167
|
+
12:38:52 swap=10852.38M compr_pages=178757. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
168
|
+
12:39:52 swap=10852.38M compr_pages=181546. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
169
|
+
12:40:53 swap=10844.38M compr_pages=180632. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
170
|
+
12:41:53 swap=10836.38M compr_pages=176393. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
171
|
+
12:42:53 swap=10836.38M compr_pages=178288. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
172
|
+
12:43:53 swap=10836.38M compr_pages=177971. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
173
|
+
12:44:53 swap=10836.38M compr_pages=177447. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
174
|
+
12:45:53 swap=10836.38M compr_pages=176680. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
175
|
+
12:46:53 swap=10836.38M compr_pages=175175. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
176
|
+
12:47:53 swap=10804.38M compr_pages=184445. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
177
|
+
12:48:53 swap=10804.38M compr_pages=185046. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
178
|
+
12:49:53 swap=10804.38M compr_pages=184982. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
179
|
+
12:50:54 swap=10788.38M compr_pages=186393. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
180
|
+
12:51:54 swap=10780.38M compr_pages=189058. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
181
|
+
12:52:54 swap=10780.38M compr_pages=191830. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
182
|
+
12:53:54 swap=10780.38M compr_pages=190764. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
183
|
+
12:54:54 swap=10780.38M compr_pages=190909. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
184
|
+
12:55:54 swap=10780.38M compr_pages=193410. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
185
|
+
12:56:54 swap=10772.38M compr_pages=189663. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
186
|
+
12:57:54 swap=10772.38M compr_pages=189032. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
187
|
+
12:58:54 swap=10772.38M compr_pages=194076. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
188
|
+
12:59:54 swap=10764.38M compr_pages=195139. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
189
|
+
13:00:54 swap=10764.38M compr_pages=184071. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
190
|
+
13:01:55 swap=10764.38M compr_pages=183065. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
191
|
+
13:02:55 swap=10756.38M compr_pages=178916. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
192
|
+
13:03:55 swap=10756.38M compr_pages=176942. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
193
|
+
13:04:55 swap=10756.38M compr_pages=179105. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
194
|
+
13:05:55 swap=10756.38M compr_pages=172865. qwen3.5:9b-16k df9cabffde69 20 GB 100% GPU 16384 mlx Stopping...
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
{
|
|
2
|
+
"per_category": {
|
|
3
|
+
"bola": {
|
|
4
|
+
"truth_vulnerable": 29,
|
|
5
|
+
"found": 12,
|
|
6
|
+
"recall": 0.414,
|
|
7
|
+
"false_positive_on_safe_code": [],
|
|
8
|
+
"missed": [
|
|
9
|
+
"java-legacy/WebContent/order/detail.jsp:5",
|
|
10
|
+
"java-legacy/src/com/acme/struts/EditUserAction.java:13",
|
|
11
|
+
"java-legacy/src/com/acme/web/InvoiceController.java:29",
|
|
12
|
+
"perl-cgi/cgi-bin/order.cgi:19",
|
|
13
|
+
"dotnet-legacy/Web/Orders/EditOrder.aspx.vb:8",
|
|
14
|
+
"dotnet-legacy/Web/Orders/OrderDetail.aspx.cs:13",
|
|
15
|
+
"dotnet-legacy/Web/Controllers/CustomerController.cs:29",
|
|
16
|
+
"dotnet-legacy/Web/Controllers/InvoiceController.cs:13",
|
|
17
|
+
"dotnet-legacy/Web/Controllers/InvoiceController.cs:28",
|
|
18
|
+
"dotnet-legacy/Web/Handlers/GetFile.ashx:10",
|
|
19
|
+
"python-flask/profile.py:18",
|
|
20
|
+
"python-flask/profile.py:26",
|
|
21
|
+
"classic-asp/shop/member.asp:7",
|
|
22
|
+
"classic-asp/shop/member.asp:10",
|
|
23
|
+
"classic-asp/shop/order.asp:6",
|
|
24
|
+
"coldfusion/app/OrderService.cfc:5",
|
|
25
|
+
"coldfusion/app/order.cfm:3"
|
|
26
|
+
]
|
|
27
|
+
},
|
|
28
|
+
"injection": {
|
|
29
|
+
"truth_vulnerable": 34,
|
|
30
|
+
"found": 22,
|
|
31
|
+
"recall": 0.647,
|
|
32
|
+
"false_positive_on_safe_code": [],
|
|
33
|
+
"missed": [
|
|
34
|
+
"php-plain/order_detail.php:6",
|
|
35
|
+
"php-plain/search.php:8",
|
|
36
|
+
"php-plain/search.php:9",
|
|
37
|
+
"php-plain/search.php:14",
|
|
38
|
+
"java-legacy/src/com/acme/web/OrderServlet.java:15",
|
|
39
|
+
"java-legacy/src/com/acme/web/OrderServlet.java:17",
|
|
40
|
+
"java-legacy/src/com/acme/mapper/OrderMapper.xml:9",
|
|
41
|
+
"dotnet-legacy/Web/Controllers/InvoiceController.cs:28",
|
|
42
|
+
"python-flask/app.py:29",
|
|
43
|
+
"php-codeigniter/application/controllers/Invoice.php:10",
|
|
44
|
+
"sql-procs/sp_search_orders.sql:5",
|
|
45
|
+
"sql-procs/sp_search_orders.sql:6"
|
|
46
|
+
]
|
|
47
|
+
},
|
|
48
|
+
"bfla": {
|
|
49
|
+
"truth_vulnerable": 10,
|
|
50
|
+
"found": 0,
|
|
51
|
+
"recall": 0.0,
|
|
52
|
+
"false_positive_on_safe_code": [],
|
|
53
|
+
"missed": [
|
|
54
|
+
"php-plain/admin.php:8",
|
|
55
|
+
"php-plain/admin.php:12",
|
|
56
|
+
"php-plain/manage_users.php:6",
|
|
57
|
+
"php-plain/admin/delete_user.php:6",
|
|
58
|
+
"php-plain/admin/promote.php:5",
|
|
59
|
+
"java-legacy/src/com/acme/web/AdminUserController.java:15",
|
|
60
|
+
"dotnet-legacy/Web/Controllers/AdminController.cs:15",
|
|
61
|
+
"dotnet-legacy/Web/Controllers/AdminController.cs:32",
|
|
62
|
+
"node-express/routes/admin.js:9",
|
|
63
|
+
"node-express/routes/admin.js:17"
|
|
64
|
+
]
|
|
65
|
+
},
|
|
66
|
+
"mass_assignment": {
|
|
67
|
+
"truth_vulnerable": 15,
|
|
68
|
+
"found": 0,
|
|
69
|
+
"recall": 0.0,
|
|
70
|
+
"false_positive_on_safe_code": [],
|
|
71
|
+
"missed": [
|
|
72
|
+
"php-plain/profile.php:6",
|
|
73
|
+
"php-plain/profile.php:10",
|
|
74
|
+
"php-plain/register.php:4",
|
|
75
|
+
"java-legacy/src/com/acme/web/AccountController.java:14",
|
|
76
|
+
"java-legacy/src/com/acme/web/AccountController.java:27",
|
|
77
|
+
"java-legacy/src/com/acme/web/ProfileServlet.java:12",
|
|
78
|
+
"php-laravel/app/Http/Controllers/AccountController.php:13",
|
|
79
|
+
"php-laravel/app/Http/Controllers/AccountController.php:23",
|
|
80
|
+
"php-laravel/app/Http/Controllers/AccountController.php:36",
|
|
81
|
+
"dotnet-legacy/Web/Controllers/CustomerController.cs:12",
|
|
82
|
+
"dotnet-legacy/Web/Controllers/CustomerController.cs:30",
|
|
83
|
+
"python-flask/profile.py:10",
|
|
84
|
+
"python-flask/profile.py:27",
|
|
85
|
+
"node-express/routes/profile.js:8",
|
|
86
|
+
"node-express/routes/profile.js:16"
|
|
87
|
+
]
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
"active_findings": 45,
|
|
91
|
+
"matched_findings": 33,
|
|
92
|
+
"precision": 0.733,
|
|
93
|
+
"unmatched_findings": [
|
|
94
|
+
"BOLA-R-0020-1",
|
|
95
|
+
"BOLA-R-0022-1",
|
|
96
|
+
"BOLA-R-0023-1",
|
|
97
|
+
"BOLA-R-0030-1",
|
|
98
|
+
"BOLA-R-0032-1",
|
|
99
|
+
"BOLA-R-0035-1",
|
|
100
|
+
"BOLA-R-0066-1",
|
|
101
|
+
"BOLA-R-0067-1",
|
|
102
|
+
"BOLA-R-0059-1",
|
|
103
|
+
"BOLA-R-0055-verdict",
|
|
104
|
+
"BOLA-R-0056-verdict",
|
|
105
|
+
"BOLA-R-0065-1"
|
|
106
|
+
],
|
|
107
|
+
"needs_review_not_scored": []
|
|
108
|
+
}
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
{
|
|
2
|
+
"repo": "repo",
|
|
3
|
+
"generated_by": "lsa detect_stack.py 0.3.1",
|
|
4
|
+
"stacks": [
|
|
5
|
+
{
|
|
6
|
+
"id": "php",
|
|
7
|
+
"language": "php",
|
|
8
|
+
"version_hint": null,
|
|
9
|
+
"evidence": [
|
|
10
|
+
"20 file(s) with extension .php, .php3, .php4, .php5, .phtml"
|
|
11
|
+
],
|
|
12
|
+
"confirmed": false
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"id": "php-codeigniter",
|
|
16
|
+
"language": "php",
|
|
17
|
+
"version_hint": null,
|
|
18
|
+
"evidence": [
|
|
19
|
+
"marker file php-codeigniter/system/core/CodeIgniter.php"
|
|
20
|
+
],
|
|
21
|
+
"confirmed": false
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"id": "php-laravel",
|
|
25
|
+
"language": "php",
|
|
26
|
+
"version_hint": null,
|
|
27
|
+
"evidence": [
|
|
28
|
+
"pattern /Route::(get|post|put|delete|any|match|re/ in php-laravel/routes/web.php"
|
|
29
|
+
],
|
|
30
|
+
"confirmed": false
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"id": "java-servlet",
|
|
34
|
+
"language": "java",
|
|
35
|
+
"version_hint": null,
|
|
36
|
+
"evidence": [
|
|
37
|
+
"marker file java-legacy/WebContent/WEB-INF/web.xml",
|
|
38
|
+
"pattern /extends\\s+HttpServlet|@WebServlet/ in java-legacy/src/com/acme/web/OrderServlet.java",
|
|
39
|
+
"pattern /extends\\s+HttpServlet|@WebServlet/ in java-legacy/src/com/acme/web/ProfileServlet.java"
|
|
40
|
+
],
|
|
41
|
+
"confirmed": false
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"id": "java-jsp",
|
|
45
|
+
"language": "java",
|
|
46
|
+
"version_hint": null,
|
|
47
|
+
"evidence": [
|
|
48
|
+
"1 file(s) with extension .jsp, .jspf"
|
|
49
|
+
],
|
|
50
|
+
"confirmed": false
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"id": "java-struts1",
|
|
54
|
+
"language": "java",
|
|
55
|
+
"version_hint": null,
|
|
56
|
+
"evidence": [
|
|
57
|
+
"marker file java-legacy/WebContent/WEB-INF/struts-config.xml",
|
|
58
|
+
"pattern /extends\\s+(Dispatch|LookupDispatch|Mappi/ in java-legacy/src/com/acme/struts/EditUserAction.java"
|
|
59
|
+
],
|
|
60
|
+
"confirmed": false
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"id": "java-spring-mvc",
|
|
64
|
+
"language": "java",
|
|
65
|
+
"version_hint": null,
|
|
66
|
+
"evidence": [
|
|
67
|
+
"pattern /@(Controller|RestController)\\b|@RequestM/ in java-legacy/src/com/acme/web/AccountController.java",
|
|
68
|
+
"pattern /@(Controller|RestController)\\b|@RequestM/ in java-legacy/src/com/acme/web/AdminUserController.java",
|
|
69
|
+
"pattern /@(Controller|RestController)\\b|@RequestM/ in java-legacy/src/com/acme/web/InvoiceController.java"
|
|
70
|
+
],
|
|
71
|
+
"confirmed": false
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"id": "java-mybatis",
|
|
75
|
+
"language": "java",
|
|
76
|
+
"version_hint": null,
|
|
77
|
+
"evidence": [
|
|
78
|
+
"pattern /<mapper\\s+namespace=|org\\.apache\\.ibatis/ in java-legacy/src/com/acme/mapper/OrderMapper.xml"
|
|
79
|
+
],
|
|
80
|
+
"confirmed": false
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"id": "java-hibernate",
|
|
84
|
+
"language": "java",
|
|
85
|
+
"version_hint": null,
|
|
86
|
+
"evidence": [
|
|
87
|
+
"pattern /org\\.hibernate\\.(?!validator\\b)|\\.hbm\\.x/ in java-legacy/src/com/acme/web/InvoiceController.java"
|
|
88
|
+
],
|
|
89
|
+
"confirmed": false
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"id": "dotnet-webforms",
|
|
93
|
+
"language": "csharp/vbnet",
|
|
94
|
+
"version_hint": null,
|
|
95
|
+
"evidence": [
|
|
96
|
+
"2 file(s) with extension .ascx, .aspx"
|
|
97
|
+
],
|
|
98
|
+
"confirmed": false
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"id": "dotnet-handlers",
|
|
102
|
+
"language": "csharp/vbnet",
|
|
103
|
+
"version_hint": null,
|
|
104
|
+
"evidence": [
|
|
105
|
+
"1 file(s) with extension .ashx"
|
|
106
|
+
],
|
|
107
|
+
"confirmed": false
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
"id": "dotnet-mvc",
|
|
111
|
+
"language": "csharp/vbnet",
|
|
112
|
+
"version_hint": null,
|
|
113
|
+
"evidence": [
|
|
114
|
+
"pattern /:\\s*(ControllerBase|Controller)\\b|Inheri/ in dotnet-legacy/Web/Controllers/AdminController.cs",
|
|
115
|
+
"pattern /:\\s*(ControllerBase|Controller)\\b|Inheri/ in dotnet-legacy/Web/Controllers/CustomerController.cs",
|
|
116
|
+
"pattern /:\\s*(ControllerBase|Controller)\\b|Inheri/ in dotnet-legacy/Web/Controllers/InvoiceController.cs"
|
|
117
|
+
],
|
|
118
|
+
"confirmed": false
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
"id": "classic-asp",
|
|
122
|
+
"language": "vbscript",
|
|
123
|
+
"version_hint": null,
|
|
124
|
+
"evidence": [
|
|
125
|
+
"4 file(s) with extension .asa, .asp"
|
|
126
|
+
],
|
|
127
|
+
"confirmed": false
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
"id": "perl-cgi",
|
|
131
|
+
"language": "perl",
|
|
132
|
+
"version_hint": null,
|
|
133
|
+
"evidence": [
|
|
134
|
+
"1 file(s) with extension .cgi",
|
|
135
|
+
"pattern /use\\s+CGI\\b|CGI->new|use\\s+DBI\\b/ in perl-cgi/cgi-bin/order.cgi"
|
|
136
|
+
],
|
|
137
|
+
"confirmed": false
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
"id": "coldfusion",
|
|
141
|
+
"language": "cfml",
|
|
142
|
+
"version_hint": null,
|
|
143
|
+
"evidence": [
|
|
144
|
+
"2 file(s) with extension .cfc, .cfm, .cfml"
|
|
145
|
+
],
|
|
146
|
+
"confirmed": false
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"id": "node-express",
|
|
150
|
+
"language": "javascript",
|
|
151
|
+
"version_hint": null,
|
|
152
|
+
"evidence": [
|
|
153
|
+
"pattern /require\\(\\s*['\\\"]express['\\\"]\\s*\\)|from\\/ in node-express/routes/admin.js",
|
|
154
|
+
"pattern /require\\(\\s*['\\\"]express['\\\"]\\s*\\)|from\\/ in node-express/routes/orders.js",
|
|
155
|
+
"pattern /require\\(\\s*['\\\"]express['\\\"]\\s*\\)|from\\/ in node-express/routes/profile.js"
|
|
156
|
+
],
|
|
157
|
+
"confirmed": false
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
"id": "python-flask",
|
|
161
|
+
"language": "python",
|
|
162
|
+
"version_hint": null,
|
|
163
|
+
"evidence": [
|
|
164
|
+
"pattern /from\\s+flask\\s+import|import\\s+flask/ in python-flask/app.py",
|
|
165
|
+
"pattern /from\\s+flask\\s+import|import\\s+flask/ in python-flask/profile.py"
|
|
166
|
+
],
|
|
167
|
+
"confirmed": false
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"id": "sql-procedures",
|
|
171
|
+
"language": "sql",
|
|
172
|
+
"version_hint": null,
|
|
173
|
+
"evidence": [
|
|
174
|
+
"pattern /(?i)create\\s+(or\\s+replace\\s+)?proc(edur/ in sql-procs/sp_search_orders.sql"
|
|
175
|
+
],
|
|
176
|
+
"confirmed": false
|
|
177
|
+
}
|
|
178
|
+
],
|
|
179
|
+
"data_access": [
|
|
180
|
+
"JDBC",
|
|
181
|
+
"mysql_* (no binding)",
|
|
182
|
+
"ColdFusion cfquery",
|
|
183
|
+
"Entity Framework / LINQ to SQL",
|
|
184
|
+
"ADO.NET",
|
|
185
|
+
"Hibernate/JPA",
|
|
186
|
+
"Classic ADO",
|
|
187
|
+
"MyBatis/iBATIS",
|
|
188
|
+
"Perl DBI",
|
|
189
|
+
"MongoDB",
|
|
190
|
+
"PDO"
|
|
191
|
+
],
|
|
192
|
+
"databases": [
|
|
193
|
+
"MySQL",
|
|
194
|
+
"SQL Server",
|
|
195
|
+
"MongoDB"
|
|
196
|
+
],
|
|
197
|
+
"file_counts": {
|
|
198
|
+
".php": 20,
|
|
199
|
+
".java": 7,
|
|
200
|
+
".cs": 5,
|
|
201
|
+
".asp": 4,
|
|
202
|
+
".xml": 3,
|
|
203
|
+
".js": 3,
|
|
204
|
+
".aspx": 2,
|
|
205
|
+
".py": 2,
|
|
206
|
+
".cfc": 1,
|
|
207
|
+
".cfm": 1,
|
|
208
|
+
".config": 1,
|
|
209
|
+
".ashx": 1,
|
|
210
|
+
".vb": 1,
|
|
211
|
+
".jsp": 1,
|
|
212
|
+
".cgi": 1,
|
|
213
|
+
".sql": 1
|
|
214
|
+
},
|
|
215
|
+
"knowledge_files": [
|
|
216
|
+
"knowledge/stacks/php.md",
|
|
217
|
+
"knowledge/stacks/java.md",
|
|
218
|
+
"knowledge/stacks/dotnet.md",
|
|
219
|
+
"knowledge/stacks/classic-asp.md",
|
|
220
|
+
"knowledge/stacks/perl-cgi.md",
|
|
221
|
+
"knowledge/stacks/coldfusion.md",
|
|
222
|
+
"knowledge/stacks/node-python-ruby.md"
|
|
223
|
+
],
|
|
224
|
+
"notes": "Heuristic result. The stack-detector agent must confirm each item."
|
|
225
|
+
}
|
|
@@ -12,7 +12,10 @@ import sys
|
|
|
12
12
|
from pathlib import Path
|
|
13
13
|
|
|
14
14
|
sys.path.insert(0, str(Path(__file__).resolve().parent))
|
|
15
|
-
from lsa_common import KIT_VERSION, iter_source_files, load_config, read_text, write_json # noqa: E402
|
|
15
|
+
from lsa_common import KIT_VERSION, blank_java_comments, iter_source_files, load_config, read_text, write_json # noqa: E402
|
|
16
|
+
|
|
17
|
+
# org.hibernate.validator is the Bean Validation implementation: it says nothing about the persistence layer
|
|
18
|
+
HIBERNATE_ORM = r"org\.hibernate\.(?!validator\b)"
|
|
16
19
|
|
|
17
20
|
# (stack id, language, knowledge file, list of (kind, pattern))
|
|
18
21
|
# kind = "name" -> regex on relative path
|
|
@@ -35,7 +38,7 @@ RULES = [
|
|
|
35
38
|
("java-jaxrs", "java", "java.md", [("text", r"javax\.ws\.rs\.|jakarta\.ws\.rs\.")]),
|
|
36
39
|
("java-mybatis", "java", "java.md", [("text", r"<mapper\s+namespace=|org\.apache\.ibatis")]),
|
|
37
40
|
("java-ibatis", "java", "java.md", [("text", r"<sqlMap\b|com\.ibatis\.")]),
|
|
38
|
-
("java-hibernate", "java", "java.md", [("text", r"
|
|
41
|
+
("java-hibernate", "java", "java.md", [("text", HIBERNATE_ORM + r"|\.hbm\.xml|createQuery\s*\(")]),
|
|
39
42
|
("dotnet-webforms", "csharp/vbnet", "dotnet.md", [("ext", {".aspx", ".ascx"})]),
|
|
40
43
|
("dotnet-handlers", "csharp/vbnet", "dotnet.md", [("ext", {".ashx"})]),
|
|
41
44
|
("dotnet-asmx-wcf", "csharp/vbnet", "dotnet.md", [("ext", {".asmx", ".svc"})]),
|
|
@@ -73,8 +76,8 @@ DATA_ACCESS = [
|
|
|
73
76
|
("JDBC", r"java\.sql\.|DriverManager\.getConnection"),
|
|
74
77
|
("Spring JdbcTemplate", r"JdbcTemplate"),
|
|
75
78
|
("MyBatis/iBATIS", r"<mapper\s+namespace=|<sqlMap\b"),
|
|
76
|
-
("Hibernate/JPA", r"
|
|
77
|
-
("ADO.NET", r"SqlCommand|OleDbCommand|OdbcCommand|OracleCommand"),
|
|
79
|
+
("Hibernate/JPA", HIBERNATE_ORM + r"|javax\.persistence\.|jakarta\.persistence\."),
|
|
80
|
+
("ADO.NET", r"\b(?:SqlCommand|OleDbCommand|OdbcCommand|OracleCommand)\b"),
|
|
78
81
|
("Entity Framework / LINQ to SQL", r"DbContext|DataContext|System\.Data\.Entity"),
|
|
79
82
|
("Classic ADO", r"ADODB\.(Connection|Recordset|Command)"),
|
|
80
83
|
("Perl DBI", r"DBI->connect"),
|
|
@@ -98,6 +101,7 @@ DB_HINTS = [
|
|
|
98
101
|
("MongoDB", r"(?i)mongo"), ("SQLite", r"(?i)sqlite"),
|
|
99
102
|
]
|
|
100
103
|
|
|
104
|
+
DOTNET_TEXT_EXTS = {".cs", ".vb", ".aspx", ".asax", ".config"}
|
|
101
105
|
TEXT_SAMPLE_EXTS = {".sql", ".php", ".inc", ".java", ".jsp", ".xml", ".cs", ".vb", ".aspx", ".asax", ".config", ".asp",
|
|
102
106
|
".pl", ".pm", ".cgi", ".cfm", ".cfc", ".js", ".mjs", ".ts", ".tsx", ".jsx", ".py", ".rb", ".kt", ".kts",
|
|
103
107
|
".rs", ".go", ".toml", ".mod"}
|
|
@@ -129,9 +133,13 @@ def detect(target: Path, config: dict) -> dict:
|
|
|
129
133
|
for path, rel in files:
|
|
130
134
|
if path.suffix.lower() not in TEXT_SAMPLE_EXTS:
|
|
131
135
|
continue
|
|
136
|
+
ext = path.suffix.lower()
|
|
132
137
|
text = read_text(path, enc)
|
|
138
|
+
rule_text = blank_java_comments(text) if ext == ".java" else text
|
|
133
139
|
for sid, rx in text_rules:
|
|
134
|
-
if
|
|
140
|
+
if sid.startswith("dotnet-") and ext not in DOTNET_TEXT_EXTS:
|
|
141
|
+
continue
|
|
142
|
+
if seen_text[sid] < 3 and rx.search(rule_text):
|
|
135
143
|
seen_text[sid] += 1
|
|
136
144
|
evidence[sid].append(f"pattern /{rx.pattern[:40]}/ in {rel}")
|
|
137
145
|
for n, rx in da_rules:
|