# articles · 单篇文章 / 网页索引

## 结构（2026-11-10 建类，沿用 videos 的分卷约定）

```
articles\
├── INDEX.md                       ← 本文件：分类清单 + 本类约定
└── <日期>-<材料短名>\
    ├── sources\                   ← 原文，一字不动
    └── notes\                     ← 译文、问答批注、单词/生句表、入库 payload
```

- **新建于 2026-11-10**：总索引里原写「待建」，侃姐说「你收到那个 articles 吧，我觉得这个挺重要的」后按 `videos\` 的分卷结构建类。
- 一份材料一个卷、只放一处、不复制；**卷内不放 `INDEX.md`**；跨材料关联写在 `D:\AI content\INDEX.md` 的主题累积区。
- 文件夹名 = 材料 slug，与文件名前缀一致；卷内 `../sources/`、`../notes/` 互指自动有效。

## 本类约定

- `sources\` 放**原文一字不动**，文件头记：标题 / 作者 / 来源 URL / 抓取日期 / 性质 / 发布日期（页面未显示就写「未显示」+ 第三方口径，不编造）。
- **文章带 URL 与抓取日期**；无时间码，定位一律用 `¶段落号`，**不编造时间戳**。
- 长文本处理顺序沿用 `videos\INDEX.md` 第 23–29 行：原文 → 全文译文 → 她针对译文提问 → 提问原话与回答逐条编号追加进 `notes\`（**不等整理窗口、不是只记第一次**）。
- 产出尾缀：`-zh.md`（译文）/ `-notes.md`（问答批注）/ `-words.md`（生词与生句表）/ `-ingest-payload.json`（送 Language Daily 的结构化清单）。
- **`-words.md` 只是可读副本，终点是 Language Daily 的 `en` 库**：用 `D:\AI Coding\Language Daily\scripts\ingest_list.py` 提交，格式见项目级 skill `language-daily-ingest`；**不要**改去写 `english-daily` 的 markdown 词库，也不要自行扩表。
- 已知配置坑（**未改 `.env`，等侃姐决定**）：`LANGUAGE_DAILY_BASE_URL` 写 `8091`、服务实际在 `8090`；`INGEST_OWNER_PHONE` 为空。本次用临时环境变量 `LANGUAGE_DAILY_BASE_URL=http://127.0.0.1:8090` + `LANGUAGE_DAILY_PHONE` 绕过（账号 id=8），脚本与 `.env` 均未改。
- 与 AI / 工程主题无关的政治、社会议题内容不展开、不评价。

## 清单

| 日期 | 材料（卷） | 形态 | 状态 | 一句话判断 | 原文 | 产出 |
|---|---|---|---|---|---|---|
| 2026-11-10 | [Atlas On a Roll · Boston Dynamics](2026-11-10-atlas-on-a-roll/)（官方博客，作者 Xiaoyu (Andy) Wu；页面未显示发布日期，第三方一致口径 2026-11-09） | 单篇网页 · 英文原文 | **已出全文译文；10 条问答已入批注；62 生词 + 11 生句已入 Language Daily** | 不是「装轮子的产品」，是一次单变量实验：只改一个零件，把「仿真里的电机模型准不准」变成唯一变量。闭环里最贵的不是数据也不是算力，是模型与真机的对齐 | [source](2026-11-10-atlas-on-a-roll/sources/2026-11-10-atlas-on-a-roll-source.md) | [全文译文](2026-11-10-atlas-on-a-roll/notes/2026-11-10-atlas-on-a-roll-zh.md) · [问答批注](2026-11-10-atlas-on-a-roll/notes/2026-11-10-atlas-on-a-roll-notes.md) · [生词与生句表](2026-11-10-atlas-on-a-roll/notes/2026-11-10-atlas-on-a-roll-words.md) · [入库 payload](2026-11-10-atlas-on-a-roll/notes/2026-11-10-atlas-on-a-roll-ingest-payload.json) |

> 配套图解页在会话工作区，不入库：`C:\Users\zkhap\WorkBuddy\2026-11-05-16-42-38\atlas-on-a-roll.html`（首轮）、`atlas-followup.html`（八问追问）。
> 入库记录：2026-11-10 提交 62 生词 + 11 生句 → 脚本返回「生词 62 · 句子 11」。**但只读核对数据库：当天实际新增 59 行生词 + 11 行生句**；`actuator` / `hydraulic` / `from scratch` 3 条库里已有，服务端按同库已有词去重、返回旧记录而不新增行（与 11-09 Jeff Dean 那批 82→79+3 同一机制）。脚本的 62 是"本次返回的词条数"，不是"新增行数"，两处口径都要留着。`en` 库，材料归属账号 id=8，看板 http://127.0.0.1:8090/
