CRIT
MINED018
[MINED018] Unsafe Deserialization Pickle: pickle.loads / yaml.load (without Loader=SafeLo…
scripts/update-sponsors.cjs:37
CRIT
SEC116
[SEC116] Ruby YAML.load / Marshal.load on untrusted input: `YAML.load` (pre-3.1) and `Mar…
scripts/update-sponsors.cjs:37
CRIT
SEC079
[SEC079] Python: yaml.load without SafeLoader: yaml.load() without explicit SafeLoader ca…
scripts/update-sponsors.cjs:37
CRIT
SEC084
[SEC084] JS: require() with non-literal: require(<variable>) loads arbitrary modules — eq…
scripts/roadmap-content.cjs:155
CRIT
SEC084
[SEC084] JS: require() with non-literal: require(<variable>) loads arbitrary modules — eq…
scripts/best-practice-dirs.cjs:91
CRIT
SEC084
[SEC084] JS: require() with non-literal: require(<variable>) loads arbitrary modules — eq…
scripts/best-practice-content.cjs:149
HIGH
SEC040
[SEC040] innerHTML XSS — template literal with server-supplied data: Setting .innerHTML w…
src/components/FrameRenderer/renderer.ts:111
HIGH
SEC040
[SEC040] innerHTML XSS — template literal with server-supplied data: Setting .innerHTML w…
sitemap.mjs:34
HIGH
SEC128
[SEC128] Async function without await — fire-and-forget Promise (AI mistake): Async call …
src/components/ChatEditor/VariableExten…:170
HIGH
SEC128
[SEC128] Async function without await — fire-and-forget Promise (AI mistake): Async call …
src/api/api.ts:59
HIGH
SEC128
[SEC128] Async function without await — fire-and-forget Promise (AI mistake): Async call …
scripts/refresh-assets.ts:34
HIGH
SEC029
[SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input: Outbound HTT…
src/components/AuthenticationFlow/Email…:43
HIGH
SEC029
[SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input: Outbound HTT…
src/components/Analytics/analytics.ts:30
HIGH
SEC029
[SEC029] Server-Side Request Forgery (SSRF) — outbound HTTP from user input: Outbound HTT…
scripts/assign-label-types.cjs:167
HIGH
MINED115
[MINED115] Action `peter-evans/create-pull-request` pinned to mutable ref `@v7`: `uses: p…
.github/workflows/sync-content-to-repo.…:47
HIGH
MINED115
[MINED115] Action `actions/setup-node` pinned to mutable ref `@v4`: `uses: actions/setup-…
.github/workflows/sync-content-to-repo.…:24
HIGH
MINED115
[MINED115] Action `pnpm/action-setup` pinned to mutable ref `@v4`: `uses: pnpm/action-set…
.github/workflows/sync-content-to-repo.…:18
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v4`: `uses: actions/checkout…
.github/workflows/sync-content-to-repo.…:15
HIGH
MINED115
[MINED115] Action `actions/setup-node` pinned to mutable ref `@v4`: `uses: actions/setup-…
.github/workflows/sync-repo-to-database…:23
HIGH
MINED115
[MINED115] Action `pnpm/action-setup` pinned to mutable ref `@v4`: `uses: pnpm/action-set…
.github/workflows/sync-repo-to-database…:17
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v4`: `uses: actions/checkout…
.github/workflows/sync-repo-to-database…:14
HIGH
MINED115
[MINED115] Action `peter-evans/create-pull-request` pinned to mutable ref `@v7`: `uses: p…
.github/workflows/upgrade-dependencies.…:31
HIGH
MINED115
[MINED115] Action `pnpm/action-setup` pinned to mutable ref `@v4`: `uses: pnpm/action-set…
.github/workflows/upgrade-dependencies.…:20
HIGH
MINED115
[MINED115] Action `actions/setup-node` pinned to mutable ref `@v4`: `uses: actions/setup-…
.github/workflows/upgrade-dependencies.…:15
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v4`: `uses: actions/checkout…
.github/workflows/upgrade-dependencies.…:12
HIGH
MINED115
[MINED115] Action `actions/github-script` pinned to mutable ref `@v3`: `uses: actions/git…
.github/workflows/close-feedback-pr.yml:11
HIGH
MINED115
[MINED115] Action `appleboy/ssh-action` pinned to mutable ref `@master`: `uses: appleboy/…
.github/workflows/deployment.yml:55
HIGH
MINED115
[MINED115] Action `webfactory/ssh-agent` pinned to mutable ref `@v0.7.0`: `uses: webfacto…
.github/workflows/deployment.yml:48
HIGH
MINED115
[MINED115] Action `pnpm/action-setup` pinned to mutable ref `@v4.0.0`: `uses: pnpm/action…
.github/workflows/deployment.yml:17
HIGH
MINED115
[MINED115] Action `actions/setup-node` pinned to mutable ref `@v4`: `uses: actions/setup-…
.github/workflows/deployment.yml:14
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v4`: `uses: actions/checkout…
.github/workflows/deployment.yml:11
HIGH
MINED115
[MINED115] Action `peter-evans/create-pull-request` pinned to mutable ref `@v7`: `uses: p…
.github/workflows/cleanup-orphaned-cont…:61
HIGH
MINED115
[MINED115] Action `actions/setup-node` pinned to mutable ref `@v4`: `uses: actions/setup-…
.github/workflows/cleanup-orphaned-cont…:23
HIGH
MINED115
[MINED115] Action `pnpm/action-setup` pinned to mutable ref `@v4`: `uses: pnpm/action-set…
.github/workflows/cleanup-orphaned-cont…:17
HIGH
MINED115
[MINED115] Action `actions/checkout` pinned to mutable ref `@v4`: `uses: actions/checkout…
.github/workflows/cleanup-orphaned-cont…:14
HIGH
MINED115
[MINED115] Action `actions/github-script` pinned to mutable ref `@v7`: `uses: actions/git…
.github/workflows/label-issue.yml:12
HIGH
JRN009
Secret-like setting is echoed into a password input value
src/components/AuthenticationFlow/Reset…:62
HIGH
JRN009
Secret-like setting is echoed into a password input value
src/components/AuthenticationFlow/Email…:104
HIGH
JRN009
Secret-like setting is echoed into a password input value
src/components/AuthenticationFlow/Email…:91
MED
SEC046
[SEC046] Client-side open redirect — window.location = server-supplied URL: Assigning win…
src/components/AuthenticationFlow/Linke…:142
MED
SEC046
[SEC046] Client-side open redirect — window.location = server-supplied URL: Assigning win…
src/components/AuthenticationFlow/Googl…:137
MED
SEC046
[SEC046] Client-side open redirect — window.location = server-supplied URL: Assigning win…
src/components/AuthenticationFlow/GitHu…:144
MED
SEC041
[SEC041] Tabnabbing — target="_blank" without rel="noopener noreferrer": <a target="_blan…
src/components/AIRoadmap/AIRoadmapRegen…:130
MED
SEC041
[SEC041] Tabnabbing — target="_blank" without rel="noopener noreferrer": <a target="_blan…
src/components/AIRoadmap/AIRoadmapConte…:70
MED
SEC041
[SEC041] Tabnabbing — target="_blank" without rel="noopener noreferrer": <a target="_blan…
src/components/AIChat/AIChatCouse.tsx:40
MED
SEC007
[SEC007] Unsafe Deserialization: Unsafe deserialization can execute arbitrary code.
scripts/update-sponsors.cjs:37
MED
MINED124
[MINED124] requirements.txt: `Visit the following resources to learn more:` has no versio…
src/data/roadmaps/forward-deployed-engi…:5
MED
MINED124
[MINED124] requirements.txt: `Project requirements come from observation as much as from …
src/data/roadmaps/forward-deployed-engi…:3
MED
WEB003
Public web service has no security.txt
.well-known/security.txt
MED
WEB012
Service worker is present without a web app manifest
manifest.json
MED
WEB015
Public web app has no Content Security Policy
index.html
LOW
AIC003
Duplicated implementation block across source files
src/components/ExploreAIRoadmap/Explore…:13
LOW
AIC003
Duplicated implementation block across source files
src/components/ExploreAIRoadmap/Explore…:50
LOW
AIC003
Duplicated implementation block across source files
src/components/EditorRoadmap/EditorRoad…:68
LOW
AIC003
Duplicated implementation block across source files
src/components/Dashboard/DashboardProgr…:7
LOW
AIC003
Duplicated implementation block across source files
src/components/CustomRoadmap/ShareRoadm…:131
LOW
AIC003
Duplicated implementation block across source files
src/components/CustomRoadmap/RoadmapAct…:46
LOW
AIC003
Duplicated implementation block across source files
src/components/CreateTeam/Step3.tsx:145
LOW
AIC003
Duplicated implementation block across source files
src/components/ContentGenerator/Content…:93
LOW
AIC003
Duplicated implementation block across source files
src/components/ChatMessages/TopicChatMe…:11
LOW
AIC003
Duplicated implementation block across source files
src/components/AuthenticationFlow/Linke…:66
LOW
AIC003
Duplicated implementation block across source files
src/components/AuthenticationFlow/Linke…:59
LOW
AIC003
Duplicated implementation block across source files
src/components/AuthenticationFlow/Googl…:60
LOW
AIC003
Duplicated implementation block across source files
src/components/Activity/ResourceProgres…:100
LOW
AIC003
Duplicated implementation block across source files
src/components/Activity/ResourceProgres…:54
LOW
AIC003
Duplicated implementation block across source files
src/components/AITutor/AIFeaturedCourse…:80
LOW
AIC003
Duplicated implementation block across source files
src/components/AITutor/AIFeaturedCourse…:31
LOW
AIC003
Duplicated implementation block across source files
src/components/AIRoadmap/UserRoadmapsLi…:40
LOW
AIC003
Duplicated implementation block across source files
src/components/AIRoadmap/GenerateAIRoad…:124
LOW
AIC003
Duplicated implementation block across source files
src/components/AIRoadmap/AIRoadmapActio…:33
LOW
AIC003
Duplicated implementation block across source files
src/components/AIQuiz/AIQuizActions.tsx:33
LOW
AIC003
Duplicated implementation block across source files
src/components/AIQuiz/AIOpenEndedQuesti…:108
LOW
AIC003
Duplicated implementation block across source files
scripts/sync-repo-to-database.ts:141
LOW
AIC003
Duplicated implementation block across source files
scripts/sync-repo-to-database.ts:19
LOW
AIC003
Duplicated implementation block across source files
scripts/sync-content-to-repo.ts:40
LOW
AIC003
Duplicated implementation block across source files
scripts/migrate-editor-roadmap.ts:17
LOW
AIC003
Duplicated implementation block across source files
scripts/migrate-editor-roadmap.ts:9
LOW
AIC003
Duplicated implementation block across source files
scripts/migrate-content-repo-to-databas…:71
LOW
AIC003
Duplicated implementation block across source files
scripts/gemini-roadmap-content.ts:20
LOW
AIC003
Duplicated implementation block across source files
scripts/editor-roadmap-dirs.ts:38
LOW
AIC003
Duplicated implementation block across source files
scripts/editor-roadmap-dirs.ts:10
LOW
WEB001
Public web app has no robots.txt
robots.txt
LOW
WEB002
Public web app has no sitemap
sitemap.xml
LOW
WEB011
Public web app has no humans.txt
humans.txt
INFO
MINED056
[MINED056] React Key As Index: key={index} in map() — re-renders the wrong elements on re…
src/components/Activity/ActivityTopicTi…:29
INFO
MINED056
[MINED056] React Key As Index: key={index} in map() — re-renders the wrong elements on re…
src/components/AccountStreak/InviteFrie…:39
INFO
MINED056
[MINED056] React Key As Index: key={index} in map() — re-renders the wrong elements on re…
src/components/AIChatHistory/ListChatHi…:25
INFO
MINED058
[MINED058] React Dangerously Set Html: dangerouslySetInnerHTML bypasses Reacts JSX escapi…
src/components/AIQuiz/AIMCQQuestion.tsx:153
INFO
MINED058
[MINED058] React Dangerously Set Html: dangerouslySetInnerHTML bypasses Reacts JSX escapi…
src/components/AIGuide/AIGuideCard.tsx:23
INFO
MINED058
[MINED058] React Dangerously Set Html: dangerouslySetInnerHTML bypasses Reacts JSX escapi…
src/components/AIChat/ChatHistory.tsx:110
INFO
MINED043
[MINED043] Http Not Https: Hardcoded http:// (not localhost) for endpoints that handle cr…
scripts/official-roadmap-assets.ts:39
INFO
MINED054
[MINED054] Ts As Any: Casting to any (as any) bypasses type checking entirely.
scripts/sync-repo-to-database.ts:191
INFO
MINED054
[MINED054] Ts As Any: Casting to any (as any) bypasses type checking entirely.
scripts/migrate-content-repo-to-databas…:186
INFO
MINED054
[MINED054] Ts As Any: Casting to any (as any) bypasses type checking entirely.
scripts/editor-roadmap-content-json.ts:162
INFO
MINED052
[MINED052] Ts Any Typed: : any used as type annotation. Defeats TypeScript type safety.
src/api/roadmap.ts:59
INFO
MINED052
[MINED052] Ts Any Typed: : any used as type annotation. Defeats TypeScript type safety.
src/api/api.ts:73
INFO
MINED052
[MINED052] Ts Any Typed: : any used as type annotation. Defeats TypeScript type safety.
scripts/editor-roadmap-assets.ts:16
INFO
MINED045
[MINED045] Ts Non Null Assertion: x! asserts not null - bypasses null checks - TypeError …
src/components/AuthenticationFlow/GitHu…:130
INFO
MINED045
[MINED045] Ts Non Null Assertion: x! asserts not null - bypasses null checks - TypeError …
scripts/migrate-content-repo-to-databas…:212
INFO
MINED045
[MINED045] Ts Non Null Assertion: x! asserts not null - bypasses null checks - TypeError …
scripts/cleanup-orphaned-content.ts:214
INFO
MINED049
[MINED049] Print Pii: Logging password/token/email/ssn directly to stdout.
scripts/gemini-roadmap-content.ts:20
INFO
MINED049
[MINED049] Print Pii: Logging password/token/email/ssn directly to stdout.
scripts/editor-roadmap-content.ts:19
INFO
MINED049
[MINED049] Print Pii: Logging password/token/email/ssn directly to stdout.
scripts/best-practice-content.cjs:161
INFO
MINED044
[MINED044] Js Console Log Prod: console.log left in code. Should be replaced with logger …
scripts/best-practice-dirs.cjs:14
INFO
MINED044
[MINED044] Js Console Log Prod: console.log left in code. Should be replaced with logger …
scripts/best-practice-content.cjs:15
INFO
MINED044
[MINED044] Js Console Log Prod: console.log left in code. Should be replaced with logger …
scripts/assign-label-types.cjs:162