Repository navigation
Releases
v0.2.9 · 认证恢复修复与运行故障诊断
本版内容
- 修复模型密钥、端点等真实执行配置已有效更正后,仍被历史
provider_auth阻断的问题。原失败 Worker 可进入有预算和冷却限制的 fresh 重试;仅改名称、重复保存同一密钥或退回历史坏配置不会解锁。保留失败记录、计量和执行代次。 - 已因认证失败关闭的 Explore 义务,可在用户显式恢复项目时定向重开原 attempt/intent,不重复收费;仍要求原执行已终止、无接受结果或未决候选。
- 修复合法的新协议 fact-only Bootstrap 被通用诊断套用旧 Schema、误报
phase_shape_invalid。具体业务结果仍按项目实际协议验收。 - 现场核验失败的固定原因码及关联 TaskRun 写入原执行控制回执,随现有 runtime/项目进度导出。
- 声明材料上传失败时,现有项目事件记录失败材料、HTTP状态及固定错误码,不发布原始响应或凭据;保留其他成功上传的材料,诊断失败不覆盖主失败。
范围说明: 本版解决上述逻辑缺陷和诊断缺口,不宣称已解决所有历史现场丢失、材料上传或容器启动故障。旧回执不会补出已丢失的原因;事件接口不可用时仍可能无法留存上传诊断。更新不自动恢复、重跑项目,也不替换已有项目容器。
更新方式
仅更新宿主 Server/Dispatcher;相对0.2.8无新增数据库迁移、依赖、前端或镜像运行代码变化。保留0.2.8的安装目录改名修复。
-
v0.2.6及以上ZIP安装: 管理端「设置 → 系统更新」执行「检查 → 准备 → 应用」,确认目标为 0.2.9。
-
手动更新/旧页面准备失败: 下载本Release的部署ZIP与
.sha256,校验后解压到旧安装之外的新空目录,使用新包的更新器:/新包解压目录/arena-0.2.9-linux-code-only/deploy/update.sh --target /现有应用根目录
-
更新前确认真实执行已退出,并备份数据库、runtime、完整keyring/token、资料与外置存储。旧版本的迁移条件及自定义镜像限制不变;不要删除业务材料或镜像绕过检查。
-
Git源码安装不要用部署ZIP覆盖,使用此tag对应的源码更新路径。
配套镜像
复用上一版固定digest,不重建工具层、不发布新的版本镜像、不清理旧镜像,仅支持linux/amd64。渠道文档与包内manifest包含相同配套来源:
- Worker:
yong29/arena-worker@sha256:62c3e3b9a19b1306b77361e98ab1169fa2e41529c31bb7100c3bb23849895d16 - 网关:
yong29/arena-traffic-gateway@sha256:c1ae1c054cc3b12b0648d06476cc7af86a13208b3f366d3ef0c1a3f9c3b41e10
本轮未重新验证Docker Hub的latest标签:当前网络连接被拒绝。发布包复用已发布0.2.8渠道中的固定来源,不将浮动标签当作配套证明。
验证与附件
- 认证恢复、协议诊断、控制回执及材料事件的定向验证通过;包含隔离PostgreSQL持久化、HTTP和项目导出链路。首次临时数据库容器启动超时后串行复验通过。
- 本地Server/Dispatcher已实际加载故障修复,正常登录和只读运行状态/任务/事件接口验证通过;没有执行真实研究或付费模型调用,其他环境更新仍需自行验收。
- 从精确提交的干净快照打包,未纳入本地用户未提交改动、运行数据、凭据或无关静态产物;616个manifest文件及静态引用、ZIP摘要、镜像来源一致性和更新器manifest验收通过。
- 源码revision:
0e2c16b7d85632fa8539c3b1f478eddf120cb2c1 - 应用包:
arena-0.2.9-linux-code-only.zip(20,231,810 bytes) - SHA256:
fe1fc0c2aecea3992232a3fbe208cac0fe5359cb9af4444aef3da787f9596f2e - 同时提供:
arena-0.2.9-linux-code-only.zip.sha256、release.json
Arena 0.2.8 — 修复安装目录改名后的更新失败
修复内容
- 修复 0.2.7 更新器在安装目录移动或改名后报 ModuleNotFoundError: No module named cairn。新更新器明确使用发布包自身源码,只复用旧环境第三方依赖;保留 Python 隔离与发布完整性检查。
- 无需改回安装目录名、重装工具或删除镜像;配置中其他显式绝对路径仍须指向实际位置。
- 无新增依赖、数据库迁移或前端变化。复用 0.2.7 Worker 和既有网关固定 digest,不发布新的镜像 tag。
更新方式
在旧安装之外的新空目录下载并校验本 Release 的部署 ZIP(不要使用 Source code ZIP),确认任务退出并备份数据后,运行新包 deploy/update.sh --target /实际安装目录。不要继续运行 0.2.7 新包中的旧更新脚本。Git 安装请按源码更新流程,不使用 ZIP 更新器覆盖工作区。
验证与边界
镜像准备文件 12 项定向测试通过;已用已发布 0.2.7 复现失效 editable 导入错误。最终 ZIP 禁用 editable 注册后更新器入口通过,616 个 manifest 文件校验通过。本机已部署并启动完整系统;其他机器实际升级仍需验收,不代表所有绝对路径迁移均被自动修复。
配套镜像(linux/amd64)
- Worker: yong29/arena-worker@sha256:62c3e3b9a19b1306b77361e98ab1169fa2e41529c31bb7100c3bb23849895d16
- Gateway: yong29/arena-traffic-gateway@sha256:c1ae1c054cc3b12b0648d06476cc7af86a13208b3f366d3ef0c1a3f9c3b41e10
ZIP SHA256: 9e432c215198cd647cce7d6e112e7c293f0c937172d64a751864db5234a196b4
源码 commit: 35528e8
v0.2.7 · 执行所有者连接与配套镜像更新
主要变化
- 删除执行器的时间戳续租/过期自杀机制,改用 Dispatcher 专属 Unix socket 所有者连接。调度停顿、慢 I/O、Docker 查询延迟和系统时钟跳变不再因许可过期误杀执行器;所有者退出仍终止执行容器,热暂停保留原命令。
- 健康观测失败与容器真实退出分离,保留真实故障、用户停止、截止时间、停止核验及有界重试;修复正式长 Unix socket 路径,代理临时 DNS 错误采用有界重试。
- 更新包携带 Worker/网关固定 digest。新更新器在停服前准备并验收两镜像,停服后统一迁移官方引用;真正定制镜像不覆盖,不兼容时提前拒绝。复用未变化镜像层,不再逐机重建整套工具。
- 自动同步外置
CAIRN_STATIC_DIR:预检冲突、增量补资源、最后切换入口,保留旧 hash 与未知文件。
无新增数据库迁移、项目依赖或外部权限变化。必须配套更新宿主应用和 Worker,旧 Worker 不兼容新执行所有者协议。
如何更新
- 在维护窗口结束相关任务并确认执行退出,保留数据库、runtime、完整 keyring/token、资料和外置路径的一致备份。
- v0.2.6 ZIP 安装:管理端「设置 → 系统更新」,检查 → 准备 → 应用。旧页面若误报网关 digest 不匹配或准备失败,改用下面的新包入口;不要删镜像或反复重建工具。
- 更早 ZIP 安装或手动更新:下载本页 code-only ZIP 和
.sha256,校验并解压到旧安装之外的新空目录,然后执行:
/新包解压目录/arena-0.2.7-linux-code-only/deploy/update.sh --target /原安装绝对路径无需先升到 v0.2.6,无需手工迁移官方镜像引用。不是运行新目录的 install/start,也不是用新包覆盖 Git 工作区;Git 安装仍走仓库中的源码更新指南。
配套镜像(linux/amd64)
Worker 已发布新版本 yong29/arena-worker:0.2.7,固定引用:
yong29/arena-worker@sha256:62c3e3b9a19b1306b77361e98ab1169fa2e41529c31bb7100c3bb23849895d16
网关复用已发布镜像,不重建未变化运行层:
yong29/arena-traffic-gateway@sha256:c1ae1c054cc3b12b0648d06476cc7af86a13208b3f366d3ef0c1a3f9c3b41e10
两引用同时记录在 release.json 与 ZIP 内 RELEASE-MANIFEST.json。不承诺 arm64 配套镜像。公开镜像拉取无需发布者凭据。
代码与校验
- 源码:
f42869ac70e0710163023dfa8f6a8c8cd2681c96 - 文件:
arena-0.2.7-linux-code-only.zip - 大小:20,226,396 bytes
- SHA256:
b18839275450806b733c424318d7d9d611a2fce3b1acc0553ac7ae02288c9399 - ZIP 从已提交源码生成,616 个清单文件全部通过校验,不包含本地未跟踪旧 hash、私有配置、运行数据或镜像。请使用附件,不用 GitHub 自动 Source code ZIP 代替部署包。
验证与边界
真实执行器与 Docker 热暂停/采集/后台进程清理验证通过;更新链、发布元数据、定制镜像保护和外置静态目录均完成定向验证。真实镜像的独立 prepare/check/apply CLI、远端镜像 config 对照、ZIP 清单/摘要检查通过。本机完整系统已加载 0.2.7,管理端更新状态接口、健康接口及主页可用。
更新不替换已有项目容器、不自动恢复或重跑任务,不清库;存量容器签名、工作区冲突及历史会话迁移阻断仍需按实际情况处理。旧 v0.2.6 Server 在调用新更新器之前的准备阶段仍可能受其多 RepoDigest 校验缺陷影响,手动新包入口可避开这段旧逻辑。程序备份不是数据库、依赖、配置或镜像的整体回滚保障。
没有运行真实业务项目或付费模型,也未操作其他机器;不把本机与合成验证等同于所有存量项目恢复验收,不承诺基础设施永不失败。
v0.2.6 · 系统一键更新、release.json 更新渠道与流量执行许可修复
v0.2.6 · 系统一键更新、release.json 更新渠道与流量执行许可修复
系统一键更新与更新渠道
- 新增管理端「系统更新」页面(
/console/update),支持检查更新、下载校验、一键应用并重启。仅 ZIP 安装类型支持一键更新;git 源码安装显示手动更新指引。apply 采用 detached 更新器交接,避免 Server 在替换自身时中断。 - 新增
release.json更新渠道文档(arena-release-channel/v1),随包发布。包含版本、ZIP 摘要、Worker 复用声明与网关镜像 digest。v0.2.5 及更早版本无此附件,无法一键更新,需手动升级到 v0.2.6。 - 网关镜像统一使用
latesttag 推送;digest 记录在release.json中用于校验。已发布的历史 tag 保留不动。
流量执行许可与重试预算修复
- 流量执行许可(traffic-ready gate)刷新与健康判定解耦:Dispatcher
check_scope现在先刷新许可再进入容器状态与 heartbeat 判定,gate 只表达「宿主存活且在看管」。宿主侧检查延迟不再把许可拖到过期,执行器自杀保护不再成批误杀运行中的执行器。 - Dispatcher 记录的
traffic_*基础设施取消族纳入既有有界重试预算与 5/10 秒退避:第三次同类取消后项目以execution_retry_exhausted停止,不再无界重发。人工暂停与通用取消仍不获得重试预算。
部署要求
- 网关镜像:
yong29/arena-traffic-gateway:latest,digestsha256:c1ae1c054cc3b12b0648d06476cc7af86a13208b3f366d3ef0c1a3f9c3b41e10 - Worker 镜像:继续复用 v0.2.3 配套应用层(
arena-worker:0.2.3),无新增数据库迁移。 - 无新增 API/Schema 权限变化,仅 ZIP 安装支持一键更新。
附件
arena-0.2.6-linux-code-only.zip:code-only 部署包(含正式前端静态产物)arena-0.2.6-linux-code-only.zip.sha256:SHA256 校验文件release.json:更新渠道文档(含版本、摘要、镜像 digest)
Arena v0.2.5 · 运行日志阅读器改版与采集饿死修复
Arena 0.2.5 · 2026-11-08
本次交付固定源码 247817a9c0518489c77be768f2aa0397f76cb049,包含 code-only Linux 部署 ZIP 与配套的流量采集镜像更新。镜像仅支持本轮实际构建和核实的 linux/amd64,不承诺 arm64,未设置 latest。
主要变化
- 运行日志页改为常驻左工作索引+右执行阅读器:左侧等宽等高标签卡片、标题单行省略(完整标题在右侧阅读器);右侧收敛为“结果/执行记录”两个视图,执行记录固定“输出/工具/命令/文件”页签,工具调用可展开查看命令、路径、输入与响应等已记录字段。
?runId=深链、结果来源与结果搜索行为保留。 - 运行错误改为默认收起、按需展开的完整原文;流量“同步完成”正常终态不再占位渲染;工作结论改为单行内联状态。不再有 240 字符/300px 二次裁断和无用途说明文字。
- 修复 traffic-gateway collector 事件循环饿死(本项目首个 gateway 实质更新):heartbeat 移入独立 OS 线程,大响应体/并发下载占满 mitmproxy 事件循环不再触发宿主
traffic_capture_stalled误取消;body 落盘改缓冲写+每 1MB 阶段化 checkpoint,持久化不变式与封存身份协议不变,看门狗与重试预算行为未改动。新增/capture/capture-diagnostics.json区分「I/O 慢」与「进程卡死」。 - 数据库与 Worker 研究镜像相对 v0.2.4 无变化:无新增迁移,继续使用 v0.2.3 Worker 应用层与
arena-worker:0.2.3;但网关必须更换为本次更新的yong29/arena-traffic-gateway:git-f6df095fb4f8,旧git-a0f22cec57b3网关在批量大文件任务会复现误取消(见 proj_010 模式)。 - collector 修复已完成合成 harness 8 例、真实构建镜像内 64MB 流式验证及既有 9 例重试预算测试;真实项目端到端(批量 bundle+并发加载、kill 对照、上传链路)待部署后验收。
完整变化与兼容性说明:CHANGELOG。
部署包
请下载本 Release 附件中的 arena-0.2.5-linux-code-only.zip,不要用 GitHub 自动生成的 Source code ZIP 代替部署包。
- 大小:51,595,225 bytes。
- SHA256:
9b3fc9ebe030e4a0345274079bf6f4869b78887979f10774bfd9945c98bc1df3(附件与同名.sha256一致)。 - 包含服务端、正式前端静态资源(含 v0.2.5 运行日志新界面)、部署脚本及镜像构建输入;不含已安装依赖、前端源码、运行数据或 Docker 镜像。
配套镜像
| 镜像 | 说明 | 远端 manifest digest |
|---|---|---|
yong29/arena-traffic-gateway:git-f6df095fb4f8 |
v0.2.5 必须更换:修复大响应体采集饿死 | sha256:1578d5015ca2cc64bc26642be85b8a2eb27d72337c7deba91dc7dca9d482cd30 |
yong29/arena-worker:git-a0f22cec57b3 |
v0.2.1 公开研究基础镜像(不变),须叠加 v0.2.3 应用层 | sha256:b4babe19a719acf73733b3d6e093c490a2a741b95562682fd16b5c227df57d06 |
- 新网关基于同一 Dockerfile 构建(
python:3.13-slim-bookworm固定 digest + mitmproxy 12.3.0 + pproxy 2.7.9),仅替换修复后的capture.py;构建后已在镜像内核验cairn-heartbeat标记与文件 md5,远端 digest 匿名核验一致。 - 拉取命令:
docker pull 'yong29/arena-traffic-gateway@sha256:1578d5015ca2cc64bc26642be85b8a2eb27d72337c7deba91dc7dca9d482cd30'从 v0.2.4 更新
- 下载应用 ZIP 并校验,解压到旧安装之外的新目录。
- 拉取新网关镜像,编辑旧安装的
runtime/dispatch.yaml:container.traffic_gateway_image指向新 digest 或yong29/arena-traffic-gateway:git-f6df095fb4f8;arena-worker:0.2.3与研究镜像保留。 - 旧任务退出后停止旧应用,用新包更新器更新:
/新包解压目录/arena-0.2.5-linux-code-only/deploy/update.sh --target /现有应用根目录。 - 使用自定义
CAIRN_STATIC_DIR的安装须同步外置静态目录(保留旧 hash,原子替换index.html)。
更早版本(v0.2.1–v0.2.3)除应用包外还须按 v0.2.3 Release 准备 Worker 应用层;步骤见安装指南。
边界与已知限制
- 网关修复已通过合成与镜像内验证;真实项目(批量 bundle+HeadlessChrome 并发加载场景、kill collector 的宿主 3 秒取消对照、上传链路端到端)尚未在真实部署验收。部署后运行同模式大文件任务时,建议关注
/capture/capture-diagnostics.json与 TaskRun 是否仍出现traffic_capture_stalled。 - 模型网关侧独立故障(如 v0.2.4 记录的 proj_010 tr003 provider_error)不在本修复范围。
tests/test_traffic_sync_handoff.py的_control_lockAttributeError 与test_synthetic_scope_upload_costs的 PostgreSQL fixture 失败为 v0.2.5 之前已存在,与本版无关。- 存量容器不随镜像 tag 更新自动替换;更新须在旧任务退出后的维护窗口进行。
Arena v0.2.4 · 执行稳定性修复
执行稳定性修复
- goal-driven 证据接受: 当前 Run 的合法
source=manualArtifact 不再被 Dispatcher 的 legacy capture-only 门槛提前判为evidence_insufficient。Server 继续核验 Artifact、项目、TaskRun 与 HTTP flow 的真实归属;不改写来源,不自动确认漏洞。legacy coverage-cell、独立复测和既有证据协议保持不变。 - 采集取消有界终止: 取消结果保留具体
traffic_capture_stalled诊断,TaskRun 终态仍为cancelled/cancelled。只有 Dispatcher 明确记录且无暂停标记的该类取消进入既有持久重试预算;Bootstrap/Explore 按 5/10 秒退避,第三次同类失败后返回execution_retry_exhausted。Dispatcher 重建不会清零预算,人工取消、暂停和其他取消来源不获得新增重试。
源码固定为提交 f6df095fb4f84a6d933292754111304286f5d5c8,标签为 v0.2.4。
兼容与升级
- 相对 v0.2.3 无新增数据库迁移、API/Schema、权限或前端变化。
- v0.2.3 → v0.2.4: 只更新宿主 Server/Dispatcher;继续复用
arena-worker:0.2.3和 v0.2.1 固定网关,无需重建镜像。 - v0.2.1/v0.2.2 → v0.2.4: 除本版应用包外,还需使用 v0.2.3 Worker 最小应用层包 准备配套研究镜像。
- 本 Release 只提供 code-only ZIP 与 SHA256,不重新发布未变化的 Worker/gateway,不覆盖任何旧 Release 或附件。安装和升级步骤见标签内的 README 与 Linux 部署指南。
验证与边界
- 发布前稳定性、recovery 隔离与发布打包定向测试:33 passed。
- 干净提交归档生成的 ZIP 已通过完整性、SHA256、版本、清单及运行数据/未跟踪静态资源排除检查。
- 本机已在无 active 项目、无 queued/running TaskRun 的维护窗口加载 v0.2.4;HTTP ready、Dispatcher ownership、heartbeat、启动日志及源码/安装包版本检查通过。
- 另一次整份 readable-flow 合并运行仍有 17 passed, 2 failed;两项为既有 v63 报告夹具缺少后续
execution_control_json查询字段,本版未扩大范围处理。 - 未创建、恢复或重跑真实项目,未调用模型或访问目标。底层 collector heartbeat stalled 根因、真实项目效果及其他机器升级仍未验收;本 Release 不宣称采集停滞已经根治。
附件
arena-0.2.4-linux-code-only.zip- 大小:
19,475,042 bytes - SHA256:
ba2c0d23f857d255fe6ea6ce4557f12125ad6cb5f1c8113e4b191c2914cbae93
- 大小:
arena-0.2.4-linux-code-only.zip.sha256
请下载 Release 附件并先执行 sha256sum -c arena-0.2.4-linux-code-only.zip.sha256,不要使用 GitHub 自动生成的 Source code ZIP 代替部署包。
Arena v0.2.3 · 项目材料进入真实共享工作区
Arena 0.2.3 · 项目材料进入真实共享工作区
本版源码固定为 30b8890faa593e4ddb61bacd7a341a18c34d8f25。相对 v0.2.2,打通项目附件/所选资料到真实研究工作区的确定性准备,不依赖模型搬运材料。没有新增数据库迁移或前端页面变化;宿主应用与 Worker 应用层必须配套更新。
本版变化
- 在正常研究执行准备完成后,项目附件与冻结选择的库文件真实存在于
/home/kali/workspace/inputs/;未选择的库文件不复制。 - 现有项目“文件”列表、搜索、预览、下载、控制端文件工具与独立 task executor 命令读取同一普通文件副本。
- Server 权威原件与只读
/cairn/advisory保持不变,保留来源 ID、选择范围和原始摘要;工作副本不反向同步原件。 - 同项目、同材料集校验复用;已有目录、被修改的输入或链接冲突时明确失败,不覆盖用户工作,不删目录自愈。临时副本校验完整后才原子发布,失败不暴露半成品。
- 只有实际完成准备的研究执行获得
workspace_path/workspace_manifest_path及对应审计字段;独立报告与聊天不获得虚假工作路径。 - 输入可以读取,但不能直接登记为新 Artifact;分析输出和可编辑副本写在
inputs/外。
完整变更见 CHANGELOG。
下载附件
请使用本 Release 的部署附件,不要用自动生成的 Source code ZIP 代替部署包。
| 文件 | 大小 | SHA256 |
|---|---|---|
arena-0.2.3-linux-code-only.zip |
19,473,777 bytes | 5544c4d63ff409f801cf4bfbae6276a34c4a53c1429fec10086cbe1e2667478e |
arena-0.2.3-worker-application.zip |
5,529 bytes | 948f254488b88592105be9efe1f4513d9b13eff319a31d88012469b088d28b09 |
两份 ZIP 均附有各自 .zip.sha256。应用 ZIP 顶层为 arena-0.2.3-linux-code-only/,包含应用、正式前端、部署脚本与完整镜像构建输入,不含业务数据、私有配置、已安装依赖或 Docker 镜像。Worker ZIP 顶层为 arena-0.2.3-worker-application/,只含 Dockerfile、由上述固定提交编译的 artifacts.js 及来源/摘要清单。
配套 Worker:复用工具层,必须叠加本版应用层
不能直接用未经更新的 v0.2.1 Worker 运行本版应用。 本次不向 Docker Hub 上传新镜像;从本 Release 下载 Worker 小应用层包后,在以下公开基础镜像上离线构建本地 arena-worker:0.2.3。仅复制本版 artifacts.js 并运行离线自检,不安装工具、Node 或 npm 依赖;本机不存在基础层时仍须先拉取。网关保持原镜像。
| 用途 | 不可变基础引用 |
|---|---|
| Worker 基础(必须叠加本版应用层) | yong29/arena-worker@sha256:b4babe19a719acf73733b3d6e093c490a2a741b95562682fd16b5c227df57d06 |
| Gateway(直接复用) | yong29/arena-traffic-gateway@sha256:a2734dde304c5bdc7a3c22e867e21bbe22a4860fc112c54f0feab128b202da8a |
仅支持已有公开基础的 linux/amd64,不承诺 arm64,不设置 latest 镜像标签。arena-worker:0.2.3 是本地构建结果,不是新的 Docker Hub 拉取地址。
完整的下载、SHA256 校验、镜像准备和 runtime/dispatch.yaml 配置命令见 README 与 部署指南路径 A。已有显式 images/profile/允许列表也须更新实际研究镜像引用。使用默认 :local 的更新器仍会运行完整配方的缓存构建,不能把缓存缺失后的工具重装误称为小应用层升级。
从 v0.2.1/v0.2.2 升级
- 两份 ZIP 在旧安装之外的新空目录校验、解压;不在新目录另行 install/start 创建第二个实例。Git 源码安装不要用 ZIP 覆盖
.git工作区。 - 在维护窗口暂停或结束相关任务并确认真实执行退出;停止宿主应用不等于 Worker 已退出。保留数据库、
runtime、完整 keyring/token、资料、Artifact 与外置目录的一致备份。 - 按路径 A 准备
arena-worker:0.2.3,保留固定网关。停止旧应用后,修改旧安装的实际镜像配置/显式映射,再用新包deploy/update.sh --target /现有应用根目录更新;不以--server-only绕过镜像准备。 - 相对 v0.2.2 无新增迁移,但更早版本的历史会话、session 与 v82 原资料路径阻断继续有效,不清库、不改历史 SQL/checksum 绕过。
- 自定义
CAIRN_STATIC_DIR不由更新器自动同步;在维护窗口补齐实际静态目录,或改为指向原安装更新后的正式静态目录,不能指向临时新包;不删除旧 hash。
完整顺序和回滚边界见 部署包更新。旧版本标签、附件、摘要与镜像不被覆盖。
存量与验收边界
- 材料在正常执行准备时进入 workspace,不是上传完成就立即创建容器/填充文件页;本版不遍历增补所有历史工作区,不自动恢复或重跑项目。
- 更新标签不替换已有容器,其 Artifact 分类代码不会自动升级;材料变更仍可能触发既有 runtime signature 不匹配。已有
inputs/必须与来源清单一致,否则保留现场报错,不删除业务材料自愈。 - 工作副本增加磁盘占用,没有双向同步原件。小材料验证不证明跨块复制与复制期间源变化已经实测覆盖。
- 本机完整系统已安全加载实施改动,但发布不表示其他机器已升级。没有向正式实例上传测试材料、创建批次/项目、启动计划、恢复/重跑项目、调用模型或访问被测目标;工程验证不等于正式上传 → 新建研究 → 模型读取/分析的业务验收。
验证记录
- 实施阶段定向 Python 组合 27 passed/11 deselected;补齐 continuation 后,新文件非 Docker 部分 12 passed。Node 新增输入分类用例 1 passed;不默认运行全套测试或无关 500 MB 上传实验。
- 固定提交的干净源码重新编译 Worker 应用通过;编译字节与本机已验证版本相同。公开旧 Worker 基础上仅叠加应用文件的无网络构建与
cairn-agent --self-check通过,未重新下载工具层。 - 本次发布组合
arena-worker:0.2.3的单个隔离 Docker 用例 1 passed(20.24s):真实控制容器 → Unix socket → task executor 读取同一路径 CSV,产生rows=2,sum=5分析输出;小二进制、所选库文件与 manifest 初始字节一致,真实 reader 可读,输入 Artifact 边界通过。API/容器登记仍为隔离替身,不是正式业务或模型分析。 - 应用 ZIP 的 544 个清单文件、Worker ZIP 的 2 个清单文件,逐项大小/SHA256、无额外文件、版本和部署脚本权限均已校验;打包器秘密扫描和静态引用校验保持开启,
verify_deployment.py --manifest-only通过,uv lock --check --offline与git diff --check通过。
Arena v0.2.2 · 项目资料上传兼容性修复
Arena 0.2.2 · 项目资料上传兼容性修复
本版应用源码固定为 4099f3613d892664d17893e21f791ec136adaf80。相对 v0.2.1,修复前端上传对 crypto.randomUUID 的依赖,整理版本元数据和安装升级文档;不新增后端 API/Schema 或数据库迁移,继续复用 v0.2.1 的两个执行镜像,不构建或上传新镜像。
修复内容
- 修复
crypto.randomUUID不可用时,新建项目/计划资料及项目总览增补资料在发送上传请求前报错的问题。 - 使用
crypto.getRandomValues生成 16 字节随机身份,保留prm_+32 位小写十六进制格式;不增加依赖或弱随机数。 - 每项只生成一次身份,明确拒绝后的补传复用原 ID;未知响应仍需核对,禁止自动重传。
- 普通选择/拖放、普通 ZIP 原样上传、独立 ZIP 导入,以及错误反馈、busy 释放、500 MB 边界、已有成员、草稿和权限/路径检查保持不变。
完整记录见 CHANGELOG。
部署附件
下载本 Release 的部署附件,不要用 GitHub 自动生成的 Source code ZIP 代替:
arena-0.2.2-linux-code-only.zip:19,468,064 bytes。- SHA256:
4c7111b9ed769947596cda876a65ab9aed28f9f0e7892b8134c6522187ec0bba。 - 校验附件:
arena-0.2.2-linux-code-only.zip.sha256。 - 包内顶层:
arena-0.2.2-linux-code-only/。 - 包含应用、正式前端、部署脚本与镜像构建输入;不含业务数据、私有配置、已安装依赖、完整前端源码或 Docker 镜像。
镜像:继续复用 v0.2.1
两个镜像的构建源码仍为 a0f22cec57b3f53f5981966db03b1b223a89bd94,与本版应用兼容。仅支持已发布的 linux/amd64,不承诺 arm64,未设置 latest。
| 镜像 | 标签 | 不可变 manifest digest |
|---|---|---|
yong29/arena-worker |
git-a0f22cec57b3 |
sha256:b4babe19a719acf73733b3d6e093c490a2a741b95562682fd16b5c227df57d06 |
yong29/arena-traffic-gateway |
git-a0f22cec57b3 |
sha256:a2734dde304c5bdc7a3c22e867e21bbe22a4860fc112c54f0feab128b202da8a |
旧机已配置并准备好以上 tag 或对应 digest 时,保留原配置,无需重新 pull 或构建。缺少镜像时,按部署指南先准备。默认 arena-worker:local/arena-traffic-gateway:local 仍会触发现有更新器的缓存构建;本版没有改变更新器,不用 --server-only 绕过镜像准备。
v0.2.1 ZIP 安装的升级
以下只适用于非 Git 的部署包安装。新包必须在旧安装之外解压,不在新目录另行运行 install/start 创建第二个实例。
1. 下载、校验、解压
在旧安装目录之外执行,任一步失败就停止:
RELEASE_URL='https://github.com/Y10ng/Arena/releases/download/v0.2.2'
ASSET='arena-0.2.2-linux-code-only.zip'
DOWNLOAD_DIR="$(mktemp -d "$HOME/arena-download.XXXXXX")" &&
curl -fL "$RELEASE_URL/$ASSET" -o "$DOWNLOAD_DIR/$ASSET" &&
curl -fL "$RELEASE_URL/$ASSET.sha256" -o "$DOWNLOAD_DIR/$ASSET.sha256" &&
(cd "$DOWNLOAD_DIR" && sha256sum -c "$ASSET.sha256") &&
UNPACK_DIR="$(mktemp -d "$HOME/arena-upgrade.XXXXXX")" &&
unzip "$DOWNLOAD_DIR/$ASSET" -d "$UNPACK_DIR"2. 维护与更新
- 在界面暂停或结束相关任务,并确认真实执行已退出。停止宿主应用不等于 Worker 已退出。
- 先保留数据库、
runtime、完整 keyring/token、资料、Artifact 和外置目录的一致备份。更新器的程序备份不等于整套环境回滚。 - 相对 v0.2.1 无新增迁移。更早版本的历史会话、session、v82 原资料路径及其他迁移阻断继续有效,不能通过删业务数据或改历史 SQL/checksum 绕过。
- 若设置了自定义
CAIRN_STATIC_DIR,更新器不会同步其外置内容。停止旧应用后,可把原安装runtime/arena.env的该变量改为原安装更新后cairn/src/cairn/server/static的绝对路径;不要指向临时新包。必须保留外置目录时,先补齐新静态资源、确认同名 hash 内容一致,最后原子切换 index.html,不删除旧 hash。详见部署包更新。
准备妥当后,在同一终端设置真实旧安装路径并执行;有自定义静态配置需要修改时,在 stop 与 update 之间完成:
OLD_APP='/现有应用根目录'
NEW_APP="$UNPACK_DIR/arena-0.2.2-linux-code-only"
"$OLD_APP/deploy/stop.sh" &&
"$NEW_APP/deploy/update.sh" --target "$OLD_APP" &&
"$OLD_APP/deploy/status.sh"更新器同步应用和依赖、检查镜像、启动 Server/Dispatcher 并检查状态;保留运行数据和原配置,不自动替换历史容器或恢复任务。自定义监听参数需保留原参数,持久配置仍在原安装的 runtime/arena.env。完成后浏览器强制刷新,再自行验收真实上传。失败时按原错误处理,修复后重跑新包完整 update 命令,不直接 start 跳过准备。
Git 源码安装不得用部署 ZIP 覆盖 .git 工作区;新安装及其他升级情形见本版完整指南。v0.2.1 原标签、附件、校验值和镜像不被覆盖。
验证范围
- 本修复的上传器组件文件定向验证 13 项通过;正式前端类型检查与构建完成,本机实际服务已加载修复静态入口。
- 本次发布整理通过
uv lock --check --offline;部署 ZIP 从上述固定提交的干净源码生成,打包器的秘密排除和静态引用校验开启,543 个清单文件的大小与 SHA256、无额外文件、版本和部署脚本权限校验通过,verify_deployment.py --manifest-only通过。 - 未运行全套测试、lint、E2E 或新的 500 MB 全链路实验;未重新构建或下载 Worker 工具层。
- 未向正式实例上传测试文件、创建批次/项目、启动研究、调用模型或访问被测目标。替身验证和本机加载不等于用户局域网入口真实上传验收,也不表示其他机器已经完成升级。
Arena 0.2.1 · 2026-11-05
Arena 0.2.1 · 2026-11-05
本次交付固定源码 a0f22cec57b3f53f5981966db03b1b223a89bd94,包含 code-only Linux 部署 ZIP 与配套的研究、流量采集镜像。镜像仅支持本轮实际构建和核实的 linux/amd64,不承诺 arm64。
主要变化
- 重组全站工作区与导航,提供独立 ChatBot 入口;会话、消息和材料独立归属,项目为可选上下文。
- 执行暂停、继续和结束区分业务请求与物理执行回执;报告可以独立生成,结束研究不自动生成报告。
- 资料库支持编辑当前文件和按选择路径冻结资料;研究目录支持只读浏览、搜索、预览与下载。
- 漏洞人工处置历史、HTTP 流量分页与关联筛选,以及模型响应级 Token、缓存 Token 和冻结价格估算。
- 自有镜像收敛为
arena-worker与arena-traffic-gateway。executor 已并入研究镜像,但执行容器、凭据和生命周期保持独立;PostgreSQL 继续使用官方镜像。 - 包更新器带缓存准备和检查两类默认本地镜像,并在覆盖前拒绝 Git 工作区;不自动拉取或切换自定义 registry 引用。
完整变化与兼容性说明:CHANGELOG。
部署包
请下载本 Release 附件中的 arena-0.2.1-git-a0f22cec57b3-linux-code-only.zip,不要用 GitHub 自动生成的 Source code ZIP 代替部署包。
- 大小:19,112,982 bytes。
- SHA256:
818af4c553a8483fd6fd9c295546e4f03b1519ef55ea52a9372e1f8f70adc2c8。 - 附带同名
.zip.sha256,可用sha256sum -c arena-0.2.1-git-a0f22cec57b3-linux-code-only.zip.sha256校验。 - 包内顶层为
arena-0.2.1-linux-code-only/;包含正式前端、应用和部署源码,不包含业务数据、私有运行配置、已安装依赖或 Docker 镜像。
配套镜像
两个公开镜像均已上传,并通过无登录凭据的远端 manifest/config 读取核验;config digest、RootFS diff IDs、源码 revision 与本地已检查镜像一致。仅支持 linux/amd64,未设置 latest。
| 镜像 | 版本标签 | 远端 manifest digest |
|---|---|---|
| yong29/arena-worker | git-a0f22cec57b3 |
sha256:b4babe19a719acf73733b3d6e093c490a2a741b95562682fd16b5c227df57d06 |
| yong29/arena-traffic-gateway | git-a0f22cec57b3 |
sha256:a2734dde304c5bdc7a3c22e867e21bbe22a4860fc112c54f0feab128b202da8a |
建议按不可变 digest 拉取并配置:
docker pull yong29/arena-worker@sha256:b4babe19a719acf73733b3d6e093c490a2a741b95562682fd16b5c227df57d06
docker pull yong29/arena-traffic-gateway@sha256:a2734dde304c5bdc7a3c22e867e21bbe22a4860fc112c54f0feab128b202da8a上述命令只拉取镜像,不会自动修改安装配置、部署应用或替换已有容器。
安装与升级边界
安装和配置步骤见本版本部署指南。
- Server、Dispatcher、前端与运行镜像须配套。非 Git 部署安装须在旧目录之外解压新包,使用新包的
deploy/update.sh --target /原安装目录;不要用 ZIP 覆盖 Git 工作区。 - 默认 local 模式仍会带缓存构建两镜像;选择 registry 模式时须先拉取两个精确发布引用,并显式配置实际生效的研究、网关及自定义 profiles/images 引用。当前没有远程一键获取最新版的更新器。
- PostgreSQL 新增 v76–v83 迁移。旧会话文件和 SDK session 不保证自动完成迁移,可能遇到
conversation_file_migration_required或session_verification_required;有相关历史数据的安装不在完整自动升级覆盖范围。 - v82 首次初始化前必须正确加载原知识目录,保留原资料正文及其外置路径。升级前应备份匹配的数据库、资料、Artifact、会话材料、运行配置、完整 keyring/token 和外置目录;程序备份不等于数据库或整套环境回滚。
- 更早的报告、Worker 和模板迁移阻断仍有效,不能通过删除业务数据、修改历史 checksum 或猜测材料归属绕过。
- 已知问题:ChatBot 附件限额提示可能高于实际独立上传限制(默认 10 MiB/100 MiB/200 件),不能据项目资源的 500 MB 上限推断聊天附件支持同样大小。
- 拉取新镜像不会替换已有容器,也不会自动恢复或重跑任务。本次发布不升级当前实例或其他机器。
验证范围
发布产物沿用上一构建会话的正式前端构建、runner 编译、部署定向验证及两个镜像的离线自检。本次上传会话重新核对镜像 ID、架构和源码 revision,并验证 ZIP 的整体 SHA256、全部 511 个清单文件的大小和 SHA256,确认无额外文件。未重新运行全量测试,也未调用模型、迁移业务数据库或验证任意旧安装无损升级。