RepoTrust

Leaderboard github.com

xavi129/escribetucancion-landing

Landing y checkout de Escribe Tu Canción — proyecto construido 100% con IA.

  • View repository ↗
  • TypeScript
  • ★ 0
  • commit 86a15d9b7c3f
  • scored 2026-11-14
  • scoring prov-5+qual-2+sec-2

AI provenance

0%

possible

Confidence
40%
Coverage
100%

Estimated share of AI-generated code. Explicit attribution is a lower bound.

Code quality

38/100

poor

Confidence
90%
Coverage
100%

Complexity, duplication, lint density, tests, CI, docs and review process.

Security

58/100

weak

Confidence
85%
Coverage
100%

Secrets, static analysis, vulnerable dependencies, CI and supply-chain posture.

AI provenance

0% possible

Weak signals consistent with AI-assisted development. Comments and strings use phrasing typical of LLM-written code (see the coding style evidence).

How the score is built

  • Explicitly attributed share0%
  • Unattributed share in AI-pace bursts0%
  • Estimated AI-generated share0%
  • AI tool configuration files0
  • Work sessions at AI pace0
  • Releases at AI pacenot measured
  • Coding-style index (1.0+ means possible)2.14

Lines added per month all AI-attributed share

  1. 2026-0724,351 · 0% AI

Evidence by analyzer

Explicit AI attributionok
attributed_commit_share
0.0%
attributed_commits
0
attributed_loc
0
attributed_loc_share
0.0%
commits
1
effective_loc
24,351
tools_detected
0
AI tool configurationok
artifacts
0
tools_configured
0
workflow_agents
0
Commit velocityok
excluded_import_loc
24,351
flagged_loc
0
flagged_loc_share
0.0%
flagged_units
0
max_loc_per_hour
0
measured_loc
0
median_loc_per_hour
0
pr_timed_units
0
pre_ai_era_burst_loc
0
pre_ai_era_bursts
0
pre_ai_era_measured_loc
0
work_units
0
Release velocityskipped
Coding styleok1 item
count:assistant_voice
0
count:emoji_in_code
101
count:narrated_steps
1
count:placeholder
0
files:assistant_voice
0
files:emoji_in_code
22
files:narrated_steps
1
files:placeholder
0
index
2.14
lines_scanned
24,095
per_kloc:assistant_voice
0
per_kloc:emoji_in_code
4.19
per_kloc:narrated_steps
0.04
per_kloc:placeholder
0

Code quality

38 poor

Code quality is poor: test-to-source ratio 0.01, no CI test run detected; 34% of function code in complex or long functions; 19% duplicated lines. Weakest area: lint.

How the score is built

  • Complexity36
  • Duplication32
  • Lint and smells8
  • Tests and CI46
  • Documentation40
  • Type safety100
  • Review processnot measured

Evidence by analyzer

Complexity (lizard)ok10 items
complex_functions
22
function_nloc
13,929
functions
899
long_functions
16
many_param_functions
0
mean_ccn
2.82
p90_ccn
6
risky_nloc_share
33.9%
Duplication (jscpd)ok10 items
compared_lines
18,193
duplicated_lines
3,407
duplicated_share
18.7%
files
152
Lintok
category:best-practice
223
category:correctness
27
findings
250
scanned_lines
24,007
weighted_findings
236.25
Tests and CIok1 item
  • CI config: .github/workflows/playwright.yml .github/workflows/playwright.yml
check:ci_present
yes
check:ci_runs_lint
no
check:ci_runs_tests
no
check:has_tests
yes
check:test_ratio
no
check:tests_cochange
yes
ci_files
1
cochange_commits
1
cochange_share
100.0%
source_lines
24,095
test_lines
256
test_ratio
0.01
Documentationok1 item
  • README.md README.md
check:changelog
no
check:contributing
no
check:license
no
check:readme
yes
readme_lines
57
Type safetyok1 item
  • TypeScript strict type checking: tsconfig.json tsconfig.json
check:low_escape_density
yes
check:strict_config
yes
escapes
23
escapes_per_kloc
0.96

Security

58 weak

Security posture is weak: 104 known vulnerabilities in 30 dependencies; 4 high-severity workflow issues. Weakest area: posture.

How the score is built

  • Secrets100
  • Static analysis (SAST)100
  • Vulnerable dependencies3
  • CI workflows42
  • Security posture0
  • OpenSSF Scorecardnot measured

Evidence by analyzer

OpenSSF Scorecardskipped

no published OpenSSF Scorecard result for this repo

Package registriesok
checked
73
declared
73
lookup_errors
0
missing
0
recent
0
Secrets (gitleaks)ok
secrets_current
0
secrets_history
0
secrets_low_confidence
0
secrets_nonprod
0
Static analysis (opengrep)ok
findings
5
findings_high
0
findings_low
5
findings_medium
0
parse_errors
0
scanned_lines
24,007
weighted_findings
0.31
Dependencies (osv-scanner)ok
penalty
203
vulnerabilities
104
vulnerable_packages
30
vulns_critical
3
vulns_high
56
vulns_low
6
vulns_medium
39
vulns_unknown
0
CI workflows (zizmor)ok
findings
6
findings_high
4
findings_low
0
findings_medium
2
penalty
51.60
workflows
1
Security postureok
check:dependency_updates
no
check:lockfiles
yes
check:security_policy
no
check:signed_commits
no
signed_commit_share
0.0%
unpinned_manifests
0
Release downloadsok
binary_assets
0
signals
0
suspicious
0

Findings

3 critical61 high240 medium11 low

SeverityRuleLocationMessageTool
critical osv/GHSA-2464-fhr4-w9xw pnpm-lock.yaml [email protected] (npm) is affected by GHSA-2464-fhr4-w9xw Dependencies (osv-scanner)
critical osv/GHSA-2xp9-vwfh-vxw4 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-2xp9-vwfh-vxw4 Dependencies (osv-scanner)
critical osv/GHSA-p293-qw3h-jr36 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-p293-qw3h-jr36 Dependencies (osv-scanner)
high opengrep/typescript.lang.correctness.useless-ternary app/crear-cancion/components/steps/step-11-delivery.tsx:86 It looks like no matter how formData.deliveryType === "standard" is evaluated, this expression returns "text-white". This is probably a copy-paste error. Lint
high zizmor/unpinned-uses .github/workflows/playwright.yml:16 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/playwright.yml:18 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/playwright.yml:23 unpinned action reference [confidence high] CI workflows (zizmor)
high zizmor/unpinned-uses .github/workflows/playwright.yml:41 unpinned action reference [confidence high] CI workflows (zizmor)
high osv/GHSA-23c5-xmqv-rm74 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-23c5-xmqv-rm74 Dependencies (osv-scanner)
high osv/GHSA-23c5-xmqv-rm74 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-23c5-xmqv-rm74 Dependencies (osv-scanner)
high osv/GHSA-25h7-pfq9-p65f pnpm-lock.yaml [email protected] (npm) is affected by GHSA-25h7-pfq9-p65f Dependencies (osv-scanner)
high osv/GHSA-267c-6grr-h53f pnpm-lock.yaml [email protected] (npm) is affected by GHSA-267c-6grr-h53f Dependencies (osv-scanner)
high osv/GHSA-26hh-7cqf-hhc6 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-26hh-7cqf-hhc6 Dependencies (osv-scanner)
high osv/GHSA-2883-xcg3-v3hh pnpm-lock.yaml [email protected] (npm) is affected by GHSA-2883-xcg3-v3hh Dependencies (osv-scanner)
high osv/GHSA-28wg-ghj8-5hjv pnpm-lock.yaml [email protected] (npm) is affected by GHSA-28wg-ghj8-5hjv Dependencies (osv-scanner)
high osv/GHSA-2v37-7h3g-55p8 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-2v37-7h3g-55p8 Dependencies (osv-scanner)
high osv/GHSA-36qx-fr4f-26g5 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-36qx-fr4f-26g5 Dependencies (osv-scanner)
high osv/GHSA-3jxr-9vmj-r5cp pnpm-lock.yaml [email protected] (npm) is affected by GHSA-3jxr-9vmj-r5cp Dependencies (osv-scanner)
high osv/GHSA-3jxr-9vmj-r5cp pnpm-lock.yaml [email protected] (npm) is affected by GHSA-3jxr-9vmj-r5cp Dependencies (osv-scanner)
high osv/GHSA-3ppc-4f35-3m26 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-3ppc-4f35-3m26 Dependencies (osv-scanner)
high osv/GHSA-3ppc-4f35-3m26 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-3ppc-4f35-3m26 Dependencies (osv-scanner)
high osv/GHSA-492v-c6pp-mqqv pnpm-lock.yaml [email protected] (npm) is affected by GHSA-492v-c6pp-mqqv Dependencies (osv-scanner)
high osv/GHSA-52cp-r559-cp3m pnpm-lock.yaml [email protected] (npm) is affected by GHSA-52cp-r559-cp3m Dependencies (osv-scanner)
high osv/GHSA-5j98-mcp5-4vw2 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-5j98-mcp5-4vw2 Dependencies (osv-scanner)
high osv/GHSA-5p4m-2wfm-xmqj pnpm-lock.yaml [email protected] (npm) is affected by GHSA-5p4m-2wfm-xmqj Dependencies (osv-scanner)
high osv/GHSA-68fv-2mgg-jv7q pnpm-lock.yaml [email protected] (npm) is affected by GHSA-68fv-2mgg-jv7q Dependencies (osv-scanner)
high osv/GHSA-6g55-p6wh-862q pnpm-lock.yaml [email protected] (npm) is affected by GHSA-6g55-p6wh-862q Dependencies (osv-scanner)
high osv/GHSA-6g55-p6wh-862q pnpm-lock.yaml [email protected] (npm) is affected by GHSA-6g55-p6wh-862q Dependencies (osv-scanner)
high osv/GHSA-6j4f-fj2g-mc7p pnpm-lock.yaml [email protected] (npm) is affected by GHSA-6j4f-fj2g-mc7p Dependencies (osv-scanner)
high osv/GHSA-6j4f-fj2g-mc7p pnpm-lock.yaml [email protected] (npm) is affected by GHSA-6j4f-fj2g-mc7p Dependencies (osv-scanner)
high osv/GHSA-73wf-gq98-2v4g pnpm-lock.yaml [email protected] (npm) is affected by GHSA-73wf-gq98-2v4g Dependencies (osv-scanner)
high osv/GHSA-7r86-cg39-jmmj pnpm-lock.yaml [email protected] (npm) is affected by GHSA-7r86-cg39-jmmj Dependencies (osv-scanner)
high osv/GHSA-7r86-cg39-jmmj pnpm-lock.yaml [email protected] (npm) is affected by GHSA-7r86-cg39-jmmj Dependencies (osv-scanner)
high osv/GHSA-89xv-2m56-2m9x pnpm-lock.yaml [email protected] (npm) is affected by GHSA-89xv-2m56-2m9x Dependencies (osv-scanner)
high osv/GHSA-8h8q-6873-q5fj pnpm-lock.yaml [email protected] (npm) is affected by GHSA-8h8q-6873-q5fj Dependencies (osv-scanner)
high osv/GHSA-96hv-2xvq-fx4p pnpm-lock.yaml [email protected] (npm) is affected by GHSA-96hv-2xvq-fx4p Dependencies (osv-scanner)
high osv/GHSA-c2c7-rcm5-vvqj pnpm-lock.yaml [email protected] (npm) is affected by GHSA-c2c7-rcm5-vvqj Dependencies (osv-scanner)
high osv/GHSA-c2c7-rcm5-vvqj pnpm-lock.yaml [email protected] (npm) is affected by GHSA-c2c7-rcm5-vvqj Dependencies (osv-scanner)
high osv/GHSA-c4j6-fc7j-m34r pnpm-lock.yaml [email protected] (npm) is affected by GHSA-c4j6-fc7j-m34r Dependencies (osv-scanner)
high osv/GHSA-c83g-rgw3-j3cx pnpm-lock.yaml [email protected] (npm) is affected by GHSA-c83g-rgw3-j3cx Dependencies (osv-scanner)
high osv/GHSA-f88m-g3jw-g9cj pnpm-lock.yaml [email protected] (npm) is affected by GHSA-f88m-g3jw-g9cj Dependencies (osv-scanner)
high osv/GHSA-h25m-26qc-wcjf pnpm-lock.yaml [email protected] (npm) is affected by GHSA-h25m-26qc-wcjf Dependencies (osv-scanner)
high osv/GHSA-hmw2-7cc7-3qxx pnpm-lock.yaml [email protected] (npm) is affected by GHSA-hmw2-7cc7-3qxx Dependencies (osv-scanner)
high osv/GHSA-m99w-x7hq-7vfj pnpm-lock.yaml [email protected] (npm) is affected by GHSA-m99w-x7hq-7vfj Dependencies (osv-scanner)
high osv/GHSA-mg66-mrh9-m8jx pnpm-lock.yaml [email protected] (npm) is affected by GHSA-mg66-mrh9-m8jx Dependencies (osv-scanner)
high osv/GHSA-mh99-v99m-4gvg pnpm-lock.yaml [email protected] (npm) is affected by GHSA-mh99-v99m-4gvg Dependencies (osv-scanner)
high osv/GHSA-mh99-v99m-4gvg pnpm-lock.yaml [email protected] (npm) is affected by GHSA-mh99-v99m-4gvg Dependencies (osv-scanner)
high osv/GHSA-mrhx-c7xc-m3w5 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-mrhx-c7xc-m3w5 Dependencies (osv-scanner)
high osv/GHSA-p3m5-59mp-jv5r pnpm-lock.yaml [email protected] (npm) is affected by GHSA-p3m5-59mp-jv5r Dependencies (osv-scanner)
high osv/GHSA-p9j2-gv94-2wf4 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-p9j2-gv94-2wf4 Dependencies (osv-scanner)
high osv/GHSA-px8p-9vwx-vf98 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-px8p-9vwx-vf98 Dependencies (osv-scanner)
high osv/GHSA-q4gf-8mx6-v5v3 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-q4gf-8mx6-v5v3 Dependencies (osv-scanner)
high osv/GHSA-qhr7-859c-m2p7 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-qhr7-859c-m2p7 Dependencies (osv-scanner)
high osv/GHSA-qhr7-859c-m2p7 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-qhr7-859c-m2p7 Dependencies (osv-scanner)
high osv/GHSA-r28c-9q8g-f849 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-r28c-9q8g-f849 Dependencies (osv-scanner)
high osv/GHSA-r28c-9q8g-f849 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-r28c-9q8g-f849 Dependencies (osv-scanner)
high osv/GHSA-r5fr-rjxr-66jc pnpm-lock.yaml [email protected] (npm) is affected by GHSA-r5fr-rjxr-66jc Dependencies (osv-scanner)
high osv/GHSA-rf6f-7fwh-wjgh pnpm-lock.yaml [email protected] (npm) is affected by GHSA-rf6f-7fwh-wjgh Dependencies (osv-scanner)
high osv/GHSA-rgj7-g3m4-5g8c pnpm-lock.yaml [email protected] (npm) is affected by GHSA-rgj7-g3m4-5g8c Dependencies (osv-scanner)
high osv/GHSA-rgw5-rvv9-x895 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-rgw5-rvv9-x895 Dependencies (osv-scanner)
high osv/GHSA-rgw5-rvv9-x895 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-rgw5-rvv9-x895 Dependencies (osv-scanner)
high osv/GHSA-w5hq-g745-h8pq pnpm-lock.yaml [email protected] (npm) is affected by GHSA-w5hq-g745-h8pq Dependencies (osv-scanner)
high osv/GHSA-wq5f-xc86-pv6w pnpm-lock.yaml [email protected] (npm) is affected by GHSA-wq5f-xc86-pv6w Dependencies (osv-scanner)
high osv/GHSA-xwg4-73v4-xw9w pnpm-lock.yaml [email protected] (npm) is affected by GHSA-xwg4-73v4-xw9w Dependencies (osv-scanner)
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/alert-dialog.tsx:24 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/alert-dialog.tsx:42 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/alert-dialog.tsx:49 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/alert-dialog.tsx:54 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/alert-dialog.tsx:62 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/alert-dialog.tsx:70 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/alert-dialog.tsx:78 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/alert-dialog.tsx:89 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/alert.tsx:25 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/alert.tsx:31 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/alert.tsx:38 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/badge.tsx:26 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/slider.tsx:15 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/tabs.tsx:20 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/tabs.tsx:35 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/components/ui/tabs.tsx:50 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/javascript.lang.best-practice.javascript-alert app/components/whatsapp-form.tsx:72 found alert() call; should this be in production code? Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/crear-cancion/components/form-navigation.tsx:131 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading app/crear-cancion/components/form-navigation.tsx:132 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/javascript.lang.correctness.no-stringify-keys app/crear-cancion/confirmacion/page.tsx:321 JSON stringify does not produce a stable key ordering, and should not be relied on for producing object keys. Consider using json-stable-stringify instead. Lint
medium opengrep/javascript.lang.best-practice.javascript-alert app/crear-cancion/confirmacion/page.tsx:467 found alert() call; should this be in production code? Lint
medium opengrep/javascript.lang.best-practice.javascript-alert app/crear-cancion/confirmacion/page.tsx:502 found alert() call; should this be in production code? Lint
medium opengrep/javascript.lang.best-practice.javascript-alert app/crear-cancion/confirmacion/page.tsx:510 found alert() call; should this be in production code? Lint
medium opengrep/javascript.lang.correctness.no-stringify-keys app/crear-cancion/confirmacion/page.tsx:516 JSON stringify does not produce a stable key ordering, and should not be relied on for producing object keys. Consider using json-stable-stringify instead. Lint
medium opengrep/javascript.lang.best-practice.javascript-alert app/crear-cancion/confirmacion/page.tsx:521 found alert() call; should this be in production code? Lint
medium opengrep/javascript.lang.best-practice.javascript-alert app/crear-cancion/confirmacion/page.tsx:560 found alert() call; should this be in production code? Lint
medium opengrep/javascript.lang.correctness.no-stringify-keys app/crear-cancion/confirmacion/page.tsx:688 JSON stringify does not produce a stable key ordering, and should not be relied on for producing object keys. Consider using json-stable-stringify instead. Lint
medium opengrep/javascript.lang.correctness.no-stringify-keys app/crear-cancion/confirmacion/page.tsx:802 JSON stringify does not produce a stable key ordering, and should not be relied on for producing object keys. Consider using json-stable-stringify instead. Lint
medium opengrep/javascript.lang.best-practice.javascript-alert app/editar/[id]/page.tsx:264 found alert() call; should this be in production code? Lint
medium opengrep/javascript.lang.best-practice.javascript-alert app/editar/[id]/page.tsx:310 found alert() call; should this be in production code? Lint
medium opengrep/javascript.lang.best-practice.javascript-alert app/editar/[id]/page.tsx:317 found alert() call; should this be in production code? Lint
medium opengrep/javascript.lang.correctness.no-stringify-keys app/editar/[id]/page.tsx:322 JSON stringify does not produce a stable key ordering, and should not be relied on for producing object keys. Consider using json-stable-stringify instead. Lint
medium opengrep/javascript.lang.best-practice.javascript-alert app/editar/[id]/page.tsx:325 found alert() call; should this be in production code? Lint
medium opengrep/javascript.lang.best-practice.javascript-alert app/editar/[id]/page.tsx:358 found alert() call; should this be in production code? Lint
medium opengrep/typescript.react.best-practice.react-props-in-state app/hooks/use-geo-country.ts:20 Copying a prop into state in React -- this is bad practice as all updates to it are ignored. Instead, read props directly in your component and avoid copying props into state. Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/theme-provider.tsx:10 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/accordion.tsx:18 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/accordion.tsx:34 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/accordion.tsx:50 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/alert-dialog.tsx:108 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/alert-dialog.tsx:124 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/alert-dialog.tsx:24 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/alert-dialog.tsx:42 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/alert-dialog.tsx:57 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/alert-dialog.tsx:71 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/alert-dialog.tsx:83 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/alert-dialog.tsx:95 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/alert.tsx:30 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/alert.tsx:42 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/alert.tsx:54 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/avatar.tsx:18 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/avatar.tsx:30 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/avatar.tsx:45 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/badge.tsx:32 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/breadcrumb.tsx:12 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/breadcrumb.tsx:25 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/breadcrumb.tsx:37 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/breadcrumb.tsx:54 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/breadcrumb.tsx:70 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/breadcrumb.tsx:84 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/breadcrumb.tsx:99 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/button.tsx:49 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/calendar.tsx:60 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/card.tsx:15 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/card.tsx:27 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/card.tsx:42 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/card.tsx:54 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/card.tsx:63 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/card.tsx:74 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/carousel.tsx:143 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/carousel.tsx:168 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/carousel.tsx:191 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/carousel.tsx:217 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/carousel.tsx:246 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/chart.tsx:58 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/checkbox.tsx:19 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/command.tsx:106 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/command.tsx:121 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/command.tsx:137 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/command.tsx:21 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/command.tsx:28 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/command.tsx:50 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/command.tsx:64 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/command.tsx:77 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/command.tsx:93 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/context-menu.tsx:103 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/context-menu.tsx:126 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/context-menu.tsx:151 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/context-menu.tsx:163 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/context-menu.tsx:178 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/context-menu.tsx:34 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/context-menu.tsx:52 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/context-menu.tsx:68 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/context-menu.tsx:87 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dialog.tsx:106 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dialog.tsx:27 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dialog.tsx:44 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dialog.tsx:65 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dialog.tsx:79 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dialog.tsx:94 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/drawer.tsx:102 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/drawer.tsx:14 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/drawer.tsx:32 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/drawer.tsx:49 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/drawer.tsx:64 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/drawer.tsx:75 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/drawer.tsx:90 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dropdown-menu.tsx:106 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dropdown-menu.tsx:129 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dropdown-menu.tsx:154 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dropdown-menu.tsx:166 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dropdown-menu.tsx:178 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dropdown-menu.tsx:34 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dropdown-menu.tsx:53 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dropdown-menu.tsx:71 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/dropdown-menu.tsx:90 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/form.tsx:100 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/form.tsx:122 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/form.tsx:139 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/form.tsx:161 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/form.tsx:39 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/form.tsx:83 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/hover-card.tsx:24 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/input-otp.tsx:20 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/input-otp.tsx:29 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/input-otp.tsx:48 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/input-otp.tsx:65 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/input.tsx:15 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/label.tsx:21 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/menubar.tsx:103 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/menubar.tsx:123 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/menubar.tsx:139 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/menubar.tsx:161 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/menubar.tsx:186 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/menubar.tsx:198 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/menubar.tsx:213 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/menubar.tsx:29 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/menubar.tsx:44 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/menubar.tsx:62 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/menubar.tsx:80 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/navigation-menu.tsx:110 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/navigation-menu.tsx:18 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/navigation-menu.tsx:36 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/navigation-menu.tsx:54 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/navigation-menu.tsx:75 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/navigation-menu.tsx:93 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/pagination.tsx:101 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/pagination.tsx:12 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/pagination.tsx:24 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/pagination.tsx:33 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/pagination.tsx:57 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/pagination.tsx:70 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/pagination.tsx:86 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/popover.tsx:25 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/progress.tsx:18 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/radio-group.tsx:16 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/radio-group.tsx:34 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/resizable.tsx:17 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/resizable.tsx:35 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/scroll-area.tsx:15 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/scroll-area.tsx:41 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/select.tsx:109 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/select.tsx:124 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/select.tsx:144 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/select.tsx:25 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/select.tsx:45 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/select.tsx:62 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/select.tsx:84 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/separator.tsx:25 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sheet.tsx:100 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sheet.tsx:112 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sheet.tsx:124 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sheet.tsx:27 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sheet.tsx:65 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sheet.tsx:86 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:148 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:188 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:197 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:247 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:279 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:311 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:329 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:347 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:362 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:377 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:392 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:410 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:425 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:446 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:469 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:483 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:496 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:509 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:566 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:587 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:620 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:642 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:663 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium opengrep/typescript.react.best-practice.react-props-spreading components/ui/sidebar.tsx:697 It's best practice to explicitly pass props to an HTML component rather than use the spread operator. The spread operator risks passing invalid HTML props to an HTML element, which can cause console warnings or worse, give malicious... Lint
medium zizmor/excessive-permissions .github/workflows/playwright.yml:12 overly broad permissions [confidence medium] CI workflows (zizmor)
medium zizmor/artipacked .github/workflows/playwright.yml:16 credential persistence through GitHub Actions artifacts [confidence low] CI workflows (zizmor)
medium osv/GHSA-2g4f-4pwh-qvx6 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-2g4f-4pwh-qvx6 Dependencies (osv-scanner)
medium osv/GHSA-3g3m-2fjr-6pw4 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-3g3m-2fjr-6pw4 Dependencies (osv-scanner)
medium osv/GHSA-3v7f-55p6-f55p pnpm-lock.yaml [email protected] (npm) is affected by GHSA-3v7f-55p6-f55p Dependencies (osv-scanner)
medium osv/GHSA-3v7f-55p6-f55p pnpm-lock.yaml [email protected] (npm) is affected by GHSA-3v7f-55p6-f55p Dependencies (osv-scanner)
medium osv/GHSA-3x4c-7xq6-9pq8 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-3x4c-7xq6-9pq8 Dependencies (osv-scanner)
medium osv/GHSA-4633-3j49-mh5q pnpm-lock.yaml [email protected] (npm) is affected by GHSA-4633-3j49-mh5q Dependencies (osv-scanner)
medium osv/GHSA-48c2-rrv3-qjmp pnpm-lock.yaml [email protected] (npm) is affected by GHSA-48c2-rrv3-qjmp Dependencies (osv-scanner)
medium osv/GHSA-4c39-4ccg-62r3 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-4c39-4ccg-62r3 Dependencies (osv-scanner)
medium osv/GHSA-4jqv-mc3x-m676 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-4jqv-mc3x-m676 Dependencies (osv-scanner)
medium osv/GHSA-4mjr-xmp4-gh2g pnpm-lock.yaml [email protected] (npm) is affected by GHSA-4mjr-xmp4-gh2g Dependencies (osv-scanner)
medium osv/GHSA-58qx-3vcg-4xpx pnpm-lock.yaml [email protected] (npm) is affected by GHSA-58qx-3vcg-4xpx Dependencies (osv-scanner)
medium osv/GHSA-68g3-v927-f742 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-68g3-v927-f742 Dependencies (osv-scanner)
medium osv/GHSA-6pq8-jhm2-2vcw pnpm-lock.yaml [email protected] (npm) is affected by GHSA-6pq8-jhm2-2vcw Dependencies (osv-scanner)
medium osv/GHSA-6rw7-vpxm-498p pnpm-lock.yaml [email protected] (npm) is affected by GHSA-6rw7-vpxm-498p Dependencies (osv-scanner)
medium osv/GHSA-866g-f22w-33x8 pnpm-lock.yaml @ai-sdk/[email protected] (npm) is affected by GHSA-866g-f22w-33x8 Dependencies (osv-scanner)
medium osv/GHSA-955p-x3mx-jcvp pnpm-lock.yaml [email protected] (npm) is affected by GHSA-955p-x3mx-jcvp Dependencies (osv-scanner)
medium osv/GHSA-9g9p-9gw9-jx7f pnpm-lock.yaml [email protected] (npm) is affected by GHSA-9g9p-9gw9-jx7f Dependencies (osv-scanner)
medium osv/GHSA-f886-m6hf-6m8v pnpm-lock.yaml [email protected] (npm) is affected by GHSA-f886-m6hf-6m8v Dependencies (osv-scanner)
medium osv/GHSA-f886-m6hf-6m8v pnpm-lock.yaml [email protected] (npm) is affected by GHSA-f886-m6hf-6m8v Dependencies (osv-scanner)
medium osv/GHSA-ffhc-5mcf-pf4q pnpm-lock.yaml [email protected] (npm) is affected by GHSA-ffhc-5mcf-pf4q Dependencies (osv-scanner)
medium osv/GHSA-fxqj-rqcc-2cmp pnpm-lock.yaml [email protected] (npm) is affected by GHSA-fxqj-rqcc-2cmp Dependencies (osv-scanner)
medium osv/GHSA-fxqj-rqcc-2cmp pnpm-lock.yaml [email protected] (npm) is affected by GHSA-fxqj-rqcc-2cmp Dependencies (osv-scanner)
medium osv/GHSA-g3hv-75wg-m249 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-g3hv-75wg-m249 Dependencies (osv-scanner)
medium osv/GHSA-ggv3-7p47-pfv8 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-ggv3-7p47-pfv8 Dependencies (osv-scanner)
medium osv/GHSA-gx5p-jg67-6x7h pnpm-lock.yaml [email protected] (npm) is affected by GHSA-gx5p-jg67-6x7h Dependencies (osv-scanner)
medium osv/GHSA-h64f-5h5j-jqjh pnpm-lock.yaml [email protected] (npm) is affected by GHSA-h64f-5h5j-jqjh Dependencies (osv-scanner)
medium osv/GHSA-h67p-54hq-rp68 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-h67p-54hq-rp68 Dependencies (osv-scanner)
medium osv/GHSA-mcj8-r9mp-w47p pnpm-lock.yaml [email protected] (npm) is affected by GHSA-mcj8-r9mp-w47p Dependencies (osv-scanner)
medium osv/GHSA-p498-v437-472g pnpm-lock.yaml @humanfs/[email protected] (npm) is affected by GHSA-p498-v437-472g Dependencies (osv-scanner)
medium osv/GHSA-q2hr-2g5m-vwhr pnpm-lock.yaml [email protected] (npm) is affected by GHSA-q2hr-2g5m-vwhr Dependencies (osv-scanner)
medium osv/GHSA-q2hr-2g5m-vwhr pnpm-lock.yaml [email protected] (npm) is affected by GHSA-q2hr-2g5m-vwhr Dependencies (osv-scanner)
medium osv/GHSA-q8mj-m7cp-5q26 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-q8mj-m7cp-5q26 Dependencies (osv-scanner)
medium osv/GHSA-q8wf-6r8g-63ch pnpm-lock.yaml [email protected] (npm) is affected by GHSA-q8wf-6r8g-63ch Dependencies (osv-scanner)
medium osv/GHSA-qx2v-qp2m-jg93 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-qx2v-qp2m-jg93 Dependencies (osv-scanner)
medium osv/GHSA-qx2v-qp2m-jg93 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-qx2v-qp2m-jg93 Dependencies (osv-scanner)
medium osv/GHSA-rj75-hqrm-r3gf pnpm-lock.yaml [email protected] (npm) is affected by GHSA-rj75-hqrm-r3gf Dependencies (osv-scanner)
medium osv/GHSA-w9m9-85wc-3x92 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-w9m9-85wc-3x92 Dependencies (osv-scanner)
medium osv/GHSA-wfc6-r584-vfw7 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-wfc6-r584-vfw7 Dependencies (osv-scanner)
medium osv/GHSA-xxjr-mmjv-4gpg pnpm-lock.yaml [email protected] (npm) is affected by GHSA-xxjr-mmjv-4gpg Dependencies (osv-scanner)
low opengrep/javascript.browser.security.js-open-redirect-from-function app/components/enhanced-whatsapp-transfer.tsx:120 The application accepts potentially user-controlled input `{ whatsappLink, referenceNumber, formData, className, }: EnhancedWhatsappTransferProps` which can control the location of the current window context. This can lead... Static analysis (opengrep)
low opengrep/javascript.browser.security.js-open-redirect-from-function app/components/stripe-checkout.tsx:73 The application accepts potentially user-controlled input `{ songType, deliveryType, customerName, email, formData, onCheckout, }: StripeCheckoutProps` which can control the location of the current window context.... Static analysis (opengrep)
low opengrep/javascript.lang.security.audit.unsafe-formatstring app/utils/analytics.ts:186 Detected string concatenation with a non-literal variable in a util.format / console.log function. If an attacker injects a format specifier in the string, it will forge the log message. Try to use constant values for the format string.... Static analysis (opengrep)
low opengrep/javascript.lang.security.audit.unsafe-formatstring app/utils/analytics.ts:94 Detected string concatenation with a non-literal variable in a util.format / console.log function. If an attacker injects a format specifier in the string, it will forge the log message. Try to use constant values for the format string.... Static analysis (opengrep)
low opengrep/javascript.lang.security.audit.unsafe-formatstring app/utils/statsig.ts:87 Detected string concatenation with a non-literal variable in a util.format / console.log function. If an attacker injects a format specifier in the string, it will forge the log message. Try to use constant values for the format string.... Static analysis (opengrep)
low osv/GHSA-3g8h-86w9-wvmq pnpm-lock.yaml [email protected] (npm) is affected by GHSA-3g8h-86w9-wvmq Dependencies (osv-scanner)
low osv/GHSA-4x5r-pxfx-6jf8 pnpm-lock.yaml @babel/[email protected] (npm) is affected by GHSA-4x5r-pxfx-6jf8 Dependencies (osv-scanner)
low osv/GHSA-8r88-6cj9-9fh5 pnpm-lock.yaml @supabase/[email protected] (npm) is affected by GHSA-8r88-6cj9-9fh5 Dependencies (osv-scanner)
low osv/GHSA-v6h2-p8h4-qcjw pnpm-lock.yaml [email protected] (npm) is affected by GHSA-v6h2-p8h4-qcjw Dependencies (osv-scanner)
low osv/GHSA-vfv6-92ff-j949 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-vfv6-92ff-j949 Dependencies (osv-scanner)
low osv/GHSA-w7fw-mjwx-w883 pnpm-lock.yaml [email protected] (npm) is affected by GHSA-w7fw-mjwx-w883 Dependencies (osv-scanner)

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.

AnalyzerPillarStatusVersionFindingsNote
AI tool configurationAI provenanceoksignatures-v10
Explicit AI attributionAI provenanceoksignatures-v10
Release velocityAI provenanceskipped—0
Coding styleAI provenanceok—0
Commit velocityAI provenanceokprov-40
Complexity (lizard)Code qualityoklizard 1.25.10
DocumentationCode qualityok—0
Duplication (jscpd)Code qualityokrepotrust-dup-w60
LintCode qualityokopengrep 1.33.1; rules f1d2b562b414200
Tests and CICode qualityok—0
Type safetyCode qualityok—0
CI workflows (zizmor)Securityokzizmor 1.32.06
Dependencies (osv-scanner)Securityokosv-scanner version: 2.7.1104
Release downloadsSecurityok—0
Security postureSecurityok—0
Package registriesSecurityok—0
Static analysis (opengrep)Securityokopengrep 1.33.1; rules f1d2b562b4145
OpenSSF ScorecardSecurityskipped—0no published OpenSSF Scorecard result for this repo
Secrets (gitleaks)Securityokgitleaks 8.30.10

Score history

Scores from different scoring versions aren't directly comparable.

ScoredCommitScoringAI provenanceQualitySecurity
2026-11-1486a15d9b7c3fprov-5+qual-2+sec-20%3858
2026-11-1486a15d9b7c3fprov-4+qual-2+sec-20%3858

Embed a badge

Maintainers can show these in a README. Badges update when the repository is re-scored.

[![RepoTrust ai](https://repotrust.synapticcyber.com/badge/github.com/xavi129/escribetucancion-landing/ai.svg)](https://repotrust.synapticcyber.com/r/github.com/xavi129/escribetucancion-landing/)
[![RepoTrust quality](https://repotrust.synapticcyber.com/badge/github.com/xavi129/escribetucancion-landing/quality.svg)](https://repotrust.synapticcyber.com/r/github.com/xavi129/escribetucancion-landing/)
[![RepoTrust security](https://repotrust.synapticcyber.com/badge/github.com/xavi129/escribetucancion-landing/security.svg)](https://repotrust.synapticcyber.com/r/github.com/xavi129/escribetucancion-landing/)
Full text report

Scores

Pillar Score Signal Confidence Coverage
AI provenance (estimated AI-generated share) 0 possible 40% 100%
Code quality 38 poor 90% 100%
Security 58 weak 85% 100%

AI provenance

Weak signals consistent with AI-assisted development. Comments and strings use phrasing typical of LLM-written code (see the coding style evidence).

  • Explicitly attributed share (lower bound): 0.0%

  • Unattributed share in AI-consistent velocity bursts: 0.0%

  • Estimated AI-generated share: 0.0%

  • Stylometry index: 2.14 per 1,000 lines (narrated steps 1, placeholders 0, assistant phrasing 0, emoji 101). Reported as a signal, not scored.

Month Lines added Attributed to AI
2026-07 24,351 0%

Evidence

  • step-by-step narration comment: // First, try to get the price directly from songTypePrice (app/crear-ca)

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 poor: test-to-source ratio 0.01, no CI test run detected; 34% of function code in complex or long functions; 19% duplicated lines. Weakest area: lint.

Area Score
Complexity (lizard) 36
Duplication 32
Code smells (Opengrep) 8
Tests and CI 46
Documentation 40
Type safety 100
Process (Scorecard review/maintenance) n/a
  • Functions: 899; mean complexity 2.8, 90th percentile 6; 22 complex and 16 long functions
  • Duplicated lines: 18.7% of 18,193 compared
  • Tests: 256 test lines for 24,095 source lines (ratio 0.01); CI test commands: none detected; 100% of recent source commits also change tests
  • Docs missing or thin: license, contributing, changelog

Most complex functions:

Security

Security posture is weak: 104 known vulnerabilities in 30 dependencies; 4 high-severity workflow issues. Weakest area: posture.

Area Score
Secrets (gitleaks, tree + history) 100
Static analysis (Opengrep) 100
Vulnerable dependencies (OSV) 3
CI workflows (zizmor) 42
Posture (policy, updates, signing, lockfiles) 0
OpenSSF Scorecard n/a
  • Known vulnerabilities: 104 in 30 packages (critical 3, high 56, medium 39, low 6)

  • Posture checks passed: lockfiles; missing: security policy, dependency updates, signed commits

Top findings

Severity Finding Location
critical osv/GHSA-2464-fhr4-w9xw: [email protected] (npm) is affected by GHSA-2464-fhr4-w9xw pnpm-lock.yaml
critical osv/GHSA-2xp9-vwfh-vxw4: [email protected] (npm) is affected by GHSA-2xp9-vwfh-vxw4 pnpm-lock.yaml
critical osv/GHSA-p293-qw3h-jr36: [email protected] (npm) is affected by GHSA-p293-qw3h-jr36 pnpm-lock.yaml
high osv/GHSA-3jxr-9vmj-r5cp: [email protected] (npm) is affected by GHSA-3jxr-9vmj-r5cp pnpm-lock.yaml
high osv/GHSA-6j4f-fj2g-mc7p: [email protected] (npm) is affected by GHSA-6j4f-fj2g-mc7p pnpm-lock.yaml
high osv/GHSA-mh99-v99m-4gvg: [email protected] (npm) is affected by GHSA-mh99-v99m-4gvg pnpm-lock.yaml
high osv/GHSA-qhr7-859c-m2p7: [email protected] (npm) is affected by GHSA-qhr7-859c-m2p7 pnpm-lock.yaml
high osv/GHSA-rgw5-rvv9-x895: [email protected] (npm) is affected by GHSA-rgw5-rvv9-x895 pnpm-lock.yaml
high osv/GHSA-3jxr-9vmj-r5cp: [email protected] (npm) is affected by GHSA-3jxr-9vmj-r5cp pnpm-lock.yaml
high osv/GHSA-6j4f-fj2g-mc7p: [email protected] (npm) is affected by GHSA-6j4f-fj2g-mc7p pnpm-lock.yaml
high osv/GHSA-mh99-v99m-4gvg: [email protected] (npm) is affected by GHSA-mh99-v99m-4gvg pnpm-lock.yaml
high osv/GHSA-qhr7-859c-m2p7: [email protected] (npm) is affected by GHSA-qhr7-859c-m2p7 pnpm-lock.yaml
high osv/GHSA-rgw5-rvv9-x895: [email protected] (npm) is affected by GHSA-rgw5-rvv9-x895 pnpm-lock.yaml
high osv/GHSA-73wf-gq98-2v4g: [email protected] (npm) is affected by GHSA-73wf-gq98-2v4g pnpm-lock.yaml
high osv/GHSA-c83g-rgw3-j3cx: [email protected] (npm) is affected by GHSA-c83g-rgw3-j3cx pnpm-lock.yaml
high osv/GHSA-px8p-9vwx-vf98: [email protected] (npm) is affected by GHSA-px8p-9vwx-vf98 pnpm-lock.yaml
high osv/GHSA-25h7-pfq9-p65f: [email protected] (npm) is affected by GHSA-25h7-pfq9-p65f pnpm-lock.yaml
high osv/GHSA-rf6f-7fwh-wjgh: [email protected] (npm) is affected by GHSA-rf6f-7fwh-wjgh pnpm-lock.yaml
high osv/GHSA-hmw2-7cc7-3qxx: [email protected] (npm) is affected by GHSA-hmw2-7cc7-3qxx pnpm-lock.yaml
high osv/GHSA-5j98-mcp5-4vw2: [email protected] (npm) is affected by GHSA-5j98-mcp5-4vw2 pnpm-lock.yaml
high osv/GHSA-2883-xcg3-v3hh: [email protected] (npm) is affected by GHSA-2883-xcg3-v3hh pnpm-lock.yaml
high osv/GHSA-52cp-r559-cp3m: [email protected] (npm) is affected by GHSA-52cp-r559-cp3m pnpm-lock.yaml
high osv/GHSA-5p4m-2wfm-xmqj: [email protected] (npm) is affected by GHSA-5p4m-2wfm-xmqj pnpm-lock.yaml
high osv/GHSA-r5fr-rjxr-66jc: [email protected] (npm) is affected by GHSA-r5fr-rjxr-66jc pnpm-lock.yaml
high osv/GHSA-23c5-xmqv-rm74: [email protected] (npm) is affected by GHSA-23c5-xmqv-rm74 pnpm-lock.yaml

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: 24,095; test lines: 256
Language Lines
TypeScript 24,206
SQL 88
JavaScript 57