PinnedPinnedPrivate

Y Combinator 公司动态订阅:钱包登录、邮件摘要与翻译的三个坑

YC Watcher 是一个追踪 Y Combinator 公司动向的全栈应用:抓取、翻译、按关注推送。技术栈是 Next.js + Auth.js v5(认证)+ Resend(邮件),几个模块都踩得很实。

认证做了两条腿:邮箱魔法链接(Resend)+ 以太坊钱包登录(SIWE,Sign-In with Ethereum),外加 ENS(以太坊域名)显示。SIWE 这条踩到两个协议级细节,单独记一下:

  • 地址必须做 EIP-55 混合大小写校验和(checksum),不能只做小写比较,否则合法地址会被判非法。

  • SIWE 消息体走的是 ABNF 文法,对 ASCII 有洁癖——夹一个非 ASCII 字符就解析失败。这类坑,错误信息通常不直接告诉你是大小写还是编码问题,得回去啃规范。

通知是扇出(fan-out)+ 邮件摘要(digest):关注变动先扇出到各订阅者,再按人聚合成一封 digest。中间还接了大模型做翻译子系统,踩过 Qwen 思考模式必须关、空字符串死循环这些坑。

一个全栈小项目,认证 / 通知 / 翻译三块各有各的深坑,恰好把「现代 Web 应用的地雷分布」摸了一遍。

Y Combinator 公司动态订阅:钱包登录、邮件摘要与翻译的三个坑