feat: 任务书 05,runner 与 tasks 两个模块
runner 用 Docker 跑一条命令并交回结局和资源用量;tasks 读 task.json、准备运行目录、给出正式运行/校验器/轻量检查的运行定义,并从原始产物独立判分。任务目录从参考项目搬到 tasks/circle_packing/,新增 task.json;vocab 的 VERDICTS 删掉"判不了",ProcessResult 的 cancelled 改为"容器从外面被杀了"。 全新上下文审阅后的两处修复:计量 shell 以容器内 root 运行,命令经 setpriv 降权,结果写在容器自己的文件层、结束后 docker cp 取出,并加 no-new-privileges,候选无法伪造计量结果把超时记成正常退出;harness 开跑前删掉旧的 solution.json、metrics.json,旧产物不会被当成本次的值。 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
# 官方基线来源声明
|
||||
|
||||
本目录文件来自 SakanaAI/ShinkaEvolve,Apache-2.0 许可(见同目录 `LICENSE`)。
|
||||
|
||||
- 固定提交:`9912af12d423504b8d580f4179fd15f5f88b8c50`
|
||||
- 固定日期:2026-09-17(由项目负责人原字节下载并哈希固定在 `/tmp/rivalbits2-shinka-18k23a46/manifest.json`)
|
||||
|
||||
| 文件 | 原始 URL | sha256 | 修改 |
|
||||
| --- | --- | --- | --- |
|
||||
| `initial.py` | <https://raw.githubusercontent.com/SakanaAI/ShinkaEvolve/9912af12d423504b8d580f4179fd15f5f88b8c50/examples/circle_packing/initial.py> | `09da8428a85792a94a9c6cc2193b6a0db1090ce598a17b75bc0db48d0953d098` | 无(逐字节复制) |
|
||||
| `evaluate.py` | <https://raw.githubusercontent.com/SakanaAI/ShinkaEvolve/9912af12d423504b8d580f4179fd15f5f88b8c50/examples/circle_packing/evaluate.py> | `eb8b9787dc25dee24a5f5305d1e3bd876e5c336cded1c9bab7fb204612928b4d` | 无(逐字节复制) |
|
||||
| `LICENSE` | <https://raw.githubusercontent.com/SakanaAI/ShinkaEvolve/9912af12d423504b8d580f4179fd15f5f88b8c50/LICENSE> | `c3e5b1c26607caf7208d5a105c113fe240630bb873fdb8ca5b4c2e32c721ddaf` | 无 |
|
||||
|
||||
上表三个 sha256 是基线"没被改过"的唯一判据,由本项目的 `tests/tasks.test.ts`
|
||||
("基线三个文件的 sha256 等于 SOURCES.md 表上的值")逐个断言。
|
||||
|
||||
它防的是**别的测试看不见的改动**:给 `initial.py` 加一行注释、或者动一个字节的
|
||||
`evaluate.py` / `LICENSE`,成绩一位不变,别的测试都不会挂。`evaluate.py` 和 `LICENSE`
|
||||
根本不在运行路径上。
|
||||
|
||||
一个实测过的事实(参考项目里跑出来的):把 `compute_max_radii` 那个白跑 105625 次的冗余双循环删掉,
|
||||
半径和一位不差(都是 0.9597642169962064),但第 (7, 8) 对圆会重叠 2.7755575615628914e-17,
|
||||
容差 0 下判不合法,要经合法化才收下。那个冗余循环仍然是本研究的改进起点。
|
||||
|
||||
## 已知的基线事实(刻意保留,不是缺陷)
|
||||
|
||||
- `initial.py` 的 `compute_max_radii` 含嵌套的冗余缩半径循环(外层 `for i/for j`
|
||||
包了一层重复的 `for i/for j`),且外环布局(0.7 半径环经 clip 到 0.99)是退化布局;
|
||||
圆心 clip 后可能出现零半径。这些是官方基线的原样事实,是本研究的改进起点,
|
||||
**不得“修复”**——任何改进必须作为正式候选经过研究流程。
|
||||
- `evaluate.py` 依赖 `shinka.core.run_shinka_eval`(ShinkaEvolve 框架内部),
|
||||
且其聚合以候选自报的 `reported_sum` 作为 `combined_score`。本项目**不信任**
|
||||
自报分数:独立校验器 `../validate.py` 不 import 本文件,自行重算半径和。
|
||||
本文件仅作为官方协议参考保留,不在本项目的运行路径上执行。
|
||||
Reference in New Issue
Block a user