跳到主要内容

打开这个框架

· 阅读需 11 分钟

七十二小时内的两个动作:补上 i18n 覆盖度最后的 5%(治理文档在 EN + ES + zh-CN 上达到 20/20/20)以及在 README 中加入 CLA 徽章。分开看都很小;放在一起,正是框架不再只对自己讲话、开始向任何想读的人讲话的那一刻。

1. 七十二小时内的两个动作

2026 年 5 月 13 日,UTC 06:20,fw-4.13.4 合并。它填补了两个小的 i18n 覆盖缺口——ISO-25010 参考文档此前只有英文版,而 Charter 模板的简体中文版缺失。二十二个规范框架文件达到了结构上的 EN/ES/zh-CN 均衡。

65 小时后,5 月 15 日 UTC 00:14,PR #154 合并。它在 README 中添加了一枚徽章——CLA Assistant 的那枚,那个小小的可见方块,告诉访客这个仓库接受在贡献者许可协议下的贡献。CLA 政策此前已在 CONTRIBUTING.md 中存在了数月;唯一改变的是它现在在 README 中一眼可见。

本文覆盖这两个动作。分开看,它们都很小——一个完成了某项技术工作最后的 5%,另一个则将已有的内容公开发布。放在一起,它们是框架决定向外部展示自身的那一刻。一个开源项目停止对自己讲话、开始向任何想读的人讲话时所做的事情。


2. i18n 覆盖度最后的 5%

fw-4.13.4 并非一个重大发布。PR #144 有 511 行新增内容,几乎全是翻译。但 PR 摘要说了一件值得记录的事:

"将治理文档在 EN + ES + zh-CN 上带到完整的 20/20/20 对等。"

20/20/20。dist/.straymark/00-governance/ 中的二十二个规范文件(数量后来增加;5 月时是二十个),全部在 i18n/es/i18n/zh-CN/ 中有其对应版本。完整对等,而非近似。

填补对等缺口的两个文件是具体的:

  • ISO-25010-2023-REFERENCE.md——对框架原则中引用的国际软件质量标准的规范性参考。直到 fw-4.13.4,它只存在英文版。该发布添加了 i18n/es/ISO-25010-2023-REFERENCE.mdi18n/zh-CN/ISO-25010-2023-REFERENCE.md,各 150 行。
  • charter-template.md 的 zh-CN 版。Charter 模板已经翻译成了西班牙语;简体中文版缺失,共 211 行。

这不是令人兴奋的工作。这是关闭一个框架的那一块。但它在两件事上很重要。第一:在该发布之前,克隆框架的中文使用者会发现只有英文版的核心模板,这与框架提供三语言版本的承诺相悖。第二:博客在第 8 篇文章中已经记录了框架的 i18n 覆盖度接近完整,仅剩两处小缺口作为已记录的债务。fw-4.13.4 偿清了这笔债务。一篇关于审计 prompt 异常值的文章中看似旁注的内容,最终成了一个独立发布,有其自己的 CHANGELOG 条目。


3. 哪些内容被翻译,哪些不被翻译

PR #144 明确编入代码的一条操作规则值得记录,因为它是框架在 i18n 方面最清晰的规则:

"LLM 处理的资产(skills、工作流、schemas)保持纯英文;以人为主要受众的制品会被翻译。"

也就是说:AI 智能体读取的内容——skills、.claude/.gemini/.agent/ 中的工作流、dist/.straymark/schemas/ 中的 schemas、dist/.straymark/audit-prompts/ 中的 prompts——只以英文存在。人类阅读的内容——文档、原则、贡献指南、面向人类的模板文本——则翻译为三种语言。

这与第 13 篇文章记录为通用 AGENTS.md 知识源头的原则相同:智能体是单一的技术受众,不会从翻译中受益。此处值得记录的是,5 月时这条规则已作为操作标准写入 PR,而非作为直觉存在。技术提案引用它;审阅者用它来决定新文件是否进入 i18n/ 目录。

PR #144 中还有一个细节值得逐字记录:

"docs/contributors/TRANSLATION-GUIDE.md 的缺口是有意为之——其目标受众本就能读英文才能阅读该指南。"

翻译指南有意保留英文,因为其受众——将框架翻译为其他语言的贡献者——必然已能读英文。这是操作上的诚实:20/20/20 对等并非仓库每个文件都是 22/22/22。它是对翻译能增加用户价值的文件达到 20/20/20。总覆盖率与适用覆盖率的区别。


4. 那枚没有引入任何新事物的徽章

PR #154 是 fw-4.13.4 的教学对立面。fw-4.13.4 关闭技术工作,PR #154 则发布已经存在的内容。其 12 行变更向 README 中添加了这些内容(英文、西班牙文和中文各一份):

[![CLA assistant](https://cla-assistant.io/readme/badge/StrangeDaysTech/straymark)](https://cla-assistant.io/StrangeDaysTech/straymark)

一枚徽章。一张出现在 README 顶部、与其他项目徽章(许可证、版本、下载量)并排的小图片。视觉上平平无奇。

但这枚徽章不是装饰。它是一个信号。这个信号说了一件具体的事:"这个仓库接受外部贡献,规则在这里"。任何打开 README 的访客都可以点击该徽章,来到 CLA Assistant——这个服务会自动在任何贡献者的第一个 pull request 上留言,要求他们签署贡献者许可协议。一次签署涵盖未来对该项目的所有贡献。

重要的是,CLA、CONTRIBUTING.md、完整的审阅政策,这一切在 PR #154 之前就已存在。它已编码、运行、生效。框架已经接受外部贡献——只是偶然来访的仓库访客必须打开 CONTRIBUTING.md 才能了解其运作方式。

PR #154 做了一个值得命名的区分:拥有政策发布政策是两件不同的事。前者是内部纪律;后者是公开邀请。在 5 月 15 日之前,框架拥有该政策。从 5 月 15 日起,它将其公开发布。

这是一个编辑性变更,而非架构性变更。但一个开源项目决定在 README 顶部放上 CLA Assistant 徽章的那一天,就是它决定正式向第三方呈现自身为可采用项目的那一天。这是框架停止成为一个"一位开发者与其使用者(Sentinel)"的项目、成为一个接受拥有更多使用者、更多贡献者、更多双手的项目的时刻。


5. 当一个框架感到准备好被看见

这两个里程碑放在一起读,记录了一个年轻框架生命中的特定时刻:它感到准备好被那些没有写过它的人看见的时刻。

fw-4.13.4 兑现了技术承诺。如果框架说它支持西班牙语-英语双语并实验性地支持简体中文,那么二十二个规范文件必须以三种语言全部存在。不是二十分之十九。不是二十一分之二十还有两个待处理。20/20/20。完整对等是当访客核验时让承诺可信的东西。

PR #154 兑现了社会承诺。如果框架说它接受外部贡献,README 中的 CLA 徽章就是行业标准的表达方式。没有徽章,开放性存在但需要自行发现;有了徽章,它就有了路标。访客的第一次点击就能找到路径。

值得命名这两个动作的不对称性。关闭技术工作最后的 5% 恰好需要那些成本——一个专项发布、两个翻译文件、一个 CHANGELOG 条目。发布一项已有政策只需要十二行 Markdown。便宜的那个有时是操作上最重要的姿态,因为它改变了外部世界对项目的感知,而没有改变项目本身的任何事情。

这是第 5 篇文章以结构性可见度记录的模式的"打开框架"版本:存在但没有命名的东西,对智能体来说不存在。这里是:存在但没有发布的东西,对外部使用者来说不存在。5 月的七十二小时,两个小里程碑——一个技术性的,一个编辑性的——框架跨越了*"它能工作,但只有写它的人知道""它能工作,任何人都能看见"*之间的界线。


6. 弧线的象征性收束

有了这篇文章,博客覆盖了 RETOMAR-AQUI.md §5 在主 H-01 → H-13 弧线关闭后列出的第二批中最后待处理的里程碑。四个已识别的候选——H-?-C(validate + schemas)、H-?-A(通用 AGENTS.md)、H-?-B(完整 i18n 覆盖度)、H-?-E(CLA 徽章)——全部已覆盖:三个有各自的文章(第 12、13 篇和本篇),一个合并覆盖。

写第二批时,将四个里程碑放在一起回看,我学到的是:

  • 第 2 阶段 / validate(第 12 篇)是结构性的:框架开始验证它一直在承诺的事情。
  • TUI explore(第 11 篇)是关于可见度的:框架变得可导航。
  • 通用 AGENTS.md(第 13 篇)是关于覆盖范围的:框架变得可被任何 CLI 发现。
  • 完整 i18n 覆盖度 + CLA 徽章(本篇)是关于开放的:框架变得对外部访客可见。

每一个都覆盖了同一个想法的不同维度,而博客在早期文章中已经编码了这个想法:框架声称自己是什么,不足以让它成为那样;它必须在每一个某人——智能体、外部使用者、访客——可以构建项目模型的表面上存在。第二批的里程碑是第 5 篇文章以一个治理 Issue 命名的结构性可见度的成熟版本。

现在,在第 14 篇之后,队列中没有更多候选了。如果在今天到博客下一个会话激活之间出现新的框架里程碑,RETOMAR-AQUI 将再次被用作恢复点。如果没有出现,这篇文章就是真正的收束——完成博客着手覆盖的清单的收束。


7. 结语

我从这个过程中得到的,用四个论断表达:

  1. 总覆盖率在工作末尾代价很小,在开头代价很大。 最后的 5%——那两个中文文件——是一个专项发布。但它之所以只是轻微地可关闭,是因为其余 95% 已经完成。20/20/20 对等不是从一开始就有的;它被追求了数月,最终以一个小 PR 关闭。

  2. 拥有政策和发布政策是两件不同的事。 框架的 CLA 在徽章之前就已存在了数月。十二行 Markdown 将一项内部政策变成了公开邀请。你放上徽章的那天,你没有发明任何东西;你宣告你准备好被找到了。

  3. 什么内容被翻译的操作规则具有存档价值。 人类阅读的内容会被翻译;智能体阅读的内容以英文存在。这个区分,从一月份第一次 AIDEC 中直觉得出,在 5 月成为明确的审阅标准。每个新框架文件在选择目的地之前都要经过那个问题。

  4. 框架何时变得可被第三方采用是一个决定,而非一种状态。 有一天,运营者决定框架可以被没有写它的人看见而不感到难堪。那一天以小动作具体化——完成翻译、发布徽章——这些动作不改变功能,但改变姿态。框架停止对自己讲话。

至此,博客关闭第二批。从项目史前史(第 2 篇,一月)开始追溯、以元模式(第 10 篇,五月)完成的弧线,现在也有了其推论:使框架可被采用的里程碑。十四篇文章,二十八个文件(十四篇西班牙语 + 十四篇英语),每种语言两万五千到两万六千字。正如第 10 篇结语所说:博客讲完了这个故事。框架继续前行。


锚点:PR #144fw-4.13.4(2026-05-13 06:20 UTC 合并,完整 i18n 覆盖度)。PR #154 — README 中的 CLA Assistant 徽章(2026-05-15 00:14 UTC 合并)。完整政策:CONTRIBUTING.md(仓库根目录 + docs/i18n/{es,zh-CN}/CONTRIBUTING.md 中的翻译版本)。

本文档在生成式 AI 工具(Claude 4.7)的协助下撰写;内容的全部责任由人类作者承担。

——StrayMark 博客第二批结束。