RepoTrust

alexcohennyc/weather-wallpaper

3D globe wallpaper for macOS with live weather, flights, pollen, and day/night cycle

https://github.com/alexcohennyc/weather-wallpaper · commit 17ab1bd09151 · scored 2026-11-13 · scoring prov-4+qual-2+sec-2

unreviewed-ai-risk

RepoTrust ai badge RepoTrust quality badge RepoTrust security badge

Dispute this score or request a re-score Full report JSON

Scores

Unreviewed AI code risk: a large share of this code is explicitly AI-attributed, and its tests or review process are weak while quality or security scores are low.

Pillar Score Signal Confidence Coverage
AI provenance (estimated AI-generated share) 75 explicit 72% 100%
Code quality 56 weak 90% 100%
Security 57 weak 85% 100%

AI provenance

Explicit AI attribution on 75% of first-party code added; an estimated 75% including velocity signals.

AI tool Attributed commits Lines added
Claude Code 6 1,543

Current source lines last changed by AI-attributed commits: 1,396 of 1,866.

Too few lines in one group to compare finding densities.

Month Lines added Attributed to AI
2026-02 2,056 75%

Evidence

AI provenance describes how code was produced; it is not a quality judgment. Unless attribution is explicit, these are signals consistent with AI generation, not proof. Squash/rebase workflows, imported code, and rewritten history reduce accuracy.

Code quality

Code quality is weak: test-to-source ratio 0.00, no CI test run detected; 6% of function code in complex or long functions; 0% duplicated lines. Weakest area: testing.

Area Score
Complexity (lizard) 84
Duplication 100
Code smells (Opengrep) 76
Tests and CI 0
Documentation 40
Type safety n/a
Process (Scorecard review/maintenance) n/a

Most complex functions:

Security

Security posture is weak: 8 high-severity SAST findings. Weakest area: posture.

Area Score
Secrets (gitleaks, tree + history) 100
Static analysis (Opengrep) 32
Vulnerable dependencies (OSV) n/a
CI workflows (zizmor) n/a
Posture (policy, updates, signing, lockfiles) 0
OpenSSF Scorecard n/a

Top findings

Severity Finding Location
high opengrep/javascript.browser.security.insecure-document-method: User controlled data in methods like innerHTML, outerHTML or document.write is an anti-pattern that can lead to XSS vulnerabilities [confidence low] WeatherWallpaper/Web/weather.js:255
high opengrep/javascript.browser.security.insecure-innerhtml: User controlled data in a document.getElementById('temperature').innerHTML is an anti-pattern that can lead to XSS vulnerabilities [confidence low] WeatherWallpaper/Web/weather.js:255
high opengrep/javascript.browser.security.insecure-document-method: User controlled data in methods like innerHTML, outerHTML or document.write is an anti-pattern that can lead to XSS vulnerabilities [confidence low] WeatherWallpaper/Web/weather.js:279
high opengrep/javascript.browser.security.insecure-innerhtml: User controlled data in a document.getElementById('stats').innerHTML is an anti-pattern that can lead to XSS vulnerabilities [confidence low] WeatherWallpaper/Web/weather.js:279
high opengrep/javascript.browser.security.insecure-document-method: User controlled data in methods like innerHTML, outerHTML or document.write is an anti-pattern that can lead to XSS vulnerabilities [confidence low] WeatherWallpaper/Web/weather.js:282
high opengrep/javascript.browser.security.insecure-innerhtml: User controlled data in a document.getElementById('forecast').innerHTML is an anti-pattern that can lead to XSS vulnerabilities [confidence low] WeatherWallpaper/Web/weather.js:282
high opengrep/javascript.browser.security.insecure-document-method: User controlled data in methods like innerHTML, outerHTML or document.write is an anti-pattern that can lead to XSS vulnerabilities [confidence low] WeatherWallpaper/Web/weather.js:457
high opengrep/javascript.browser.security.insecure-innerhtml: User controlled data in a el.innerHTML is an anti-pattern that can lead to XSS vulnerabilities [confidence low] WeatherWallpaper/Web/weather.js:457

Static signals only: the scorer never runs the project's code. Secret findings are pattern matches that were not verified, and secret values are never stored.

Distribution signals

Signals consistent with a repository that exists to distribute a download. They are heuristics, not a verdict; release files were not downloaded or inspected.

Repository profile

Language Lines
JavaScript 1,132
Swift 734

Embed a badge

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

[![RepoTrust ai](https://repotrust.synapticcyber.com/badge/github.com/alexcohennyc/weather-wallpaper/ai.svg)](https://repotrust.synapticcyber.com/r/github.com/alexcohennyc/weather-wallpaper/)
[![RepoTrust quality](https://repotrust.synapticcyber.com/badge/github.com/alexcohennyc/weather-wallpaper/quality.svg)](https://repotrust.synapticcyber.com/r/github.com/alexcohennyc/weather-wallpaper/)
[![RepoTrust security](https://repotrust.synapticcyber.com/badge/github.com/alexcohennyc/weather-wallpaper/security.svg)](https://repotrust.synapticcyber.com/r/github.com/alexcohennyc/weather-wallpaper/)