Virtual Embryo Challenge更新于 10-03 20:13(北京时间) / 每 5 分钟更新

← 工作原理 · 原文件 notes/plan/README.md(Markdown 源文件已渲染;链接到其他文档的会跳转,指向源码的只显示路径)

执行计划与进度

总目标:Agent Team 赛道,总分先过 188.8(09-21 Agent 前 10),再冲奖牌线 207.7。依据见 训练目标、正式规则 §9–11。

分工:Claude 定方案、写任务书、审查、提交。平台工程(阶段 3b 起)由 Claude Opus 5.5 子 agent 按任务书实现(2026-09-30 用户定);grok-4.7 只作为 run 内的研究 Agent。早期任务 A–F 由 opencode + grok 完成(tasks/grok.sh <字母>)。任务书在 tasks/。决策记 decisions.tsv,分数记 experiments.tsv。

时间线

日期阶段含义
现在 → 10-20P2每任务每天 8 次打分,最后的大量试错窗口
10-20P3验证真值公开;测试榜每榜整个阶段只有 2 次
12-02截止目标 11-28 前交完

阶段 0:基础(09-24 → 09-27)

  • ☑ 提交历史改动;停用 harness 里在主仓库 git checkout -f 的回滚
  • ☑ 清理 submissions 重复文件;artifacts/ 并入 notes/research/
  • ☑ venv ~/.venvs/vec(Python 3.12,scanpy / torch-cpu / veckit / POT)
  • ☑ 公司允许以员工身份参赛(2026-09-24 用户确认)→ 全队须同一单位(华大)员工身份,不可混入个人身份
  • ☑ 确认官网已注册 Agent Team、每位队员已各自接受规则(2026-10-01 用户确认)
  • ☑ 算力(2026-09-24):开发在 M1 Max 64G 上的 QEMU 虚拟机(8 核、39 GB,virtio 显卡无算力);正式训练用 NVIDIA DGX Spark(原记 RTX 5090,2026-09-30 更正)
  • ☐ 可选:在 macOS 宿主机用 PyTorch MPS 跑小模型原型(仓库在共享目录,宿主机可直接访问)
  • ☐ 所有模型代码设备无关(cuda → mps → cpu 自动选择),规模参数化(细胞下采样、隐层宽度),本机小样本定架构,DGX Spark 上放大

阶段 1:5 个榜的本地替代评测(09-26 → 10-01)

榜替代评测
T1E8.5 → E9.5
心脏插值E8.25 + E9.5 → E8.75
心脏外推E8.25 + E8.75 → E9.5
全胚插值E6.75 + E8.0 → E7.25
T3 Gata4只能做格式 / 方向自检
  • ☑ 任务 A:scripts/score_proxy.py + 格式检查 + 各榜地板/天花板。口径校验:pseudobulk_shift 心脏外推替代评测 48.8,官方反推约 47.7
  • ☑ 任务 C:T2/T3 数据普查 → 08_t2_t3_data_census.md
  • ☑ 任务 E:T1 普查 + 谱系边验证 + 外部数据调研 → 09、T1 卡
  • ☑ 各榜地板分数写入 experiments.tsv

阶段 2:人工探路 → 方法卡(09-28 → 10-08)

顺序(2026-09-27 用户定):T1 做完再做 T2,T2 做完再做 T3。 每阶段 run 只跑当前任务。

锁定前允许人主导开发,成果写进 agent/prompts/method_cards.md 给 Agent 作起点。

  • ☑ 任务 D:T3 同义名映射 + leave-gene-out 验证 → T3 卡。只有「基因置零」稳定 >50(提交版替代分 53.9);共表达传播无效;主要信号须来自线上分数与合规先验
  • ☐ T1:谱系先验 + PAGA / OT 定新细胞来源 + 按比例混合生成(见 05、06)
  • ☑ 任务 F:T2 → T2 卡。心脏插值 59.1、全胚插值 56.0(细胞状态组 36.3 是弱点)、心脏外推退回 copy_last=50
  • ☑ 三张方法卡合并为 agent/prompts/method_cards.md

阶段 3:harness(09-30 → 10-10)

  • ☑ 任务 B:agent/harness.py(launch / resume / status / package / verify),配置锁、隔离 workspace、证据打包;grok 冒烟通过
  • ☑ 屏蔽 /mnt/mac/CLAUDE.md 进入 Agent 上下文(claudeMdExcludes,已实测)
  • ☑ 重写 agent/prompts/initial_spec.md
  • ☑ verify 接上任务 A 的 check_format(board, path)
  • ☑ 参赛模型策略(2026-09-24):早期 opencode + grok-4.7 大量跑;其他便宜模型可早试;最终冲刺 Claude Code + Opus 5.5
  • ☑ opencode 禁网配置、崩溃自动续跑(已实测:杀进程后同会话续跑完成)
  • ☐ 接入更多后端:codex(GPT-6)优先,其次 Gemini / Qwen / GLM
  • ☑ harness:launch / resume 默认经 systemd-run --user 脱离操作者会话(--foreground 可关),整个 run 受 MemoryMax(配置 budget.memory_max,默认 30G)+ MemorySwapMax=4G 限制,OOMPolicy=continue 只杀超限的最大进程;resume 也走自动重启,重启次数跨进程累计(2026-09-27,已实测)
  • ☑ harness 改进(2026-09-27,run2 前):锁 v2 比较 agent/ modeling/ scripts/ 已跟踪文件的内容而非 HEAD;workspace 只复制已跟踪文件(run1 曾把 900 MB 未跟踪的 logs 带进去);重启间隔 1→2→4→8→10 分钟、上限 6 次;package 排除 workspace .git、附 workspace_changes.patch 与 OPERATOR_NOTES.md;verify 用同盘时钟比 mtime;.gitignore 匹配 agent/runs 符号链接
  • ☑ 方法卡拆为 method_cards_t1/t2/t3.md,配置按任务选用;任务书只做头部列出的榜,进 final/ 的文件必须先有替代评测记录,写明 30 GB 内存上限
  • ☑ 虚拟机时钟同步(2026-09-27):mihomo TUN 不转发 UDP,NTP 不通;改为 root 定时器 https-timesync.timer,每 5 分钟读 HTTPS Date 头,偏差 > 2 s 即校正
  • ☑ 第一个真实锁定 run(全 5 榜)20260925-001829-grok-all-boards:实跑约 1.5 h 后崩溃,预算耗尽;2026-09-27 package + verify 通过。Agent 自测替代分:T1 50.4、心脏插值约 59、全胚插值 59.6、心脏外推与 T3 未记录
  • ☐ run1 结果提交 P2,拿第一批线上分校准替代评测
  • ☑ run2:只做 T1 20260927-172643-grok-t1(harness 5210e7d,opencode 1.18.32):无崩溃,39 min 后 Agent 自行结束(8 h 只用 8%);package + verify 通过。选 heart_jcf_peri(按细胞类型重加权取样,不改表达),T1 替代分 55.97(run1 50.4);cgroup 内存峰值 28.1G(含页缓存),无 OOM
  • ☐ run3(T1):任务书要求用满预算 → 改由阶段 3b 的搜索模式解决(预算由控制器用满,「新出生细胞类型」作为独立种子或分支)
  • ☑ 正式锁定 run 在哪台机器跑:2026-09-30 定为 DGX Spark,harness、会话、训练全部在上面运行(机器信息写入 lock),见 G5

阶段 3b:两层自优化平台(09-30 → 10-12)

架构见 10_harness_era_architecture.md,框架选型见 agent_framework_options.md(方案 A:自写薄控制器)。执行方式:Claude Opus 子 agent 实现,Claude 写任务书并审查。任务书放在 tasks/G<n>_*.md。

任务内容验收依赖目标日期
G0 校准run1、run2 的 T1 结果交 P2(用户手动交),线上分记入 experiments.tsv拿到线上分;判断替代分的排序是否可信—10-01
G1 评估器隔离 ✅ 09-30① 评分移出 workspace,由 harness 调用;package 时用锁定版评分器重算 final/*.h5ad,和 Agent 自报分数对比 ② 锁里加入 veckit 版本和 pip freeze 哈希 ③ agent 模式也加上 bwrap:只挂载 workspace 和数据,主仓库、其他 run 都看不到 ④ 评分器不变性测试:同一文件重复打分、打乱细胞顺序、T2 刚体旋转在 workspace 里改 proxy.py 不影响 package 分数;run 内读不到主仓库 notes/;出不变性测试报告—10-02
G2 候选契约 + 视图 ✅ 09-30① 生成 proxy/final 数据视图(4 个榜,每个带 manifest.json) ② run.py --data --out --seed 契约和 vec-check ③ T1 种子:copy_last、pseudobulk_shift,以及从 run2 移植的 heart_jcf_peri ④ scripts/run_t1_local.py 的逻辑迁入 modeling/src/task1_temporal/;删除已被取代的 scripts/score_t1_proxy.py3 个种子在两种视图下都能跑通;heart_jcf_peri 的 proxy 分复现 55.97 ± 0.5—10-03
G3 数据策展 v0(抽样) ✅ 09-30data/external/catalog.yaml + 删窗和阶段换算工具。训练:Qiu 2024 心脏相关的 2–3 个窗外时间点,每个时间点 ≤5 千细胞,按榜标注。考题:B1 Zebrahub、B5 MOSTA,各带地板/天花板标定。逐项核对许可。禁窗内的细胞在下载后第一步就删掉每条数据都有来源、阶段、删窗记录、哈希;Claude 审核合规;两道考题的地板和天花板能算出来,每次打分 ≤1 分钟—10-04
G4 打分服务 + 沙箱 ✅ 09-30① 沙箱外的打分服务:持有目标和锁定版评分器,同时支持榜的替代评测和考题;限次数;每次调用记日志;返回结构化结果 ② bwrap 配置:视图和训练数据只读,worktree 可写,GPU 透传 ③ 网络白名单代理,只放行 LLM API 域名沙箱内读不到目标,也读不到主仓库;访问非白名单域名失败;opencode 能正常调用 grok;超过查询上限时被拒绝G110-05
G5 DGX Spark 部署 ✅ 09-30SSH 密钥、Python 环境、opencode、systemd 用户服务、时钟同步;每日仪表盘(分数曲线、失败率、GPU 利用率、第二层采纳记录)在 DGX Spark 上跑通现有的 smoke 配置;机器信息写进锁用户开通 SSH10-05
G6 搜索控制器ERA futs.py 原样拷贝 + 包装层(虚拟访问、失败降权);每节点 Researcher(PLAN.json)→ Engineer(opencode 会话)→ 执行打分 → Analyst(ANALYSIS.json);前 10% 审查;终选(3 seed + 外部测试题 + final 视图);SQLite 存档、续跑、打包、日报 HTML。详见任务书上游 futs 测试 + select 测试通过;假后端 15 分钟全流程;kill 后续跑;Spark 上 qwen3.8-max 真实跑 3 个节点并对比思考强度G2、G4、G5、G6b10-08
G6b 方向库 + 文献库 ✅ 09-30agent/prompts/ideas_<board>.md(从 03/05/06/07 笔记和方法卡整理);agent/knowledge/*.json(handover 论文、调研笔记、Zotero 的方法类条目,逐条合规审核)T1 方向 ≥ 8 条、文献 ≥ 20 条,均带来源—10-06
G7 第一层冒烟 → 首个 12 小时 run先在 T1 上冒烟:1 小时、6 个节点;再跑 12 小时锁定 run,结果交 P2package 和 verify 通过;测出节点平均耗时;线上分 > run2G5、G610-09
G8 半自动提交(进行中)沙箱外的脚本:挑出已结束 run 的 final 文件 → 格式检查 → 打包证据 → 人点提交;登录态只放在沙箱外完整走通一次 P2 提交,证据上传后进入评分G710-10
G9 第二层元循环 已取消(09-30)agent/meta/:一段会话读原始轨迹 → 改写白名单内的文件 → 程序检查 diff 是否越界 → 在考题上跑缩短版第一层 ×3 seed → 配对检验 → 新 harness 版本入库;Pareto 前沿;借 HGM 的 CMP 选父版本越界的改动被拒;一代能在 ≤6 小时内跑完;采纳记录可追溯到具体轨迹G3、G710-12
G10 第一层 7×24 开跑第一层 12 小时 run 连续滚动;每日人工复盘轨迹 → 改任务书/方法卡/搜索参数 → 新 run;按 T1 → T2 → T3 推进连续 48 小时稳定运行G710-10
G11 数据策展 v1 + 外部测试题 ✅ 09-30训练:Qiu 所有窗外早期胚胎(E8.75、E9.0、E9.25–9.5)+ MOSTA E9.5(可选 Pijuan-Sala 早期);移除 v0 的 Qiu E15.0/E16.75 训练文件。外部测试题:T1 类用 Qiu E14–E17 心脏细胞(3 个时间点,相邻天合并),T2 类用 MOSTA E14.5+E16.5→E15.5(v0 的 B5 文件补锚点);测试阶段不进训练(F3)同 G3;每道测试题的地板/天花板可算G310-12
G12 生物先验知识库 ✅ 10-01data/external/prior/:Reactome、GO、CollecTRI(剔除 Gata4/Ctnnb1 敲除来源)、STRING、可选 MSigDB MH;只读挂进视图 prior/;方向库加 3–4 条许可逐项核实;check_catalog 覆盖;与 T1/T2 面板的基因覆盖率—10-03
G14 打分提速 ✅ 10-01缓存目标侧计算、避免整矩阵稠密化;与原评分器逐位一致;scripts/score_proxy_fast.py4 个榜全部指标完全相等;报告提速和内存下降—10-03
G15 T2 准备 ✅ 10-013 个 T2 榜的种子(符合 run.py 契约)+ T2 方向库种子复现 T2 卡分数 ±0.5;final 视图通过格式检查G210-03
G13 全自动提交半自动流程稳定后,由提交脚本在 run 结束时自动提交连续 3 天无误G8视情况

依赖关系:G0、G3、G5、G6b 可以并行;G4 → G6 → G7 → G10(第二层已取消)。第一层架构已定稿(E1–E7,见 10),G4 现在可以启动。如果 G0 显示替代分和线上分的排序不一致,先修替代评测,再做 G7。

阶段 4:第一层 7×24 + 每日人工复盘(10-10 → 11-20)

  • ☐ 第一层每个 12 小时 run 都是锁定 run,结束后择优交 P2(到 10-20 为止,每任务每天 8 次)
  • ☐ 10-20 以后,本地评测切换到公开的验证真值(P3 期间官网只交最终 2 次)
  • ☐ 按 T1 → T2 → T3 顺序推进;T3 暂时用 agent 模式
  • ☐ 用户每天看一次仪表盘;干预只针对故障或方向跑偏,每次都记进 decisions.tsv
  • ☐ 10-20 前总分 > 188.8

阶段 5:最终 run 与提交(11-20 → 11-28)

  • ☐ 冻结最后一版 harness;每个榜以开发期最好的若干程序为种子,锁定运行 24–48 小时,自动终选
  • ☐ 证据:锁、提示词、harness、存档,以及被选中节点祖先链上的完整轨迹(压缩,每个文件 ≤200 MB)
  • ☐ 每个榜最多 2 次正式提交:先稳后改;11-28 前交完

待问组委会(暂缓)

2026-09-30 用户定:先不问组委会,按保守理解处理。 以下问题留着备查:

  1. T1 文件 uns.celltype_palette 含 77 个类型名(其中 50 个不在训练阶段),能否用作 E10.5/E12.5 可能出现类型的词表?
  2. P3 公布的 E10.5 验证真值,能否用于训练 E12.5 的预测?
  3. 外部图谱 E14+ 用作插值右端、并删除 E9.5 后至 E13.5 的细胞,是否合规?
  4. T3:WT 组织的 Gata4 调控先验(ChIP-seq、TF-靶基因数据库)是否可用?
  5. 自动提交是否允许;run 中途提交时证据怎么上传。
  6. 非小鼠发育数据、小鼠 E14.5+ 只用来评估 harness,是否需要披露。

日志

  • 2026-09-24:阶段 0 基础完成;harness 提交(f93a971);T2/T3 普查提交(ff96a68);opencode 后台 -f 附件方式曾卡死 70 分钟,改为内联任务书。
  • 2026-09-24:替代评测完成并校准;结构门控改为只惩罚不放大。
  • 2026-09-24:确定员工身份参赛;算力策略=本机小样本定架构、5090 放大训练。
  • 2026-09-24:任务 E 审过提交;纠正「禁止 E9.5+E14 插值」;发现 palette 词表,列入待问组委会。
  • 2026-09-24:任务 D 审过提交;T3 保底配置 self_zero,替代分 53.9。grok 结尾报 xAI 认证失效。
  • 2026-09-24:定模型策略;harness 加禁网与崩溃续跑。
  • 2026-09-25:任务 F 审过提交;方法卡合并;harness 加 venv;00:18 启动首个锁定 run。锁定后不读中间结果、不干预(规则 §9),只看进程是否存活。
  • 2026-09-25:首个 run 约 00:40 因内存紧张被 Claude Code 回收后台进程而中断;在锁定提交的 worktree(~/vec-worktrees/42a2ad2)用 resume 续跑,systemd 单元 vec-run1。操作记录见 run 目录 OPERATOR_NOTES.md。
  • 2026-09-25:run1 约 01:50 再次崩溃,原因是 opencode 连 xAI 报 unknown certificate verification error(非内存);当时 resume 路径没接自动重启,因此停住。8 h 预算已过,无法续跑,只能按现状 package。
  • 2026-09-27:查明 09-25 首次中断是 Claude Code 在内存峰值时回收自己的后台任务(7 秒后可用内存 24G),不是虚拟机 40G 不够,也和硬盘无关。harness 改为默认 systemd 脱离 + cgroup 内存上限,resume 补上自动重启。
  • 2026-09-27:run1 打包验证通过。用户定:按 T1 → T2 → T3 顺序推进,run2 只做 T1;预算仍按挂钟计时,重点是避免停机。harness 按 run1 暴露的问题改完。
  • 2026-09-27:首次启动 run2 卡在 opencode --version(~/.local/bin/opencode 是 mise 包装脚本,会 mise use -g 并在 systemd 环境里挂起),run 目录尚未创建即停掉;harness 改为固定到具体版本的 opencode 二进制后,17:26 启动 run2。锁定后只看存活。
  • 2026-09-27:run2 18:05 正常结束,T1 替代分 55.97;问题是提前收工与没有生成新类型。
  • 2026-09-30:读 Google ERA(结合 ChatGPT 源码审阅);定架构:锁定 harness + ERA 式程序搜索,opencode 做生成器,评分器与替代目标隔离。见 10,新增阶段 3b(G0–G7)。整理仓库结构:删除 agent/trajectories/、agent/workspace/(run 产物统一在 agent/runs/<id>/),benchmark 笔记移入 notes/research/,04 标为部分取代。
  • 2026-09-30(下午):与用户逐项讨论后定下两层自优化方案。5090 上 7×24 运行,第一层是 ERA 式算法搜索,第二层做 harness 自优化;开发属于锁定前,最终只提交一个锁定 run。框架选方案 A(自写薄控制器);训练只用小鼠窗外数据,考题用外部数据(以斑马鱼为主,加 MOSTA);禁窗内的数据不训练也不测试;暂不问组委会。阶段 3b 重排为 G0–G12。
  • 2026-09-30:G2 审过提交:4 个榜 × 2 种模式的数据视图、run.py 契约、vec_check、run_candidate,以及 3 个 T1 种子。heart_jcf_peri 的 proxy 预测与 run2 逐位相同(55.97)。T1 打分峰值约 24G 内存 + 3.6G swap,因为 veckit 会把矩阵转成稠密。
  • 2026-09-30:机器实为 DGX Spark(GB10、aarch64、121 GB 统一内存、20 核),不是 5090。虚拟机经 Mac 反向隧道访问(ssh spark)。Spark 访问不到 api.x.ai 和 huggingface,且为多人共用,待定 S1–S3。
  • 2026-09-30:Spark 就绪一半。opencode 1.18.32 已装(~/.local/bin/opencode);qwen3.8-max(Token Plan)测通,工具调用正常;vec.slice 上限 96G/18 核;linger 开启。S1–S3 记入 decisions.tsv。G5 剩余:Python 环境(aarch64 + CUDA 13 的 torch)、同步仓库与数据、GPU 统一内存与 cgroup 实测、仪表盘。
  • 2026-09-30:G1 审过提交(ec5206c):agent 模式 bwrap 沙箱、只读评分器快照、锁 v3、打包重打分、评分器不变性测试(打分噪声约 1 分;心脏外推榜对旋转不完全不变)。遗留:沙箱挂了完整 opencode 凭据、~/.claude 可写,放 G4 处理;T1 不变性在 Spark 上补跑。
  • 2026-09-30:用户定:取消自动化第二层,harness 改为人工每日复盘改进;外部数据只做训练。第一层架构另行讨论,G4/G6 暂缓。
  • 2026-09-30:第一层架构定稿(E1–E7):ERA futs.py 为核心,照 DrugEvolve 补 Researcher / Analyst,Engineer 为 opencode 会话;方向库 + 文献库(只收方法类);P2 + 外部测试题只在终选用;按角色设置 qwen3.8-max 思考强度。重写架构文档与 G6 任务书,新增 G6b,G11 加外部测试题。
  • 2026-09-30:G5 审过提交:Spark 上裸仓库 + 克隆,scripts/sync_spark.sh;~/.venvs/vec 与 VM 一致,torch 2.14.0+cu130 可用(GB10 bf16 约 84 TFLOP/s);官方数据哈希一致;T1 复现 55.9694;T1 不变性补齐(打分噪声约 2 分)。GPU 显存不计入 cgroup,改为进程内显存上限。bwrap 被 AppArmor 挡住,等用户用 sudo 装 profile。
  • 2026-09-30:G3 审过提交:windows.py(按设置禁窗、区间保守判定、体节/Theiler 换算、基因型)+ 测试;catalog.yaml;训练数据 Qiu 2024 心脏(E9.0 三胚 2174 细胞、E15.0 308、E16.75 751)与 MOSTA E9.5(5913 bin)。Claude 逐行审核 74 胚分期:保留 5 胚均四设置允许,37 胚窗内已删。MOSTA 数据许可未核实(最终提交前必须落实)。考题 B1/B5 的文件留着但不再使用。
  • 2026-09-30:F1–F3 定:E9.0 按体节分期保留;MOSTA 许可先用、提交前核实;Qiu 晚期改作 T1 类外部测试题、训练只用早期。
  • 2026-09-30:G6b 审过提交:T1 方向库 13 条(T1-10 按 F3 改为只用早期外部数据);方法类文献库 30 条,Claude 逐条审核(正文中唯一的禁窗阶段号是规则边界 E13.5;无 Gata4/β-catenin;Navigo 条目写明禁用其预训练权重)。notes/guides 下两份 HTML 指南含禁窗内容,加了合规警告,禁止进入 Agent 上下文。
  • 2026-09-30:G11 审过提交:训练改为 Qiu 窗外早期 12 胚(E8.75/E9.0/E9.25/E9.5,心脏细胞约 1.4k/2.2k/5k/4.8k)+ MOSTA E9.5;外部测试题 X1(Qiu 心脏 E14.0–15.75 + E16.0–17.25 → E17.5–18.75,T1 类外推)和 X2(MOSTA E14.5+E16.5→E15.5,T2 类插值),朴素基线均低于地板;check_catalog 通过(训练/测试无重叠、禁窗、哈希)。MOSTA 许可改为已核实(F2 结论)。
  • 2026-09-30:Spark 上安装 /etc/apparmor.d/bwrap(只放行 /usr/bin/bwrap 的用户命名空间,Ubuntu 24.04 标准写法;用户授权 Claude 执行 sudo),bwrap 可用。撤销:sudo apparmor_parser -R /etc/apparmor.d/bwrap && sudo rm /etc/apparmor.d/bwrap。启动 G4。
  • 2026-09-30:G4 审过提交:agent/scoring/(bwrap 封装、打分服务每客户端一个 socket 限 20 次并记日志、CONNECT 白名单出口代理)、凭据按 run 过滤(沙箱内只见当前模型一家的 key;claude_code 用私有 HOME)、锁 v4(network llm_only、gpu)、budget.slice。两机冒烟通过:外网 403、越权读取失败、第 21 次查分 quota_exceeded;Spark 沙箱内 CUDA 可用(需只读挂 /sys)。放行域名:VM api.x.ai + auth.x.ai;Spark token-plan.cn-beijing.maas.aliyuncs.com。G6 可以启动。
  • 2026-09-30:新增 11_data_use_scope.md(数据使用范围);search_spec 加入"不把保留阶段生物学事实写进代码";启动 G12 生物先验知识库(原 G12 全自动提交改名 G13)。
  • 2026-10-01:并行启动 G14(打分提速,逐位一致)、G15(T2 种子与方向库)、G8(提交助手 + 提交台账)。
  • 2026-10-01:G15 审过提交:3 个 T2 榜各 2 个种子(mix 59.12 / 55.96,damped_shift 49.47,与方法卡一致;插值 copy_last 因抽样到细胞上限而略低于 50),final 输出与方法卡提交文件逐位相同;T2 方向库各 9 条。审查中发现 proxy 外部数据规则对插值榜不够,已修正为照搬官方插值禁窗并通知 G6。
  • 2026-10-01:G12 审过提交:data/external/prior/ 6 个资源 28.9 MB(Reactome、GO、CollecTRI、STRING、MSigDB MH、MGI 基因映射),许可逐项核实(CollecTRI 复合许可已标记);合规剔除见 11 号文档 §3;check_catalog 扩展并通过;T1 方向库加 T1-14~17 四条先验用法。视图挂载 prior/ 由 G6 实现。
  • 2026-10-01:G14 审过提交(8195e32):fast_proxy 缓存目标侧计算,4 榜 90 例与参考评分器逐位相同(Claude 在 Spark 上另抽一例扰动预测复核,37 个数值字段全等);T1 单次打分 ~56 s/28 GB → ~4–7 s/2.4–4.7 GB,T2 从 1–3 分钟降到约 2 s。缓存含 proxy 答案,只能打分服务读;接入打分服务由 G6 完成(engine=fast、启动时建缓存、4 线程)。VM 的 9p 仓库在多子 agent 并行时 git 极慢(单次提交 10–20 分钟),记为待改进。
  • 2026-10-01:G16 审过提交:T1 方法全景、知识条目 k031–k063(含 21 条生物学知识)、方向 T1-18~23;Spark 预装 13 个方法包并在断网沙箱冒烟通过;无合格预训练权重。
  • 2026-10-01:G0 结果:run2 T1 官网 47.2(替代分 55.97,X1 46.79)——T1 替代题方向错误。12 小时 run 暂停;G17 审过提交(lit-search、Researcher 单轮 2–3 分钟、H1–H4、JAX 显存上限);启动 G18(接续、复测、两输入替代题、统一视图)、G20(Qiu 早期分角色 + X3 等 T1 类外部测试题);G19 校准批次因不符合 §9 不提交;校准改为 G21(4 个只差搜索目标的短锁定 run 各自提交 P2)。
  • 2026-10-01:G20 审过提交:Qiu 早期 E9.25/E9.5 改为只做测试;新增 X3(Qiu E8.75+E9.0→E9.5)、X4/X5(Imaz-Rosshandler 2024,CC BY 4.0)。heart_jcf_peri:官网 47.2、X1 46.79、X3 46.56、X4 50.14、X5 50.51、T1 替代 55.97。MOSTA E9.5 训练与测试答案同阶段不同来源,作记录在案的例外(测试视图不挂外部训练数据)。
  • 2026-10-01:独立架构审查完成;用户批准修复批次 G23(目标函数、运维、合规)、G21 重复 3 次、G24(T2/T3 在 10-20 前开跑);确认跨 run 接续合规(证据含祖先链轨迹)。顺序:G18 → G23 → G21(12 个 2 h 校准 run)与 G24 交替占用 Spark → 12 h run。正式 run 只在 Spark。
  • 2026-10-01:G25 监控面板上线(Spark 每 5 分钟构建,127.0.0.1:8765 只读;总览、run 详情、校准、健康四页;Mac 用 ssh -L 8765 访问)。发现 Archive 打开即写库,已补入 G23(只读打开)。
  • 2026-10-01:G18 审过提交:跨 run 接续(计分指纹、导入节点、续跑证据含祖先链轨迹与来源锁哈希)、晋级复测(前 5 名补 2 seed,实测改正一次终选)、T1 两输入替代题 proxy2、本地试跑与控制器统一视图、视图改用白名单消毒副本(删除 uns/palette、跨阶段 UMAP/PCA/harmony/leiden)、检索跳过被排除的知识条目。
  • 2026-10-01:用户确认已注册 Agent Team、全体队员已接受规则;Mac 上 launchd 隧道已安装。
  • 2026-10-01:G23 审过提交:真值 A/B 分半(Engineer 只见 A,正式分与终选用 B)、复测同时换评分器 seed、尺子组合 + 终检尺子、终选前 5×3 seed;磁盘清理与水位、LLM 熔断、全机内存准入、systemd 自动续跑 + 看门狗、锁 v7(视图文件哈希、服务端模型 id);操作日志 + 篡改标记、只读存档;agent 模式改用白名单副本;opencode -f 参数顺序 bug;proxy2 真正读两个输入。Spark 1 小时真实 run(并发 5)13 节点全部成功。
  • 2026-10-01:G23 收尾(每个评分 seed 各自的地板/天花板、熔断按时间窗错误率、按节点耗时 p80 用满预算)与 G26(P3 测试期视图与 --phase p3、验证真值本地尺子 R0–R5、p3_final 数据方案、P3 提交规程)审过提交;G24 的 T2 配置;Codex 独立架构审查(5 个 P1)→ G29 运行正确性,正式 run 待 G29 完成后再开。
  • 2026-10-01:OpenEvolve 对照:B 组按 G31L 从轻实施(进程内、每次从存档重建种群、无岛间迁移、不可提交),C 组与候选 bridge(G33)暂缓;对照计划移至 notes/architecture/openevolve_comparison.md 并在文首写明当前决定。(已被同日后续决定取代:A/B/C 都做,B/C 可提交,B 开迁移;运行代码在 agent/search/openevolve_adapter/,设计与对照计划迁到并列仓库 2026_virtual_embryo_openevolve 的 notes/architecture/openevolve_harness.md;见 decisions.tsv 2026-10-01 最后三条。)G34 仓库整理:notes 已完成(9500893),代码目录/configs/Spark run 统一目录在 G29 后进行。

问题与待办登记(issues.tsv)

issues.tsv 登记「什么阻塞下一步」,研究看板「跨 run → 问题与待办」只读它。由 G 任务立项、审查验收(Codex 审阅、回归)时登记:

  • 追加一行即可新建;更新状态就再追加一行同一 issue_id(看板取最新一行,旧行保留作历史)。格子里不要出现制表符或换行,UTF-8。
  • 列:issue_id, g_task, severity(P0/P1/P2), title, blocks, status, owner, next_action, acceptance, source, updated_at, drafted。status 取 open / in_progress / fixed_unverified / verified / wontfix;只有审查或回归确认后才写 verified,开发报告写「已实现」最多记 fixed_unverified。
  • blocks 写阻塞对象;含「T1」和「链」的条目归入「T1 链启动门」(P0 全部 verified 才算闸门通过)。负责人不确定写「未登记」。
  • source 写来源文档与日期;drafted 填 yes 表示起草自文档、待人核对,核对后清空。
  • 同类的两张表:harness_changes.tsv(改动与验证级别)、chain_notes.tsv(链与专题复盘的人工 / Claude 解释)。