决策是写下来的

25 个仓库、337 篇架构决策记录,每篇中英双语,写清背景、决策、后果,以及接受了哪些取舍。每个产品都有。当你问某个系统为什么是这样,答案是有日期、有原文的,不是事后回忆拼出来的。

其中多数在私有产品仓库里。下面三段是原文照录,不是链接。

一个答案,只在一处计算

worker 会生成一个建议,请求路径可能重算出一个略有出入的,前端还能从原始字段推出第三个。真发生了,这个产品就变得难以调试、也容易失去信任。

ADR-012《决策缓存边界》— Invest AI,2026-05-20

由此定下的规则:决策计算只发生在 worker。API 可以暴露缓存里的决策、可以报告它已过期,但不得在请求路径上创建、修改或修补它。一个随你打开哪个页面而变化的投资建议,不是显示 bug。

会说出自己边界的防护

Agent 防火墙的上限就是它的拦截点。如果 agent 不经过策略层就能碰到 shell、文件系统或网络,那这道防火墙只是装饰。

ADR-001《拦截点》— Agent Firewall,2026-07-05

三种架构对着真实约束比过,选定一种,并把缺口写进文档而不是留给客户去撞:v1 防的是被骗的 agent,不是恶意的本地用户。这句话写在 README 里,不只在 ADR 里。

说清楚一个绿灯不代表什么

它无法判断这个指标是否合适、数据集是否有代表性、样本量是否足以让差异成立。

Eval Registry — 关于它自己的回归门禁

一道能拦下发布的评测门禁,可信度不会超过它背后的指标。把这一点直接写在功能旁边,是「一个基准」和「一个会在采购评审上被反过来引用的数字」之间的区别。

可以完整读到的部分

产品仓库是私有的,但真正用于评估我们的那部分工程面是公开的:

如果你需要的是这个层面

有价值的对话通常很具体:一个即将放到客户面前的 agent、一片没人审过的 MCP 暴露面、一条在不同页面给出不同答案的决策链路。带这个来,不用带需求文档。

开始一次技术对话