Public scan — anyone with this URL can view this analysis. Sign up to track your own repos privately, run scheduled re-scans, and get AI fix prompts via your dashboard.

toilact/TradePilot

https://github.com/toilact/TradePilot · scanned 2026-06-16 00:38 UTC (2 months, 1 week ago)

42 raw signals (0 security + 42 graph)

UNIFIED Repobility · multi-layer engine · AI coders

Complete repo analysis

Last scanned 2 months, 1 week ago · v1 · 39 actionable findings from 1 signal source. 3 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.

JSON
Severity distribution — click a segment to filter
Active filters: excluding tests × Reset all
Corpus Intelligence Cross-corpus context (cohort percentile, top patterns, fix plan) is shown only on repositories you own. Sign up and connect your repo to view it.
Scan summary Repository scanned at 87.7/100 with 100.0% coverage. It contains 714 nodes across 13 cross-layer flows, written primarily in mixed languages. Engine surfaced 42 findings — concentrated in quality (25), software (8), api (4). Risk profile is low: 0 critical, 0 high, 5 medium. Recommended next step: open the quality layer findings first — that's where the highest-impact wins live.

Showing 30 of 39 actionable findings. 42 raw detector signals were grouped into reader-sized issues. Click TP / FP to vote on a finding's accuracy — votes adjust the confidence weighting and improve detection across the platform.

medium System graph quality Integrity conf 1.00 `fetch()` without try/.catch or AbortSignal — frontend/lib/api.ts:26
Bare `fetch(...)` will throw an unhandled rejection on network failure. Wrap in try/catch, attach a `.catch(...)`, or pass an AbortSignal with a timeout.
runtime safetyRobustness
medium System graph quality Placeholder conf 1.00 Critical user flow still appears backed by mock or placeholder data
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.
Mock dataCritical flowGenerated repo pattern
medium System graph quality Integrity conf 1.00 Network/subprocess call without timeout or try/except — ml/notebooks/02_sentiment_finetune.py:38
`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.
runtime safetyRobustness
medium System graph quality Integrity conf 1.00 Network/subprocess call without timeout or try/except — ml/notebooks/03_tft_training.py:43
`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.
runtime safetyRobustness
medium System graph quality Integrity conf 1.00 Network/subprocess call without timeout or try/except — ml/notebooks/03_tft_training_kaggle.py:26
`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.
runtime safetyRobustness
low System graph quality Integrity conf 1.00 5 env vars used in code but missing from .env.example
Drift between code and config docs. The first few: `MODEL_VERSION`, `NEXT_PUBLIC_CI_BUILD`, `NEXT_RUNTIME`, `NODE_ENV`, `SENTRY_AUTH_TOKEN`. Add them (with a placeholder/comment) to .env.example so onboarding doesn't break.
config drift
low System graph hardware Coverage conf 1.00 Containers defined but no K8s/orchestration manifest found
Repo has Dockerfiles/compose but no Kubernetes/Nomad manifests. If the target deployment is K8s, the manifests may live in a separate ops repo.
Deployment
low System graph quality Debug conf 1.00 Debug logging residue appears in source files
Found 152 console/debugger/print-style debug statements in non-test source. This is a common fast-generation residue before production cleanup.
CleanupRepo hardeningGenerated repo pattern
low System graph hardware Supply chain conf 1.00 Docker base image is tag-pinned but not digest-pinned: python:3.12-slim
Container tags can be retagged upstream. Pin production base images to a reviewed digest (`image@sha256:...`) when reproducibility and supply-chain integrity matter.
backend/Dockerfile:4 containersPinned dependencies
low System graph quality Tests conf 1.00 Low test-to-source ratio
19 tests / 87 src (ratio 0.22).
low System graph quality Integrity conf 1.00 3 occurrences Near-duplicate function bodies in 2 places
Functions with the same first-5-line body hash: ml/notebooks/04_lgbm_training.py:apply_temperature, ml/notebooks/06_sentiment_diagnostic.py:apply_temperature This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code-hygiene). Consolidate or document w…
3 occurrences
repo-level (3 hits)
duplicatesduplication
low System graph quality Integrity conf 1.00 2 occurrences Near-duplicate function bodies in 3 places
Functions with the same first-5-line body hash: backend/services/sentiment_label.py:label_batch, backend/services/sentiment_label.py:label_batch, backend/services/sentiment_label.py:label_batch This is *the* AI-coder failure mode (4× more duplication in vibe-coded repos — see https://jw.hn/ai-code…
2 occurrences
repo-level (2 hits)
duplicatesduplication
low System graph quality License conf 1.00 No license file detected
No LICENSE/COPYING/NOTICE file was found. Generated repositories often omit licensing, which blocks reuse and automated intake.
Repo hardeningGenerated repo pattern
low System graph quality Integrity conf 1.00 Old/deprecated-named symbol `tft_v1` in backend/scripts/seed_predictions.py:5
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
old markerDead code
low System graph quality Integrity conf 1.00 Old/deprecated-named symbol `tft_v1` in ml/notebooks/03_tft_training_kaggle.py:45
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
old markerDead code
low System graph quality Integrity conf 1.00 Old/deprecated-named symbol `tft_v2` in ml/notebooks/03_tft_training.py:59
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
old markerDead code
low System graph quality Integrity conf 1.00 Old/deprecated-named symbol `tft_v2` in ml/notebooks/04_lgbm_training.py:60
Names with suffixes like `_old`, `_v1`, `_deprecated` usually indicate replaced-but-not-removed code (typical AI-coder leftover). Confirm and delete, or rename if it's the active version.
old markerDead code
low System graph software Dead code conf 1.00 Possibly dead Python function: compute_loss
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
ml/notebooks/02_sentiment_finetune.py:203
low System graph software Dead code conf 1.00 Possibly dead Python function: compute_metrics
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
ml/notebooks/02_sentiment_finetune.py:211
low System graph software Dead code conf 1.00 Possibly dead Python function: loss
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
ml/notebooks/03_tft_training.py:82
low System graph software Dead code conf 1.00 Possibly dead Python function: nll
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
ml/notebooks/04_lgbm_training.py:186
low System graph software Dead code conf 1.00 Possibly dead Python function: produce
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
backend/api/stocks.py:25
low System graph software Dead code conf 1.00 Possibly dead Python function: produce
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
backend/api/news.py:21
low System graph software Dead code conf 1.00 Possibly dead Python function: produce_all
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
backend/api/predictions.py:20
low System graph software Dead code conf 1.00 Possibly dead Python function: produce_one
No callers detected by AST scan in this repo. Could be exported for external callers or a framework handler.
backend/api/predictions.py:27
low System graph quality Provenance conf 1.00 Shallow git history limits provenance confidence
The repository is a shallow clone. Origin/evolution analysis cannot distinguish fresh generation, imported legacy code, or long-lived human code with high confidence.
Git historyGenerated repo pattern
low System graph api Wiring conf 1.00 Unused endpoint: GET /accuracy
`backend/api/stocks.py` declares `GET /accuracy` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code — consider removing or documenting who consumes it.
Unused endpoint
low System graph api Wiring conf 1.00 Unused endpoint: GET /news
`backend/api/news.py` declares `GET /news` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code — consider removing or documenting who consumes it.
Unused endpoint
low System graph api Wiring conf 1.00 Unused endpoint: GET /predictions
`backend/api/predictions.py` declares `GET /predictions` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code — consider removing or documenting who consumes it.
Unused endpoint
low System graph api Wiring conf 1.00 Unused endpoint: GET /stocks/{symbol}/history
`backend/api/stocks.py` declares `GET /stocks/{symbol}/history` but no frontend code we scanned calls it. This is fine if the endpoint serves external clients (mobile app, third-party, server-side webhooks). Otherwise it's dead code — consider removing or documenting who consumes it.
Unused endpoint
For AI agents: Voting guide (TP/FP) MCP manifest Stdio wrapper SARIF Integrate Findings queue Vote TP/FP on findings to calibrate the engine.
For AI agents + API integrations
Email me when this repo regresses
Free. We re-scan periodically; new criticals → your inbox. No signup required for the scan itself.
API access

This page is publicly accessible at: https://repobility.com/scan/8b7c0a50-de29-4136-a8bf-05b902ef16fe/

To check status programmatically (no auth required):

curl -s https://repobility.com/api/v1/public/scan/8b7c0a50-de29-4136-a8bf-05b902ef16fe/

Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.