0A
OMNILIO / CONTENT LABORATORY

把内容架构的未知数,
变成可以失败的实验。

这里不是产品首页,而是一台验证仪器。它只回答三个问题:block 身份是否稳定、正文和代码能否连续选择、Tiptap 是否真的适合中文长文写作。

阶段Phase 0A部署边界PUBLIC LAB / NOINDEX
READ MODE单一 DOM 选择上下文
LEARN IN PUBLIC / 001

Claude 认证架构师学习笔记 01:把架构判断变成可验证假设

把架构判断变成可验证假设

学习架构设计时,我最容易犯的错误不是不知道某个框架,而是过早把“听起来合理”当成“已经成立”。一个可靠的决定应该写清楚目标、约束、证据和失败条件。

例如,系统需要在模型调用失败时继续保存用户草稿。这里真正的不变量是 draft persistence 不依赖模型响应,而不是笼统地追求“高可用”。

python
def should_retry(status_code: int, attempt: int) -> bool:
    retryable = status_code == 429 or status_code >= 500
    return retryable and attempt < 3

这段代码很短,但仍然需要回答三个问题:哪些错误可以重试、最多重试几次,以及重试会不会重复产生副作用。

架构图表达的是组件关系;验收条件表达的是系统在现实中是否成立。

验证一个 AI 功能时,我会先检查:

  • 权威数据是否先于派生任务提交

    • 模型超时后,草稿仍然存在

    • 重试使用相同的幂等键

  • 失败是否可以观察和恢复

  • 成本是否有明确上限

验证对象失败条件可观察证据
草稿保存模型超时导致草稿丢失保存事务与模型调用相互独立
AI 讲解重试产生重复扣费使用记录按幂等键唯一
typescript
type ArchitectureDecision = {
  invariant: string;
  evidence: string[];
  failureCondition: string;
};

补全函数,使它只重试可恢复的错误。

def should_retry(status_code: int, attempt: int) -> bool:
    # 在这里补全条件
    return False

这篇笔记目前也是 Omnilio Phase 0A 的真实测试语料:正文、行内代码、两个代码块、引用、嵌套列表、表格和练习必须在导入、编辑、阅读与复制过程中保持语义一致。