{"id":5102,"name":"country","author":"Unknown","framework":"goat","overall":89,"grade":"B","level":"review","verdict":"Review recommended — some behaviour worth a look","scores":{"security":82,"privacy":96,"quality":100,"maintenance":92,"community":2},"counts":{"critical":0,"high":0,"medium":1,"low":2},"alerts":[{"id":"fs-destructive","severity":"medium","category":"security","title":"Deletes files","description":"Calls fs.rm / unlink / rmdir. Check what path it deletes and whether a user can influence it.","count":2,"locations":[{"line":536,"snippet":"return fs.unlink(file, () => {});"},{"line":539,"snippet":"if (file) fs.unlink(file, () => {});"}]},{"id":"fs-access","severity":"low","category":"security","title":"Filesystem access","description":"Reads or writes files on the machine running the bot.","count":1,"locations":[{"line":10,"snippet":"const fs = require(\"fs\");"}]},{"id":"network","severity":"low","category":"privacy","title":"Network access","description":"Makes HTTP/WebSocket requests. Check where the data goes.","count":1,"locations":[{"line":9,"snippet":"const axios = require(\"axios\");"}]}],"capabilities":[{"id":"network","label":"Network","active":true},{"id":"filesystem","label":"Filesystem","active":true},{"id":"shell","label":"Shell","active":false},{"id":"env","label":"Env vars","active":false},{"id":"eval","label":"Dynamic code","active":false},{"id":"credentials","label":"Session data","active":false},{"id":"install","label":"Installs packages","active":false},{"id":"process","label":"Process control","active":false}],"checks":[{"label":"Exports a command/module","ok":true},{"label":"Handles errors (try/catch or .catch)","ok":true},{"label":"Readable, not minified","ok":true},{"label":"Has explanatory comments","ok":true},{"label":"No deprecated dependencies","ok":true},{"label":"Reasonable size (< 200 KB)","ok":true}],"dependencies":{"builtin":["fs","path"],"external":[" + url);\n\t\t} catch (e) {\n\t\t\tlastErr = e;\n\t\t}\n\t}\n\tthrow lastErr;\n}\n\nconst norm = s => String(s || ","axios","canvas"],"local":[]},"domains":["api.worldbank.org","cdn.jsdelivr.net","fastly.jsdelivr.net","flagcdn.com","raw.githubusercontent.com","www.google.com"],"scannedAt":"2026-11-05T14:07:21.283Z"}