Leaderboard github.com
review-bench/Tzeusy_butlers
Mirror for benchmark evaluation
AI provenance
85%
explicit
- Confidence
- 95%
- Coverage
- 100%
Estimated share of AI-generated code. Explicit attribution is a lower bound.
Code quality
62/100
weak
- Confidence
- 90%
- Coverage
- 100%
Complexity, duplication, lint density, tests, CI, docs and review process.
Security
35/100
poor
- Confidence
- 85%
- Coverage
- 100%
Secrets, static analysis, vulnerable dependencies, CI and supply-chain posture.
AI provenance
85% explicit
Explicit AI attribution on 85% of first-party code added; an estimated 85% including velocity signals.
How the score is built
- Explicitly attributed share85%
- Unattributed share in AI-pace bursts12%
- Estimated AI-generated share85%
- AI tool configuration files50
- Work sessions at AI pace133
- Releases at AI pacenot measured
- Coding-style index (1.0+ means possible)0.33
Attributed AI tools
| Tool | Commits | Lines added | First seen | Last seen |
|---|---|---|---|---|
| Claude Code | 2,916 | 1,029,138 | 2026-02-09 | 2026-05-26 |
| OpenAI Codex | 2 | 253 | 2026-04-15 | 2026-04-15 |
| Gemini CLI / Code Assist | 2 | 18 | 2026-02-12 | 2026-02-12 |
Lines added per month all AI-attributed share
- 2026-02371,368 · 81% AI
- 2026-03369,616 · 95% AI
- 2026-04187,769 · 87% AI
- 2026-05278,209 · 77% AI
Findings in AI-attributed lines vs the rest
From git blame: 324,998 lines trace to AI-attributed commits, 74,994 to others (sampled). Reported, not scored.
| Findings per 1,000 lines | AI-attributed | Other | Ratio |
|---|---|---|---|
| Code quality | 0.59 | 0.11 | 5.52× |
| Security | 0.68 | 0.77 | 0.88× |
Evidence by analyzer
Explicit AI attributionok28 items
- Claude Code: 2916 attributed commits, 1,029,138 lines added
- Gemini CLI / Code Assist: 2 attributed commits, 18 lines added
- OpenAI Codex: 2 attributed commits, 253 lines added
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-authored-by: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-authored-by: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-authored-by: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-authored-by: Claude'
- Claude Code: trailer 'Co-authored-by: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- Claude Code: trailer 'Co-Authored-By: Claude'
- attributed_commit_share
- 69.8%
- attributed_commits
- 2,920
- attributed_loc
- 1,029,409
- attributed_loc_share
- 85.3%
- commits
- 4,181
- effective_loc
- 1,206,962
- tools_detected
- 3
AI tool configurationok50 items
- .claude/commands/opsx/apply.md (claude-code configuration)
- .claude/commands/opsx/archive.md (claude-code configuration)
- .claude/commands/opsx/bulk-archive.md (claude-code configuration)
- .claude/commands/opsx/continue.md (claude-code configuration)
- .claude/commands/opsx/explore.md (claude-code configuration)
- .claude/commands/opsx/ff.md (claude-code configuration)
- .claude/commands/opsx/new.md (claude-code configuration)
- .claude/commands/opsx/onboard.md (claude-code configuration)
- .claude/commands/opsx/sync.md (claude-code configuration)
- .claude/commands/opsx/verify.md (claude-code configuration)
- .claude/skills/adding-butlers-to-roster/SKILL.md (claude-code configuration)
- .claude/skills/adding-butlers-to-roster/references/butler-toml.md (claude-code configuration)
- .claude/skills/adding-butlers-to-roster/references/manifesto-guide.md (claude-code configuration)
- .claude/skills/adding-butlers-to-roster/references/test-patterns.md (claude-code configuration)
- .claude/skills/adding-butlers-to-roster/references/tools-patterns.md (claude-code configuration)
- .claude/skills/adding-connectors-and-modules/SKILL.md (claude-code configuration)
- .claude/skills/adding-connectors-and-modules/agents/openai.yaml (claude-code configuration)
- .claude/skills/adding-connectors-and-modules/references/account-registry-pattern.md (claude-code configuration)
- .claude/skills/adding-connectors-and-modules/references/connector-base-obligations.md (claude-code configuration)
- .claude/skills/adding-connectors-and-modules/references/module-pattern.md (claude-code configuration)
- .claude/skills/adding-connectors-and-modules/references/rfc-checklist.md (claude-code configuration)
- .claude/skills/butler-db-schema/SKILL.md (claude-code configuration)
- .claude/skills/butler-dev-debug/SKILL.md (claude-code configuration)
- .claude/skills/butler-dev-debug/references/error-patterns.md (claude-code configuration)
- .claude/skills/butler-dev-debug/references/logs-and-health.md (claude-code configuration)
- .claude/skills/butler-dev-debug/references/session-queries.md (claude-code configuration)
- .claude/skills/butler-dev-debug/references/topology.md (claude-code configuration)
- .claude/skills/butler-dev-debug/scripts/dev-psql.sh (claude-code configuration)
- .claude/skills/butler-qa-invoke/SKILL.md (claude-code configuration)
- .claude/skills/butler-qa-invoke/scripts/invoke_qa_canary.py (claude-code configuration)
- .claude/skills/butler-qa-pr-review/SKILL.md (claude-code configuration)
- .claude/skills/butler-qa-pr-review/agents/openai.yaml (claude-code configuration)
- .claude/skills/butler-qa-pr-review/references/butlers-quality-gates.md (claude-code configuration)
- .claude/skills/butler-qa-pr-review/references/pii-and-replies.md (claude-code configuration)
- .claude/skills/butler-qa-pr-review/references/qa-investigation-context.md (claude-code configuration)
- .claude/skills/butler-qa-pr-review/references/runtime-contract.md (claude-code configuration)
- .claude/skills/butler-qa-pr-review/scripts/_github.py (claude-code configuration)
- .claude/skills/butler-qa-pr-review/scripts/review_threads.py (claude-code configuration)
- .claude/skills/butler-qa-pr-review/scripts/validate_pr_review.py (claude-code configuration)
- .claude/skills/butler-test-condensation/SKILL.md (claude-code configuration)
10 more in the report JSON.
- artifacts
- 50
- earliest_adoption
- 2026-02-09
- tools_configured
- 1
- workflow_agents
- 0
Commit velocityok15 items
- 17,553 lines of first-party code in ~3.1h (5,602 lines/hour, 9 commit session)
- 68,311 lines of first-party code in ~12.3h (5,538 lines/hour, 168 commit session)
- 65,829 lines of first-party code in ~12.0h (5,497 lines/hour, 81 commit session)
- 4,641 lines of first-party code in ~1.0h (4,791 lines/hour, 2 commit session)
- 9,706 lines of first-party code in ~2.1h (4,696 lines/hour, 6 commit session)
- 61,785 lines of first-party code in ~13.3h (4,631 lines/hour, 82 commit session)
- 6,776 lines of first-party code in ~1.5h (4,530 lines/hour, 6 commit session)
- 13,088 lines of first-party code in ~3.0h (4,386 lines/hour, 8 commit session)
- 9,400 lines of first-party code in ~2.2h (4,253 lines/hour, 7 commit session)
- 10,412 lines of first-party code in ~2.7h (3,924 lines/hour, 13 commit session)
- 14,670 lines of first-party code in ~4.6h (3,165 lines/hour, 12 commit session)
- 12,090 lines of first-party code in ~3.8h (3,162 lines/hour, 17 commit session)
- 26,141 lines of first-party code in ~8.4h (3,114 lines/hour, 67 commit session)
- 5,350 lines of first-party code in ~1.8h (2,980 lines/hour, 3 commit session)
- 8,322 lines of first-party code in ~2.8h (2,963 lines/hour, 6 commit session)
- excluded_import_loc
- 18,815
- flagged_loc
- 1,077,198
- flagged_loc_share
- 90.7%
- flagged_units
- 133
- max_loc_per_hour
- 5,601.52
- measured_loc
- 1,188,147
- median_loc_per_hour
- 482.64
- pr_timed_units
- 0
- pre_ai_era_burst_loc
- 0
- pre_ai_era_bursts
- 0
- pre_ai_era_measured_loc
- 0
- work_units
- 345
Release velocityskipped
Coding styleok8 items
- step-by-step narration comment: # Step 1: Add the column with DEFAULT NULL — instant, no row rewrite.
- step-by-step narration comment: # Step 2: Add FK constraint NOT VALID — only validates new/updated rows,
- step-by-step narration comment: # Step 3: Validate the constraint against existing rows.
- step-by-step narration comment: # Step 1: Grant public table write permissions
- step-by-step narration comment: # Step 2: Grant role membership so SET ROLE works
- step-by-step narration comment: # Step 1: Revoke role membership
- step-by-step narration comment: # Step 2: Revoke public table write permissions
- step-by-step narration comment: # Step 1: add subsource column defaulting to '' (global sentinel).
- count:assistant_voice
- 1
- count:emoji_in_code
- 12
- count:narrated_steps
- 129
- count:placeholder
- 0
- files:assistant_voice
- 1
- files:emoji_in_code
- 7
- files:narrated_steps
- 32
- files:placeholder
- 0
- index
- 0.33
- lines_scanned
- 420,511
- per_kloc:assistant_voice
- 0.00
- per_kloc:emoji_in_code
- 0.03
- per_kloc:narrated_steps
- 0.31
- per_kloc:placeholder
- 0
Findings in AI-written linesok
- ai_lines
- 324,998
- blame_failures
- 0
- files_blamed
- 1,204
- other_lines
- 74,994
- quality:ai_findings
- 192
- quality:ai_per_kloc
- 0.59
- quality:other_findings
- 8
- quality:other_per_kloc
- 0.11
- quality:ratio
- 5.52
- security:ai_findings
- 221
- security:ai_per_kloc
- 0.68
- security:other_findings
- 58
- security:other_per_kloc
- 0.77
- security:ratio
- 0.88
Code quality
62 weak
Code quality is weak: test-to-source ratio 0.77, CI runs tests; 26% of function code in complex or long functions; 13% duplicated lines. Weakest area: type safety.
How the score is built
- Complexity46
- Duplication46
- Lint and smells45
- Tests and CI100
- Documentation65
- Type safety16
- Review processnot measured
Evidence by analyzer
Complexity (lizard)ok10 items
- _run in src/butlers/core/spawner.py: complexity 143, 877 lines
- process in src/butlers/modules/pipeline.py: complexity 109, 874 lines
- register_routing_tools._route_execute_inner in src/butlers/core_tools/_routing.py: complexity 94, 562 lines
- _parse_opencode_output in src/butlers/core/runtimes/opencode.py: complexity 92, 166 lines
- register_notification_tools in src/butlers/core_tools/_notifications.py: complexity 87, 550 lines
- run_interaction_sync in roster/relationship/jobs/relationship_jobs.py: complexity 78, 505 lines
- _run_investigation_session in src/butlers/core/qa/dispatch.py: complexity 67, 593 lines
- _run_patrol_body in src/butlers/modules/qa/__init__.py: complexity 66, 293 lines
- contact_import_vcard in roster/relationship/tools/vcard.py: complexity 63, 157 lines
- sync_schedules in src/butlers/core/scheduler.py: complexity 62, 241 lines
- complex_functions
- 343
- function_nloc
- 237,031
- functions
- 13,691
- long_functions
- 285
- many_param_functions
- 209
- mean_ccn
- 3.43
- p90_ccn
- 8
- risky_nloc_share
- 25.5%
Duplication (jscpd)ok10 items
- 6+ duplicated lines: .claude/skills/butler-qa-pr-review/scripts/review_threads.py:19 and .claude/skills/butler-qa-pr-review/scripts/validate_pr_review.py:26
- 6+ duplicated lines: alembic/env.py:30 and src/butlers/migrations.py:31
- 6+ duplicated lines: alembic/env.py:46 and alembic/env.py:69
- 6+ duplicated lines: alembic/versions/core/core_001_foundation.py:32 and alembic/versions/core/core_065_public_schema_write_grants.py:21
- 6+ duplicated lines: alembic/versions/core/core_001_foundation.py:33 and alembic/versions/core/core_012_temporal_intelligence.py:32
- 6+ duplicated lines: alembic/versions/core/core_001_foundation.py:75 and alembic/versions/core/core_007_connectors.py:76
- 6+ duplicated lines: alembic/versions/core/core_001_foundation.py:256 and alembic/versions/core/core_055_v_qa_recent_failures.py:252
- 6+ duplicated lines: alembic/versions/core/core_001_foundation.py:316 and src/butlers/credential_store.py:50
- 6+ duplicated lines: alembic/versions/core/core_001_foundation.py:500 and alembic/versions/core/core_001_foundation.py:653
- 6+ duplicated lines: alembic/versions/core/core_002_identity.py:28 and alembic/versions/core/core_005_self_healing.py:32
- compared_lines
- 319,240
- duplicated_lines
- 40,876
- duplicated_share
- 12.8%
- files
- 1,263
Lintok
- category:best-practice
- 213
- category:correctness
- 49
- category:maintainability
- 400
- findings
- 662
- scanned_lines
- 420,115
- weighted_findings
- 1,331.50
Tests and CIok5 items
- CI config: .github/workflows/ci.yml
.github/workflows/ci.yml - CI config: .github/workflows/nightly.yml
.github/workflows/nightly.yml - CI config: .github/workflows/release.yml
.github/workflows/release.yml - CI runs tests (pytest, npm run test, make check)
- CI runs linters (ruff)
- check:ci_present
- yes
- check:ci_runs_lint
- yes
- check:ci_runs_tests
- yes
- check:has_tests
- yes
- check:test_ratio
- yes
- check:tests_cochange
- yes
- ci_files
- 3
- cochange_commits
- 207
- cochange_share
- 91.3%
- source_lines
- 420,511
- test_lines
- 323,649
- test_ratio
- 0.77
Documentationok2 items
- README.md
README.md - LICENSE
LICENSE
- check:changelog
- no
- check:contributing
- no
- check:license
- yes
- check:readme
- yes
- readme_lines
- 143
Type safetyok1 item
- TypeScript strict type checking: frontend/tsconfig.app.json
frontend/tsconfig.app.json
- check:low_escape_density
- no
- check:strict_config
- no
- escapes
- 4,358
- escapes_per_kloc
- 11.23
Security
35 poor
Security posture is poor: 227 known vulnerabilities in 43 dependencies; 247 high-severity SAST findings; 18 high-severity workflow issues. Weakest area: dependencies.
How the score is built
- Secrets57
- Static analysis (SAST)73
- Vulnerable dependencies0
- CI workflows2
- Security posture20
- OpenSSF Scorecardnot measured
Evidence by analyzer
OpenSSF Scorecardskipped
no published OpenSSF Scorecard result for this repo
Package registriesok
- checked
- 84
- declared
- 84
- lookup_errors
- 0
- missing
- 0
- recent
- 0
Secrets (gitleaks)ok
- secrets_current
- 0
- secrets_history
- 0
- secrets_low_confidence
- 3
- secrets_nonprod
- 14
Static analysis (opengrep)ok
- findings
- 755
- findings_high
- 247
- findings_low
- 4
- findings_medium
- 504
- parse_errors
- 7
- scanned_lines
- 420,115
- weighted_findings
- 378.89
Dependencies (osv-scanner)ok
- penalty
- 313
- vulnerabilities
- 227
- vulnerable_packages
- 43
- vulns_critical
- 12
- vulns_high
- 68
- vulns_low
- 17
- vulns_medium
- 108
- vulns_unknown
- 22
CI workflows (zizmor)ok
- findings
- 30
- findings_high
- 18
- findings_low
- 7
- findings_medium
- 5
- penalty
- 229.50
- workflows
- 3
Security postureok
- check:dependency_updates
- no
- check:lockfiles
- yes
- check:security_policy
- no
- check:signed_commits
- yes
- signed_commit_share
- 92.0%
- unpinned_manifests
- 0
Release downloadsok
- binary_assets
- 0
- signals
- 0
- suspicious
- 0
Findings
12 critical533 high188 medium39 low2 info
| Severity | Rule | Location | Message | Tool |
|---|---|---|---|---|
| critical | osv/GHSA-5gmw-xhrv-c9v3 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-5gmw-xhrv-c9v3 | Dependencies (osv-scanner) |
| critical | osv/GHSA-5xrq-8626-4rwp |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-5xrq-8626-4rwp | Dependencies (osv-scanner) |
| critical | osv/GHSA-85c8-ppgw-ccpr |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-85c8-ppgw-ccpr | Dependencies (osv-scanner) |
| critical | osv/GHSA-jqcg-44mw-7w3h |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-jqcg-44mw-7w3h | Dependencies (osv-scanner) |
| critical | osv/GHSA-jrc7-96c5-q579 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-jrc7-96c5-q579 | Dependencies (osv-scanner) |
| critical | osv/GHSA-5cgq-3rg8-m6cv |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5021, GHSA-5cgq-3rg8-m6cv | Dependencies (osv-scanner) |
| critical | osv/GHSA-89gr-r52h-f8rx |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5019, GHSA-89gr-r52h-f8rx | Dependencies (osv-scanner) |
| critical | osv/GHSA-f5wc-c3c7-36mc |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5006, GHSA-f5wc-c3c7-36mc | Dependencies (osv-scanner) |
| critical | osv/GHSA-jppx-rxg9-jmrx |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5005, GHSA-jppx-rxg9-jmrx | Dependencies (osv-scanner) |
| critical | osv/GHSA-rm3j-f69w-wqmq |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5020, GHSA-rm3j-f69w-wqmq | Dependencies (osv-scanner) |
| critical | osv/GHSA-vgwf-h737-ff37 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5017, GHSA-vgwf-h737-ff37 | Dependencies (osv-scanner) |
| critical | osv/GHSA-x527-x647-q7gg |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5023, GHSA-x527-x647-q7gg | Dependencies (osv-scanner) |
| high | opengrep/python.lang.best-practice.arbitrary-sleep |
conftest.py:355 | time.sleep() call; did you mean to leave this in? | Lint |
| high | opengrep/typescript.lang.correctness.useless-ternary |
pr/overview/ingestion-redesign/ingestion-v3.jsx:129 | It looks like no matter how selected is evaluated, this expression returns C.fg. This is probably a copy-paste error. | Lint |
| high | opengrep/typescript.lang.correctness.useless-ternary |
pr/overview/ingestion-redesign/sidebar.jsx:161 | It looks like no matter how item.butler is evaluated, this expression returns null. This is probably a copy-paste error. | Lint |
| high | opengrep/typescript.lang.correctness.useless-ternary |
pr/overview/qa-redesign/sidebar.jsx:161 | It looks like no matter how item.butler is evaluated, this expression returns null. This is probably a copy-paste error. | Lint |
| high | opengrep/typescript.lang.correctness.useless-ternary |
pr/overview/sidebar.jsx:161 | It looks like no matter how item.butler is evaluated, this expression returns null. This is probably a copy-paste error. | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:100 | function `mind_map_node_create` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:123 | function `mind_map_node_get` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:130 | function `mind_map_node_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:142 | function `mind_map_node_update` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:175 | function `mind_map_edge_create` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:189 | function `mind_map_edge_delete` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:198 | function `mind_map_frontier` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:205 | function `mind_map_subtree` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:216 | function `teaching_flow_start` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:224 | function `teaching_flow_get` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:231 | function `teaching_flow_advance` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:238 | function `teaching_flow_abandon` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:247 | function `teaching_flow_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:258 | function `mastery_record_response` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:282 | function `mastery_get_node_history` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:290 | function `mastery_get_map_summary` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:297 | function `mastery_detect_struggles` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:308 | function `spaced_repetition_record_response` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:324 | function `spaced_repetition_pending_reviews` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:331 | function `spaced_repetition_schedule_cleanup` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:346 | function `diagnostic_start` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:35 | function `_tool` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:353 | function `diagnostic_record_probe` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:375 | function `diagnostic_complete` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:386 | function `curriculum_generate` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:400 | function `curriculum_replan` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:408 | function `curriculum_next_node` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:419 | function `analytics_get_snapshot` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:432 | function `analytics_get_trend` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:440 | function `analytics_get_cross_topic` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:72 | function `mind_map_create` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:77 | function `mind_map_get` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:84 | function `mind_map_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/education/modules/tools.py:91 | function `mind_map_update_status` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:1022 | function `budget_set` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:1058 | function `budget_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:1071 | function `budget_remove` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:1091 | function `budget_status` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:1106 | function `spending_trends` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:1130 | function `spending_forecast` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:1151 | function `net_worth_snapshot` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:1183 | function `net_worth_history` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:1205 | function `cash_flow` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:1232 | function `subscription_audit` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:124 | function `list_transactions` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:1248 | function `flag_tax_deductible` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:1274 | function `alert_configure` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:1304 | function `alert_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:1317 | function `detect_price_changes` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:181 | function `track_subscription` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:233 | function `track_bill` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:284 | function `upcoming_bills` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:307 | function `spending_summary` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:31 | function `_tool` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:341 | function `list_transaction_facts` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:375 | function `track_account_fact` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:400 | function `track_subscription_fact` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:436 | function `track_bill_fact` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:473 | function `spending_summary_facts` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:503 | function `list_distinct_merchants` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:534 | function `bulk_update_transactions` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:564 | function `bulk_record_transactions` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:619 | function `update_transaction` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:654 | function `delete_transaction` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:669 | function `merge_duplicates` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:701 | function `split_transaction` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:71 | function `record_transaction` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:726 | function `bulk_recategorize` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:757 | function `import_transactions` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:800 | function `import_transactions_from_file` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:841 | function `learn_merchant_categories` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:857 | function `suggest_categories` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:882 | function `recall_merchant_mappings` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:907 | function `detect_recurring` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:930 | function `predict_bills` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:955 | function `compute_baselines` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:971 | function `anomaly_scan` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/finance/modules/tools.py:997 | function `detect_duplicates` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:104 | function `medication_history` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:119 | function `condition_add` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:131 | function `condition_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:136 | function `condition_update` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:164 | function `symptom_log` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:182 | function `symptom_history` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:192 | function `symptom_search` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:214 | function `meal_log` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:252 | function `meal_history` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:263 | function `nutrition_summary` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:278 | function `health_summary` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:28 | function `_tool` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:283 | function `trend_report` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:296 | function `research_save` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:314 | function `research_search` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:325 | function `research_summarize` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:37 | function `measurement_log` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:54 | function `measurement_history` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:65 | function `measurement_latest` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:74 | function `medication_add` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:87 | function `medication_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/health/modules/tools.py:92 | function `medication_log_dose` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:1000 | function `relationship_assert_fact` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:121 | function `address_remove` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:130 | function `contact_info_add` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:158 | function `contact_info_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:167 | function `contact_info_update` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:188 | function `contact_info_remove` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:195 | function `contact_search_by_info` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:21 | function `_tool` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:212 | function `contact_create` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:245 | function `contact_get` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:257 | function `contact_update` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:294 | function `contact_search` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:303 | function `contact_archive` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:310 | function `contact_merge` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:335 | function `date_add` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:347 | function `date_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:354 | function `upcoming_dates` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:366 | function `fact_set` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:375 | function `fact_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:386 | function `gift_add` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:395 | function `gift_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:403 | function `gift_update_status` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:415 | function `group_create` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:423 | function `group_add_member` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:432 | function `group_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:437 | function `group_members` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:448 | function `interaction_log` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:470 | function `interaction_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:489 | function `interaction_log_group` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:50 | function `address_add` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:524 | function `label_create` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:532 | function `label_assign` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:540 | function `contact_search_by_label` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:551 | function `life_event_types_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:557 | function `life_event_log` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:586 | function `life_event_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:611 | function `loan_create` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:635 | function `loan_settle` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:642 | function `loan_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:653 | function `note_create` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:671 | function `note_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:680 | function `note_search` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:693 | function `relationship_add` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:719 | function `relationship_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:726 | function `relationship_remove` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:734 | function `relationship_type_get` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:741 | function `relationship_types_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:757 | function `contact_resolve` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:777 | function `dunbar_tier_set` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:80 | function `address_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:801 | function `stay_in_touch_set` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:813 | function `contacts_overdue` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:828 | function `task_create` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:837 | function `task_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:850 | function `task_complete` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:857 | function `task_delete` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:868 | function `contact_export_vcard` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:87 | function `address_update` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:884 | function `contact_import_vcard` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:909 | function `entity_resolve` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:942 | function `entity_get` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:952 | function `entity_update` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/relationship/modules/tools.py:968 | function `entity_neighbors` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:147 | function `deliver` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:171 | function `log_extraction` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:193 | function `extraction_log_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:209 | function `extraction_log_undo` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:218 | function `create_backfill_job` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:240 | function `backfill_pause` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:245 | function `backfill_cancel` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:250 | function `backfill_resume` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:255 | function `backfill_list` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:275 | function `manual_reroute_request` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:292 | function `cancel_request` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:30 | function `_tool` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:307 | function `abort_request` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:322 | function `force_complete_request` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:343 | function `replay_dead_letter_request` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:358 | function `list_replay_eligible_requests` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:371 | function `get_dead_letter_stats` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:39 | function `list_butlers` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:48 | function `route` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:68 | function `post_mail` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
roster/switchboard/modules/tools.py:90 | function `correct_route` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
src/butlers/api/app.py:333 | function `health` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
src/butlers/background.py:330 | function `_post_heartbeat` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
src/butlers/connectors/discord_user.py:372 | function `health` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
src/butlers/connectors/discord_user.py:376 | function `metrics` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
src/butlers/connectors/discretion_dispatcher.py:226 | function `_invoke` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
src/butlers/connectors/gmail.py:3440 | function `health` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
src/butlers/connectors/gmail.py:3444 | function `metrics` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
src/butlers/connectors/gmail.py:3448 | function `reload_accounts` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
src/butlers/connectors/gmail.py:629 | function `health` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
src/butlers/connectors/gmail.py:633 | function `metrics` is defined inside a function but never used | Lint |
| high | opengrep/python.lang.maintainability.useless-inner-function |
src/butlers/connectors/gmail.py:669 | function `webhook` is defined inside a function but never used | Lint |
| high | zizmor/unpinned-uses |
.github/workflows/ci.yml:121 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/ci.yml:124 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/ci.yml:146 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/ci.yml:28 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/ci.yml:31 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/ci.yml:36 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/ci.yml:75 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/ci.yml:92 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/ci.yml:95 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/nightly.yml:30 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/nightly.yml:33 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/nightly.yml:38 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/release.yml:21 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/release.yml:45 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/release.yml:53 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/release.yml:61 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/release.yml:70 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | zizmor/unpinned-uses |
.github/workflows/release.yml:78 | unpinned action reference [confidence high] | CI workflows (zizmor) |
| high | opengrep/dockerfile.security.missing-user-entrypoint |
Dockerfile:68 | By not specifying a USER, a program in the container may run as 'root'. This is a security hazard. If an attacker can control a process running as root, they may have control over the container. Ensure that the last USER in a Dockerfile... | Static analysis (opengrep) |
| high | opengrep/dockerfile.security.missing-user |
Dockerfile:69 | By not specifying a USER, a program in the container may run as 'root'. This is a security hazard. If an attacker can control a process running as root, they may have control over the container. Ensure that the last USER in a Dockerfile... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_001_foundation.py:103 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_001_foundation.py:121 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_001_foundation.py:138 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_001_foundation.py:335 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_001_foundation.py:771 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_001_foundation.py:81 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_002_identity.py:59 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_004_model_and_tokens.py:122 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_004_model_and_tokens.py:148 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_004_model_and_tokens.py:259 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_004_model_and_tokens.py:76 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_005_self_healing.py:56 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_006_dashboard.py:62 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_006_dashboard.py:84 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_007_connectors.py:82 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_008_external_accounts.py:111 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_008_external_accounts.py:63 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_008_external_accounts.py:85 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_009_memory_catalog.py:73 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_009_memory_catalog.py:97 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_010_insight_tables.py:68 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_010_insight_tables.py:92 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_012_temporal_intelligence.py:118 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_012_temporal_intelligence.py:129 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_012_temporal_intelligence.py:132 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_012_temporal_intelligence.py:51 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_012_temporal_intelligence.py:78 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_012_temporal_intelligence.py:98 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_013_event_chains.py:122 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_013_event_chains.py:128 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_013_event_chains.py:135 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_013_event_chains.py:145 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_013_event_chains.py:72 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_013_event_chains.py:99 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_044_event_chains_status.py:52 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_044_event_chains_status.py:83 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_047_rename_shared_indexes.py:63 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_047_rename_shared_indexes.py:89 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_048_round_robin_counters.py:49 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_050_schedule_token_budget.py:40 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_050_schedule_token_budget.py:59 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_051_qa_patrols.py:60 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_052_qa_findings.py:72 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_053_qa_dismissals.py:55 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:119 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:141 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:163 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:185 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:204 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:247 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:281 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:282 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:297 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_056_tenant_id_defaults.py:167 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_057_qa_allowed_repositories.py:54 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_060_qa_repo_config.py:53 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_063_v_briefing_contributions.py:122 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_063_v_briefing_contributions.py:137 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_063_v_briefing_contributions.py:51 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_063_v_briefing_contributions.py:95 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_065_public_schema_write_grants.py:75 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_066_healing_workflow_schema.py:103 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_071_v_qa_recent_failures_trigger_source.py:122 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_071_v_qa_recent_failures_trigger_source.py:123 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_071_v_qa_recent_failures_trigger_source.py:157 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_071_v_qa_recent_failures_trigger_source.py:158 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_071_v_qa_recent_failures_trigger_source.py:94 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_074_connector_writer_connectors_function_grants.py:32 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_075_normalize_whatsapp_filtered_event_connector_type.py:19 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_077_relationship_switchboard_read_grants.py:39 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_079_spotify_listening_sessions.py:111 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_079_spotify_listening_sessions.py:115 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_079_spotify_listening_sessions.py:141 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_079_spotify_listening_sessions.py:75 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_079_spotify_listening_sessions.py:92 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_081_owntracks_points.py:110 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_081_owntracks_points.py:114 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_081_owntracks_points.py:140 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_081_owntracks_points.py:76 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_081_owntracks_points.py:93 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_082_backfill_delivery_tables_current_schema.py:25 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_084_home_assistant_history.py:102 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_084_home_assistant_history.py:106 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_084_home_assistant_history.py:132 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_084_home_assistant_history.py:72 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_084_home_assistant_history.py:89 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_089_butler_logs.py:109 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_089_butler_logs.py:110 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_089_butler_logs.py:111 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_089_butler_logs.py:76 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_089_butler_logs.py:77 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_089_butler_logs.py:92 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_089_butler_logs.py:98 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_090_butler_logs_chronicler.py:33 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_090_butler_logs_chronicler.py:34 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_090_butler_logs_chronicler.py:49 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_090_butler_logs_chronicler.py:55 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_090_butler_logs_chronicler.py:65 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_090_butler_logs_chronicler.py:66 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_090_butler_logs_chronicler.py:67 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_091_qa_investigation_events.py:45 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_092_audit_log.py:66 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_093_complexity_tier_rename.py:105 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_093_complexity_tier_rename.py:151 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_093_complexity_tier_rename.py:180 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_093_complexity_tier_rename.py:206 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_093_complexity_tier_rename.py:246 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_093_complexity_tier_rename.py:77 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_094_spend_tables.py:51 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_095_permissions_webhooks_approvals_policy.py:49 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_096_memory_retention_policies.py:55 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_097_pending_actions_why_evidence.py:63 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_097_pending_actions_why_evidence.py:74 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_098_butler_prompt_history.py:49 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_099_dispatch_failures.py:60 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_100_webhooks_secret_encrypted.py:67 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_101_priority_contacts.py:77 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_102_channel_defaults.py:65 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_104_model_dispatch_attempts.py:64 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_105_secrets_be1.py:91 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_106_secrets_be2.py:104 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_106_secrets_be2.py:119 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_106_secrets_be2.py:133 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_106_secrets_be2.py:91 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_107_provider_feature_catalogue.py:88 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_108_google_health_cursor_key_migration.py:100 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
alembic/versions/core/core_108_google_health_cursor_key_migration.py:64 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | osv/GHSA-22jm-h49p-29qw |
frontend/package-lock.json | @modelcontextprotocol/[email protected] (npm) is affected by GHSA-22jm-h49p-29qw | Dependencies (osv-scanner) |
| high | osv/GHSA-23c5-xmqv-rm74 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-23c5-xmqv-rm74 | Dependencies (osv-scanner) |
| high | osv/GHSA-25h7-pfq9-p65f |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-25h7-pfq9-p65f | Dependencies (osv-scanner) |
| high | osv/GHSA-27r3-jxmh-p828 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-27r3-jxmh-p828 | Dependencies (osv-scanner) |
| high | osv/GHSA-2883-xcg3-v3hh |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-2883-xcg3-v3hh | Dependencies (osv-scanner) |
| high | osv/GHSA-28wg-ghj8-5hjv |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-28wg-ghj8-5hjv | Dependencies (osv-scanner) |
| high | osv/GHSA-2m5v-pch6-74hx |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-2m5v-pch6-74hx | Dependencies (osv-scanner) |
| high | osv/GHSA-2v37-7h3g-55p8 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-2v37-7h3g-55p8 | Dependencies (osv-scanner) |
| high | osv/GHSA-3jxr-9vmj-r5cp |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-3jxr-9vmj-r5cp | Dependencies (osv-scanner) |
| high | osv/GHSA-46jr-4wx8-v453 |
frontend/package-lock.json | @modelcontextprotocol/[email protected] (npm) is affected by GHSA-46jr-4wx8-v453 | Dependencies (osv-scanner) |
| high | osv/GHSA-46wh-pxpv-q5gq |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-46wh-pxpv-q5gq | Dependencies (osv-scanner) |
| high | osv/GHSA-49rj-9fvp-4h2h |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-49rj-9fvp-4h2h | Dependencies (osv-scanner) |
| high | osv/GHSA-4c8g-83qw-93j6 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-4c8g-83qw-93j6 | Dependencies (osv-scanner) |
| high | osv/GHSA-4cwx-7wf7-3272 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-4cwx-7wf7-3272 | Dependencies (osv-scanner) |
| high | osv/GHSA-4w7w-5xrc-9h26 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-4w7w-5xrc-9h26 | Dependencies (osv-scanner) |
| high | osv/GHSA-52cp-r559-cp3m |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-52cp-r559-cp3m | Dependencies (osv-scanner) |
| high | osv/GHSA-587h-7wmj-h5pm |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-587h-7wmj-h5pm | Dependencies (osv-scanner) |
| high | osv/GHSA-587h-7wmj-h5pm |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-587h-7wmj-h5pm | Dependencies (osv-scanner) |
| high | osv/GHSA-5p4m-2wfm-xmqj |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-5p4m-2wfm-xmqj | Dependencies (osv-scanner) |
| high | osv/GHSA-68fv-2mgg-jv7q |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-68fv-2mgg-jv7q | Dependencies (osv-scanner) |
| high | osv/GHSA-6g55-p6wh-862q |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-6g55-p6wh-862q | Dependencies (osv-scanner) |
| high | osv/GHSA-6j4f-fj2g-mc7p |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-6j4f-fj2g-mc7p | Dependencies (osv-scanner) |
| high | osv/GHSA-6qxp-vccf-f47h |
frontend/package-lock.json | @modelcontextprotocol/[email protected] (npm) is affected by GHSA-6qxp-vccf-f47h | Dependencies (osv-scanner) |
| high | osv/GHSA-73wf-gq98-2v4g |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-73wf-gq98-2v4g | Dependencies (osv-scanner) |
| high | osv/GHSA-7p8r-x3mc-p8w7 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-7p8r-x3mc-p8w7 | Dependencies (osv-scanner) |
| high | osv/GHSA-7r86-cg39-jmmj |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-7r86-cg39-jmmj | Dependencies (osv-scanner) |
| high | osv/GHSA-8646-j5j9-6r62 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-8646-j5j9-6r62 | Dependencies (osv-scanner) |
| high | osv/GHSA-88fw-hqm2-52qc |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-88fw-hqm2-52qc | Dependencies (osv-scanner) |
| high | osv/GHSA-8x6r-g9mw-2r78 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-8x6r-g9mw-2r78 | Dependencies (osv-scanner) |
| high | osv/GHSA-c2c7-rcm5-vvqj |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-c2c7-rcm5-vvqj | Dependencies (osv-scanner) |
| high | osv/GHSA-c2c7-rcm5-vvqj |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-c2c7-rcm5-vvqj | Dependencies (osv-scanner) |
| high | osv/GHSA-c83g-rgw3-j3cx |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-c83g-rgw3-j3cx | Dependencies (osv-scanner) |
| high | osv/GHSA-chx6-hx7r-mcp5 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-chx6-hx7r-mcp5 | Dependencies (osv-scanner) |
| high | osv/GHSA-f269-vfmq-vjvj |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-f269-vfmq-vjvj | Dependencies (osv-scanner) |
| high | osv/GHSA-f65p-4m7j-42xc |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-f65p-4m7j-42xc | Dependencies (osv-scanner) |
| high | osv/GHSA-f897-62hf-6gxq |
frontend/package-lock.json | @modelcontextprotocol/[email protected] (npm) is affected by GHSA-f897-62hf-6gxq | Dependencies (osv-scanner) |
| high | osv/GHSA-j3q9-mxjg-w52f |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-j3q9-mxjg-w52f | Dependencies (osv-scanner) |
| high | osv/GHSA-jqff-g426-hqxp |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-jqff-g426-hqxp | Dependencies (osv-scanner) |
| high | osv/GHSA-mh99-v99m-4gvg |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-mh99-v99m-4gvg | Dependencies (osv-scanner) |
| high | osv/GHSA-mrhx-c7xc-m3w5 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-mrhx-c7xc-m3w5 | Dependencies (osv-scanner) |
| high | osv/GHSA-mrhx-c7xc-m3w5 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-mrhx-c7xc-m3w5 | Dependencies (osv-scanner) |
| high | osv/GHSA-mw96-cpmx-2vgc |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-mw96-cpmx-2vgc | Dependencies (osv-scanner) |
| high | osv/GHSA-mwp4-54f8-5fhr |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-mwp4-54f8-5fhr | Dependencies (osv-scanner) |
| high | osv/GHSA-p9ff-h696-f583 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-p9ff-h696-f583 | Dependencies (osv-scanner) |
| high | osv/GHSA-q3j6-qgpj-74h6 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-q3j6-qgpj-74h6 | Dependencies (osv-scanner) |
| high | osv/GHSA-q5qw-h33p-qvwr |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-q5qw-h33p-qvwr | Dependencies (osv-scanner) |
| high | osv/GHSA-qhr7-859c-m2p7 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-qhr7-859c-m2p7 | Dependencies (osv-scanner) |
| high | osv/GHSA-qr28-fpjm-wq7f |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-qr28-fpjm-wq7f | Dependencies (osv-scanner) |
| high | osv/GHSA-qrxm-fqhp-jwvm |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-qrxm-fqhp-jwvm | Dependencies (osv-scanner) |
| high | osv/GHSA-qw65-cvwx-89v3 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-qw65-cvwx-89v3 | Dependencies (osv-scanner) |
| high | osv/GHSA-qwww-vcr4-c8h2 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-qwww-vcr4-c8h2 | Dependencies (osv-scanner) |
| high | osv/GHSA-r28c-9q8g-f849 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-r28c-9q8g-f849 | Dependencies (osv-scanner) |
| high | osv/GHSA-rf6f-7fwh-wjgh |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-rf6f-7fwh-wjgh | Dependencies (osv-scanner) |
| high | osv/GHSA-rfgv-xxqx-mfg5 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-rfgv-xxqx-mfg5 | Dependencies (osv-scanner) |
| high | osv/GHSA-rgw5-rvv9-x895 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-rgw5-rvv9-x895 | Dependencies (osv-scanner) |
| high | osv/GHSA-rxv8-25v2-qmq8 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-rxv8-25v2-qmq8 | Dependencies (osv-scanner) |
| high | osv/GHSA-v2hh-gcrm-f6hx |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-v2hh-gcrm-f6hx | Dependencies (osv-scanner) |
| high | osv/GHSA-v2wj-q39q-566r |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-v2wj-q39q-566r | Dependencies (osv-scanner) |
| high | osv/GHSA-v39h-62p7-jpjc |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-v39h-62p7-jpjc | Dependencies (osv-scanner) |
| high | osv/GHSA-v9p9-hfj2-hcw8 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-v9p9-hfj2-hcw8 | Dependencies (osv-scanner) |
| high | osv/GHSA-vrm6-8vpv-qv8q |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-vrm6-8vpv-qv8q | Dependencies (osv-scanner) |
| high | osv/GHSA-vxpw-j846-p89q |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-vxpw-j846-p89q | Dependencies (osv-scanner) |
| high | osv/GHSA-wc8c-qw6v-h7f6 |
frontend/package-lock.json | @hono/[email protected] (npm) is affected by GHSA-wc8c-qw6v-h7f6 | Dependencies (osv-scanner) |
| high | osv/GHSA-xh87-mx6m-69f3 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-xh87-mx6m-69f3 | Dependencies (osv-scanner) |
| high | osv/GHSA-xjj6-f33q-929c |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-xjj6-f33q-929c | Dependencies (osv-scanner) |
| high | osv/GHSA-xwg4-73v4-xw9w |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-xwg4-73v4-xw9w | Dependencies (osv-scanner) |
| high | opengrep/javascript.lang.security.detect-insecure-websocket |
frontend/src/hooks/use-approvals-stream.ts:66 | Insecure WebSocket Detected. WebSocket Secure (wss) should be used for all WebSocket connections. [confidence low] | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/chronicler/migrations/007_tombstone_heartbeat_episodes.py:109 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/chronicler/migrations/008_tombstone_memory_calendar_episodes.py:121 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/chronicler/migrations/009_reset_watermarks_for_old_session_titles.py:129 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.audit.avoid-sqlalchemy-text |
roster/chronicler/migrations/010_dedup_calendar_episodes_by_origin.py:112 | sqlalchemy.text passes the constructed SQL statement to the database mostly unchanged. This means that the usual SQL injection protections are not applied and this function is vulnerable to SQL injection if user input can reach here.... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/chronicler/migrations/010_dedup_calendar_episodes_by_origin.py:85 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/chronicler/migrations/010_dedup_calendar_episodes_by_origin.py:94 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/chronicler/migrations/011_reset_steam_spotify_watermarks.py:60 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/education/tools/mastery.py:264 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/education/tools/mind_map_nodes.py:291 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/education/tools/spaced_repetition.py:253 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/finance/tools/facts.py:1158 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/finance/tools/facts.py:1658 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/finance/tools/transactions.py:1514 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/javascript.lang.security.detect-insecure-websocket |
roster/home/modules/__init__.py:713 | Insecure WebSocket Detected. WebSocket Secure (wss) should be used for all WebSocket connections. [confidence low] | Static analysis (opengrep) |
| high | opengrep/javascript.lang.security.detect-insecure-websocket |
roster/home/modules/__init__.py:720 | Insecure WebSocket Detected. WebSocket Secure (wss) should be used for all WebSocket connections. [confidence low] | Static analysis (opengrep) |
| high | opengrep/javascript.lang.security.detect-insecure-websocket |
roster/home/modules/__init__.py:722 | Insecure WebSocket Detected. WebSocket Secure (wss) should be used for all WebSocket connections. [confidence low] | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/relationship/api/router.py:1608 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/relationship/api/router.py:2215 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/relationship/api/router.py:3951 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.audit.avoid-sqlalchemy-text |
roster/relationship/migrations/003_consolidate_contacts_to_public.py:171 | sqlalchemy.text passes the constructed SQL statement to the database mostly unchanged. This means that the usual SQL injection protections are not applied and this function is vulnerable to SQL injection if user input can reach here.... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.audit.avoid-sqlalchemy-text |
roster/relationship/migrations/003_consolidate_contacts_to_public.py:174 | sqlalchemy.text passes the constructed SQL statement to the database mostly unchanged. This means that the usual SQL injection protections are not applied and this function is vulnerable to SQL injection if user input can reach here.... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.audit.avoid-sqlalchemy-text |
roster/relationship/migrations/003_consolidate_contacts_to_public.py:91 | sqlalchemy.text passes the constructed SQL statement to the database mostly unchanged. This means that the usual SQL injection protections are not applied and this function is vulnerable to SQL injection if user input can reach here.... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.audit.avoid-sqlalchemy-text |
roster/relationship/migrations/003_consolidate_contacts_to_public.py:97 | sqlalchemy.text passes the constructed SQL statement to the database mostly unchanged. This means that the usual SQL injection protections are not applied and this function is vulnerable to SQL injection if user input can reach here.... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.audit.avoid-sqlalchemy-text |
roster/relationship/migrations/010_drop_legacy_contact_tables.py:250 | sqlalchemy.text passes the constructed SQL statement to the database mostly unchanged. This means that the usual SQL injection protections are not applied and this function is vulnerable to SQL injection if user input can reach here.... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.audit.avoid-sqlalchemy-text |
roster/relationship/migrations/010_drop_legacy_contact_tables.py:254 | sqlalchemy.text passes the constructed SQL statement to the database mostly unchanged. This means that the usual SQL injection protections are not applied and this function is vulnerable to SQL injection if user input can reach here.... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/relationship/migrations/013_relationship_facts.py:80 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/relationship/migrations/014_predicate_registry.py:121 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/relationship/migrations/014_predicate_registry.py:162 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/relationship/migrations/015_queue_dismissed_predicate.py:50 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/relationship/migrations/015_queue_dismissed_predicate.py:82 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/relationship/migrations/015_queue_dismissed_predicate.py:93 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/relationship/migrations/016_credentials_carveout.py:85 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/relationship/migrations/017_repair_contact_predicate_seeds.py:122 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/relationship/migrations/017_repair_contact_predicate_seeds.py:88 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/relationship/tools/contacts.py:664 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/relationship/tools/contacts.py:689 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/switchboard/api/router.py:2314 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/switchboard/migrations/001_switchboard_messaging.py:308 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/switchboard/migrations/001_switchboard_messaging.py:355 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/switchboard/migrations/006_switchboard_owntracks_skip.py:39 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/switchboard/migrations/006_switchboard_owntracks_skip.py:63 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/switchboard/migrations/007_wellness_route_rule.py:48 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/switchboard/migrations/007_wellness_route_rule.py:72 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/switchboard/migrations/008_connector_heartbeat_partition_security.py:41 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/switchboard/migrations/008_connector_heartbeat_partition_security.py:64 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/switchboard/migrations/009_message_inbox_partition_security_definer.py:48 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/switchboard/migrations/009_message_inbox_partition_security_definer.py:60 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/switchboard/migrations/010_switchboard_home_assistant_skip.py:41 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/switchboard/migrations/010_switchboard_home_assistant_skip.py:65 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
roster/travel/tools/bookings.py:654 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
scripts/backfill_transitory_entities.py:388 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
scripts/backfill_transitory_entities.py:427 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
scripts/migrate_blobs_to_s3.py:52 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-audit |
src/butlers/api/routers/cli_auth.py:367 | Detected 'create_subprocess_exec' function without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/api/routers/data_ops.py:339 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/api/routers/data_ops.py:347 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/api/routers/runtime_config.py:188 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-audit |
src/butlers/cli_auth/health.py:213 | Detected 'create_subprocess_exec' function without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-audit |
src/butlers/cli_auth/session.py:49 | Detected 'create_subprocess_exec' function without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-audit |
src/butlers/connectors/bridge_manager.py:429 | Detected 'create_subprocess_exec' function without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-tainted-env-args |
src/butlers/connectors/bridge_manager.py:429 | Detected 'create_subprocess_exec' function with user controlled data. You may consider using 'shlex.escape()'. [confidence low] | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/connectors/home_assistant.py:1329 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/javascript.lang.security.detect-insecure-websocket |
src/butlers/connectors/home_assistant.py:221 | Insecure WebSocket Detected. WebSocket Secure (wss) should be used for all WebSocket connections. [confidence low] | Static analysis (opengrep) |
| high | opengrep/javascript.lang.security.detect-insecure-websocket |
src/butlers/connectors/home_assistant.py:229 | Insecure WebSocket Detected. WebSocket Secure (wss) should be used for all WebSocket connections. [confidence low] | Static analysis (opengrep) |
| high | opengrep/javascript.lang.security.detect-insecure-websocket |
src/butlers/connectors/live_listener/__init__.py:31 | Insecure WebSocket Detected. WebSocket Secure (wss) should be used for all WebSocket connections. [confidence low] | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/connectors/steam.py:322 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/connectors/steam.py:333 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/connectors/steam.py:377 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/connectors/steam.py:452 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/core/corrections.py:297 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/core/corrections.py:728 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-audit |
src/butlers/core/healing/dispatch.py:518 | Detected 'create_subprocess_exec' function without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-tainted-env-args |
src/butlers/core/healing/dispatch.py:518 | Detected 'create_subprocess_exec' function with user controlled data. You may consider using 'shlex.escape()'. [confidence low] | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-audit |
src/butlers/core/healing/worktree.py:123 | Detected 'create_subprocess_exec' function without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-audit |
src/butlers/core/qa/dispatch.py:1450 | Detected 'create_subprocess_exec' function without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-audit |
src/butlers/core/qa/dispatch.py:2864 | Detected 'create_subprocess_exec' function without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-audit |
src/butlers/core/qa/dispatch.py:616 | Detected 'create_subprocess_exec' function without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-audit |
src/butlers/core/qa/repo_clone.py:40 | Detected 'create_subprocess_exec' function without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/core/qa/sources/session_records.py:140 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/core/runtime_config.py:131 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-audit |
src/butlers/core/runtimes/claude_code.py:439 | Detected 'create_subprocess_exec' function without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-tainted-env-args |
src/butlers/core/runtimes/claude_code.py:439 | Detected 'create_subprocess_exec' function with user controlled data. You may consider using 'shlex.escape()'. [confidence low] | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-audit |
src/butlers/core/runtimes/codex.py:1780 | Detected 'create_subprocess_exec' function without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-audit |
src/butlers/core/runtimes/gemini.py:310 | Detected 'create_subprocess_exec' function without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-asyncio-create-exec-audit |
src/butlers/core/runtimes/opencode.py:906 | Detected 'create_subprocess_exec' function without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/core/scheduler.py:2055 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/core/scheduler.py:629 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/core/scheduler.py:664 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/core/scheduler.py:703 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/core/scheduler.py:740 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/core/seasonal.py:503 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/core/temporal/deadlines_db.py:300 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/credential_store.py:286 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/credential_store.py:345 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/credential_store.py:495 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/credential_store.py:597 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/credential_store.py:598 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/db.py:197 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/db.py:254 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.audit.avoid-sqlalchemy-text |
src/butlers/migrations.py:241 | sqlalchemy.text passes the constructed SQL statement to the database mostly unchanged. This means that the usual SQL injection protections are not applied and this function is vulnerable to SQL injection if user input can reach here.... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/modules/contacts/backfill.py:483 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/modules/memory/migrations/003_wellness_predicates.py:235 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/modules/memory/migrations/004_embedding_model_version.py:36 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/modules/memory/migrations/004_embedding_model_version.py:44 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/modules/memory/storage.py:1506 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/modules/memory/storage.py:2002 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/modules/memory/storage.py:2308 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/modules/memory/storage.py:338 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/modules/memory/storage.py:527 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/modules/memory/storage.py:575 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/modules/memory/storage.py:758 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/scripts/contact_backfill_triples.py:345 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query |
src/butlers/scripts/contact_migration_snapshot.py:139 | Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-subprocess-use-audit |
src/butlers/testing/changed_files.py:62 | Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external... | Static analysis (opengrep) |
| high | opengrep/python.sqlalchemy.security.audit.avoid-sqlalchemy-text |
src/butlers/testing/migration.py:62 | sqlalchemy.text passes the constructed SQL statement to the database mostly unchanged. This means that the usual SQL injection protections are not applied and this function is vulnerable to SQL injection if user input can reach here.... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-subprocess-use-audit |
src/butlers/testing/scoped_runner.py:215 | Detected subprocess function 'CompletedProcess' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an... | Static analysis (opengrep) |
| high | opengrep/python.lang.security.audit.dangerous-subprocess-use-audit |
src/butlers/testing/scoped_runner.py:222 | Detected subprocess function 'run' without a static string. If this data can be controlled by a malicious actor, it may be an instance of command injection. Audit the use of this call to ensure it is not controllable by an external... | Static analysis (opengrep) |
| high | osv/GHSA-q4h4-gmj2-qvw2 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5013, GHSA-q4h4-gmj2-qvw2 | Dependencies (osv-scanner) |
| high | osv/GHSA-w879-237q-wc7r |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5018, GHSA-w879-237q-wc7r | Dependencies (osv-scanner) |
| medium | opengrep/python.lang.security.audit.dynamic-urllib-use-detected |
.claude/skills/butler-qa-invoke/scripts/invoke_qa_canary.py:66 | Detected a dynamic value being used with urllib. urllib supports 'file://' schemes, so a dynamic value controlled by a malicious actor may allow them to read arbitrary files. Audit uses of urllib calls to ensure user data cannot control... | Static analysis (opengrep) |
| medium | zizmor/excessive-permissions |
.github/workflows/ci.yml:1 | overly broad permissions [confidence medium] | CI workflows (zizmor) |
| medium | zizmor/excessive-permissions |
.github/workflows/ci.yml:113 | overly broad permissions [confidence medium] | CI workflows (zizmor) |
| medium | zizmor/excessive-permissions |
.github/workflows/ci.yml:8 | overly broad permissions [confidence medium] | CI workflows (zizmor) |
| medium | zizmor/excessive-permissions |
.github/workflows/ci.yml:84 | overly broad permissions [confidence medium] | CI workflows (zizmor) |
| medium | zizmor/excessive-permissions |
.github/workflows/nightly.yml:10 | overly broad permissions [confidence medium] | CI workflows (zizmor) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_001_foundation.py:103 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_001_foundation.py:121 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_001_foundation.py:138 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_001_foundation.py:335 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_001_foundation.py:771 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_001_foundation.py:81 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_002_identity.py:59 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_004_model_and_tokens.py:122 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_004_model_and_tokens.py:148 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_004_model_and_tokens.py:259 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_004_model_and_tokens.py:76 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_005_self_healing.py:56 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_006_dashboard.py:62 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_006_dashboard.py:84 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_007_connectors.py:82 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_008_external_accounts.py:111 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_008_external_accounts.py:63 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_008_external_accounts.py:85 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_009_memory_catalog.py:73 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_009_memory_catalog.py:97 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_010_insight_tables.py:68 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_010_insight_tables.py:92 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_012_temporal_intelligence.py:118 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_012_temporal_intelligence.py:129 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_012_temporal_intelligence.py:132 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_012_temporal_intelligence.py:51 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_012_temporal_intelligence.py:78 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_012_temporal_intelligence.py:98 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_013_event_chains.py:122 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_013_event_chains.py:128 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_013_event_chains.py:135 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_013_event_chains.py:145 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_013_event_chains.py:72 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_013_event_chains.py:99 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_044_event_chains_status.py:52 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_044_event_chains_status.py:83 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_047_rename_shared_indexes.py:63 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_047_rename_shared_indexes.py:89 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_048_round_robin_counters.py:49 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_050_schedule_token_budget.py:40 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_050_schedule_token_budget.py:59 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_051_qa_patrols.py:60 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_052_qa_findings.py:72 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_053_qa_dismissals.py:55 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:119 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:141 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:163 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:185 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:204 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:247 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:281 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | opengrep/python.lang.security.audit.formatted-sql-query |
alembic/versions/core/core_055_v_qa_recent_failures.py:282 | Detected possible formatted SQL query. Use parameterized queries instead. [confidence low] | Static analysis (opengrep) |
| medium | osv/GHSA-26pp-8wgv-hjvm |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-26pp-8wgv-hjvm | Dependencies (osv-scanner) |
| medium | osv/GHSA-27v5-c462-wpq7 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-27v5-c462-wpq7 | Dependencies (osv-scanner) |
| medium | osv/GHSA-2gcr-mfcq-wcc3 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-2gcr-mfcq-wcc3 | Dependencies (osv-scanner) |
| medium | osv/GHSA-2j2x-hqr9-3h42 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-2j2x-hqr9-3h42 | Dependencies (osv-scanner) |
| medium | osv/GHSA-2jfj-6hjv-fm6j |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-2jfj-6hjv-fm6j | Dependencies (osv-scanner) |
| medium | osv/GHSA-2mjp-6q6p-2qxm |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-2mjp-6q6p-2qxm | Dependencies (osv-scanner) |
| medium | osv/GHSA-337j-9hxr-rhxg |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-337j-9hxr-rhxg | Dependencies (osv-scanner) |
| medium | osv/GHSA-3hrh-pfw6-9m5x |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-3hrh-pfw6-9m5x | Dependencies (osv-scanner) |
| medium | osv/GHSA-3v7f-55p6-f55p |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-3v7f-55p6-f55p | Dependencies (osv-scanner) |
| medium | osv/GHSA-3v7f-55p6-f55p |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-3v7f-55p6-f55p | Dependencies (osv-scanner) |
| medium | osv/GHSA-3xpg-4rpp-hhhm |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-3xpg-4rpp-hhhm | Dependencies (osv-scanner) |
| medium | osv/GHSA-458j-xx4x-4375 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-458j-xx4x-4375 | Dependencies (osv-scanner) |
| medium | osv/GHSA-46wx-v44x-9hh2 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-46wx-v44x-9hh2 | Dependencies (osv-scanner) |
| medium | osv/GHSA-4992-7rv2-5pvq |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-4992-7rv2-5pvq | Dependencies (osv-scanner) |
| medium | osv/GHSA-4h7h-rv7c-7m2v |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-4h7h-rv7c-7m2v | Dependencies (osv-scanner) |
| medium | osv/GHSA-4m76-xfj5-7975 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-4m76-xfj5-7975 | Dependencies (osv-scanner) |
| medium | osv/GHSA-4mjr-xmp4-gh2g |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-4mjr-xmp4-gh2g | Dependencies (osv-scanner) |
| medium | osv/GHSA-4qv8-2p9j-2685 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-4qv8-2p9j-2685 | Dependencies (osv-scanner) |
| medium | osv/GHSA-4w7w-66w2-5vf9 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-4w7w-66w2-5vf9 | Dependencies (osv-scanner) |
| medium | osv/GHSA-54fx-42gc-7vw4 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-54fx-42gc-7vw4 | Dependencies (osv-scanner) |
| medium | osv/GHSA-55wc-3pg8-jfw6 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-55wc-3pg8-jfw6 | Dependencies (osv-scanner) |
| medium | osv/GHSA-5pq2-9x2x-5p6w |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-5pq2-9x2x-5p6w | Dependencies (osv-scanner) |
| medium | osv/GHSA-698v-4r3x-3vcv |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-698v-4r3x-3vcv | Dependencies (osv-scanner) |
| medium | osv/GHSA-698v-4r3x-3vcv |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-698v-4r3x-3vcv | Dependencies (osv-scanner) |
| medium | osv/GHSA-69xw-7hcm-h432 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-69xw-7hcm-h432 | Dependencies (osv-scanner) |
| medium | osv/GHSA-6pq8-jhm2-2vcw |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-6pq8-jhm2-2vcw | Dependencies (osv-scanner) |
| medium | osv/GHSA-6prh-2h8m-c8cw |
frontend/package-lock.json | @modelcontextprotocol/[email protected] (npm) is affected by GHSA-6prh-2h8m-c8cw | Dependencies (osv-scanner) |
| medium | osv/GHSA-82fw-gwwq-j7x9 |
frontend/package-lock.json | @vitest/[email protected] (npm) is affected by GHSA-82fw-gwwq-j7x9 | Dependencies (osv-scanner) |
| medium | osv/GHSA-82fw-gwwq-j7x9 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-82fw-gwwq-j7x9 | Dependencies (osv-scanner) |
| medium | osv/GHSA-8j4g-w8fx-2239 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-8j4g-w8fx-2239 | Dependencies (osv-scanner) |
| medium | osv/GHSA-8xcm-r25x-g524 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-8xcm-r25x-g524 | Dependencies (osv-scanner) |
| medium | osv/GHSA-92pp-h63x-v22m |
frontend/package-lock.json | @hono/[email protected] (npm) is affected by GHSA-92pp-h63x-v22m | Dependencies (osv-scanner) |
| medium | osv/GHSA-9fm3-97px-rjf6 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-9fm3-97px-rjf6 | Dependencies (osv-scanner) |
| medium | osv/GHSA-9vqf-7f2p-gf9v |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-9vqf-7f2p-gf9v | Dependencies (osv-scanner) |
| medium | osv/GHSA-crvj-82cr-hjcx |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-crvj-82cr-hjcx | Dependencies (osv-scanner) |
| medium | osv/GHSA-f22v-gfqf-p8f3 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-f22v-gfqf-p8f3 | Dependencies (osv-scanner) |
| medium | osv/GHSA-f23p-vx2j-j53r |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-f23p-vx2j-j53r | Dependencies (osv-scanner) |
| medium | osv/GHSA-f577-qrjj-4474 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-f577-qrjj-4474 | Dependencies (osv-scanner) |
| medium | osv/GHSA-f72v-6w45-q472 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-f72v-6w45-q472 | Dependencies (osv-scanner) |
| medium | osv/GHSA-f886-m6hf-6m8v |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-f886-m6hf-6m8v | Dependencies (osv-scanner) |
| medium | osv/GHSA-frvp-7c67-39w9 |
frontend/package-lock.json | @hono/[email protected] (npm) is affected by GHSA-frvp-7c67-39w9 | Dependencies (osv-scanner) |
| medium | osv/GHSA-fx2h-pf6j-xcff |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-fx2h-pf6j-xcff | Dependencies (osv-scanner) |
| medium | osv/GHSA-fx2h-pf6j-xcff |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-fx2h-pf6j-xcff | Dependencies (osv-scanner) |
| medium | osv/GHSA-fxqj-rqcc-2cmp |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-fxqj-rqcc-2cmp | Dependencies (osv-scanner) |
| medium | osv/GHSA-g3hv-75wg-m249 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-g3hv-75wg-m249 | Dependencies (osv-scanner) |
| medium | osv/GHSA-g6gw-c38x-mqfc |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-g6gw-c38x-mqfc | Dependencies (osv-scanner) |
| medium | osv/GHSA-gcqx-w48m-w2h4 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-gcqx-w48m-w2h4 | Dependencies (osv-scanner) |
| medium | osv/GHSA-gqvv-2mrq-wpjv |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-gqvv-2mrq-wpjv | Dependencies (osv-scanner) |
| medium | osv/GHSA-h3mg-xc3c-68pw |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-h3mg-xc3c-68pw | Dependencies (osv-scanner) |
| medium | osv/GHSA-h67p-54hq-rp68 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-h67p-54hq-rp68 | Dependencies (osv-scanner) |
| medium | osv/GHSA-h7mg-cq63-vhpq |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-h7mg-cq63-vhpq | Dependencies (osv-scanner) |
| medium | osv/GHSA-h8fp-f39c-q6mh |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-h8fp-f39c-q6mh | Dependencies (osv-scanner) |
| medium | osv/GHSA-hrr3-gc8f-f4qj |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-hrr3-gc8f-f4qj | Dependencies (osv-scanner) |
| medium | osv/GHSA-hvrm-45r6-mjfj |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-hvrm-45r6-mjfj | Dependencies (osv-scanner) |
| medium | osv/GHSA-hxh3-vqpv-xpqv |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-hxh3-vqpv-xpqv | Dependencies (osv-scanner) |
| medium | osv/GHSA-j6c9-x7qj-28xf |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-j6c9-x7qj-28xf | Dependencies (osv-scanner) |
| medium | osv/GHSA-j6r3-76f7-8jcv |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-j6r3-76f7-8jcv | Dependencies (osv-scanner) |
| medium | osv/GHSA-jpvv-r467-5p4w |
frontend/package-lock.json | @hono/[email protected] (npm) is affected by GHSA-jpvv-r467-5p4w | Dependencies (osv-scanner) |
| medium | osv/GHSA-jr45-8vmc-qm54 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-jr45-8vmc-qm54 | Dependencies (osv-scanner) |
| medium | osv/GHSA-jxxr-4gwj-5jf2 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-jxxr-4gwj-5jf2 | Dependencies (osv-scanner) |
| medium | osv/GHSA-m8rv-5g2x-5cg5 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-m8rv-5g2x-5cg5 | Dependencies (osv-scanner) |
| medium | osv/GHSA-p498-v437-472g |
frontend/package-lock.json | @humanfs/[email protected] (npm) is affected by GHSA-p498-v437-472g | Dependencies (osv-scanner) |
| medium | osv/GHSA-p6xx-57qc-3wxr |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-p6xx-57qc-3wxr | Dependencies (osv-scanner) |
| medium | osv/GHSA-p77w-8qqv-26rm |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-p77w-8qqv-26rm | Dependencies (osv-scanner) |
| medium | osv/GHSA-p88m-4jfj-68fv |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-p88m-4jfj-68fv | Dependencies (osv-scanner) |
| medium | osv/GHSA-phc3-fgpg-7m6h |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-phc3-fgpg-7m6h | Dependencies (osv-scanner) |
| medium | osv/GHSA-pmjh-fq2x-6v4x |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-pmjh-fq2x-6v4x | Dependencies (osv-scanner) |
| medium | osv/GHSA-pr7r-676h-xcf6 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-pr7r-676h-xcf6 | Dependencies (osv-scanner) |
| medium | osv/GHSA-q2hr-2g5m-vwhr |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-q2hr-2g5m-vwhr | Dependencies (osv-scanner) |
| medium | osv/GHSA-q8mj-m7cp-5q26 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-q8mj-m7cp-5q26 | Dependencies (osv-scanner) |
| medium | osv/GHSA-qp7p-654g-cw7p |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-qp7p-654g-cw7p | Dependencies (osv-scanner) |
| medium | osv/GHSA-qx2v-qp2m-jg93 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-qx2v-qp2m-jg93 | Dependencies (osv-scanner) |
| medium | osv/GHSA-qxg6-89mg-rqv8 |
frontend/package-lock.json | @vitest/[email protected] (npm) is affected by GHSA-qxg6-89mg-rqv8 | Dependencies (osv-scanner) |
| medium | osv/GHSA-r5rp-j6wh-rvv4 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-r5rp-j6wh-rvv4 | Dependencies (osv-scanner) |
| medium | osv/GHSA-r825-w8mm-5pxw |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-r825-w8mm-5pxw | Dependencies (osv-scanner) |
| medium | osv/GHSA-r825-w8mm-5pxw |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-r825-w8mm-5pxw | Dependencies (osv-scanner) |
| medium | osv/GHSA-rj75-hqrm-r3gf |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-rj75-hqrm-r3gf | Dependencies (osv-scanner) |
| medium | osv/GHSA-rpw4-54j3-4h4q |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-rpw4-54j3-4h4q | Dependencies (osv-scanner) |
| medium | osv/GHSA-rq7h-c2jc-7f22 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-rq7h-c2jc-7f22 | Dependencies (osv-scanner) |
| medium | osv/GHSA-rq7h-c2jc-7f22 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-rq7h-c2jc-7f22 | Dependencies (osv-scanner) |
| medium | osv/GHSA-rv63-4mwf-qqc2 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-rv63-4mwf-qqc2 | Dependencies (osv-scanner) |
| medium | osv/GHSA-rvq5-wwqv-78pq |
frontend/package-lock.json | @modelcontextprotocol/[email protected] (npm) is affected by GHSA-rvq5-wwqv-78pq | Dependencies (osv-scanner) |
| medium | osv/GHSA-rx4f-c7p8-82vq |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-rx4f-c7p8-82vq | Dependencies (osv-scanner) |
| medium | osv/GHSA-rxp7-6hxx-x8q5 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-rxp7-6hxx-x8q5 | Dependencies (osv-scanner) |
| medium | osv/GHSA-v2v4-37r5-5v8g |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-v2v4-37r5-5v8g | Dependencies (osv-scanner) |
| medium | osv/GHSA-v3r7-h72x-cjcm |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-v3r7-h72x-cjcm | Dependencies (osv-scanner) |
| medium | osv/GHSA-v6wh-96g9-6wx3 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-v6wh-96g9-6wx3 | Dependencies (osv-scanner) |
| medium | osv/GHSA-v6wh-96g9-6wx3 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-v6wh-96g9-6wx3 | Dependencies (osv-scanner) |
| medium | osv/GHSA-v8w9-8mx6-g223 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-v8w9-8mx6-g223 | Dependencies (osv-scanner) |
| medium | osv/GHSA-vcc3-ghjq-m6fr |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-vcc3-ghjq-m6fr | Dependencies (osv-scanner) |
| medium | osv/GHSA-w5vr-8v7q-w6rv |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-w5vr-8v7q-w6rv | Dependencies (osv-scanner) |
| medium | osv/GHSA-w62v-xxxg-mg59 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-w62v-xxxg-mg59 | Dependencies (osv-scanner) |
| medium | osv/GHSA-w74x-v6f9-j3xg |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-w74x-v6f9-j3xg | Dependencies (osv-scanner) |
| medium | osv/GHSA-w9m9-85wc-3x92 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-w9m9-85wc-3x92 | Dependencies (osv-scanner) |
| medium | osv/GHSA-wgpf-jwqj-8h8p |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-wgpf-jwqj-8h8p | Dependencies (osv-scanner) |
| medium | osv/GHSA-wmmm-f939-6g9c |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-wmmm-f939-6g9c | Dependencies (osv-scanner) |
| medium | osv/GHSA-wrjc-x8rr-h8h6 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-wrjc-x8rr-h8h6 | Dependencies (osv-scanner) |
| medium | osv/GHSA-wwfh-h76j-fc44 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-wwfh-h76j-fc44 | Dependencies (osv-scanner) |
| medium | osv/GHSA-x5fp-wj9c-mxmx |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-x5fp-wj9c-mxmx | Dependencies (osv-scanner) |
| medium | osv/GHSA-xf4j-xp2r-rqqx |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-xf4j-xp2r-rqqx | Dependencies (osv-scanner) |
| medium | osv/GHSA-xgm2-5f3f-mvvc |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-xgm2-5f3f-mvvc | Dependencies (osv-scanner) |
| medium | osv/GHSA-xpcf-pg52-r92g |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-xpcf-pg52-r92g | Dependencies (osv-scanner) |
| medium | osv/GHSA-xrhx-7g5j-rcj5 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-xrhx-7g5j-rcj5 | Dependencies (osv-scanner) |
| medium | osv/GHSA-45gg-vh54-h5m9 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5014, GHSA-45gg-vh54-h5m9 | Dependencies (osv-scanner) |
| medium | osv/GHSA-5cv4-jp36-h3mw |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5028, GHSA-5cv4-jp36-h3mw | Dependencies (osv-scanner) |
| medium | osv/GHSA-78mq-xcr3-xm33 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5015, GHSA-78mq-xcr3-xm33 | Dependencies (osv-scanner) |
| medium | osv/GHSA-9m57-25v3-79x9 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5033, GHSA-9m57-25v3-79x9 | Dependencies (osv-scanner) |
| medium | osv/GHSA-qpw4-5x99-6vjp |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5016, GHSA-qpw4-5x99-6vjp | Dependencies (osv-scanner) |
| medium | osv/GO-2026-4559 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-4559 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-4918 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-4918 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-5024 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5024 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-5025 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5025 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-5026 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5026 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-5027 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5027 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-5029 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5029 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-5030 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5030 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-5932 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5932 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-5942 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5942 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-5970 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-5970 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-6303 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-6303 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-6354 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-6354 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-6355 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-6355 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-6603 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-6603 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-6610 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-6610 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-6611 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-6611 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-6612 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-6612 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-6617 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-6617 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-6629 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-6629 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-6860 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-6860 | Dependencies (osv-scanner) |
| medium | osv/GO-2026-6866 |
whatsapp-bridge/go.mod | golang.org/x/[email protected] (Go) is affected by GO-2026-6866 | Dependencies (osv-scanner) |
| low | gitleaks/generic-api-key |
.beads/backup/events.jsonl:3227 | Possible generic-api-key secret in history (commit 63c6e85831); removed from the current tree but still retrievable | Secrets (gitleaks) |
| low | gitleaks/generic-api-key |
.beads/backup/issues.jsonl:97 | Possible generic-api-key secret in history (commit 35302b2deb); removed from the current tree but still retrievable | Secrets (gitleaks) |
| low | gitleaks/generic-api-key |
.beads/issues.jsonl:303 | Possible generic-api-key secret in history (commit 0436812047); removed from the current tree but still retrievable | Secrets (gitleaks) |
| low | zizmor/artipacked |
.github/workflows/ci.yml:121 | credential persistence through GitHub Actions artifacts [confidence low] | CI workflows (zizmor) |
| low | zizmor/artipacked |
.github/workflows/ci.yml:28 | credential persistence through GitHub Actions artifacts [confidence low] | CI workflows (zizmor) |
| low | zizmor/artipacked |
.github/workflows/ci.yml:92 | credential persistence through GitHub Actions artifacts [confidence low] | CI workflows (zizmor) |
| low | zizmor/artipacked |
.github/workflows/nightly.yml:30 | credential persistence through GitHub Actions artifacts [confidence low] | CI workflows (zizmor) |
| low | zizmor/artipacked |
.github/workflows/release.yml:20 | credential persistence through GitHub Actions artifacts [confidence low] | CI workflows (zizmor) |
| low | gitleaks/generic-api-key |
docs/switchboard/api_authentication.md:96 | Possible generic-api-key secret in history (commit 82b803f6de); removed from the current tree but still retrievable | Secrets (gitleaks) |
| low | osv/GHSA-2gqq-gqf2-x968 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-2gqq-gqf2-x968 | Dependencies (osv-scanner) |
| low | osv/GHSA-333x-w4r6-6crp |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-333x-w4r6-6crp | Dependencies (osv-scanner) |
| low | osv/GHSA-35p6-xmwp-9g52 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-35p6-xmwp-9g52 | Dependencies (osv-scanner) |
| low | osv/GHSA-3gg2-335m-rxc6 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-3gg2-335m-rxc6 | Dependencies (osv-scanner) |
| low | osv/GHSA-4x5r-pxfx-6jf8 |
frontend/package-lock.json | @babel/[email protected] (npm) is affected by GHSA-4x5r-pxfx-6jf8 | Dependencies (osv-scanner) |
| low | osv/GHSA-79qm-7rj5-m7r9 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-79qm-7rj5-m7r9 | Dependencies (osv-scanner) |
| low | osv/GHSA-8436-99hf-9mmv |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-8436-99hf-9mmv | Dependencies (osv-scanner) |
| low | osv/GHSA-84g9-w2xq-vcv6 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-84g9-w2xq-vcv6 | Dependencies (osv-scanner) |
| low | osv/GHSA-9jrq-w75r-8gcw |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-9jrq-w75r-8gcw | Dependencies (osv-scanner) |
| low | osv/GHSA-9jrq-w75r-8gcw |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-9jrq-w75r-8gcw | Dependencies (osv-scanner) |
| low | osv/GHSA-g7r4-m6w7-qqqr |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-g7r4-m6w7-qqqr | Dependencies (osv-scanner) |
| low | osv/GHSA-g8m3-5g58-fq7m |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-g8m3-5g58-fq7m | Dependencies (osv-scanner) |
| low | osv/GHSA-hm8q-7f3q-5f36 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-hm8q-7f3q-5f36 | Dependencies (osv-scanner) |
| low | osv/GHSA-r53p-7pc4-xj5r |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-r53p-7pc4-xj5r | Dependencies (osv-scanner) |
| low | osv/GHSA-v422-hmwv-36x6 |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-v422-hmwv-36x6 | Dependencies (osv-scanner) |
| low | osv/GHSA-xhq7-xmqj-769h |
frontend/package-lock.json | [email protected] (npm) is affected by GHSA-xhq7-xmqj-769h | Dependencies (osv-scanner) |
| low | gitleaks/generic-api-key |
openspec/changes/chronicler-time-butler/tasks.md:54 | Possible generic-api-key secret in history (commit cf49414617); removed from the current tree but still retrievable | Secrets (gitleaks) |
| low | gitleaks/generic-api-key |
openspec/changes/v1-mvp-spec/specs/butler-credentials/spec.md:275 | Possible generic-api-key secret in history (commit ee69786de1); removed from the current tree but still retrievable | Secrets (gitleaks) |
| low | gitleaks/generic-api-key |
roster/messenger/tests/test_delivery_migrations.py:273 | Possible generic-api-key secret in the current tree (test/docs/example file) | Secrets (gitleaks) |
| low | gitleaks/generic-api-key |
tests/api/test_misc_endpoints.py:64 | Possible generic-api-key secret in the current tree (test/docs/example file) | Secrets (gitleaks) |
| low | gitleaks/generic-api-key |
tests/config/test_credentials.py:62 | Possible generic-api-key secret in the current tree (test/docs/example file) | Secrets (gitleaks) |
| low | gitleaks/generic-api-key |
tests/connectors/test_steam_client.py:68 | Possible generic-api-key secret in history (commit cb2d800dbe); removed from the current tree but still retrievable | Secrets (gitleaks) |
| low | gitleaks/generic-api-key |
tests/core/healing/test_anonymizer.py:35 | Possible generic-api-key secret in the current tree (test/docs/example file) | Secrets (gitleaks) |
| low | gitleaks/github-pat |
tests/daemon/test_daemon.py:1347 | Possible github-pat secret in history (commit 4d7f1797d9); removed from the current tree but still retrievable | Secrets (gitleaks) |
| low | gitleaks/generic-api-key |
tests/modules/test_approval_redaction.py:131 | Possible generic-api-key secret in history (commit 3a2a2ee144); removed from the current tree but still retrievable | Secrets (gitleaks) |
| low | gitleaks/generic-api-key |
tests/test_credentials.py:175 | Possible generic-api-key secret in history (commit 27cc8c5bf6); removed from the current tree but still retrievable | Secrets (gitleaks) |
| low | gitleaks/slack-legacy-workspace-token |
tests/test_credentials.py:219 | Possible slack-legacy-workspace-token secret in history (commit 27cc8c5bf6); removed from the current tree but still retrievable | Secrets (gitleaks) |
| low | gitleaks/github-pat |
tests/test_daemon.py:866 | Possible github-pat secret in history (commit 28752dcad5); removed from the current tree but still retrievable | Secrets (gitleaks) |
| low | gitleaks/generic-api-key |
tests/test_spotify_credentials.py:231 | Possible generic-api-key secret in history (commit ad1780d8c9); removed from the current tree but still retrievable | Secrets (gitleaks) |
| low | osv/GHSA-fw7p-63qq-7hpr |
whatsapp-bridge/go.mod | filippo.io/[email protected] (Go) is affected by GO-2026-4503, GHSA-fw7p-63qq-7hpr | Dependencies (osv-scanner) |
| info | zizmor/template-injection |
.github/workflows/release.yml:36 | code injection via template expansion [confidence low] | CI workflows (zizmor) |
| info | zizmor/superfluous-actions |
.github/workflows/release.yml:78 | action functionality is already included by the runner [confidence high] | CI workflows (zizmor) |
Tools and coverage
Every analyzer that ran on this commit. A failed or skipped tool is a coverage gap: its share of the score is left out and the coverage figure drops.
| Analyzer | Pillar | Status | Version | Findings | Note |
|---|---|---|---|---|---|
| AI tool configuration | AI provenance | ok | signatures-v1 | 0 | |
| Explicit AI attribution | AI provenance | ok | signatures-v1 | 0 | |
| Release velocity | AI provenance | skipped | — | 0 | |
| Coding style | AI provenance | ok | — | 0 | |
| Commit velocity | AI provenance | ok | prov-4 | 0 | |
| Findings in AI-written lines | AI provenance | ok | git-blame | 0 | |
| Complexity (lizard) | Code quality | ok | lizard 1.25.1 | 0 | |
| Documentation | Code quality | ok | — | 0 | |
| Duplication (jscpd) | Code quality | ok | repotrust-dup-w6 | 0 | |
| Lint | Code quality | ok | opengrep 1.33.1; rules f1d2b562b414 | 200 | |
| Tests and CI | Code quality | ok | — | 0 | |
| Type safety | Code quality | ok | — | 0 | |
| CI workflows (zizmor) | Security | ok | zizmor 1.32.0 | 30 | |
| Dependencies (osv-scanner) | Security | ok | osv-scanner version: 2.7.1 | 227 | |
| Release downloads | Security | ok | — | 0 | |
| Security posture | Security | ok | — | 0 | |
| Package registries | Security | ok | — | 0 | |
| Static analysis (opengrep) | Security | ok | opengrep 1.33.1; rules f1d2b562b414 | 300 | |
| OpenSSF Scorecard | Security | skipped | — | 0 | no published OpenSSF Scorecard result for this repo |
| Secrets (gitleaks) | Security | ok | gitleaks 8.30.1 | 17 |
Score history
Scores from different scoring versions aren't directly comparable.
| Scored | Commit | Scoring | AI provenance | Quality | Security |
|---|---|---|---|---|---|
| 2026-11-14 | 3e233c698aae | prov-5+qual-2+sec-2 | 85% | 62 | 35 |
| 2026-11-14 | 3e233c698aae | prov-4+qual-2+sec-2 | 85% | 62 | 35 |
Full text report
- Repository: https://github.com/review-bench/Tzeusy_butlers
- Commit:
3e233c698aae33cbd03beccb0ee3f7f2adbbdbf1 - Generated: 2026-11-14T14:52:07+00:00
- Scorer 0.1.0, scoring prov-5+qual-2+sec-2, report schema v2
Scores
| Pillar | Score | Signal | Confidence | Coverage |
|---|---|---|---|---|
| AI provenance (estimated AI-generated share) | 85 | explicit | 95% | 100% |
| Code quality | 62 | weak | 90% | 100% |
| Security | 35 | poor | 85% | 100% |
AI provenance
Explicit AI attribution on 85% of first-party code added; an estimated 85% including velocity signals.
- Explicitly attributed share (lower bound): 85.3%
- Unattributed share in AI-consistent velocity bursts: 11.6%
- Estimated AI-generated share: 85.3%
| AI tool | Attributed commits | Lines added |
|---|---|---|
| Claude Code | 2,916 | 1,029,138 |
| Gemini CLI / Code Assist | 2 | 18 |
| OpenAI Codex | 2 | 253 |
- AI tooling configured in repo: claude-code
Current source lines last changed by AI-attributed commits: 324,998 of 399,992 (sampled).
| Findings per 1,000 lines | AI-attributed | Other | Ratio |
|---|---|---|---|
| Quality | 0.591 | 0.107 | 5.52x |
| Security | 0.68 | 0.773 | 0.88x |
- Stylometry index: 0.33 per 1,000 lines (narrated steps 129, placeholders 0, assistant phrasing 1, emoji 12). Reported as a signal, not scored.
| Month | Lines added | Attributed to AI |
|---|---|---|
| 2026-02 | 371,368 | 81% |
| 2026-03 | 369,616 | 95% |
| 2026-04 | 187,769 | 87% |
| 2026-05 | 278,209 | 77% |
Evidence
- Claude Code: trailer 'Co-Authored-By: Claude' (3e233c698aae)
- Claude Code: trailer 'Co-Authored-By: Claude' (26602f65c213)
- Claude Code: trailer 'Co-Authored-By: Claude' (2e213fdbb126)
- Claude Code: trailer 'Co-Authored-By: Claude' (f36a8b2b1c34)
- Claude Code: trailer 'Co-authored-by: Claude' (1adf2096514a)
- Claude Code: trailer 'Co-Authored-By: Claude' (ed4f9dfa6e02)
- Claude Code: trailer 'Co-Authored-By: Claude' (afd1744ae279)
- Claude Code: trailer 'Co-Authored-By: Claude' (61ab64063435)
- Claude Code: trailer 'Co-Authored-By: Claude' (0da5b552a80b)
- Claude Code: trailer 'Co-Authored-By: Claude' (80a6ace5ce2c)
- Claude Code: trailer 'Co-Authored-By: Claude' (700dcf6920d9)
- Claude Code: trailer 'Co-Authored-By: Claude' (c201b131950a)
- Claude Code: trailer 'Co-Authored-By: Claude' (3151d786a07a)
- Claude Code: trailer 'Co-Authored-By: Claude' (f0e7c4dcf69e)
- Claude Code: trailer 'Co-Authored-By: Claude' (4c3397d42615)
AI provenance describes how code was produced; it is not a quality judgment. Unless attribution is explicit, these are signals consistent with AI generation, not proof. Squash/rebase workflows, imported code, and rewritten history reduce accuracy.
Code quality
Code quality is weak: test-to-source ratio 0.77, CI runs tests; 26% of function code in complex or long functions; 13% duplicated lines. Weakest area: type safety.
| Area | Score |
|---|---|
| Complexity (lizard) | 46 |
| Duplication | 46 |
| Code smells (Opengrep) | 45 |
| Tests and CI | 100 |
| Documentation | 65 |
| Type safety | 16 |
| Process (Scorecard review/maintenance) | n/a |
- Functions: 13,691; mean complexity 3.4, 90th percentile 8; 343 complex and 285 long functions
- Duplicated lines: 12.8% of 319,240 compared
- Tests: 323,649 test lines for 420,511 source lines (ratio 0.77); CI test commands: pytest, npm run test, make check; 91% of recent source commits also change tests
- Docs missing or thin: contributing, changelog
Most complex functions:
- _run in src/butlers/core/spawner.py: complexity 143, 877 lines
- process in src/butlers/modules/pipeline.py: complexity 109, 874 lines
- register_routing_tools._route_execute_inner in src/butlers/core_tools/_routing.py: complexity 94, 562 lines
- _parse_opencode_output in src/butlers/core/runtimes/opencode.py: complexity 92, 166 lines
- register_notification_tools in src/butlers/core_tools/_notifications.py: complexity 87, 550 lines
Security
Security posture is poor: 227 known vulnerabilities in 43 dependencies; 247 high-severity SAST findings; 18 high-severity workflow issues. Weakest area: dependencies.
| Area | Score |
|---|---|
| Secrets (gitleaks, tree + history) | 57 |
| Static analysis (Opengrep) | 73 |
| Vulnerable dependencies (OSV) | 0 |
| CI workflows (zizmor) | 2 |
| Posture (policy, updates, signing, lockfiles) | 20 |
| OpenSSF Scorecard | n/a |
-
Known vulnerabilities: 227 in 43 packages (critical 12, high 68, medium 108, low 17)
-
Posture checks passed: signed commits, lockfiles; missing: security policy, dependency updates
Top findings
| Severity | Finding | Location |
|---|---|---|
| critical | osv/GHSA-jrc7-96c5-q579: [email protected] (npm) is affected by GHSA-jrc7-96c5-q579 |
frontend/package-lock.json |
| critical | osv/GHSA-jqcg-44mw-7w3h: [email protected] (npm) is affected by GHSA-jqcg-44mw-7w3h |
frontend/package-lock.json |
| critical | osv/GHSA-5gmw-xhrv-c9v3: [email protected] (npm) is affected by GHSA-5gmw-xhrv-c9v3 |
frontend/package-lock.json |
| critical | osv/GHSA-85c8-ppgw-ccpr: [email protected] (npm) is affected by GHSA-85c8-ppgw-ccpr |
frontend/package-lock.json |
| critical | osv/GHSA-5xrq-8626-4rwp: [email protected] (npm) is affected by GHSA-5xrq-8626-4rwp |
frontend/package-lock.json |
| critical | osv/GHSA-jppx-rxg9-jmrx: golang.org/x/[email protected] (Go) is affected by GO-2026-5005, GHSA-jppx-rxg9-jmrx |
whatsapp-bridge/go.mod |
| critical | osv/GHSA-f5wc-c3c7-36mc: golang.org/x/[email protected] (Go) is affected by GO-2026-5006, GHSA-f5wc-c3c7-36mc |
whatsapp-bridge/go.mod |
| critical | osv/GHSA-vgwf-h737-ff37: golang.org/x/[email protected] (Go) is affected by GO-2026-5017, GHSA-vgwf-h737-ff37 |
whatsapp-bridge/go.mod |
| critical | osv/GHSA-89gr-r52h-f8rx: golang.org/x/[email protected] (Go) is affected by GO-2026-5019, GHSA-89gr-r52h-f8rx |
whatsapp-bridge/go.mod |
| critical | osv/GHSA-rm3j-f69w-wqmq: golang.org/x/[email protected] (Go) is affected by GO-2026-5020, GHSA-rm3j-f69w-wqmq |
whatsapp-bridge/go.mod |
| critical | osv/GHSA-5cgq-3rg8-m6cv: golang.org/x/[email protected] (Go) is affected by GO-2026-5021, GHSA-5cgq-3rg8-m6cv |
whatsapp-bridge/go.mod |
| critical | osv/GHSA-x527-x647-q7gg: golang.org/x/[email protected] (Go) is affected by GO-2026-5023, GHSA-x527-x647-q7gg |
whatsapp-bridge/go.mod |
| high | opengrep/dockerfile.security.missing-user-entrypoint: By not specifying a USER, a program in the container may run as 'root'. This is a security hazard. If an attacker can control a process running as root, they may have control over the container. Ensure that the last USER in a Dockerfile is a USER other than 'root'. [confidence medium] |
Dockerfile:68 |
| high | opengrep/dockerfile.security.missing-user: By not specifying a USER, a program in the container may run as 'root'. This is a security hazard. If an attacker can control a process running as root, they may have control over the container. Ensure that the last USER in a Dockerfile is a USER other than 'root'. [confidence medium] |
Dockerfile:69 |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query: Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low] |
alembic/versions/core/core_001_foundation.py:81 |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query: Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low] |
alembic/versions/core/core_001_foundation.py:103 |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query: Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low] |
alembic/versions/core/core_001_foundation.py:121 |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query: Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low] |
alembic/versions/core/core_001_foundation.py:138 |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query: Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low] |
alembic/versions/core/core_001_foundation.py:335 |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query: Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low] |
alembic/versions/core/core_001_foundation.py:771 |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query: Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low] |
alembic/versions/core/core_002_identity.py:59 |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query: Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low] |
alembic/versions/core/core_004_model_and_tokens.py:76 |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query: Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low] |
alembic/versions/core/core_004_model_and_tokens.py:122 |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query: Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low] |
alembic/versions/core/core_004_model_and_tokens.py:148 |
| high | opengrep/python.sqlalchemy.security.sqlalchemy-execute-raw-query: Avoiding SQL string concatenation: untrusted input concatenated with raw SQL query can result in SQL Injection. In order to execute raw query safely, prepared statement should be used. SQLAlchemy provides TextualSQL to easily used prepared statement with named parameters. For complex SQL composition [confidence low] |
alembic/versions/core/core_004_model_and_tokens.py:259 |
Static signals only: the scorer never runs the project's code. Secret findings are pattern matches that were not verified, and secret values are never stored.
Repository profile
- Source lines: 420,511; test lines: 323,649
| Language | Lines |
|---|---|
| Python | 544,391 |
| TypeScript | 166,451 |
| JavaScript | 28,875 |
| Go | 2,242 |
| Shell | 1,805 |
| SQL | 396 |