Scan timing: clone 3.05s · analysis 8.37s · 6.7 MB · GitHub API rate-limit (preflight)
https://github.com/MetaMask/eth-phishing-detect
· scanned 2026-06-05 22:21 UTC (1 week, 2 days ago)
· 10 languages
45 raw signals (21 security + 24 graph) 71st percentile · Typescript · tiny (<2K LoC) System graph score 94 (lower by 12)
Last scanned 1 week, 2 days ago · v2 · 31 actionable findings from 2 signal sources. 2 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
| Component | Sub-score | Weight | Contribution |
|---|---|---|---|
structure_score |
100.0 | 0.15 | 15.00 |
security_score |
82.8 | 0.25 | 20.70 |
testing_score |
77.0 | 0.20 | 15.40 |
documentation_score |
75.0 | 0.15 | 11.25 |
practices_score |
79.0 | 0.15 | 11.85 |
code_quality |
80.0 | 0.10 | 8.00 |
| Overall | 1.00 | 82.2 |
All 76 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.
| Label | Layer | Status | Path |
|---|---|---|---|
runTests |
software | healthy | test/test-lists.ts:runTests |
testList |
software | healthy | test/test-lists.ts:testList |
runTests |
software | healthy | test/test-clean-config.ts:runTests |
runTests |
software | healthy | test/index.ts:runTests |
testBlocklist |
software | healthy | test/utils.ts:testBlocklist |
testAllowlist |
software | healthy | test/utils.ts:testAllowlist |
testFuzzylist |
software | healthy | test/utils.ts:testFuzzylist |
validateDomainOnly |
software | healthy | test/utils.ts:validateDomainOnly |
validateDomainWithPath |
software | healthy | test/utils.ts:validateDomainWithPath |
testListOnlyIncludesDomains |
software | healthy | test/utils.ts:testListOnlyIncludesDomains |
testListIsPunycode |
software | healthy | test/utils.ts:testListIsPunycode |
testListDoesntContainRepeats |
software | healthy | test/utils.ts:testListDoesntContainRepeats |
testListIsContained |
software | healthy | test/utils.ts:testListIsContained |
testListNoConflictingEntries |
software | healthy | test/utils.ts:testListNoConflictingEntries |
testListNoBlocklistRedundancies |
software | healthy | test/utils.ts:testListNoBlocklistRedundancies |
testListNoAllowlistRedundancies |
software | healthy | test/utils.ts:testListNoAllowlistRedundancies |
testNoMatch |
software | healthy | test/utils.ts:testNoMatch |
testAnyType |
software | healthy | test/utils.ts:testAnyType |
testDomain |
software | healthy | test/utils.ts:testDomain |
testDomainWithDetector |
software | healthy | test/utils.ts:testDomainWithDetector |
for |
software | healthy | test/utils.ts:for |
parseDomainWithCustomPSL |
software | healthy | test/utils.ts:parseDomainWithCustomPSL |
to |
software | healthy | test/utils.ts:to |
extractHostname |
software | healthy | test/utils.ts:extractHostname |
isInvalidPathDomain |
software | healthy | test/utils.ts:isInvalidPathDomain |
isOnComparisonListNotBypassed |
software | healthy | test/utils.ts:isOnComparisonListNotBypassed |
detectFalsePositives |
software | healthy | test/utils.ts:detectFalsePositives |
runTests |
software | healthy | test/test-config.ts:runTests |
addDomains |
software | healthy | src/update-config.ts:addDomains |
removeDomains |
software | healthy | src/update-config.ts:removeDomains |
checkDomain |
software | healthy | src/index.ts:checkDomain |
serializeConfig |
software | healthy | src/utils.ts:serializeConfig |
isExternalKey |
software | healthy | src/constants.ts:isExternalKey |
isInternalKey |
software | healthy | src/constants.ts:isInternalKey |
cleanConfig |
software | healthy | src/clean-config.ts:cleanConfig |
cleanAllowlist |
software | healthy | src/clean-config.ts:cleanAllowlist |
cleanBlocklist |
software | healthy | src/clean-config.ts:cleanBlocklist |
| Label | Layer | Status | Path |
|---|---|---|---|
jsconfig.json |
software | healthy | jsconfig.json |
README.md |
software | healthy | README.md |
package.json |
software | healthy | package.json |
CONTRIBUTING.md |
software | healthy | CONTRIBUTING.md |
.env.example |
software | healthy | .env.example |
test-lists.ts |
software | healthy | test/test-lists.ts |
path-enabled-domains.ts |
software | warning | test/path-enabled-domains.ts |
custom-tlds.ts |
software | warning | test/custom-tlds.ts |
test-clean-config.ts |
software | healthy | test/test-clean-config.ts |
index.ts |
software | healthy | test/index.ts |
utils.ts |
software | healthy | test/utils.ts |
test-config.ts |
software | healthy | test/test-config.ts |
lists-ref.md |
software | healthy | doc/lists-ref.md |
fp-policy.md |
software | healthy | doc/fp-policy.md |
02-blocklist-removal.yaml |
software | healthy | .github/ISSUE_TEMPLATE/02-blocklist-removal.yaml |
01-blocklist-addition.yaml |
software | healthy | .github/ISSUE_TEMPLATE/01-blocklist-addition.yaml |
build-test.yml |
software | healthy | .github/workflows/build-test.yml |
update-config.ts |
software | healthy | src/update-config.ts |
detector.ts |
software | healthy | src/detector.ts |
index.ts |
software | healthy | src/index.ts |
types.d.ts |
software | warning | src/types.d.ts |
utils.ts |
software | healthy | src/utils.ts |
constants.ts |
software | healthy | src/constants.ts |
clean-config.ts |
software | healthy | src/clean-config.ts |
config.json |
software | healthy | src/config.json |
types.ts |
software | warning | src/types.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
test |
software | healthy | test |
doc |
software | healthy | doc |
.github |
software | healthy | .github |
ISSUE_TEMPLATE |
software | healthy | .github/ISSUE_TEMPLATE |
workflows |
software | healthy | .github/workflows |
src |
software | healthy | src |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | test/test-config.ts |
1.1.1.1 |
network | healthy | .github/ISSUE_TEMPLATE/02-blocklist-removal.yaml |
127.13.37.1 |
network | healthy | .github/ISSUE_TEMPLATE/01-blocklist-addition.yaml |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-ygm__jnh |
software | healthy | /tmp/repobility-clone-ygm__jnh |
| Label | Layer | Status | Path |
|---|---|---|---|
PhishingDetector |
software | healthy | src/detector.ts:PhishingDetector |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::build-test |
cicd | healthy | .github/workflows/build-test.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
build-test |
cicd | healthy | .github/workflows/build-test.yml |
This page is publicly accessible at:
https://repobility.com/scan/301748a6-d8af-4f87-b592-b0aec57f77bb/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/301748a6-d8af-4f87-b592-b0aec57f77bb/
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.