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

kubernetes-sigs/headlamp

https://github.com/kubernetes-sigs/headlamp · scanned 2026-05-15 11:08 UTC (4 weeks ago) · 10 languages

197 raw signals (34 security + 163 graph) 64th percentile · Typescript · large (100-500K LoC) System graph score 88 (lower by 10)

UNIFIED Repobility · multi-layer engine · AI coders

Complete repo analysis

Last scanned 4 weeks ago · v1 · 11 actionable findings from 1 signal source. 14 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.

JSON
Score breakdown â 2026-05-14-v3
Component Sub-score Weight Contribution
structure_score 85.0 0.15 12.75
security_score 88.3 0.25 22.07
testing_score 74.0 0.20 14.80
documentation_score 74.6 0.15 11.19
practices_score 75.0 0.15 11.25
code_quality 60.0 0.10 6.00
Overall 1.00 78.1
Severity distribution — click a segment to filter
Active filters: excluding tests × Reset all
Scan summary Quality grade B+ (78/100). Dimensions: security 88, maintainability 85. 34 findings. 177,418 lines analyzed.

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

low Security checks security Deserialization conf 1.00 3 occurrences [SEC007] Unsafe Deserialization: Unsafe deserialization can execute arbitrary code.
Use yaml.safe_load() instead of yaml.load(). Avoid pickle for untrusted data.
3 files, 3 locations
frontend/src/stateless/deleteClusterKubeconfig.ts:69
frontend/src/stateless/findKubeconfigByClusterName.ts:68
frontend/src/stateless/updateStatelessClusterKubeconfig.ts:76
high Security checks security auth conf 0.82 2 occurrences Browser storage is used for session token material
localStorage and sessionStorage are readable by injected JavaScript. For sensitive sessions, this turns XSS into account compromise.
lines 32, 43
frontend/src/helpers/backstageMessageReceiver.ts:32, 43 (2 hits)
high Security checks cicd CI/CD security conf 0.82 Docker final stage has no non-root USER
Docker images run as root unless the image or Dockerfile switches to a non-root user.
Dockerfile.plugins:28 CI/CD securitycontainers
low Security checks quality Quality conf 0.60 12 occurrences Duplicated implementation block across source files
Duplicate implementation blocks are maintenance debt. Keep them visible, but they are not a high-severity defect unless the duplicated logic is security-sensitive or drifting.
11 files, 12 locations
backend/pkg/helm/release.go:1, 2 (2 hits)
app/windows/codesign.js:2
backend/cmd/multiplexer.go:1
backend/cmd/server.go:1
backend/cmd/stateless.go:1
backend/pkg/auth/cookies.go:1
backend/pkg/exec/syscallattr_windows.go:1
backend/pkg/helm/handler.go:1
duplicationquality
low Security checks cicd CI/CD security conf 0.72 .dockerignore misses sensitive defaults
.dockerignore exists but does not cover common secret or VCS patterns.
.dockerignore CI/CD securitycontainers
high Security checks cicd CI/CD security conf 0.56 Compose service does not declare a runtime user
If the image does not define USER internally, this service may run as root.
docker-extension/docker-compose.yml:2 CI/CD securitycontainers
high Security checks cicd CI/CD security conf 0.62 Compose service lacks no-new-privileges hardening
no-new-privileges prevents processes from gaining additional privileges through setuid binaries or file capabilities.
docker-extension/docker-compose.yml:2 CI/CD securitycontainers
low Security checks cicd CI/CD security conf 0.72 Dockerfile installs recommended OS packages
Installing recommended packages often pulls in unnecessary runtime surface area.
Dockerfile:68 CI/CD securitycontainers
low Security checks cicd CI/CD security conf 0.74 Dockerfile leaves apt package indexes in the image layer
Package indexes increase image size and can expose stale metadata in the final image layer.
Dockerfile:68 CI/CD securitycontainers
low Security checks quality Quality conf 0.74 robots.txt does not advertise a sitemap
Sitemap directives in robots.txt help crawlers and AI agents find the canonical public URL inventory quickly.
frontend/public/robots.txt
For AI agents: Voting guide (TP/FP) MCP manifest Stdio wrapper SARIF Integrate Findings queue Vote TP/FP on findings to calibrate the engine.
For AI agents + API integrations
Email me when this repo regresses
Free. We re-scan periodically; new criticals → your inbox. No signup required for the scan itself.
API access

This page is publicly accessible at: https://repobility.com/scan/5145cc36-1cd4-41ae-9163-2dd7117aa847/

To check status programmatically (no auth required):

curl -s https://repobility.com/api/v1/public/scan/5145cc36-1cd4-41ae-9163-2dd7117aa847/

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