{"schema_version":"2","scorer_version":"0.1.0","scoring_version":"prov-5+qual-2+sec-2","generated_at":"2026-11-14T14:52:05.208407Z","repo":{"ref":{"host":"github.com","owner":"isuryanarayanan","name":"supers"},"default_branch":"main","clone_url":"https://github.com/isuryanarayanan/supers.git","html_url":"https://github.com/isuryanarayanan/supers","description":"thoughts, reflections and intrests.","stars":0,"forks":0,"is_fork":false,"is_archived":false,"is_private":false,"size_kb":2714,"primary_language":"TypeScript","license_spdx":null,"created_at":"2025-08-15T15:29:34Z","pushed_at":"2026-09-11T17:30:40Z","security_policy_url":null,"distribution":{"owner_created_at":"2020-06-07T14:22:58Z","owner_type":"User","release_assets":[]}},"commit_sha":"31876aed3ad972af13b6e4c13dbcd17753825104","profile":{"lines_by_language":{"TypeScript":11448,"JavaScript":3851,"Shell":34},"files_by_category":{"source":120,"docs":38,"config":19,"other":11,"generated":3,"binary":1},"source_lines":15333,"test_lines":0},"pillars":{"ai_provenance":{"score":0.0,"confidence":0.48,"coverage":1.0,"label":"possible","breakdown":{"attributed_share":0.0,"suspected_share":0.0,"estimated_share":0.0,"ai_artifacts":2.0,"flagged_work_units":0.0,"flagged_releases":null,"style_index":5.315},"summary":"Weak signals consistent with AI-assisted development. Comments and strings use phrasing typical of LLM-written code (see the coding style evidence)."},"quality":{"score":35.0,"confidence":0.9,"coverage":1.0,"label":"poor","breakdown":{"complexity":47.5,"duplication":54.5,"lint":6.8,"testing":15.0,"docs":40.0,"type_safety":100.0,"process":null},"summary":"Code quality is poor: test-to-source ratio 0.00, no CI test run detected; 25% of function code in complex or long functions; 10% duplicated lines. Weakest area: lint."},"security":{"score":43.0,"confidence":0.85,"coverage":1.0,"label":"poor","breakdown":{"secrets":90.5,"sast":72.3,"dependencies":0.1,"ci_actions":10.3,"posture":0.0,"scorecard":null},"summary":"Security posture is poor: 225 known vulnerabilities in 51 dependencies; 4 high-severity SAST findings; 11 high-severity workflow issues. Weakest area: posture."}},"analyzer_results":[{"analyzer":"sec-scorecard","pillar":"security","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":"no published OpenSSF Scorecard result for this repo"},{"analyzer":"sec-registry","pillar":"security","status":"ok","tool_version":null,"metrics":{"declared":72.0,"checked":72.0,"missing":0.0,"recent":0.0,"lookup_errors":0.0},"findings":[],"evidence":[],"data":{"phantom":false},"error":null},{"analyzer":"ai-attribution","pillar":"ai_provenance","status":"ok","tool_version":"signatures-v1","metrics":{"commits":32.0,"attributed_commits":0.0,"attributed_commit_share":0.0,"effective_loc":18767.0,"attributed_loc":0.0,"attributed_loc_share":0.0,"tools_detected":0.0},"findings":[],"evidence":[],"data":{"attributed_loc_by_commit":{},"tools":{},"monthly":{"2025-08":{"loc":14894,"attributed_loc":0},"2025-11":{"loc":441,"attributed_loc":0},"2026-01":{"loc":74,"attributed_loc":0},"2026-09":{"loc":3358,"attributed_loc":0}}},"error":null},{"analyzer":"ai-artifacts","pillar":"ai_provenance","status":"ok","tool_version":"signatures-v1","metrics":{"artifacts":2.0,"workflow_agents":0.0,"tools_configured":2.0,"earliest_adoption":1755273503.0},"findings":[],"evidence":[{"kind":"ai-artifact","description":"AGENTS.md (generic-agent configuration)","ref":"AGENTS.md","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/AGENTS.md","weight":0.5},{"kind":"ai-artifact","description":".github/copilot-instructions.md (github-copilot configuration)","ref":".github/copilot-instructions.md","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/.github/copilot-instructions.md","weight":0.5}],"data":{"artifacts":[{"tool":"generic-agent","path":"AGENTS.md","added_at":1788681226},{"tool":"github-copilot","path":".github/copilot-instructions.md","added_at":1755273503}],"workflows":[],"tools":["generic-agent","github-copilot"]},"error":null},{"analyzer":"ai-velocity","pillar":"ai_provenance","status":"ok","tool_version":"prov-4","metrics":{"work_units":15.0,"flagged_units":0.0,"pre_ai_era_bursts":0.0,"pre_ai_era_measured_loc":0.0,"pre_ai_era_burst_loc":0.0,"measured_loc":6053.0,"flagged_loc":0.0,"flagged_loc_share":0.0,"max_loc_per_hour":318.25,"median_loc_per_hour":57.75,"pr_timed_units":0.0,"excluded_import_loc":12714.0},"findings":[],"evidence":[],"data":{"flagged_loc_by_commit":{},"excluded_import_commits":["5921f29b71d1850e78fdaa8788568ba055c96c69"]},"error":null},{"analyzer":"ai-release-velocity","pillar":"ai_provenance","status":"skipped","tool_version":null,"metrics":{},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"ai-stylometry","pillar":"ai_provenance","status":"ok","tool_version":null,"metrics":{"lines_scanned":15333.0,"index":5.315,"count:narrated_steps":8.0,"per_kloc:narrated_steps":0.522,"files:narrated_steps":3.0,"count:placeholder":0.0,"per_kloc:placeholder":0.0,"files:placeholder":0.0,"count:emoji_in_code":147.0,"per_kloc:emoji_in_code":9.587,"files:emoji_in_code":9.0,"count:assistant_voice":0.0,"per_kloc:assistant_voice":0.0,"files:assistant_voice":0.0},"findings":[],"evidence":[{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // First, let's check if bucket exists anywhere","ref":"aws/scripts/s3-init.js:46","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/aws/scripts/s3-init.js#L46","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // Step 1: Get pre-signed URL","ref":"lib/file-upload.ts:93","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/lib/file-upload.ts#L93","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // Step 2: Upload directly to S3","ref":"lib/file-upload.ts:140","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/lib/file-upload.ts#L140","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // Step 1: Pre-build checks (only if not skipped)","ref":"scripts/deploy.js:65","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/scripts/deploy.js#L65","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // Step 2: Sync posts from API","ref":"scripts/deploy.js:76","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/scripts/deploy.js#L76","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // Step 3: Lint check","ref":"scripts/deploy.js:80","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/scripts/deploy.js#L80","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // Step 4: Next.js build","ref":"scripts/deploy.js:87","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/scripts/deploy.js#L87","weight":0.0},{"kind":"stylometry:narrated_steps","description":"step-by-step narration comment: // Step 5: Create deployment summary","ref":"scripts/deploy.js:94","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/scripts/deploy.js#L94","weight":0.0}],"data":{},"error":null},{"analyzer":"sec-secrets","pillar":"security","status":"ok","tool_version":"gitleaks 8.30.1","metrics":{"secrets_current":0.0,"secrets_history":0.0,"secrets_nonprod":3.0,"secrets_low_confidence":0.0},"findings":[{"rule_id":"gitleaks/curl-auth-header","severity":"low","message":"Possible curl-auth-header secret in the current tree (test/docs/example file)","path":"functions/aws/README.md","line":141,"fingerprint":"functions/aws/README.md:curl-auth-header:141"},{"rule_id":"gitleaks/generic-api-key","severity":"low","message":"Possible generic-api-key secret in the current tree (test/docs/example file)","path":"aws/env/.env.example","line":12,"fingerprint":"aws/env/.env.example:generic-api-key:12"},{"rule_id":"gitleaks/curl-auth-header","severity":"low","message":"Possible curl-auth-header secret in history (commit 5921f29b71); removed from the current tree but still retrievable","path":"docs/features/POSTS_SYSTEM.md","line":258,"fingerprint":"5921f29b71d1850e78fdaa8788568ba055c96c69:docs/features/POSTS_SYSTEM.md:curl-auth-header:258"}],"evidence":[],"data":{},"error":null},{"analyzer":"sec-sast","pillar":"security","status":"ok","tool_version":"opengrep 1.33.1; rules f1d2b562b414","metrics":{"findings":44.0,"findings_high":4.0,"findings_medium":37.0,"findings_low":3.0,"weighted_findings":14.188,"scanned_lines":15333.0,"parse_errors":0.0},"findings":[{"rule_id":"opengrep/dockerfile.security.missing-user","severity":"high","message":"By not specifying a USER, a program in the container may run as 'root'. This is a security hazard. If an attacker can control a process running as root, they may have control over the container. Ensure that the last USER in a Dockerfile is a USER other than 'root'. [confidence medium]","path":"functions/aws/Dockerfile","line":20,"fingerprint":"dockerfile.security.missing-user:functions/aws/Dockerfile:20"},{"rule_id":"opengrep/javascript.lang.security.detect-child-process","severity":"high","message":"Detected calls to child_process from a function argument `command`. This could lead to a command injection if the input is user controllable. Try to avoid calls to child_process, and if it is needed ensure user input is correctly sanitized or sandboxed. [confidence low]","path":"scripts/deploy-gh-pages.js","line":19,"fingerprint":"javascript.lang.security.detect-child-process:scripts/deploy-gh-pages.js:19"},{"rule_id":"opengrep/javascript.lang.security.detect-child-process","severity":"high","message":"Detected calls to child_process from a function argument `command`. This could lead to a command injection if the input is user controllable. Try to avoid calls to child_process, and if it is needed ensure user input is correctly sanitized or sandboxed. [confidence low]","path":"scripts/deploy-gh-pages.js","line":35,"fingerprint":"javascript.lang.security.detect-child-process:scripts/deploy-gh-pages.js:35"},{"rule_id":"opengrep/javascript.lang.security.detect-child-process","severity":"high","message":"Detected calls to child_process from a function argument `command`. This could lead to a command injection if the input is user controllable. Try to avoid calls to child_process, and if it is needed ensure user input is correctly sanitized or sandboxed. [confidence low]","path":"scripts/deploy.js","line":19,"fingerprint":"javascript.lang.security.detect-child-process:scripts/deploy.js:19"},{"rule_id":"opengrep/javascript.lang.security.audit.unsafe-dynamic-method","severity":"medium","message":"Using non-static data to retrieve and run functions from the object is dangerous. If the data is user-controlled, it may allow executing arbitrary code. [confidence low]","path":"components/admin/posts-dashboard.tsx","line":239,"fingerprint":"javascript.lang.security.audit.unsafe-dynamic-method:components/admin/posts-dashboard.tsx:239"},{"rule_id":"opengrep/javascript.lang.security.audit.unsafe-dynamic-method","severity":"medium","message":"Using non-static data to retrieve and run functions from the object is dangerous. If the data is user-controlled, it may allow executing arbitrary code. [confidence low]","path":"components/admin/posts-dashboard.tsx","line":255,"fingerprint":"javascript.lang.security.audit.unsafe-dynamic-method:components/admin/posts-dashboard.tsx:255"},{"rule_id":"opengrep/typescript.react.security.audit.react-dangerouslysetinnerhtml","severity":"medium","message":"Detection of dangerouslySetInnerHTML from non-constant definition. This can inadvertently expose users to cross-site scripting (XSS) attacks if this comes from user-provided input. If you have to use dangerouslySetInnerHTML, consider using a sanitization library such as DOMPurify to sanitize your HT [confidence medium]","path":"components/ui/code-block.tsx","line":47,"fingerprint":"typescript.react.security.audit.react-dangerouslysetinnerhtml:components/ui/code-block.tsx:47"},{"rule_id":"opengrep/typescript.react.security.audit.react-dangerouslysetinnerhtml","severity":"medium","message":"Detection of dangerouslySetInnerHTML from non-constant definition. This can inadvertently expose users to cross-site scripting (XSS) attacks if this comes from user-provided input. If you have to use dangerouslySetInnerHTML, consider using a sanitization library such as DOMPurify to sanitize your HT [confidence medium]","path":"components/ui/server-code-block.tsx","line":41,"fingerprint":"typescript.react.security.audit.react-dangerouslysetinnerhtml:components/ui/server-code-block.tsx:41"},{"rule_id":"opengrep/javascript.lang.security.audit.path-traversal.path-join-resolve-traversal","severity":"medium","message":"Detected possible user input going into a `path.join` or `path.resolve` function. This could possibly lead to a path traversal vulnerability,  where the attacker can access arbitrary files stored in the file system. Instead, be sure to sanitize or validate user input first. [confidence low]","path":"scripts/build-posts.js","line":247,"fingerprint":"javascript.lang.security.audit.path-traversal.path-join-resolve-traversal:scripts/build-posts.js:247"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `versionTag` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/build-posts.js","line":248,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/build-posts.js:248"},{"rule_id":"opengrep/javascript.lang.security.audit.path-traversal.path-join-resolve-traversal","severity":"medium","message":"Detected possible user input going into a `path.join` or `path.resolve` function. This could possibly lead to a path traversal vulnerability,  where the attacker can access arbitrary files stored in the file system. Instead, be sure to sanitize or validate user input first. [confidence low]","path":"scripts/build-posts.js","line":264,"fingerprint":"javascript.lang.security.audit.path-traversal.path-join-resolve-traversal:scripts/build-posts.js:264"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `versionTag` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/build-posts.js","line":265,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/build-posts.js:265"},{"rule_id":"opengrep/javascript.lang.security.audit.path-traversal.path-join-resolve-traversal","severity":"medium","message":"Detected possible user input going into a `path.join` or `path.resolve` function. This could possibly lead to a path traversal vulnerability,  where the attacker can access arbitrary files stored in the file system. Instead, be sure to sanitize or validate user input first. [confidence low]","path":"scripts/build-posts.js","line":297,"fingerprint":"javascript.lang.security.audit.path-traversal.path-join-resolve-traversal:scripts/build-posts.js:297"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `versionTag` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/build-posts.js","line":300,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/build-posts.js:300"},{"rule_id":"opengrep/javascript.lang.security.audit.path-traversal.path-join-resolve-traversal","severity":"medium","message":"Detected possible user input going into a `path.join` or `path.resolve` function. This could possibly lead to a path traversal vulnerability,  where the attacker can access arbitrary files stored in the file system. Instead, be sure to sanitize or validate user input first. [confidence low]","path":"scripts/build-posts.js","line":316,"fingerprint":"javascript.lang.security.audit.path-traversal.path-join-resolve-traversal:scripts/build-posts.js:316"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `file` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/build-posts.js","line":317,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/build-posts.js:317"},{"rule_id":"opengrep/javascript.lang.security.audit.path-traversal.path-join-resolve-traversal","severity":"medium","message":"Detected possible user input going into a `path.join` or `path.resolve` function. This could possibly lead to a path traversal vulnerability,  where the attacker can access arbitrary files stored in the file system. Instead, be sure to sanitize or validate user input first. [confidence low]","path":"scripts/build-posts.js","line":317,"fingerprint":"javascript.lang.security.audit.path-traversal.path-join-resolve-traversal:scripts/build-posts.js:317"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `file` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/build-posts.js","line":325,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/build-posts.js:325"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `file` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/build-posts.js","line":331,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/build-posts.js:331"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `file` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/build-posts.js","line":332,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/build-posts.js:332"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `dir` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/deploy-gh-pages.js","line":43,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/deploy-gh-pages.js:43"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `dir` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/deploy-gh-pages.js","line":44,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/deploy-gh-pages.js:44"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `dir` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/deploy-gh-pages.js","line":46,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/deploy-gh-pages.js:46"},{"rule_id":"opengrep/javascript.lang.security.audit.path-traversal.path-join-resolve-traversal","severity":"medium","message":"Detected possible user input going into a `path.join` or `path.resolve` function. This could possibly lead to a path traversal vulnerability,  where the attacker can access arbitrary files stored in the file system. Instead, be sure to sanitize or validate user input first. [confidence low]","path":"scripts/deploy-gh-pages.js","line":46,"fingerprint":"javascript.lang.security.audit.path-traversal.path-join-resolve-traversal:scripts/deploy-gh-pages.js:46"},{"rule_id":"opengrep/javascript.lang.security.audit.path-traversal.path-join-resolve-traversal","severity":"medium","message":"Detected possible user input going into a `path.join` or `path.resolve` function. This could possibly lead to a path traversal vulnerability,  where the attacker can access arbitrary files stored in the file system. Instead, be sure to sanitize or validate user input first. [confidence low]","path":"scripts/deploy-gh-pages.js","line":46,"fingerprint":"javascript.lang.security.audit.path-traversal.path-join-resolve-traversal:scripts/deploy-gh-pages.js:46"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `target` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/deploy-gh-pages.js","line":51,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/deploy-gh-pages.js:51"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `source` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/deploy-gh-pages.js","line":52,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/deploy-gh-pages.js:52"},{"rule_id":"opengrep/javascript.lang.security.audit.path-traversal.path-join-resolve-traversal","severity":"medium","message":"Detected possible user input going into a `path.join` or `path.resolve` function. This could possibly lead to a path traversal vulnerability,  where the attacker can access arbitrary files stored in the file system. Instead, be sure to sanitize or validate user input first. [confidence low]","path":"scripts/deploy-gh-pages.js","line":53,"fingerprint":"javascript.lang.security.audit.path-traversal.path-join-resolve-traversal:scripts/deploy-gh-pages.js:53"},{"rule_id":"opengrep/javascript.lang.security.audit.path-traversal.path-join-resolve-traversal","severity":"medium","message":"Detected possible user input going into a `path.join` or `path.resolve` function. This could possibly lead to a path traversal vulnerability,  where the attacker can access arbitrary files stored in the file system. Instead, be sure to sanitize or validate user input first. [confidence low]","path":"scripts/deploy-gh-pages.js","line":53,"fingerprint":"javascript.lang.security.audit.path-traversal.path-join-resolve-traversal:scripts/deploy-gh-pages.js:53"},{"rule_id":"opengrep/javascript.lang.security.audit.path-traversal.path-join-resolve-traversal","severity":"medium","message":"Detected possible user input going into a `path.join` or `path.resolve` function. This could possibly lead to a path traversal vulnerability,  where the attacker can access arbitrary files stored in the file system. Instead, be sure to sanitize or validate user input first. [confidence low]","path":"scripts/deploy-gh-pages.js","line":54,"fingerprint":"javascript.lang.security.audit.path-traversal.path-join-resolve-traversal:scripts/deploy-gh-pages.js:54"},{"rule_id":"opengrep/javascript.lang.security.audit.path-traversal.path-join-resolve-traversal","severity":"medium","message":"Detected possible user input going into a `path.join` or `path.resolve` function. This could possibly lead to a path traversal vulnerability,  where the attacker can access arbitrary files stored in the file system. Instead, be sure to sanitize or validate user input first. [confidence low]","path":"scripts/deploy-gh-pages.js","line":54,"fingerprint":"javascript.lang.security.audit.path-traversal.path-join-resolve-traversal:scripts/deploy-gh-pages.js:54"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `source` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/deploy-gh-pages.js","line":58,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/deploy-gh-pages.js:58"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `source` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/deploy-gh-pages.js","line":58,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/deploy-gh-pages.js:58"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `target` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/deploy-gh-pages.js","line":58,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/deploy-gh-pages.js:58"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `source` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/deploy-gh-pages.js","line":60,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/deploy-gh-pages.js:60"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `source` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/deploy-gh-pages.js","line":60,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/deploy-gh-pages.js:60"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `target` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/deploy-gh-pages.js","line":60,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/deploy-gh-pages.js:60"},{"rule_id":"opengrep/javascript.lang.security.audit.path-traversal.path-join-resolve-traversal","severity":"medium","message":"Detected possible user input going into a `path.join` or `path.resolve` function. This could possibly lead to a path traversal vulnerability,  where the attacker can access arbitrary files stored in the file system. Instead, be sure to sanitize or validate user input first. [confidence low]","path":"scripts/versions.js","line":21,"fingerprint":"javascript.lang.security.audit.path-traversal.path-join-resolve-traversal:scripts/versions.js:21"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `file` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/versions.js","line":22,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/versions.js:22"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `file` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/versions.js","line":27,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/versions.js:27"},{"rule_id":"opengrep/javascript.lang.security.audit.detect-non-literal-fs-filename","severity":"medium","message":"Detected that function argument `file` has entered the fs module. An attacker could potentially control the location of this file, to include going backwards in the directory with '../'. To address this, ensure that user-controlled variables in file paths are validated. [confidence low]","path":"scripts/versions.js","line":29,"fingerprint":"javascript.lang.security.audit.detect-non-literal-fs-filename:scripts/versions.js:29"},{"rule_id":"opengrep/javascript.lang.security.audit.unsafe-formatstring","severity":"low","message":"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. [confidence low]","path":"functions/aws/files-list.js","line":106,"fingerprint":"javascript.lang.security.audit.unsafe-formatstring:functions/aws/files-list.js:106"},{"rule_id":"opengrep/javascript.lang.security.audit.unsafe-formatstring","severity":"low","message":"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. [confidence low]","path":"functions/aws/files-upload.js","line":166,"fingerprint":"javascript.lang.security.audit.unsafe-formatstring:functions/aws/files-upload.js:166"},{"rule_id":"opengrep/javascript.lang.security.audit.unsafe-formatstring","severity":"low","message":"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. [confidence low]","path":"lib/highlight-code.ts","line":31,"fingerprint":"javascript.lang.security.audit.unsafe-formatstring:lib/highlight-code.ts:31"}],"evidence":[],"data":{"rulesets":["typescript","javascript","bash","dockerfile"]},"error":null},{"analyzer":"sec-deps","pillar":"security","status":"ok","tool_version":"osv-scanner version: 2.7.1","metrics":{"vulnerable_packages":51.0,"vulnerabilities":225.0,"vulns_critical":14.0,"vulns_high":120.0,"vulns_medium":79.0,"vulns_low":12.0,"vulns_unknown":0.0,"penalty":396.0},"findings":[{"rule_id":"osv/GHSA-hrh2-vp3x-79xf","severity":"critical","message":"decompress@4.2.1 (npm) is affected by GHSA-hrh2-vp3x-79xf; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"decompress@4.2.1 (npm):GHSA-hrh2-vp3x-79xf"},{"rule_id":"osv/GHSA-mp2f-45pm-3cg9","severity":"critical","message":"decompress@4.2.1 (npm) is affected by GHSA-mp2f-45pm-3cg9; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"decompress@4.2.1 (npm):GHSA-mp2f-45pm-3cg9"},{"rule_id":"osv/GHSA-m7jm-9gc2-mpf2","severity":"critical","message":"fast-xml-parser@5.2.5 (npm) is affected by GHSA-m7jm-9gc2-mpf2; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-xml-parser@5.2.5 (npm):GHSA-m7jm-9gc2-mpf2"},{"rule_id":"osv/GHSA-hffm-xvc3-vprc","severity":"critical","message":"simple-git@3.28.0 (npm) is affected by GHSA-hffm-xvc3-vprc; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"simple-git@3.28.0 (npm):GHSA-hffm-xvc3-vprc"},{"rule_id":"osv/GHSA-r275-fr43-pm7q","severity":"critical","message":"simple-git@3.28.0 (npm) is affected by GHSA-r275-fr43-pm7q; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"simple-git@3.28.0 (npm):GHSA-r275-fr43-pm7q"},{"rule_id":"osv/GHSA-x6jw-m9v5-85vh","severity":"critical","message":"simple-git@3.28.0 (npm) is affected by GHSA-x6jw-m9v5-85vh; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"simple-git@3.28.0 (npm):GHSA-x6jw-m9v5-85vh"},{"rule_id":"osv/GHSA-23hp-3jrh-7fpw","severity":"critical","message":"tar@6.2.1 (npm) is affected by GHSA-23hp-3jrh-7fpw; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"tar@6.2.1 (npm):GHSA-23hp-3jrh-7fpw"},{"rule_id":"osv/GHSA-7gfh-x38p-prh3","severity":"critical","message":"velocityjs@2.1.5 (npm) is affected by GHSA-7gfh-x38p-prh3; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"velocityjs@2.1.5 (npm):GHSA-7gfh-x38p-prh3"},{"rule_id":"osv/GHSA-2464-fhr4-w9xw","severity":"critical","message":"next@15.3.4 (npm) is affected by GHSA-2464-fhr4-w9xw; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-2464-fhr4-w9xw"},{"rule_id":"osv/GHSA-2xp9-vwfh-vxw4","severity":"critical","message":"next@15.3.4 (npm) is affected by GHSA-2xp9-vwfh-vxw4; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-2xp9-vwfh-vxw4"},{"rule_id":"osv/GHSA-9qr9-h5gf-34mp","severity":"critical","message":"next@15.3.4 (npm) is affected by GHSA-9qr9-h5gf-34mp; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-9qr9-h5gf-34mp"},{"rule_id":"osv/GHSA-p293-qw3h-jr36","severity":"critical","message":"next@15.3.4 (npm) is affected by GHSA-p293-qw3h-jr36; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-p293-qw3h-jr36"},{"rule_id":"osv/GHSA-w7jw-789q-3m8p","severity":"critical","message":"shell-quote@1.8.3 (npm) is affected by GHSA-w7jw-789q-3m8p; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"shell-quote@1.8.3 (npm):GHSA-w7jw-789q-3m8p"},{"rule_id":"osv/GHSA-23hp-3jrh-7fpw","severity":"critical","message":"tar@7.4.3 (npm) is affected by GHSA-23hp-3jrh-7fpw; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"tar@7.4.3 (npm):GHSA-23hp-3jrh-7fpw"},{"rule_id":"osv/GHSA-36hh-x5p5-jgc8","severity":"high","message":"@hapi/content@6.0.0 (npm) is affected by GHSA-36hh-x5p5-jgc8; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"@hapi/content@6.0.0 (npm):GHSA-36hh-x5p5-jgc8"},{"rule_id":"osv/GHSA-8494-f6mr-cjpv","severity":"high","message":"@hapi/content@6.0.0 (npm) is affected by GHSA-8494-f6mr-cjpv; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"@hapi/content@6.0.0 (npm):GHSA-8494-f6mr-cjpv"},{"rule_id":"osv/GHSA-jg4p-7fhp-p32p","severity":"high","message":"@hapi/content@6.0.0 (npm) is affected by GHSA-jg4p-7fhp-p32p; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"@hapi/content@6.0.0 (npm):GHSA-jg4p-7fhp-p32p"},{"rule_id":"osv/GHSA-7q85-xj36-vmfc","severity":"high","message":"adm-zip@0.5.16 (npm) is affected by GHSA-7q85-xj36-vmfc; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"adm-zip@0.5.16 (npm):GHSA-7q85-xj36-vmfc"},{"rule_id":"osv/GHSA-8238-w5pm-2374","severity":"high","message":"adm-zip@0.5.16 (npm) is affected by GHSA-8238-w5pm-2374; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"adm-zip@0.5.16 (npm):GHSA-8238-w5pm-2374"},{"rule_id":"osv/GHSA-j5f4-cc29-5x44","severity":"high","message":"adm-zip@0.5.16 (npm) is affected by GHSA-j5f4-cc29-5x44; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"adm-zip@0.5.16 (npm):GHSA-j5f4-cc29-5x44"},{"rule_id":"osv/GHSA-rcw4-f5rp-g42v","severity":"high","message":"adm-zip@0.5.16 (npm) is affected by GHSA-rcw4-f5rp-g42v; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"adm-zip@0.5.16 (npm):GHSA-rcw4-f5rp-g42v"},{"rule_id":"osv/GHSA-xcpc-8h2w-3j85","severity":"high","message":"adm-zip@0.5.16 (npm) is affected by GHSA-xcpc-8h2w-3j85; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"adm-zip@0.5.16 (npm):GHSA-xcpc-8h2w-3j85"},{"rule_id":"osv/GHSA-35jp-ww65-95wh","severity":"high","message":"axios@1.11.0 (npm) is affected by GHSA-35jp-ww65-95wh; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-35jp-ww65-95wh"},{"rule_id":"osv/GHSA-3g43-6gmg-66jw","severity":"high","message":"axios@1.11.0 (npm) is affected by GHSA-3g43-6gmg-66jw; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-3g43-6gmg-66jw"},{"rule_id":"osv/GHSA-43fc-jf86-j433","severity":"high","message":"axios@1.11.0 (npm) is affected by GHSA-43fc-jf86-j433; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-43fc-jf86-j433"},{"rule_id":"osv/GHSA-4hjh-wcwx-xvwj","severity":"high","message":"axios@1.11.0 (npm) is affected by GHSA-4hjh-wcwx-xvwj; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-4hjh-wcwx-xvwj"},{"rule_id":"osv/GHSA-62hf-57xw-28j9","severity":"high","message":"axios@1.11.0 (npm) is affected by GHSA-62hf-57xw-28j9; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-62hf-57xw-28j9"},{"rule_id":"osv/GHSA-6chq-wfr3-2hj9","severity":"high","message":"axios@1.11.0 (npm) is affected by GHSA-6chq-wfr3-2hj9; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-6chq-wfr3-2hj9"},{"rule_id":"osv/GHSA-777c-7fjr-54vf","severity":"high","message":"axios@1.11.0 (npm) is affected by GHSA-777c-7fjr-54vf; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-777c-7fjr-54vf"},{"rule_id":"osv/GHSA-hfxv-24rg-xrqf","severity":"high","message":"axios@1.11.0 (npm) is affected by GHSA-hfxv-24rg-xrqf; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-hfxv-24rg-xrqf"},{"rule_id":"osv/GHSA-j5f8-grm9-p9fc","severity":"high","message":"axios@1.11.0 (npm) is affected by GHSA-j5f8-grm9-p9fc; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-j5f8-grm9-p9fc"},{"rule_id":"osv/GHSA-p92q-9vqr-4j8v","severity":"high","message":"axios@1.11.0 (npm) is affected by GHSA-p92q-9vqr-4j8v; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-p92q-9vqr-4j8v"},{"rule_id":"osv/GHSA-pf86-5x62-jrwf","severity":"high","message":"axios@1.11.0 (npm) is affected by GHSA-pf86-5x62-jrwf; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-pf86-5x62-jrwf"},{"rule_id":"osv/GHSA-pmwg-cvhr-8vh7","severity":"high","message":"axios@1.11.0 (npm) is affected by GHSA-pmwg-cvhr-8vh7; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-pmwg-cvhr-8vh7"},{"rule_id":"osv/GHSA-q8qp-cvcw-x6jj","severity":"high","message":"axios@1.11.0 (npm) is affected by GHSA-q8qp-cvcw-x6jj; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-q8qp-cvcw-x6jj"},{"rule_id":"osv/GHSA-3jxr-9vmj-r5cp","severity":"high","message":"brace-expansion@1.1.12 (npm) is affected by GHSA-3jxr-9vmj-r5cp; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"brace-expansion@1.1.12 (npm):GHSA-3jxr-9vmj-r5cp"},{"rule_id":"osv/GHSA-6j4f-fj2g-mc7p","severity":"high","message":"brace-expansion@1.1.12 (npm) is affected by GHSA-6j4f-fj2g-mc7p; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"brace-expansion@1.1.12 (npm):GHSA-6j4f-fj2g-mc7p"},{"rule_id":"osv/GHSA-mh99-v99m-4gvg","severity":"high","message":"brace-expansion@1.1.12 (npm) is affected by GHSA-mh99-v99m-4gvg; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"brace-expansion@1.1.12 (npm):GHSA-mh99-v99m-4gvg"},{"rule_id":"osv/GHSA-qhr7-859c-m2p7","severity":"high","message":"brace-expansion@1.1.12 (npm) is affected by GHSA-qhr7-859c-m2p7; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"brace-expansion@1.1.12 (npm):GHSA-qhr7-859c-m2p7"},{"rule_id":"osv/GHSA-rgw5-rvv9-x895","severity":"high","message":"brace-expansion@1.1.12 (npm) is affected by GHSA-rgw5-rvv9-x895; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"brace-expansion@1.1.12 (npm):GHSA-rgw5-rvv9-x895"},{"rule_id":"osv/GHSA-3jxr-9vmj-r5cp","severity":"high","message":"brace-expansion@2.0.2 (npm) is affected by GHSA-3jxr-9vmj-r5cp; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"brace-expansion@2.0.2 (npm):GHSA-3jxr-9vmj-r5cp"},{"rule_id":"osv/GHSA-6j4f-fj2g-mc7p","severity":"high","message":"brace-expansion@2.0.2 (npm) is affected by GHSA-6j4f-fj2g-mc7p; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"brace-expansion@2.0.2 (npm):GHSA-6j4f-fj2g-mc7p"},{"rule_id":"osv/GHSA-mh99-v99m-4gvg","severity":"high","message":"brace-expansion@2.0.2 (npm) is affected by GHSA-mh99-v99m-4gvg; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"brace-expansion@2.0.2 (npm):GHSA-mh99-v99m-4gvg"},{"rule_id":"osv/GHSA-qhr7-859c-m2p7","severity":"high","message":"brace-expansion@2.0.2 (npm) is affected by GHSA-qhr7-859c-m2p7; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"brace-expansion@2.0.2 (npm):GHSA-qhr7-859c-m2p7"},{"rule_id":"osv/GHSA-rgw5-rvv9-x895","severity":"high","message":"brace-expansion@2.0.2 (npm) is affected by GHSA-rgw5-rvv9-x895; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"brace-expansion@2.0.2 (npm):GHSA-rgw5-rvv9-x895"},{"rule_id":"osv/GHSA-wm7h-9275-46v2","severity":"high","message":"dicer@0.3.0 (npm) is affected by GHSA-wm7h-9275-46v2; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"dicer@0.3.0 (npm):GHSA-wm7h-9275-46v2"},{"rule_id":"osv/GHSA-4c8g-83qw-93j6","severity":"high","message":"fast-uri@3.0.6 (npm) is affected by GHSA-4c8g-83qw-93j6; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-uri@3.0.6 (npm):GHSA-4c8g-83qw-93j6"},{"rule_id":"osv/GHSA-7p8r-x3mc-p8w7","severity":"high","message":"fast-uri@3.0.6 (npm) is affected by GHSA-7p8r-x3mc-p8w7; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-uri@3.0.6 (npm):GHSA-7p8r-x3mc-p8w7"},{"rule_id":"osv/GHSA-f65p-4m7j-42xc","severity":"high","message":"fast-uri@3.0.6 (npm) is affected by GHSA-f65p-4m7j-42xc; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-uri@3.0.6 (npm):GHSA-f65p-4m7j-42xc"},{"rule_id":"osv/GHSA-jqff-g426-hqxp","severity":"high","message":"fast-uri@3.0.6 (npm) is affected by GHSA-jqff-g426-hqxp; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-uri@3.0.6 (npm):GHSA-jqff-g426-hqxp"},{"rule_id":"osv/GHSA-q3j6-qgpj-74h6","severity":"high","message":"fast-uri@3.0.6 (npm) is affected by GHSA-q3j6-qgpj-74h6; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-uri@3.0.6 (npm):GHSA-q3j6-qgpj-74h6"},{"rule_id":"osv/GHSA-qw65-cvwx-89v3","severity":"high","message":"fast-uri@3.0.6 (npm) is affected by GHSA-qw65-cvwx-89v3; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-uri@3.0.6 (npm):GHSA-qw65-cvwx-89v3"},{"rule_id":"osv/GHSA-v2hh-gcrm-f6hx","severity":"high","message":"fast-uri@3.0.6 (npm) is affected by GHSA-v2hh-gcrm-f6hx; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-uri@3.0.6 (npm):GHSA-v2hh-gcrm-f6hx"},{"rule_id":"osv/GHSA-v39h-62p7-jpjc","severity":"high","message":"fast-uri@3.0.6 (npm) is affected by GHSA-v39h-62p7-jpjc; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-uri@3.0.6 (npm):GHSA-v39h-62p7-jpjc"},{"rule_id":"osv/GHSA-37qj-frw5-hhjh","severity":"high","message":"fast-xml-parser@5.2.5 (npm) is affected by GHSA-37qj-frw5-hhjh; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-xml-parser@5.2.5 (npm):GHSA-37qj-frw5-hhjh"},{"rule_id":"osv/GHSA-8gc5-j5rx-235r","severity":"high","message":"fast-xml-parser@5.2.5 (npm) is affected by GHSA-8gc5-j5rx-235r; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-xml-parser@5.2.5 (npm):GHSA-8gc5-j5rx-235r"},{"rule_id":"osv/GHSA-jmr7-xgp7-cmfj","severity":"high","message":"fast-xml-parser@5.2.5 (npm) is affected by GHSA-jmr7-xgp7-cmfj; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-xml-parser@5.2.5 (npm):GHSA-jmr7-xgp7-cmfj"},{"rule_id":"osv/GHSA-hmw2-7cc7-3qxx","severity":"high","message":"form-data@4.0.4 (npm) is affected by GHSA-hmw2-7cc7-3qxx; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"form-data@4.0.4 (npm):GHSA-hmw2-7cc7-3qxx"},{"rule_id":"osv/GHSA-2883-xcg3-v3hh","severity":"high","message":"js-yaml@3.14.1 (npm) is affected by GHSA-2883-xcg3-v3hh; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"js-yaml@3.14.1 (npm):GHSA-2883-xcg3-v3hh"},{"rule_id":"osv/GHSA-52cp-r559-cp3m","severity":"high","message":"js-yaml@3.14.1 (npm) is affected by GHSA-52cp-r559-cp3m; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"js-yaml@3.14.1 (npm):GHSA-52cp-r559-cp3m"},{"rule_id":"osv/GHSA-5p4m-2wfm-xmqj","severity":"high","message":"js-yaml@3.14.1 (npm) is affected by GHSA-5p4m-2wfm-xmqj; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"js-yaml@3.14.1 (npm):GHSA-5p4m-2wfm-xmqj"},{"rule_id":"osv/GHSA-2883-xcg3-v3hh","severity":"high","message":"js-yaml@4.1.0 (npm) is affected by GHSA-2883-xcg3-v3hh; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"js-yaml@4.1.0 (npm):GHSA-2883-xcg3-v3hh"},{"rule_id":"osv/GHSA-52cp-r559-cp3m","severity":"high","message":"js-yaml@4.1.0 (npm) is affected by GHSA-52cp-r559-cp3m; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"js-yaml@4.1.0 (npm):GHSA-52cp-r559-cp3m"},{"rule_id":"osv/GHSA-5p4m-2wfm-xmqj","severity":"high","message":"js-yaml@4.1.0 (npm) is affected by GHSA-5p4m-2wfm-xmqj; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"js-yaml@4.1.0 (npm):GHSA-5p4m-2wfm-xmqj"},{"rule_id":"osv/GHSA-869p-cjfg-cm3x","severity":"high","message":"jws@3.2.2 (npm) is affected by GHSA-869p-cjfg-cm3x; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"jws@3.2.2 (npm):GHSA-869p-cjfg-cm3x"},{"rule_id":"osv/GHSA-r5fr-rjxr-66jc","severity":"high","message":"lodash@4.17.21 (npm) is affected by GHSA-r5fr-rjxr-66jc; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"lodash@4.17.21 (npm):GHSA-r5fr-rjxr-66jc"},{"rule_id":"osv/GHSA-23c5-xmqv-rm74","severity":"high","message":"minimatch@3.1.2 (npm) is affected by GHSA-23c5-xmqv-rm74; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"minimatch@3.1.2 (npm):GHSA-23c5-xmqv-rm74"},{"rule_id":"osv/GHSA-3ppc-4f35-3m26","severity":"high","message":"minimatch@3.1.2 (npm) is affected by GHSA-3ppc-4f35-3m26; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"minimatch@3.1.2 (npm):GHSA-3ppc-4f35-3m26"},{"rule_id":"osv/GHSA-7r86-cg39-jmmj","severity":"high","message":"minimatch@3.1.2 (npm) is affected by GHSA-7r86-cg39-jmmj; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"minimatch@3.1.2 (npm):GHSA-7r86-cg39-jmmj"},{"rule_id":"osv/GHSA-23c5-xmqv-rm74","severity":"high","message":"minimatch@5.1.6 (npm) is affected by GHSA-23c5-xmqv-rm74; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"minimatch@5.1.6 (npm):GHSA-23c5-xmqv-rm74"},{"rule_id":"osv/GHSA-3ppc-4f35-3m26","severity":"high","message":"minimatch@5.1.6 (npm) is affected by GHSA-3ppc-4f35-3m26; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"minimatch@5.1.6 (npm):GHSA-3ppc-4f35-3m26"},{"rule_id":"osv/GHSA-7r86-cg39-jmmj","severity":"high","message":"minimatch@5.1.6 (npm) is affected by GHSA-7r86-cg39-jmmj; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"minimatch@5.1.6 (npm):GHSA-7r86-cg39-jmmj"},{"rule_id":"osv/GHSA-c2c7-rcm5-vvqj","severity":"high","message":"picomatch@2.3.1 (npm) is affected by GHSA-c2c7-rcm5-vvqj; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"picomatch@2.3.1 (npm):GHSA-c2c7-rcm5-vvqj"},{"rule_id":"osv/GHSA-858h-whjf-mvg5","severity":"high","message":"simple-git@3.28.0 (npm) is affected by GHSA-858h-whjf-mvg5; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"simple-git@3.28.0 (npm):GHSA-858h-whjf-mvg5"},{"rule_id":"osv/GHSA-g4wm-2vf7-vfgr","severity":"high","message":"simple-git@3.28.0 (npm) is affected by GHSA-g4wm-2vf7-vfgr; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"simple-git@3.28.0 (npm):GHSA-g4wm-2vf7-vfgr"},{"rule_id":"osv/GHSA-jcxm-m3jx-f287","severity":"high","message":"simple-git@3.28.0 (npm) is affected by GHSA-jcxm-m3jx-f287; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"simple-git@3.28.0 (npm):GHSA-jcxm-m3jx-f287"},{"rule_id":"osv/GHSA-34x7-hfp2-rc4v","severity":"high","message":"tar@6.2.1 (npm) is affected by GHSA-34x7-hfp2-rc4v; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"tar@6.2.1 (npm):GHSA-34x7-hfp2-rc4v"},{"rule_id":"osv/GHSA-83g3-92jg-28cx","severity":"high","message":"tar@6.2.1 (npm) is affected by GHSA-83g3-92jg-28cx; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"tar@6.2.1 (npm):GHSA-83g3-92jg-28cx"},{"rule_id":"osv/GHSA-8qq5-rm4j-mr97","severity":"high","message":"tar@6.2.1 (npm) is affected by GHSA-8qq5-rm4j-mr97; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"tar@6.2.1 (npm):GHSA-8qq5-rm4j-mr97"},{"rule_id":"osv/GHSA-8x88-c5mf-7j5w","severity":"high","message":"tar@6.2.1 (npm) is affected by GHSA-8x88-c5mf-7j5w; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"tar@6.2.1 (npm):GHSA-8x88-c5mf-7j5w"},{"rule_id":"osv/GHSA-9ppj-qmqm-q256","severity":"high","message":"tar@6.2.1 (npm) is affected by GHSA-9ppj-qmqm-q256; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"tar@6.2.1 (npm):GHSA-9ppj-qmqm-q256"},{"rule_id":"osv/GHSA-qffp-2rhf-9h96","severity":"high","message":"tar@6.2.1 (npm) is affected by GHSA-qffp-2rhf-9h96; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"tar@6.2.1 (npm):GHSA-qffp-2rhf-9h96"},{"rule_id":"osv/GHSA-r292-9mhp-454m","severity":"high","message":"tar@6.2.1 (npm) is affected by GHSA-r292-9mhp-454m; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"tar@6.2.1 (npm):GHSA-r292-9mhp-454m"},{"rule_id":"osv/GHSA-r6q2-hw4h-h46w","severity":"high","message":"tar@6.2.1 (npm) is affected by GHSA-r6q2-hw4h-h46w; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"tar@6.2.1 (npm):GHSA-r6q2-hw4h-h46w"},{"rule_id":"osv/GHSA-w5hq-g745-h8pq","severity":"high","message":"uuid@8.0.0 (npm) is affected by GHSA-w5hq-g745-h8pq; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"uuid@8.0.0 (npm):GHSA-w5hq-g745-h8pq"},{"rule_id":"osv/GHSA-w5hq-g745-h8pq","severity":"high","message":"uuid@8.3.2 (npm) is affected by GHSA-w5hq-g745-h8pq; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"uuid@8.3.2 (npm):GHSA-w5hq-g745-h8pq"},{"rule_id":"osv/GHSA-w5hq-g745-h8pq","severity":"high","message":"uuid@9.0.1 (npm) is affected by GHSA-w5hq-g745-h8pq; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"uuid@9.0.1 (npm):GHSA-w5hq-g745-h8pq"},{"rule_id":"osv/GHSA-j658-c2gf-x6pq","severity":"high","message":"velocityjs@2.1.5 (npm) is affected by GHSA-j658-c2gf-x6pq; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"velocityjs@2.1.5 (npm):GHSA-j658-c2gf-x6pq"},{"rule_id":"osv/GHSA-96hv-2xvq-fx4p","severity":"high","message":"ws@7.5.10 (npm) is affected by GHSA-96hv-2xvq-fx4p; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"ws@7.5.10 (npm):GHSA-96hv-2xvq-fx4p"},{"rule_id":"osv/GHSA-96hv-2xvq-fx4p","severity":"high","message":"ws@8.18.3 (npm) is affected by GHSA-96hv-2xvq-fx4p; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"ws@8.18.3 (npm):GHSA-96hv-2xvq-fx4p"},{"rule_id":"osv/GHSA-px8p-9vwx-vf98","severity":"high","message":"fflate@0.8.2 (npm) is affected by GHSA-px8p-9vwx-vf98; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"fflate@0.8.2 (npm):GHSA-px8p-9vwx-vf98"},{"rule_id":"osv/GHSA-25h7-pfq9-p65f","severity":"high","message":"flatted@3.3.3 (npm) is affected by GHSA-25h7-pfq9-p65f; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"flatted@3.3.3 (npm):GHSA-25h7-pfq9-p65f"},{"rule_id":"osv/GHSA-rf6f-7fwh-wjgh","severity":"high","message":"flatted@3.3.3 (npm) is affected by GHSA-rf6f-7fwh-wjgh; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"flatted@3.3.3 (npm):GHSA-rf6f-7fwh-wjgh"},{"rule_id":"osv/GHSA-23c5-xmqv-rm74","severity":"high","message":"minimatch@9.0.5 (npm) is affected by GHSA-23c5-xmqv-rm74; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"minimatch@9.0.5 (npm):GHSA-23c5-xmqv-rm74"},{"rule_id":"osv/GHSA-3ppc-4f35-3m26","severity":"high","message":"minimatch@9.0.5 (npm) is affected by GHSA-3ppc-4f35-3m26; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"minimatch@9.0.5 (npm):GHSA-3ppc-4f35-3m26"},{"rule_id":"osv/GHSA-7r86-cg39-jmmj","severity":"high","message":"minimatch@9.0.5 (npm) is affected by GHSA-7r86-cg39-jmmj; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"minimatch@9.0.5 (npm):GHSA-7r86-cg39-jmmj"},{"rule_id":"osv/GHSA-28wg-ghj8-5hjv","severity":"high","message":"nanoid@3.3.11 (npm) is affected by GHSA-28wg-ghj8-5hjv; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"nanoid@3.3.11 (npm):GHSA-28wg-ghj8-5hjv"},{"rule_id":"osv/GHSA-2v37-7h3g-55p8","severity":"high","message":"nanoid@3.3.11 (npm) is affected by GHSA-2v37-7h3g-55p8; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"nanoid@3.3.11 (npm):GHSA-2v37-7h3g-55p8"},{"rule_id":"osv/GHSA-xwg4-73v4-xw9w","severity":"high","message":"nanoid@3.3.11 (npm) is affected by GHSA-xwg4-73v4-xw9w; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"nanoid@3.3.11 (npm):GHSA-xwg4-73v4-xw9w"},{"rule_id":"osv/GHSA-28wg-ghj8-5hjv","severity":"high","message":"nanoid@5.1.5 (npm) is affected by GHSA-28wg-ghj8-5hjv; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"nanoid@5.1.5 (npm):GHSA-28wg-ghj8-5hjv"},{"rule_id":"osv/GHSA-2v37-7h3g-55p8","severity":"high","message":"nanoid@5.1.5 (npm) is affected by GHSA-2v37-7h3g-55p8; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"nanoid@5.1.5 (npm):GHSA-2v37-7h3g-55p8"},{"rule_id":"osv/GHSA-xwg4-73v4-xw9w","severity":"high","message":"nanoid@5.1.5 (npm) is affected by GHSA-xwg4-73v4-xw9w; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"nanoid@5.1.5 (npm):GHSA-xwg4-73v4-xw9w"},{"rule_id":"osv/GHSA-267c-6grr-h53f","severity":"high","message":"next@15.3.4 (npm) is affected by GHSA-267c-6grr-h53f; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-267c-6grr-h53f"},{"rule_id":"osv/GHSA-26hh-7cqf-hhc6","severity":"high","message":"next@15.3.4 (npm) is affected by GHSA-26hh-7cqf-hhc6; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-26hh-7cqf-hhc6"},{"rule_id":"osv/GHSA-36qx-fr4f-26g5","severity":"high","message":"next@15.3.4 (npm) is affected by GHSA-36qx-fr4f-26g5; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-36qx-fr4f-26g5"},{"rule_id":"osv/GHSA-89xv-2m56-2m9x","severity":"high","message":"next@15.3.4 (npm) is affected by GHSA-89xv-2m56-2m9x; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-89xv-2m56-2m9x"},{"rule_id":"osv/GHSA-8h8q-6873-q5fj","severity":"high","message":"next@15.3.4 (npm) is affected by GHSA-8h8q-6873-q5fj; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-8h8q-6873-q5fj"},{"rule_id":"osv/GHSA-c4j6-fc7j-m34r","severity":"high","message":"next@15.3.4 (npm) is affected by GHSA-c4j6-fc7j-m34r; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-c4j6-fc7j-m34r"},{"rule_id":"osv/GHSA-h25m-26qc-wcjf","severity":"high","message":"next@15.3.4 (npm) is affected by GHSA-h25m-26qc-wcjf; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-h25m-26qc-wcjf"},{"rule_id":"osv/GHSA-m99w-x7hq-7vfj","severity":"high","message":"next@15.3.4 (npm) is affected by GHSA-m99w-x7hq-7vfj; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-m99w-x7hq-7vfj"},{"rule_id":"osv/GHSA-mg66-mrh9-m8jx","severity":"high","message":"next@15.3.4 (npm) is affected by GHSA-mg66-mrh9-m8jx; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-mg66-mrh9-m8jx"},{"rule_id":"osv/GHSA-mwv6-3258-q52c","severity":"high","message":"next@15.3.4 (npm) is affected by GHSA-mwv6-3258-q52c; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-mwv6-3258-q52c"},{"rule_id":"osv/GHSA-p3m5-59mp-jv5r","severity":"high","message":"next@15.3.4 (npm) is affected by GHSA-p3m5-59mp-jv5r; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-p3m5-59mp-jv5r"},{"rule_id":"osv/GHSA-p9j2-gv94-2wf4","severity":"high","message":"next@15.3.4 (npm) is affected by GHSA-p9j2-gv94-2wf4; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-p9j2-gv94-2wf4"},{"rule_id":"osv/GHSA-q4gf-8mx6-v5v3","severity":"high","message":"next@15.3.4 (npm) is affected by GHSA-q4gf-8mx6-v5v3; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-q4gf-8mx6-v5v3"},{"rule_id":"osv/GHSA-c2c7-rcm5-vvqj","severity":"high","message":"picomatch@4.0.2 (npm) is affected by GHSA-c2c7-rcm5-vvqj; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"picomatch@4.0.2 (npm):GHSA-c2c7-rcm5-vvqj"},{"rule_id":"osv/GHSA-6g55-p6wh-862q","severity":"high","message":"postcss@8.4.31 (npm) is affected by GHSA-6g55-p6wh-862q; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"postcss@8.4.31 (npm):GHSA-6g55-p6wh-862q"},{"rule_id":"osv/GHSA-r28c-9q8g-f849","severity":"high","message":"postcss@8.4.31 (npm) is affected by GHSA-r28c-9q8g-f849; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"postcss@8.4.31 (npm):GHSA-r28c-9q8g-f849"},{"rule_id":"osv/GHSA-6g55-p6wh-862q","severity":"high","message":"postcss@8.5.6 (npm) is affected by GHSA-6g55-p6wh-862q; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"postcss@8.5.6 (npm):GHSA-6g55-p6wh-862q"},{"rule_id":"osv/GHSA-r28c-9q8g-f849","severity":"high","message":"postcss@8.5.6 (npm) is affected by GHSA-r28c-9q8g-f849; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"postcss@8.5.6 (npm):GHSA-r28c-9q8g-f849"},{"rule_id":"osv/GHSA-f88m-g3jw-g9cj","severity":"high","message":"sharp@0.34.2 (npm) is affected by GHSA-f88m-g3jw-g9cj; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"sharp@0.34.2 (npm):GHSA-f88m-g3jw-g9cj"},{"rule_id":"osv/GHSA-rgj7-g3m4-5g8c","severity":"high","message":"sharp@0.34.2 (npm) is affected by GHSA-rgj7-g3m4-5g8c; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"sharp@0.34.2 (npm):GHSA-rgj7-g3m4-5g8c"},{"rule_id":"osv/GHSA-wq5f-xc86-pv6w","severity":"high","message":"sharp@0.34.2 (npm) is affected by GHSA-wq5f-xc86-pv6w; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"sharp@0.34.2 (npm):GHSA-wq5f-xc86-pv6w"},{"rule_id":"osv/GHSA-395f-4hp3-45gv","severity":"high","message":"shell-quote@1.8.3 (npm) is affected by GHSA-395f-4hp3-45gv; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"shell-quote@1.8.3 (npm):GHSA-395f-4hp3-45gv"},{"rule_id":"osv/GHSA-68fv-2mgg-jv7q","severity":"high","message":"source-map-js@1.2.1 (npm) is affected by GHSA-68fv-2mgg-jv7q; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"source-map-js@1.2.1 (npm):GHSA-68fv-2mgg-jv7q"},{"rule_id":"osv/GHSA-34x7-hfp2-rc4v","severity":"high","message":"tar@7.4.3 (npm) is affected by GHSA-34x7-hfp2-rc4v; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"tar@7.4.3 (npm):GHSA-34x7-hfp2-rc4v"},{"rule_id":"osv/GHSA-83g3-92jg-28cx","severity":"high","message":"tar@7.4.3 (npm) is affected by GHSA-83g3-92jg-28cx; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"tar@7.4.3 (npm):GHSA-83g3-92jg-28cx"},{"rule_id":"osv/GHSA-8qq5-rm4j-mr97","severity":"high","message":"tar@7.4.3 (npm) is affected by GHSA-8qq5-rm4j-mr97; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"tar@7.4.3 (npm):GHSA-8qq5-rm4j-mr97"},{"rule_id":"osv/GHSA-8x88-c5mf-7j5w","severity":"high","message":"tar@7.4.3 (npm) is affected by GHSA-8x88-c5mf-7j5w; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"tar@7.4.3 (npm):GHSA-8x88-c5mf-7j5w"},{"rule_id":"osv/GHSA-9ppj-qmqm-q256","severity":"high","message":"tar@7.4.3 (npm) is affected by GHSA-9ppj-qmqm-q256; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"tar@7.4.3 (npm):GHSA-9ppj-qmqm-q256"},{"rule_id":"osv/GHSA-qffp-2rhf-9h96","severity":"high","message":"tar@7.4.3 (npm) is affected by GHSA-qffp-2rhf-9h96; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"tar@7.4.3 (npm):GHSA-qffp-2rhf-9h96"},{"rule_id":"osv/GHSA-r292-9mhp-454m","severity":"high","message":"tar@7.4.3 (npm) is affected by GHSA-r292-9mhp-454m; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"tar@7.4.3 (npm):GHSA-r292-9mhp-454m"},{"rule_id":"osv/GHSA-r6q2-hw4h-h46w","severity":"high","message":"tar@7.4.3 (npm) is affected by GHSA-r6q2-hw4h-h46w; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"tar@7.4.3 (npm):GHSA-r6q2-hw4h-h46w"},{"rule_id":"osv/GHSA-mrhx-c7xc-m3w5","severity":"high","message":"zod@3.25.67 (npm) is affected by GHSA-mrhx-c7xc-m3w5; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"zod@3.25.67 (npm):GHSA-mrhx-c7xc-m3w5"},{"rule_id":"osv/GHSA-vhjm-w67q-g75c","severity":"medium","message":"@hapi/wreck@18.1.0 (npm) is affected by GHSA-vhjm-w67q-g75c; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"@hapi/wreck@18.1.0 (npm):GHSA-vhjm-w67q-g75c"},{"rule_id":"osv/GHSA-x426-x7cc-3fpc","severity":"medium","message":"@hapi/wreck@18.1.0 (npm) is affected by GHSA-x426-x7cc-3fpc; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"@hapi/wreck@18.1.0 (npm):GHSA-x426-x7cc-3fpc"},{"rule_id":"osv/GHSA-c6fg-446q-cg94","severity":"medium","message":"adm-zip@0.5.16 (npm) is affected by GHSA-c6fg-446q-cg94; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"adm-zip@0.5.16 (npm):GHSA-c6fg-446q-cg94"},{"rule_id":"osv/GHSA-p634-w6r4-rjp2","severity":"medium","message":"adm-zip@0.5.16 (npm) is affected by GHSA-p634-w6r4-rjp2; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"adm-zip@0.5.16 (npm):GHSA-p634-w6r4-rjp2"},{"rule_id":"osv/GHSA-vwc7-r8mq-g2x9","severity":"medium","message":"adm-zip@0.5.16 (npm) is affected by GHSA-vwc7-r8mq-g2x9; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"adm-zip@0.5.16 (npm):GHSA-vwc7-r8mq-g2x9"},{"rule_id":"osv/GHSA-2g4f-4pwh-qvx6","severity":"medium","message":"ajv@8.17.1 (npm) is affected by GHSA-2g4f-4pwh-qvx6; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"ajv@8.17.1 (npm):GHSA-2g4f-4pwh-qvx6"},{"rule_id":"osv/GHSA-3p68-rc4w-qgx5","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-3p68-rc4w-qgx5; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-3p68-rc4w-qgx5"},{"rule_id":"osv/GHSA-3w6x-2g7m-8v23","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-3w6x-2g7m-8v23; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-3w6x-2g7m-8v23"},{"rule_id":"osv/GHSA-42h9-826w-cgv3","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-42h9-826w-cgv3; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-42h9-826w-cgv3"},{"rule_id":"osv/GHSA-445q-vr5w-6q77","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-445q-vr5w-6q77; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-445q-vr5w-6q77"},{"rule_id":"osv/GHSA-5c9x-8gcm-mpgx","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-5c9x-8gcm-mpgx; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-5c9x-8gcm-mpgx"},{"rule_id":"osv/GHSA-7q8q-rj6j-mhjq","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-7q8q-rj6j-mhjq; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-7q8q-rj6j-mhjq"},{"rule_id":"osv/GHSA-898c-q2cr-xwhg","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-898c-q2cr-xwhg; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-898c-q2cr-xwhg"},{"rule_id":"osv/GHSA-9fr6-4gfg-395g","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-9fr6-4gfg-395g; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-9fr6-4gfg-395g"},{"rule_id":"osv/GHSA-fvcv-3m26-pcqx","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-fvcv-3m26-pcqx; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-fvcv-3m26-pcqx"},{"rule_id":"osv/GHSA-j8rh-479h-cp32","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-j8rh-479h-cp32; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-j8rh-479h-cp32"},{"rule_id":"osv/GHSA-jqh4-m9w3-8hp9","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-jqh4-m9w3-8hp9; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-jqh4-m9w3-8hp9"},{"rule_id":"osv/GHSA-m7pr-hjqh-92cm","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-m7pr-hjqh-92cm; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-m7pr-hjqh-92cm"},{"rule_id":"osv/GHSA-mmx7-hfxf-jppx","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-mmx7-hfxf-jppx; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-mmx7-hfxf-jppx"},{"rule_id":"osv/GHSA-pmv8-rq9r-6j72","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-pmv8-rq9r-6j72; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-pmv8-rq9r-6j72"},{"rule_id":"osv/GHSA-vf2m-468p-8v99","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-vf2m-468p-8v99; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-vf2m-468p-8v99"},{"rule_id":"osv/GHSA-vh66-26gq-q6x8","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-vh66-26gq-q6x8; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-vh66-26gq-q6x8"},{"rule_id":"osv/GHSA-w9j2-pvgh-6h63","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-w9j2-pvgh-6h63; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-w9j2-pvgh-6h63"},{"rule_id":"osv/GHSA-xx6v-rp6x-q39c","severity":"medium","message":"axios@1.11.0 (npm) is affected by GHSA-xx6v-rp6x-q39c; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-xx6v-rp6x-q39c"},{"rule_id":"osv/GHSA-f886-m6hf-6m8v","severity":"medium","message":"brace-expansion@1.1.12 (npm) is affected by GHSA-f886-m6hf-6m8v; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"brace-expansion@1.1.12 (npm):GHSA-f886-m6hf-6m8v"},{"rule_id":"osv/GHSA-q2hr-2g5m-vwhr","severity":"medium","message":"brace-expansion@1.1.12 (npm) is affected by GHSA-q2hr-2g5m-vwhr; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"brace-expansion@1.1.12 (npm):GHSA-q2hr-2g5m-vwhr"},{"rule_id":"osv/GHSA-f886-m6hf-6m8v","severity":"medium","message":"brace-expansion@2.0.2 (npm) is affected by GHSA-f886-m6hf-6m8v; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"brace-expansion@2.0.2 (npm):GHSA-f886-m6hf-6m8v"},{"rule_id":"osv/GHSA-q2hr-2g5m-vwhr","severity":"medium","message":"brace-expansion@2.0.2 (npm) is affected by GHSA-q2hr-2g5m-vwhr; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"brace-expansion@2.0.2 (npm):GHSA-q2hr-2g5m-vwhr"},{"rule_id":"osv/GHSA-h39j-r5qq-r9mm","severity":"medium","message":"decompress@4.2.1 (npm) is affected by GHSA-h39j-r5qq-r9mm; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"decompress@4.2.1 (npm):GHSA-h39j-r5qq-r9mm"},{"rule_id":"osv/GHSA-jwp9-9v96-94mx","severity":"medium","message":"decompress@4.2.1 (npm) is affected by GHSA-jwp9-9v96-94mx; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"decompress@4.2.1 (npm):GHSA-jwp9-9v96-94mx"},{"rule_id":"osv/GHSA-hrr3-gc8f-f4qj","severity":"medium","message":"fast-uri@3.0.6 (npm) is affected by GHSA-hrr3-gc8f-f4qj; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-uri@3.0.6 (npm):GHSA-hrr3-gc8f-f4qj"},{"rule_id":"osv/GHSA-w74x-v6f9-j3xg","severity":"medium","message":"fast-uri@3.0.6 (npm) is affected by GHSA-w74x-v6f9-j3xg; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-uri@3.0.6 (npm):GHSA-w74x-v6f9-j3xg"},{"rule_id":"osv/GHSA-gh4j-gqv2-49f6","severity":"medium","message":"fast-xml-parser@5.2.5 (npm) is affected by GHSA-gh4j-gqv2-49f6; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-xml-parser@5.2.5 (npm):GHSA-gh4j-gqv2-49f6"},{"rule_id":"osv/GHSA-jp2q-39xq-3w4g","severity":"medium","message":"fast-xml-parser@5.2.5 (npm) is affected by GHSA-jp2q-39xq-3w4g; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-xml-parser@5.2.5 (npm):GHSA-jp2q-39xq-3w4g"},{"rule_id":"osv/GHSA-5v7r-6r5c-r473","severity":"medium","message":"file-type@16.5.4 (npm) is affected by GHSA-5v7r-6r5c-r473; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"file-type@16.5.4 (npm):GHSA-5v7r-6r5c-r473"},{"rule_id":"osv/GHSA-r4q5-vmmm-2653","severity":"medium","message":"follow-redirects@1.15.11 (npm) is affected by GHSA-r4q5-vmmm-2653; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"follow-redirects@1.15.11 (npm):GHSA-r4q5-vmmm-2653"},{"rule_id":"osv/GHSA-h67p-54hq-rp68","severity":"medium","message":"js-yaml@3.14.1 (npm) is affected by GHSA-h67p-54hq-rp68; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"js-yaml@3.14.1 (npm):GHSA-h67p-54hq-rp68"},{"rule_id":"osv/GHSA-mh29-5h37-fv8m","severity":"medium","message":"js-yaml@3.14.1 (npm) is affected by GHSA-mh29-5h37-fv8m; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"js-yaml@3.14.1 (npm):GHSA-mh29-5h37-fv8m"},{"rule_id":"osv/GHSA-h67p-54hq-rp68","severity":"medium","message":"js-yaml@4.1.0 (npm) is affected by GHSA-h67p-54hq-rp68; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"js-yaml@4.1.0 (npm):GHSA-h67p-54hq-rp68"},{"rule_id":"osv/GHSA-mh29-5h37-fv8m","severity":"medium","message":"js-yaml@4.1.0 (npm) is affected by GHSA-mh29-5h37-fv8m; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"js-yaml@4.1.0 (npm):GHSA-mh29-5h37-fv8m"},{"rule_id":"osv/GHSA-xxjr-mmjv-4gpg","severity":"medium","message":"lodash@4.17.21 (npm) is affected by GHSA-xxjr-mmjv-4gpg; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"lodash@4.17.21 (npm):GHSA-xxjr-mmjv-4gpg"},{"rule_id":"osv/GHSA-3v7f-55p6-f55p","severity":"medium","message":"picomatch@2.3.1 (npm) is affected by GHSA-3v7f-55p6-f55p; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"picomatch@2.3.1 (npm):GHSA-3v7f-55p6-f55p"},{"rule_id":"osv/GHSA-4mjr-xmp4-gh2g","severity":"medium","message":"qs@6.14.0 (npm) is affected by GHSA-4mjr-xmp4-gh2g; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"qs@6.14.0 (npm):GHSA-4mjr-xmp4-gh2g"},{"rule_id":"osv/GHSA-6pq8-jhm2-2vcw","severity":"medium","message":"qs@6.14.0 (npm) is affected by GHSA-6pq8-jhm2-2vcw; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"qs@6.14.0 (npm):GHSA-6pq8-jhm2-2vcw"},{"rule_id":"osv/GHSA-6rw7-vpxm-498p","severity":"medium","message":"qs@6.14.0 (npm) is affected by GHSA-6rw7-vpxm-498p; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"qs@6.14.0 (npm):GHSA-6rw7-vpxm-498p"},{"rule_id":"osv/GHSA-q8mj-m7cp-5q26","severity":"medium","message":"qs@6.14.0 (npm) is affected by GHSA-q8mj-m7cp-5q26; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"qs@6.14.0 (npm):GHSA-q8mj-m7cp-5q26"},{"rule_id":"osv/GHSA-gvwx-54wh-qm9j","severity":"medium","message":"tar@6.2.1 (npm) is affected by GHSA-gvwx-54wh-qm9j; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"tar@6.2.1 (npm):GHSA-gvwx-54wh-qm9j"},{"rule_id":"osv/GHSA-vmf3-w455-68vh","severity":"medium","message":"tar@6.2.1 (npm) is affected by GHSA-vmf3-w455-68vh; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"tar@6.2.1 (npm):GHSA-vmf3-w455-68vh"},{"rule_id":"osv/GHSA-w8wr-v893-vjvp","severity":"medium","message":"tar@6.2.1 (npm) is affected by GHSA-w8wr-v893-vjvp; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"tar@6.2.1 (npm):GHSA-w8wr-v893-vjvp"},{"rule_id":"osv/GHSA-58qx-3vcg-4xpx","severity":"medium","message":"ws@8.18.3 (npm) is affected by GHSA-58qx-3vcg-4xpx; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"ws@8.18.3 (npm):GHSA-58qx-3vcg-4xpx"},{"rule_id":"osv/GHSA-p498-v437-472g","severity":"medium","message":"@humanfs/node@0.16.6 (npm) is affected by GHSA-p498-v437-472g; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"@humanfs/node@0.16.6 (npm):GHSA-p498-v437-472g"},{"rule_id":"osv/GHSA-2g4f-4pwh-qvx6","severity":"medium","message":"ajv@6.12.6 (npm) is affected by GHSA-2g4f-4pwh-qvx6; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"ajv@6.12.6 (npm):GHSA-2g4f-4pwh-qvx6"},{"rule_id":"osv/GHSA-g3hv-75wg-m249","severity":"medium","message":"minimatch@9.0.5 (npm) is affected by GHSA-g3hv-75wg-m249; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"minimatch@9.0.5 (npm):GHSA-g3hv-75wg-m249"},{"rule_id":"osv/GHSA-3x4c-7xq6-9pq8","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-3x4c-7xq6-9pq8; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-3x4c-7xq6-9pq8"},{"rule_id":"osv/GHSA-4342-x723-ch2f","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-4342-x723-ch2f; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-4342-x723-ch2f"},{"rule_id":"osv/GHSA-4633-3j49-mh5q","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-4633-3j49-mh5q; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-4633-3j49-mh5q"},{"rule_id":"osv/GHSA-4c39-4ccg-62r3","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-4c39-4ccg-62r3; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-4c39-4ccg-62r3"},{"rule_id":"osv/GHSA-4jqv-mc3x-m676","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-4jqv-mc3x-m676; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-4jqv-mc3x-m676"},{"rule_id":"osv/GHSA-68g3-v927-f742","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-68g3-v927-f742; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-68g3-v927-f742"},{"rule_id":"osv/GHSA-955p-x3mx-jcvp","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-955p-x3mx-jcvp; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-955p-x3mx-jcvp"},{"rule_id":"osv/GHSA-9g9p-9gw9-jx7f","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-9g9p-9gw9-jx7f; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-9g9p-9gw9-jx7f"},{"rule_id":"osv/GHSA-ffhc-5mcf-pf4q","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-ffhc-5mcf-pf4q; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-ffhc-5mcf-pf4q"},{"rule_id":"osv/GHSA-g5qg-72qw-gw5v","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-g5qg-72qw-gw5v; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-g5qg-72qw-gw5v"},{"rule_id":"osv/GHSA-ggv3-7p47-pfv8","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-ggv3-7p47-pfv8; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-ggv3-7p47-pfv8"},{"rule_id":"osv/GHSA-gx5p-jg67-6x7h","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-gx5p-jg67-6x7h; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-gx5p-jg67-6x7h"},{"rule_id":"osv/GHSA-h64f-5h5j-jqjh","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-h64f-5h5j-jqjh; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-h64f-5h5j-jqjh"},{"rule_id":"osv/GHSA-mcj8-r9mp-w47p","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-mcj8-r9mp-w47p; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-mcj8-r9mp-w47p"},{"rule_id":"osv/GHSA-w37m-7fhw-fmv9","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-w37m-7fhw-fmv9; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-w37m-7fhw-fmv9"},{"rule_id":"osv/GHSA-wfc6-r584-vfw7","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-wfc6-r584-vfw7; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-wfc6-r584-vfw7"},{"rule_id":"osv/GHSA-xv57-4mr9-wg8v","severity":"medium","message":"next@15.3.4 (npm) is affected by GHSA-xv57-4mr9-wg8v; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-xv57-4mr9-wg8v"},{"rule_id":"osv/GHSA-3v7f-55p6-f55p","severity":"medium","message":"picomatch@4.0.2 (npm) is affected by GHSA-3v7f-55p6-f55p; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"picomatch@4.0.2 (npm):GHSA-3v7f-55p6-f55p"},{"rule_id":"osv/GHSA-fxqj-rqcc-2cmp","severity":"medium","message":"postcss@8.4.31 (npm) is affected by GHSA-fxqj-rqcc-2cmp; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"postcss@8.4.31 (npm):GHSA-fxqj-rqcc-2cmp"},{"rule_id":"osv/GHSA-qx2v-qp2m-jg93","severity":"medium","message":"postcss@8.4.31 (npm) is affected by GHSA-qx2v-qp2m-jg93; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"postcss@8.4.31 (npm):GHSA-qx2v-qp2m-jg93"},{"rule_id":"osv/GHSA-fxqj-rqcc-2cmp","severity":"medium","message":"postcss@8.5.6 (npm) is affected by GHSA-fxqj-rqcc-2cmp; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"postcss@8.5.6 (npm):GHSA-fxqj-rqcc-2cmp"},{"rule_id":"osv/GHSA-qx2v-qp2m-jg93","severity":"medium","message":"postcss@8.5.6 (npm) is affected by GHSA-qx2v-qp2m-jg93; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"postcss@8.5.6 (npm):GHSA-qx2v-qp2m-jg93"},{"rule_id":"osv/GHSA-x7hr-w5r2-h6wg","severity":"medium","message":"prismjs@1.27.0 (npm) is affected by GHSA-x7hr-w5r2-h6wg; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"prismjs@1.27.0 (npm):GHSA-x7hr-w5r2-h6wg"},{"rule_id":"osv/GHSA-gvwx-54wh-qm9j","severity":"medium","message":"tar@7.4.3 (npm) is affected by GHSA-gvwx-54wh-qm9j; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"tar@7.4.3 (npm):GHSA-gvwx-54wh-qm9j"},{"rule_id":"osv/GHSA-vmf3-w455-68vh","severity":"medium","message":"tar@7.4.3 (npm) is affected by GHSA-vmf3-w455-68vh; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"tar@7.4.3 (npm):GHSA-vmf3-w455-68vh"},{"rule_id":"osv/GHSA-w8wr-v893-vjvp","severity":"medium","message":"tar@7.4.3 (npm) is affected by GHSA-w8wr-v893-vjvp; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"tar@7.4.3 (npm):GHSA-w8wr-v893-vjvp"},{"rule_id":"osv/GHSA-6475-r3vj-m8vf","severity":"low","message":"@smithy/config-resolver@4.1.5 (npm) is affected by GHSA-6475-r3vj-m8vf; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"@smithy/config-resolver@4.1.5 (npm):GHSA-6475-r3vj-m8vf"},{"rule_id":"osv/GHSA-j965-2qgj-vjmq","severity":"low","message":"aws-sdk@2.1692.0 (npm) is affected by GHSA-j965-2qgj-vjmq; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"aws-sdk@2.1692.0 (npm):GHSA-j965-2qgj-vjmq"},{"rule_id":"osv/GHSA-xhjh-pmcv-23jw","severity":"low","message":"axios@1.11.0 (npm) is affected by GHSA-xhjh-pmcv-23jw; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"axios@1.11.0 (npm):GHSA-xhjh-pmcv-23jw"},{"rule_id":"osv/GHSA-333x-w4r6-6crp","severity":"low","message":"fast-uri@3.0.6 (npm) is affected by GHSA-333x-w4r6-6crp; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-uri@3.0.6 (npm):GHSA-333x-w4r6-6crp"},{"rule_id":"osv/GHSA-xhq7-xmqj-769h","severity":"low","message":"fast-uri@3.0.6 (npm) is affected by GHSA-xhq7-xmqj-769h; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-uri@3.0.6 (npm):GHSA-xhq7-xmqj-769h"},{"rule_id":"osv/GHSA-474x-hrwr-fgx4","severity":"low","message":"fast-xml-parser@5.2.5 (npm) is affected by GHSA-474x-hrwr-fgx4; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-xml-parser@5.2.5 (npm):GHSA-474x-hrwr-fgx4"},{"rule_id":"osv/GHSA-fj3w-jwp8-x2g3","severity":"low","message":"fast-xml-parser@5.2.5 (npm) is affected by GHSA-fj3w-jwp8-x2g3; also in package-lock.json; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"fast-xml-parser@5.2.5 (npm):GHSA-fj3w-jwp8-x2g3"},{"rule_id":"osv/GHSA-w7fw-mjwx-w883","severity":"low","message":"qs@6.14.0 (npm) is affected by GHSA-w7fw-mjwx-w883; also in pnpm-lock.yaml","path":"functions/aws/package-lock.json","line":null,"fingerprint":"qs@6.14.0 (npm):GHSA-w7fw-mjwx-w883"},{"rule_id":"osv/GHSA-xffm-g5w8-qvg7","severity":"low","message":"@eslint/plugin-kit@0.3.2 (npm) is affected by GHSA-xffm-g5w8-qvg7; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"@eslint/plugin-kit@0.3.2 (npm):GHSA-xffm-g5w8-qvg7"},{"rule_id":"osv/GHSA-3g8h-86w9-wvmq","severity":"low","message":"next@15.3.4 (npm) is affected by GHSA-3g8h-86w9-wvmq; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-3g8h-86w9-wvmq"},{"rule_id":"osv/GHSA-vfv6-92ff-j949","severity":"low","message":"next@15.3.4 (npm) is affected by GHSA-vfv6-92ff-j949; also in pnpm-lock.yaml","path":"package-lock.json","line":null,"fingerprint":"next@15.3.4 (npm):GHSA-vfv6-92ff-j949"},{"rule_id":"osv/GHSA-6475-r3vj-m8vf","severity":"low","message":"@smithy/config-resolver@4.1.4 (npm) is affected by GHSA-6475-r3vj-m8vf","path":"pnpm-lock.yaml","line":null,"fingerprint":"@smithy/config-resolver@4.1.4 (npm):GHSA-6475-r3vj-m8vf"}],"evidence":[],"data":{"ecosystems":["npm"]},"error":null},{"analyzer":"sec-actions","pillar":"security","status":"ok","tool_version":"zizmor 1.32.0","metrics":{"workflows":1.0,"findings":15.0,"findings_high":11.0,"findings_medium":1.0,"findings_low":3.0,"penalty":136.2},"findings":[{"rule_id":"zizmor/excessive-permissions","severity":"high","message":"overly broad permissions [confidence high]","path":".github/workflows/deploy.yml","line":33,"fingerprint":"excessive-permissions:.github/workflows/deploy.yml:33"},{"rule_id":"zizmor/excessive-permissions","severity":"high","message":"overly broad permissions [confidence high]","path":".github/workflows/deploy.yml","line":34,"fingerprint":"excessive-permissions:.github/workflows/deploy.yml:34"},{"rule_id":"zizmor/template-injection","severity":"high","message":"code injection via template expansion [confidence high]","path":".github/workflows/deploy.yml","line":80,"fingerprint":"template-injection:.github/workflows/deploy.yml:80"},{"rule_id":"zizmor/template-injection","severity":"high","message":"code injection via template expansion [confidence high]","path":".github/workflows/deploy.yml","line":81,"fingerprint":"template-injection:.github/workflows/deploy.yml:81"},{"rule_id":"zizmor/template-injection","severity":"high","message":"code injection via template expansion [confidence high]","path":".github/workflows/deploy.yml","line":82,"fingerprint":"template-injection:.github/workflows/deploy.yml:82"},{"rule_id":"zizmor/template-injection","severity":"high","message":"code injection via template expansion [confidence high]","path":".github/workflows/deploy.yml","line":83,"fingerprint":"template-injection:.github/workflows/deploy.yml:83"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/deploy.yml","line":49,"fingerprint":"unpinned-uses:.github/workflows/deploy.yml:49"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/deploy.yml","line":52,"fingerprint":"unpinned-uses:.github/workflows/deploy.yml:52"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/deploy.yml","line":57,"fingerprint":"unpinned-uses:.github/workflows/deploy.yml:57"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/deploy.yml","line":87,"fingerprint":"unpinned-uses:.github/workflows/deploy.yml:87"},{"rule_id":"zizmor/unpinned-uses","severity":"high","message":"unpinned action reference [confidence high]","path":".github/workflows/deploy.yml","line":100,"fingerprint":"unpinned-uses:.github/workflows/deploy.yml:100"},{"rule_id":"zizmor/artipacked","severity":"medium","message":"credential persistence through GitHub Actions artifacts [confidence low]","path":".github/workflows/deploy.yml","line":48,"fingerprint":"artipacked:.github/workflows/deploy.yml:48"},{"rule_id":"zizmor/unsound-ternary","severity":"low","message":"unsound pseudo-ternary expression [confidence high]","path":".github/workflows/deploy.yml","line":70,"fingerprint":"unsound-ternary:.github/workflows/deploy.yml:70"},{"rule_id":"zizmor/unsound-ternary","severity":"low","message":"unsound pseudo-ternary expression [confidence high]","path":".github/workflows/deploy.yml","line":72,"fingerprint":"unsound-ternary:.github/workflows/deploy.yml:72"},{"rule_id":"zizmor/unsound-ternary","severity":"low","message":"unsound pseudo-ternary expression [confidence high]","path":".github/workflows/deploy.yml","line":73,"fingerprint":"unsound-ternary:.github/workflows/deploy.yml:73"}],"evidence":[],"data":{},"error":null},{"analyzer":"sec-posture","pillar":"security","status":"ok","tool_version":null,"metrics":{"check:security_policy":0.0,"check:dependency_updates":0.0,"check:signed_commits":0.0,"check:lockfiles":1.0,"signed_commit_share":0.0,"unpinned_manifests":0.0},"findings":[],"evidence":[],"data":{},"error":null},{"analyzer":"sec-distribution","pillar":"security","status":"ok","tool_version":null,"metrics":{"signals":0.0,"binary_assets":0.0,"suspicious":0.0},"findings":[],"evidence":[],"data":{"signals":[],"suspicious":false,"unusual_traction":false,"metadata":true},"error":null},{"analyzer":"qual-complexity","pillar":"quality","status":"ok","tool_version":"lizard 1.25.1","metrics":{"functions":739.0,"function_nloc":10825.0,"mean_ccn":2.64,"p90_ccn":6.0,"complex_functions":13.0,"long_functions":15.0,"many_param_functions":0.0,"risky_nloc_share":0.2478},"findings":[],"evidence":[{"kind":"complex-function","description":"PostsDashboard in components/admin/posts-dashboard.tsx: complexity 41, 192 lines","ref":"components/admin/posts-dashboard.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/components/admin/posts-dashboard.tsx#L205","weight":0.6833333333333333},{"kind":"complex-function","description":"exports.handler in functions/aws/files-presigned-url.js: complexity 27, 132 lines","ref":"functions/aws/files-presigned-url.js","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/functions/aws/files-presigned-url.js#L72","weight":0.45},{"kind":"complex-function","description":"exports.handler in functions/aws/auth-login.js: complexity 24, 117 lines","ref":"functions/aws/auth-login.js","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/functions/aws/auth-login.js#L3","weight":0.4},{"kind":"complex-function","description":"createPost in functions/aws/db.js: complexity 23, 65 lines","ref":"functions/aws/db.js","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/functions/aws/db.js#L154","weight":0.38333333333333336},{"kind":"complex-function","description":"createS3Bucket in aws/scripts/s3-init.js: complexity 21, 111 lines","ref":"aws/scripts/s3-init.js","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/aws/scripts/s3-init.js#L40","weight":0.35},{"kind":"complex-function","description":"normalizeCell in components/admin/posts-dashboard.tsx: complexity 21, 32 lines","ref":"components/admin/posts-dashboard.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/components/admin/posts-dashboard.tsx#L82","weight":0.35},{"kind":"complex-function","description":"PostsManager in components/post/posts-manager.tsx: complexity 20, 340 lines","ref":"components/post/posts-manager.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/components/post/posts-manager.tsx#L39","weight":0.3333333333333333},{"kind":"complex-function","description":"exports.handler in functions/aws/posts-update.js: complexity 19, 175 lines","ref":"functions/aws/posts-update.js","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/functions/aws/posts-update.js#L11","weight":0.31666666666666665},{"kind":"complex-function","description":"(anonymous) in components/ui/matrix-grid-background.tsx: complexity 18, 73 lines","ref":"components/ui/matrix-grid-background.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/components/ui/matrix-grid-background.tsx#L132","weight":0.3},{"kind":"complex-function","description":"TerminalTypewriter in components/ui/terminal-typewriter.tsx: complexity 17, 72 lines","ref":"components/ui/terminal-typewriter.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/components/ui/terminal-typewriter.tsx#L19","weight":0.2833333333333333}],"data":{},"error":null},{"analyzer":"qual-duplication","pillar":"quality","status":"ok","tool_version":"repotrust-dup-w6","metrics":{"compared_lines":10994.0,"duplicated_lines":1112.0,"duplicated_share":0.1011,"files":120.0},"findings":[],"evidence":[{"kind":"duplicate-code","description":"6+ duplicated lines: app/(pages)/posts/blog/page.tsx:13 and app/(pages)/projects/page.tsx:13","ref":"app/(pages)/posts/blog/page.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/app/(pages)/posts/blog/page.tsx#L13","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: app/(pages)/posts/page.tsx:1 and components/editor/visual-editor.tsx:1","ref":"app/(pages)/posts/page.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/app/(pages)/posts/page.tsx#L1","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: app/(pages)/posts/page.tsx:53 and components/post/posts-manager.tsx:197","ref":"app/(pages)/posts/page.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/app/(pages)/posts/page.tsx#L53","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: components/admin/posts-dashboard.tsx:617 and components/admin/posts-dashboard.tsx:645","ref":"components/admin/posts-dashboard.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/components/admin/posts-dashboard.tsx#L617","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: components/admin/posts-dashboard.tsx:738 and components/post/posts-manager.tsx:518","ref":"components/admin/posts-dashboard.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/components/admin/posts-dashboard.tsx#L738","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: components/admin/posts-dashboard.tsx:1023 and components/editor/visual-editor.tsx:452","ref":"components/admin/posts-dashboard.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/components/admin/posts-dashboard.tsx#L1023","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: components/files/file-browser.tsx:17 and components/files/file-card.tsx:26","ref":"components/files/file-browser.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/components/files/file-browser.tsx#L17","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: components/files/file-card.tsx:70 and components/files/file-preview.tsx:45","ref":"components/files/file-card.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/components/files/file-card.tsx#L70","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: components/files/file-preview.tsx:190 and components/post/file-cell.tsx:133","ref":"components/files/file-preview.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/components/files/file-preview.tsx#L190","weight":0.3},{"kind":"duplicate-code","description":"6+ duplicated lines: components/post/article-post-card.tsx:14 and components/post/paper-post-card.tsx:14","ref":"components/post/article-post-card.tsx","url":"https://github.com/isuryanarayanan/supers/blob/31876aed3ad972af13b6e4c13dbcd17753825104/components/post/article-post-card.tsx#L14","weight":0.3}],"data":{},"error":null},{"analyzer":"qual-lint","pillar":"quality","status":"ok","tool_version":"opengrep 1.33.1; rules f1d2b562b414","metrics":{"findings":184.0,"weighted_findings":165.0,"scanned_lines":15333.0,"category:best-practice":155.0,"category:correctness":29.0},"findings":[{"rule_id":"opengrep/typescript.lang.correctness.useless-ternary","severity":"high","message":"It looks like no matter how provider === \"vimeo\" is evaluated, this expression returns \"16/9\". This is probably a copy-paste error.","path":"components/post/video-cell.tsx","line":20,"fingerprint":"typescript.lang.correctness.useless-ternary:components/post/video-cell.tsx:20"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/editor/visual-editor.tsx","line":136,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/editor/visual-editor.tsx:136"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/editor/visual-editor.tsx","line":137,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/editor/visual-editor.tsx:137"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/editor/visual-editor.tsx","line":145,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/editor/visual-editor.tsx:145"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":44,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:44"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":58,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:58"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":66,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:66"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":72,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:72"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":79,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:79"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":88,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:88"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":96,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:96"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":103,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:103"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":134,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:134"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":146,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:146"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":273,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:273"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":294,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:294"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":304,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:304"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":312,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:312"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":320,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:320"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/markdown-cell.tsx","line":328,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/markdown-cell.tsx:328"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/post/post-cell.tsx","line":55,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/post/post-cell.tsx:55"},{"rule_id":"opengrep/javascript.lang.best-practice.javascript-confirm","severity":"medium","message":"found confirm() call; should this be in production code?","path":"components/post/posts-manager.tsx","line":244,"fingerprint":"javascript.lang.best-practice.javascript-confirm:components/post/posts-manager.tsx:244"},{"rule_id":"opengrep/javascript.lang.best-practice.javascript-confirm","severity":"medium","message":"found confirm() call; should this be in production code?","path":"components/post/posts-manager.tsx","line":267,"fingerprint":"javascript.lang.best-practice.javascript-confirm:components/post/posts-manager.tsx:267"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/accordion.tsx","line":12,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/accordion.tsx:12"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/accordion.tsx","line":23,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/accordion.tsx:23"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/accordion.tsx","line":41,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/accordion.tsx:41"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/accordion.tsx","line":59,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/accordion.tsx:59"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/alert.tsx","line":37,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/alert.tsx:37"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/alert.tsx","line":50,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/alert.tsx:50"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/alert.tsx","line":66,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/alert.tsx:66"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/avatar.tsx","line":19,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/avatar.tsx:19"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/avatar.tsx","line":32,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/avatar.tsx:32"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/avatar.tsx","line":48,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/avatar.tsx:48"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/badge.tsx","line":41,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/badge.tsx:41"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/button.tsx","line":54,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/button.tsx:54"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/card.tsx","line":13,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/card.tsx:13"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/card.tsx","line":26,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/card.tsx:26"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/card.tsx","line":36,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/card.tsx:36"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/card.tsx","line":46,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/card.tsx:46"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/card.tsx","line":59,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/card.tsx:59"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/card.tsx","line":69,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/card.tsx:69"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/card.tsx","line":79,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/card.tsx:79"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dialog.tsx","line":12,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dialog.tsx:12"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dialog.tsx","line":18,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dialog.tsx:18"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dialog.tsx","line":24,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dialog.tsx:24"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dialog.tsx","line":30,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dialog.tsx:30"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dialog.tsx","line":44,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dialog.tsx:44"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dialog.tsx","line":66,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dialog.tsx:66"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dialog.tsx","line":88,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dialog.tsx:88"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dialog.tsx","line":101,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dialog.tsx:101"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dialog.tsx","line":114,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dialog.tsx:114"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dialog.tsx","line":127,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dialog.tsx:127"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/drawer.tsx","line":11,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/drawer.tsx:11"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/drawer.tsx","line":17,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/drawer.tsx:17"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/drawer.tsx","line":23,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/drawer.tsx:23"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/drawer.tsx","line":29,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/drawer.tsx:29"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/drawer.tsx","line":43,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/drawer.tsx:43"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/drawer.tsx","line":66,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/drawer.tsx:66"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/drawer.tsx","line":83,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/drawer.tsx:83"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/drawer.tsx","line":93,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/drawer.tsx:93"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/drawer.tsx","line":106,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/drawer.tsx:106"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/drawer.tsx","line":119,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/drawer.tsx:119"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":12,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:12"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":19,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:19"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":29,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:29"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":48,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:48"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":58,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:58"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":80,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:80"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":99,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:99"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":117,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:117"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":134,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:134"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":161,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:161"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":174,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:174"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":190,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:190"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":198,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:198"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":217,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:217"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/dropdown-menu.tsx","line":236,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/dropdown-menu.tsx:236"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/form.tsx","line":40,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/form.tsx:40"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/form.tsx","line":84,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/form.tsx:84"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/form.tsx","line":102,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/form.tsx:102"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/form.tsx","line":120,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/form.tsx:120"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/form.tsx","line":133,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/form.tsx:133"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/form.tsx","line":151,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/form.tsx:151"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/hover-card.tsx","line":11,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/hover-card.tsx:11"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/hover-card.tsx","line":18,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/hover-card.tsx:18"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/hover-card.tsx","line":38,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/hover-card.tsx:38"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/input.tsx","line":16,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/input.tsx:16"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/label.tsx","line":19,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/label.tsx:19"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":20,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:20"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":28,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:28"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":34,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:34"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":40,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:40"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":47,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:47"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":62,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:62"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":85,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:85"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":109,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:109"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":128,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:128"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":152,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:152"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":179,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:179"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":192,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:192"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":208,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:208"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":216,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:216"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":235,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:235"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/menubar.tsx","line":254,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/menubar.tsx:254"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/navigation-menu.tsx","line":24,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/navigation-menu.tsx:24"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/navigation-menu.tsx","line":43,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/navigation-menu.tsx:43"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/navigation-menu.tsx","line":56,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/navigation-menu.tsx:56"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/navigation-menu.tsx","line":74,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/navigation-menu.tsx:74"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/navigation-menu.tsx","line":97,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/navigation-menu.tsx:97"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/navigation-menu.tsx","line":118,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/navigation-menu.tsx:118"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/navigation-menu.tsx","line":135,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/navigation-menu.tsx:135"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/navigation-menu.tsx","line":151,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/navigation-menu.tsx:151"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/popover.tsx","line":11,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/popover.tsx:11"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/popover.tsx","line":17,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/popover.tsx:17"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/popover.tsx","line":36,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/popover.tsx:36"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/popover.tsx","line":45,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/popover.tsx:45"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/progress.tsx","line":20,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/progress.tsx:20"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/radio-group.tsx","line":17,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/radio-group.tsx:17"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/radio-group.tsx","line":33,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/radio-group.tsx:33"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/select.tsx","line":12,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/select.tsx:12"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/select.tsx","line":18,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/select.tsx:18"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/select.tsx","line":24,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/select.tsx:24"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/select.tsx","line":43,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/select.tsx:43"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/select.tsx","line":70,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/select.tsx:70"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/select.tsx","line":96,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/select.tsx:96"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/select.tsx","line":113,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/select.tsx:113"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/select.tsx","line":133,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/select.tsx:133"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/select.tsx","line":149,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/select.tsx:149"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/select.tsx","line":167,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/select.tsx:167"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/separator.tsx","line":23,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/separator.tsx:23"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/sheet.tsx","line":10,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/sheet.tsx:10"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/sheet.tsx","line":16,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/sheet.tsx:16"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/sheet.tsx","line":22,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/sheet.tsx:22"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/sheet.tsx","line":28,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/sheet.tsx:28"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/sheet.tsx","line":42,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/sheet.tsx:42"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/sheet.tsx","line":72,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/sheet.tsx:72"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/sheet.tsx","line":89,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/sheet.tsx:89"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/sheet.tsx","line":99,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/sheet.tsx:99"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/sheet.tsx","line":112,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/sheet.tsx:112"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/sheet.tsx","line":125,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/sheet.tsx:125"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/sonner.tsx","line":20,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/sonner.tsx:20"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/switch.tsx","line":19,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/switch.tsx:19"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/table.tsx","line":16,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/table.tsx:16"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/table.tsx","line":27,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/table.tsx:27"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/table.tsx","line":37,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/table.tsx:37"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/table.tsx","line":50,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/table.tsx:50"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/table.tsx","line":63,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/table.tsx:63"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/table.tsx","line":76,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/table.tsx:76"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/table.tsx","line":89,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/table.tsx:89"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/table.tsx","line":102,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/table.tsx:102"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/tabs.tsx","line":16,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/tabs.tsx:16"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/tabs.tsx","line":32,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/tabs.tsx:32"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/tabs.tsx","line":48,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/tabs.tsx:48"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/tabs.tsx","line":61,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/tabs.tsx:61"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/textarea.tsx","line":13,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/textarea.tsx:13"},{"rule_id":"opengrep/typescript.react.best-practice.react-props-spreading","severity":"medium","message":"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 actors a way to inject unexpected attributes.","path":"components/ui/toggle.tsx","line":42,"fingerprint":"typescript.react.best-practice.react-props-spreading:components/ui/toggle.tsx:42"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`const` is assigned twice; the first assignment is useless","path":"aws/scripts/check-aws.js","line":1,"fingerprint":"javascript.lang.correctness.useless-assignment:aws/scripts/check-aws.js:1"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`const` is assigned twice; the first assignment is useless","path":"aws/scripts/check-aws.js","line":2,"fingerprint":"javascript.lang.correctness.useless-assignment:aws/scripts/check-aws.js:2"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`const` is assigned twice; the first assignment is useless","path":"aws/scripts/check-aws.js","line":3,"fingerprint":"javascript.lang.correctness.useless-assignment:aws/scripts/check-aws.js:3"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`const` is assigned twice; the first assignment is useless","path":"aws/scripts/dynamodb-init.js","line":1,"fingerprint":"javascript.lang.correctness.useless-assignment:aws/scripts/dynamodb-init.js:1"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`const` is assigned twice; the first assignment is useless","path":"aws/scripts/dynamodb-init.js","line":2,"fingerprint":"javascript.lang.correctness.useless-assignment:aws/scripts/dynamodb-init.js:2"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/isovalues-shader-background.tsx","line":104,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/isovalues-shader-background.tsx:104"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/isovalues-shader-background.tsx","line":104,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/isovalues-shader-background.tsx:104"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/isovalues-shader-background.tsx","line":115,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/isovalues-shader-background.tsx:115"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/isovalues-shader-background.tsx","line":115,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/isovalues-shader-background.tsx:115"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/matrix-grid-background.tsx","line":245,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/matrix-grid-background.tsx:245"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/matrix-grid-background.tsx","line":245,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/matrix-grid-background.tsx:245"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/matrix-grid-background.tsx","line":253,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/matrix-grid-background.tsx:253"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/matrix-grid-background.tsx","line":253,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/matrix-grid-background.tsx:253"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/volumetric-shader-background.tsx","line":91,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/volumetric-shader-background.tsx:91"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/volumetric-shader-background.tsx","line":91,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/volumetric-shader-background.tsx:91"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/volumetric-shader-background.tsx","line":99,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/volumetric-shader-background.tsx:99"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/volumetric-shader-background.tsx","line":99,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/volumetric-shader-background.tsx:99"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/warp-fbm-background.tsx","line":62,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/warp-fbm-background.tsx:62"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/warp-fbm-background.tsx","line":62,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/warp-fbm-background.tsx:62"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/warp-fbm-background.tsx","line":70,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/warp-fbm-background.tsx:70"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"components/ui/warp-fbm-background.tsx","line":70,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:components/ui/warp-fbm-background.tsx:70"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`const` is assigned twice; the first assignment is useless","path":"functions/aws/db.js","line":1,"fingerprint":"javascript.lang.correctness.useless-assignment:functions/aws/db.js:1"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`const` is assigned twice; the first assignment is useless","path":"functions/aws/files-presigned-url.js","line":1,"fingerprint":"javascript.lang.correctness.useless-assignment:functions/aws/files-presigned-url.js:1"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`const` is assigned twice; the first assignment is useless","path":"functions/aws/posts-create.js","line":1,"fingerprint":"javascript.lang.correctness.useless-assignment:functions/aws/posts-create.js:1"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`const` is assigned twice; the first assignment is useless","path":"functions/aws/posts-delete.js","line":1,"fingerprint":"javascript.lang.correctness.useless-assignment:functions/aws/posts-delete.js:1"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`const` is assigned twice; the first assignment is useless","path":"functions/aws/posts-update.js","line":1,"fingerprint":"javascript.lang.correctness.useless-assignment:functions/aws/posts-update.js:1"},{"rule_id":"opengrep/javascript.lang.correctness.missing-template-string-indicator","severity":"low","message":"This looks like a JavaScript template string. Are you missing a '$' in front of '{...}'?","path":"scripts/build-posts.js","line":226,"fingerprint":"javascript.lang.correctness.missing-template-string-indicator:scripts/build-posts.js:226"},{"rule_id":"opengrep/javascript.lang.correctness.useless-assignment","severity":"low","message":"`const` is assigned twice; the first assignment is useless","path":"scripts/deploy.js","line":8,"fingerprint":"javascript.lang.correctness.useless-assignment:scripts/deploy.js:8"}],"evidence":[],"data":{},"error":null},{"analyzer":"qual-testing","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:has_tests":0.0,"check:test_ratio":0.0,"check:ci_present":1.0,"check:ci_runs_tests":0.0,"check:ci_runs_lint":0.0,"check:tests_cochange":0.0,"test_lines":0.0,"source_lines":15333.0,"test_ratio":0.0,"ci_files":1.0,"cochange_share":0.0,"cochange_commits":23.0},"findings":[],"evidence":[{"kind":"ci","description":"CI config: .github/workflows/deploy.yml","ref":".github/workflows/deploy.yml","url":null,"weight":0.0}],"data":{"test_commands":[],"lint_commands":[]},"error":null},{"analyzer":"qual-docs","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:readme":1.0,"check:license":0.0,"check:contributing":0.0,"check:changelog":0.0,"readme_lines":22.0},"findings":[],"evidence":[{"kind":"docs","description":"README.md","ref":"README.md","url":null,"weight":0.0}],"data":{},"error":null},{"analyzer":"qual-type-safety","pillar":"quality","status":"ok","tool_version":null,"metrics":{"check:strict_config":1.0,"check:low_escape_density":1.0,"escapes":0.0,"escapes_per_kloc":0.0},"findings":[],"evidence":[{"kind":"typing","description":"TypeScript strict type checking: tsconfig.json","ref":"tsconfig.json","url":null,"weight":0.0}],"data":{},"error":null}],"flags":[]}