周报 — 2026-W07 (2026-02-09 ~ 2026-02-15)
本周横跨机器人仿真、生物信息、工具链三条线推进。error_recovery_benchmark 在力注入调试上遇到深层阻塞(30N 对 OSC 控制器无可见效果),揭示了控制器抵消机制的根本性问题;MIHD 完成了增强计划的中文文档落地;ccusage 实现了 GLM 多模型计费支持并通过类型/格式检查;robobrain_pi 确认训练链路就绪。本周 AI 在重复错误(SSH 缺 cd 指令)和环境假设(proxy、pnpm)上暴露了明显的模式套用缺陷,人类在关键决策点(极端力测试、检测本地 GPU、复用现有定价文件)提供了更高效的调试思路。
本周概览
| 指标 | 数值 |
|---|---|
| 日期范围 | 2026-02-09 ~ 2026-02-15 |
| 活跃天数 | 4 / 7 |
| 总对话数 | 10 |
| 涉及项目 | 6 |
| 完成任务 | 10 |
| 进行中任务 | 2 |
| 总 Token | 54,947,656 |
| 总费用 | $23.28 |
| Claude Code Token | 40,980,880 |
| Claude Code 费用 | $19.02 |
| Codex Token | 13,966,776 |
| Codex 费用 | $4.26 |
| 日均费用 | $5.82 |
项目进展
error_recovery_benchmark (2 天活跃) — 🔄 active
完成项:
- 确认框架约 6200 行代码现状,梳理高优先级阻塞点(碰撞几何体名称映射、目标物体动态识别)
- 创建 AGENTS.md 贡献者指南(372 词,覆盖结构/构建/测试/提交规范)
- 实现 –force_override 命令行参数及力注入增强(力范围提升至 [15,45]N,clip 至 60N,duration 后自动清零)
- 生成 30N 力注入测试视频(451KB,193 帧),建立可视化力调试工具链
阻塞项:
- ⚠️ 30N 力施加后在视频中无可见位移:OSC 控制器(kp=150)在 duration_steps=1(约 20ms)内即可抵消冲力,力注入机制是否根本生效尚未验证
- ⚠️ 完整 E2E 验证依赖 GPU 节点(an53),当前通过分层测试(CPU 单元/smoke 测试)部分规避
MIHD (2 天活跃) — ✅ completed
完成项:
- 将 ENHANCEMENT_PLAN.md(6 个 BIG AIM:归一化、UNI2+scGPT、Q-Former/LLaVA、Niche 查询、批次校正、全流程配置化)翻译为结构化中文版
- 翻译内容写入 ENHANCEMENT_PLAN_CN.md 文件,保留文件名、CLI 参数、配置字段等关键实现细节
ccusage(GLM 计费支持) (1 天活跃) — 🔄 active
完成项:
- 在 _pricing-fetcher.ts 中实现 loadLocalPricing(),支持通过 CCUSAGE_PRICING_FILE 环境变量或默认路径 ~/.ccusage/ccusage.json 加载 LiteLLM 格式定价并合并至离线缓存
- 修复 Result.try() API 误用、LiteLLM 元数据键过滤、ESLint process 全局变量三个问题
- format/typecheck 及定向测试全部通过
阻塞项:
- ⚠️ 全局测试中 apps/amp 存在与本次改动无关的失败,PR 合并前需确认
robobrain_pi (1 天活跃) — 🔄 active
完成项:
- 确认 datasets/demo_v2.hdf5 存在(50 条轨迹,7 维动作)
- 确认完整 SAC 框架已就位(sac_agent.py、trainer.py、train_sac.py)
- 确认 4 块 A100-80GB 可用,推荐使用 GPU 1-3,给出训练启动命令
- 从 .ccusage/summaries/ 重建项目 2026-01-15 至 2026-02-09 完整演进时间线
gadget/research 文档 (1 天活跃) — ⏸️ paused
完成项:
- 启动 research/CLAUDE.md 更新工作,用户完成深入阅读 research 目录结构的前置准备
阻塞项:
- ⚠️ 会话在用户发出分析请求后中断,AI 尚未实际执行分析和写入
关键任务
- 🚫 调试 30N 力注入仍无效的根因 (2026-02-14) — 30N 施加至 Sawyer 臂后视频中无可见位移,用户提出用无穷大力验证力注入机制本身是否生效,会话在实施前中断
- 🔄 ccusage GLM 模型计费支持 (2026-02-12) — 在 _pricing-fetcher.ts 添加本地 LiteLLM 格式定价文件加载与合并逻辑,定向测试通过,全局测试有不相关失败待确认
- ✅ 准备 robobrain_pi SAC Pick-and-Place 训练环境 (2026-02-10) — 确认数据集、SAC 框架、4 块 A100-80GB GPU 均就绪,给出训练启动命令
- ✅ 实现 –force_override 参数及力注入增强 (2026-02-14) — 添加命令行参数、扩大力范围至 [15,45]N、实现 duration 后自动清零、修复 ImpulseInjector 嵌套配置路径 bug
- ✅ 检查 error_recovery_benchmark 计划进度 (2026-02-10) — 确认高优先级阻塞点:碰撞几何体名称映射(collision.py/env_wrapper.py)和目标物体动态识别,完整 E2E 验证依赖 GPU 节点
- 🔄 更新 gadget research/CLAUDE.md 文档 (2026-02-10) — 用户要求深入阅读 research 目录后更新设计文档,会话中断,AI 尚未执行实际分析
- ✅ 生成并验证 30N 力注入可视化视频 (2026-02-14) — 运行 2_visualize_scene.py –force_override 30,生成 impulse_demo_0_step72.mp4(451KB,193 帧),目视无可见扰动
- ✅ 从 ccusage 摘要恢复 robobrain_pi 项目历史 (2026-02-10) — 读取 .ccusage/summaries/ 下 10 个 Markdown 文件,重建 2026-01-15 至 2026-02-09 完整演进时间线
问题与解决方案
1. error_recovery_benchmark 完整 E2E 验证受阻于 GPU 节点依赖(EGL/robosuite 运行时约束) [error_recovery_benchmark] (2026-02-10)
解决方案: 明确测试分层策略:CPU 单元测试和 smoke 测试先行,完整 E2E 验证推迟至 GPU 节点(an53)可用时执行,避免测试阻塞开发
2. @praha/byethrow 的 Result.try() API 被误用:AI 将其当作直接返回结果使用,实际上它返回一个可复用的解析器函数 [ccusage] (2026-02-12)
解决方案: 将 Result.try({…}) 的返回值作为函数存储,再显式调用该函数才能获得 Result<T, E>
3. LiteLLM 定价 JSON 中混有 sample_spec 等元数据键,经 valibot schema 解析后被当作空定价条目,导致测试断言失败 [ccusage] (2026-02-12)
解决方案: 在 schema 解析通过后额外检查 input_cost_per_token 或 output_cost_per_token 不为 null,过滤无定价数据的元数据条目
4. 多次尝试 SSH 到 GPU 节点均被 pam_slurm_adopt 拒绝(需要活跃 SLURM 作业),导致大量时间浪费 [error_recovery_benchmark] (2026-02-14)
解决方案: 用户提示先执行 nvidia-smi -L 检测当前节点是否已有 GPU,发现当前节点已有 5 块 A800,无需 SSH 跳转
学习收获
架构 (architecture)
- 使用外部摘要工具(ccusage)导出历史会话是解决 AI 上下文限制的有效工程模式:将会话摘要外部化为文件,让 AI 在新会话中读取文件快速恢复项目上下文,避免反复描述背景
- 大型机器人 RL 项目的测试策略应明确分层:CPU 单元测试、CPU smoke 测试、GPU E2E 测试,避免因 GPU 不可用而阻塞整个测试流程
领域知识 (domain)
- OSC 控制器(kp=150,Λ≈5-10kg)对外力抵抗力极强,duration_steps=1(约 20ms)的冲力在控制器响应周期内即被清零,等效于未施力;要让扰动可见,需持续施力至少若干控制周期,或使用远超控制器能力的力
- MIHD 增强计划按严格依赖顺序实施:配置基础(Idea 6 Phase 1)→ 归一化 → UNI2+scGPT 实验 → Q-Former/LLaVA → Niche 查询 → 批次校正 → 完整配置收口,顺序设计是为了避免重构成本累积
工具 (tools)
- @praha/byethrow 的 Result.try({try, catch}) 返回一个工厂函数(需额外调用),而非直接执行并返回 Result;与 Rust/fp-ts 等常见 Result monad 实现行为不同,需特别注意
- 在 HPC 集群中,执行 GPU 任务前应先用 nvidia-smi -L 检测当前节点是否已有 GPU;若需 SSH 到远程节点,必须在远程命令中显式 cd 到项目目录并激活 conda 环境(SSH 不继承当前 shell 工作目录)
- ccusage 的离线定价通过 _macro.ts 中的 isClaudeModel 函数在构建时预过滤,扩展多模型支持需同步修改 macro 和 _pricing-fetcher.ts 两处
- 该项目的 ESLint 规则要求所有 Node.js 内置对象通过 node: 协议显式导入(如 import process from ’node:process’),不能直接使用全局对象
调试 (debugging)
- 调试力注入或其他物理机制时,应首先用极端参数(如无穷大力、持续 1000 步)验证机制本身是否生效,再逐步调参到合理范围,而非从合理参数开始逐步增大
AI 使用备注
有效模式:
- ✓ 通过读取 ccusage summaries/ 目录下的 Markdown 文件重建跨会话项目历史,是解决 AI 上下文窗口限制的有效工程方案
- ✓ 静态代码分析(读取 Makefile、测试代码、现有文档)在无 git 历史的条件下可有效生成贡献者规范
- ✓ 二分法极端测试思路(先用无穷大力验证机制,再调参到合理范围)在调试物理仿真时比系统性代码分析更高效
局限性:
- ✗ 单次会话内重复犯同一错误(SSH 缺 cd 指令)达 15+ 次,缺乏从重复失败中修正行为的能力
- ✗ 对不熟悉库的 API 行为(Result.try() 工厂模式)存在错误假设,需要测试失败后才能纠正
- ✗ 未能主动识别现有数据资产(本地 ccusage.json 定价文件),默认思路是修改代码逻辑而非复用已有文件
- ✗ 机械套用历史命令模板(proxy 设置)而不验证其适用性,需人类明确指出任务无需网络访问
下周展望
下周重点围绕三条阻塞线展开:(1) error_recovery_benchmark 力注入根因调试——先用极端力(无穷大或持续 1000 步)验证 xfrc_applied 机制是否根本生效,再排查 body 挂载点和力方向问题,最终解决碰撞几何体名称映射这一 E2E 核心阻塞;(2) ccusage GLM 计费支持——确认 apps/amp 的无关测试失败不影响合并,推进 PR;(3) gadget/research CLAUDE.md 更新——补完被中断的文档分析和写入工作。robobrain_pi SAC 训练可在 GPU 节点可用时并行启动首次训练运行并观察收敛曲线。
Token 用量统计
每日费用趋势
| 日期 | Token (百万) | 费用 ($) |
|---|---|---|
| 2026-02-10 | 0.5 | 0.34 |
| 2026-02-12 | 4.9 | 2.78 |
| 2026-02-13 | 32.1 | 12.92 |
| 2026-02-14 | 17.4 | 7.24 |
峰值日: 2026-02-13 — $12.92 / 32.1M tokens
Claude Code
| 指标 | 数值 |
|---|---|
| 总 Token | 40,980,880 |
| 输入 Token | 127,033 |
| 输出 Token | 4,884 |
| Cache 创建 | 4,560,320 |
| Cache 读取 | 36,288,643 |
| 总费用 | $19.02 |
模型使用分布
| 模型 | 费用 ($) | 输入 Token | 输出 Token |
|---|---|---|---|
| claude-opus-4-6 | 9.19 | 9,771 | 1,057 |
| claude-haiku-4-5-20251001 | 6.55 | 108,518 | 2,700 |
| claude-sonnet-4-5-20250929 | 3.28 | 8,744 | 1,127 |
Codex
| 指标 | 数值 |
|---|---|
| 总 Token | 13,966,776 |
| 输入 Token | 13,912,177 |
| 输出 Token | 54,599 |
| 推理 Token | 15,160 |
| Cache 读取 | 13,239,680 |
| 总费用 | $4.26 |
模型使用分布
| 模型 | 费用 ($) | 输入 Token | 输出 Token | 推理 Token |
|---|---|---|---|---|
| gpt-5.3-codex | 3.96 | 13,734,698 | 40,219 | 15,032 |
| gpt-5.2-codex | 0.29 | 177,479 | 14,380 | 128 |