好!让我们开始翻译:


Hey r/Devvit!

我在 Devvit 上开发了 TrustSignal ,一款生产 mod 工具,用于后续信任评分和审计日志记录。 因为几个用户提到了建造复杂应用程序并与外部服务集成,我想分享一下架构。

技术栈:

– Devvit web 0.12.18(菜单操作+帖子触发器)

– express.js 5.1.0 服务器(业务逻辑)

– Redis(subreddit 托管的数据存储)

– TypeScript 6.0.2

– Vite 8.0.8 + Vitest 测试

架构概览:

1. **Devvit 层** - 菜单操作/帖子触发器 → Express API 调用(HTTP)

2. **Express 层** - 路由 / 错误处理 / Redis 运行时

3. **评分引擎** - 信任评分计算(元数据模式匹配)

4. **审计日志** - 为 mod 透明度而全能动作记录

关键设计决策:

1. **错误处理**:在所有 Devvit 上下文调用中都用 try-catch 装了。 菜单操作因上下文失败而崩溃,所以我添加了外部/内部错误保护。这段现在对 API 失败能够以良好的状态进行处理。

2. **数据分隔**: Redis 键全部按照社区来分配,以避免数据泄露

3. **无状态触发器**: 帖子触发器完全干净 - 没有任何副作用,只是数据采集

4. **类型安全**: 封装了所有的 TypeScript。 在编译时捕获了好几个 null 引用错误

开发中如何应用 AI :

1. 我使用 LLM-powered 模式分析对评分算法进行了优化,以避免使用正则表达式模式匹配。 模型识别出了信任模式(垃圾邮件标记 , 账户年龄 , 编辑历史)从而有效地适应了社区的需求。这一解决方案基于社区 MOD 的反馈, 而不是硬编码的规则。 这一方式比手动规则定位要快很多,也更容易扩展。

学习得到了什么教训:

- Devvit 上下文 API 在用处方面令人震惊,但有陷阱(范围限制、延迟)

- 将关注点分开(Devvit UI ↔ Express 的逻辑)使得测试 10 倍更容易

- Redis 是社区分区后最佳选择

- 在测试错误路径的时候尽量早些开始测试 - 生产的 mod 工具们不能保持沉默

下一步:

- 为每个社区添加自定义阈值设置

- 构建管理台来进行统计和分析

- 主要的评分逻辑在 GitHub 上将要开源

该软件在 playtest 环境上已经存活着。 这里想和您讨论关于架构、Devvit 模式或 LLM 运用方式。 GitHub 代码请在评论中查阅。

—-

*技术栈: TypeScript + Devvit + Express + Redis。 部署在 playtest 环境。