Skip to content

Commit c5087a9

Browse files
sametbasbugclaude
andcommitted
Answer the four security alerts GitHub opened
Three were Dependabot, all transitive and all build-time: js-yaml 3.15.0 under gray-matter and 4.3.0 under Astro, both vulnerable to quadratic CPU consumption while resolving !!omap, and nanoid 3.3.16 under postcss, whose custom generators can loop forever at size zero. Patched releases exist for all three and none of them needed a parent upgrade, so this is a lockfile change and nothing else: 3.15.1, 4.3.1, 3.3.18. The fourth was CodeQL, and it was pointing at a lock I wrote yesterday. To prove the privacy page tells the truth about who carries our mail, the check searched email.ts for the substring "api.resend.com". CodeQL reads that as host validation, and it is right that the shape is wrong — the name appearing anywhere in the file passed, including in a comment left behind after a provider swap. It now matches the actual call, scheme and path included, so the lock proves where the mail goes rather than what the file mentions. Verified by pointing the client at another host and watching the check fail for the stated reason. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
1 parent 1786573 commit c5087a9

2 files changed

Lines changed: 17 additions & 12 deletions

File tree

‎package-lock.json‎

Lines changed: 9 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎scripts/orbit-site-tests.mjs‎

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -248,10 +248,15 @@ if (legalHtml.gizlilik) {
248248
'Duyuru tercihi süzgeci kalkmış; gizlilik metni kapatınca gelmeyeceğini söylüyor.',
249249
);
250250
/* Resend metinde adıyla ve bölgesiyle sayılı. Sağlayıcı değişirse veya
251-
* bölge kayarsa, KVKK'da yurt dışına aktarım anlatımı yanlış olur. */
251+
* bölge kayarsa, KVKK'da yurt dışına aktarım anlatımı yanlış olur.
252+
*
253+
* Aranan şey, dosyanın bir yerinde "api.resend.com" geçmesi değil —
254+
* postanın gerçekten oraya gönderildiği satır. Adı yorumda kalmış bir
255+
* sağlayıcı bu kilidi yeşil tutardı. */
252256
check(
253-
fs.readFileSync(path.join(ROOT, 'src', 'server', 'notifications', 'email.ts'), 'utf8')
254-
.includes('api.resend.com'),
257+
/fetch\(\s*'https:\/\/api\.resend\.com\/emails'/u.test(
258+
fs.readFileSync(path.join(ROOT, 'src', 'server', 'notifications', 'email.ts'), 'utf8'),
259+
),
255260
'Posta sağlayıcısı değişmiş; gizlilik metni Resend diyor.',
256261
);
257262
check(

0 commit comments

Comments
 (0)