Skip to content

Releases: skymaze/Fireworks

Fireworks v0.7.0

Choose a tag to compare

@github-actions github-actions released this 29 Aug 17:53

Fireworks v0.7.0

镜像与节点管理大幅补强:节点支持多选/全选与批量操作,镜像管理暴露真实版本(registry digest)并能在同一 tag 指向新构建时自动识别重拉;任务/模型/镜像列表的变更操作补齐行级 loading 与防重入,双击不再造成重复误操作。

变更

  • 节点批量化(新增):节点列表支持多选/全选(表头三态勾选),可对选中节点批量「重装/升级 Agent」或「批量初始优化」——并行执行、逐节点返回结果互不影响;批量优化自动跳过已优化节点,结果以弹窗逐项展示成功/失败/跳过原因。
  • 镜像真实版本(新增):镜像传输任务与控制平面归档均显示 registry digest(真实构建标识,区别于内部归档指纹),hover 可看完整值;每个本地归档新增「检查更新」,一键比对 registry 当前 digest 并提示「已是最新 / 有新构建 / 本地未记录」。
  • 同 tag 新构建自动更新:同一 tag 在 registry 上被重新构建(tag 漂移)后,重新拉取/分发会自动识别并强制重拉(不再需要手动「重新拉取」),各节点随之加载新版本;image_transfers 新增 registry_digest 列记录真实版本,旧归档首次分发自动校准重拉一次。
  • 列表操作防误触(修复):任务/模型/镜像列表的删除、暂停/继续、取消、重试等操作补齐行级 loading 与防重入守卫(同一行同时只允许一个变更操作);修复任务列表删除失败无提示、以及删除请求可被连点重复发起的问题。任务详情操作按钮补防重入兜底。

升级

  • 控制面升级到 0.7.0:含一条幂等数据迁移(启动时自动为 image_transfers 增加 registry_digest 列),节点 Agent 无需重部署。
  • 升级后首次分发旧归档镜像时,因无法确认其内容是否为当前 tag 版本,会自动重新拉取一次并补齐版本记录(仅一次)。

完整变更见 CHANGELOG

Fireworks v0.6.1

Choose a tag to compare

@github-actions github-actions released this 29 Aug 02:53

Fireworks v0.6.1

健康检查改为 Portainer 式只读语义:健康判定回归 Docker 自身 healthcheck,模型加载较久的任务不再被控制面固定超时误判为 error,容器 transient unhealthy 也不再被打成红错;恢复由 Docker 自身 healthcheck 完成。

变更

  • 移除固定超时判死:发布/启动/重启后的健康检查不再用 900s 定时「判超时」——模型加载期间 Docker 仍在 starting 宽限期,控制面只按需补读健康快照(默认 60s 采样窗),此后由 30s 监控循环持续刷新;长加载任务不再被误判为「健康检查超时」error。
  • unhealthy 不再置任务 error:容器 unhealthy 只以健康徽标展示(异常),任务保持 running;任务生命周期只由容器状态决定(全部容器 exited -> stopped)。
  • 配置项 TASK_HEALTH_TIMEOUT 更名为 TASK_HEALTH_STEADY_WINDOW(仅作首次读数采样窗,不再是终态判据)。

升级

  • 控制面升级到 0.6.1无数据库迁移,节点 Agent 无需重部署。
  • 若模型冷启动时长超过配方声明的 start_period,建议同步调大该配方的 start_period;否则 Docker 在宽限期后仍会把容器健康判为「异常」徽标(任务状态不受影响,随服务就绪自动转回健康)。

完整变更见 CHANGELOG

Fireworks v0.6.0

Choose a tag to compare

@github-actions github-actions released this 29 Aug 01:07

Fireworks v0.6.0

配方商店交互升级:分支切换上移到工具栏下拉框,并修复同步状态串源、厂商筛选无法改回「全部厂商」两个问题。

变更

  • 工具栏分支快捷切换:源选择器旁新增分支下拉框,选中即切换分支并重新同步目录;分支列表按源在会话内缓存。「源设置」弹窗精简为只读的 URL / 分支信息与删除源。
  • 修复同步状态串源:同步 loading 绑定到正在同步的源本身,切换配方源时不会把转圈状态带到下一个源。
  • 修复厂商筛选:选中厂商后再也打不开下拉框、无法改回「全部厂商」的问题(reka-ui Combobox 空字符串 value 渲染崩溃),现已修复。

升级

  • 控制面与前端升级到 0.6.0无数据库迁移,节点 Agent 无需重部署。
  • 分支切换沿用原有语义:切换后重新同步目录,已安装的本地配方不受影响。

完整变更见 CHANGELOG

Fireworks v0.5.3

Choose a tag to compare

@github-actions github-actions released this 28 Aug 05:31

Fireworks v0.5.3

任务名即 docker compose 项目名;本次把任务名校验对齐节点 Docker Compose v5 的硬性限制,并让发布失败时能看到真实原因。

变更

  • 创建任务时任务名只允许小写字母、数字及 -/_^[a-z0-9][a-z0-9_-]*$):不能含点 .、大写或空格,非法名在发布前即返回明确的 400 task_name_invalid
  • Agent _validate_project 同步收紧并返回带说明的 400(直接调用 Agent API 时同样是纵深防御)
  • 发布失败时 task.error 透出 agent 返回的真实原因(如 docker compose up 失败: invalid project name ...),不再只显示 502 Bad Gateway
  • 前端发布表单增加任务名提示与输入 pattern;更新 task_name_* / task_name_invalid i18n 文案

背景

v0.5.2 发布带点任务名(如 glm5.3-flash-nv,来自模型版本 5.3)时,节点 Docker Compose v5 拒绝该项目名,compose up 在任何拉镜像/启动之前失败 → 502,且用户看不到真实原因。

升级

  • 控制面升级到 0.5.3无数据库迁移
  • 节点 Agent 建议重部署(/api/nodes/{id}/deploy-agent)以获得一致的预校验(控制面已拦截时 Agent 侧为纵深防御)。
  • 旧任务不受影响;以旧任务名重新发布(重建任务)时请遵守新命名规则。

完整变更见 CHANGELOG

Fireworks v0.5.2

Choose a tag to compare

@github-actions github-actions released this 27 Aug 08:09

Fireworks v0.5.2

健康检查语义收敛:健康只以 head 为准、属任务层面;节点仅保留容器状态。

变更

  • 健康判定仅取 head 容器(worker 无健康端点,不参与;worker 退出仍由「容器全部 exited → stopped」兜底)
  • 新增任务层面 tasks.health 列(幂等迁移),监控/健康检查按 head 聚合写入:健康 / 异常 / 检查中 / 未配置
  • 任务详情「健康状态」展示在信息卡;容器表恢复仅状态列
  • 移除节点级 task_nodes.container_health 列(启动时幂等迁移自动清理)

升级

  • 控制面升级到 0.5.2;启动自动迁移(加 tasks.health、删 task_nodes.container_health,幂等且保留数据)
  • 节点 Agent 建议随升(旧 Agent 健康显示「未配置」,仍兼容)
  • 无需手工迁移;升级前建议备份 fireworks-db

完整变更见 CHANGELOG

Fireworks v0.5.1

Choose a tag to compare

@github-actions github-actions released this 27 Aug 05:45

Fireworks v0.5.1

前端补丁:修复任务详情「健康」列 i18n key 显示原文、停止任务确认框不再显示「删除模型」选项。

变更

  • 健康列 5 个 i18n key 移入 tasks 对象(此前误插 clusters,导致显示 tasks.col_health 等原文)
  • 停止任务不再提供「同时删除节点模型」选项(仅删除任务可勾选)

升级

  • 控制面与前端升级到 0.5.1;纯前端修复,无后端/数据变更,无需迁移;节点 Agent 无需重部署
  • 升级前建议备份 fireworks-db

完整变更见 CHANGELOG

Fireworks v0.5.0

Choose a tag to compare

@github-actions github-actions released this 27 Aug 04:33

Fireworks v0.5.0

任务健康检查改为以 docker compose 声明 healthcheck 为准,不再写死 VLLM_PORT + /v1/models(配方换框架/端口不再误判)。

变更

  • 配方在 compose 声明 healthcheck: 即生效:容器 healthy → 任务运行中;unhealthy → 任务错误;健康类错误可随容器转 healthy 自动恢复
  • 未声明 healthcheck 时健康状态显示「未配置」,不做任何判定
  • 任务详情容器表新增「健康」列(健康/异常/检查中/未配置)
  • Agent compose_ps 暴露容器 Health;移除 vLLM 探测兜底代码

升级

  • 控制面升级到 0.5.0;启动时自动迁移 task_nodes.container_health 列(幂等)
  • 节点 Agent 建议随升(旧 Agent 健康显示「未配置」,仍兼容)
  • 无任务语义破坏性变化,无需手工迁移;升级前建议备份 fireworks-db

完整变更见 CHANGELOG

Fireworks v0.4.0

Choose a tag to compare

@github-actions github-actions released this 27 Aug 03:01

Fireworks v0.4.0

任务生命周期优化:意外退出 / 手动停止的任务可直接「启动」,运行中任务可直接「重启」——均复用已有容器、不重建,无需删除后重新发布。

变更

  • 停止不再删除容器:由 compose down 改为 compose stop(保留容器,GPU 释放),停止后一键「启动」复用
  • 启动(stopped/error):compose start 复用容器;容器已被清理时自动回退 compose up 重建
  • 重启(running):compose restart 进程级重启
  • 启动/重启后自动补发 vLLM 健康检查;详情页/列表页新增「启动/重启」按钮(中英文)

Agent 变更

Agent 新增 POST /api/compose/actionstop | start | restart)端点。

升级

  • 控制平面与节点 Agent 均需升级到 0.4.0,升级控制平面后请重新部署各节点 Agent(旧 Agent 无 /api/compose/action)。0.4.0 大版本号即「需重部署 Agent」标识(同 v0.2.0 机制)。
  • 无数据格式与任务语义破坏性变化,无需迁移;升级前建议备份 fireworks-db 卷。

提示

「停止」后容器保留(exited,占少量磁盘);彻底释放磁盘请用「删除」。

完整变更见 CHANGELOG

Fireworks v0.3.3

Choose a tag to compare

@github-actions github-actions released this 27 Aug 00:58

Fireworks v0.3.3

Fireworks v0.3.3 是 patch 版本:代码审查驱动的控制面安全加固与健壮性修复。不改变 API 响应结构、任务语义或数据格式;SQLite 无 schema 变化,升级无需迁移;节点 Agent 无功能改动,无需重部署

本版之前存在的隐患主要在几个无人值守路径上:镜像拉取鉴权失败可无限重试并卡死任务、下载线程被遗弃后任务永久 downloading、并发任务操作竞态可制造「无容器的 running」、推理统计在异常采样点下出现百万级虚假峰值,以及若干输入校验缺口(模型 revision、节点 SSH 用户名/IP、head 共享路径)。

修复亮点

  • 镜像拉取 401 死循环:registry 持续鉴权失败时最多重试 5 次后明确失败,不再无限循环卡死 pulling 并阻塞该镜像后续传输。
  • 下载重启看门狗:下载设置变更后旧线程未及时退出时,不再遗留「downloading 且无活动线程」的卡死任务——旧线程退出后自动按新设置断点续传重启。
  • 任务状态机加固:同一任务的暂停/继续/停止/删除串行化并校验合法转移;对已停止任务「继续」返回 409,杜绝「无容器的 running」;部署期间用户停止/暂停不再被覆盖;容器操作全部失败时任务置 error 而非虚报成功。
  • 推理统计防御:跳过时间戳相同/倒流的无效累计快照,并对极小间隔钳制速率分母,消除百万级虚假 tok/s 峰值。
  • 分片残留修复:中断下载的分片(*.part.N)不再被计入缓存大小或当作完整模型文件发送到节点。
  • SSH 总超时:远端命令进程存活但静默时按设置的超时终止并报错,不再无限占用线程。
  • 删除与孤儿线程:删除进行中的下载/传输记录前先取消后台调度;删除仍被任务占用的模型缓存返回 409(MODEL_BUSY)。
  • 输入校验:模型 revision 拒绝路径越级;节点 SSH 用户名/IP 拒绝 shell 元字符(卸载脚本另有纵深防御);head 返回的高速共享路径/令牌拒绝 userinfo 注入。
  • 任务日志 tail 钳制在 1–5000 行。

升级

  • 控制平面升级到 0.3.3;节点 Agent 仅版本号同步、无功能改动,无需重部署。
  • 无数据格式与任务语义变化,无需额外迁移。
  • 需注意的新行为(均为防御性拒绝,正常流程不变):对已 stopped 任务执行「继续」返回 409;删除 downloading/sending/syncing 的任务记录会先自动取消后台调度;删除仍被进行中任务占用的模型缓存返回 409(请先取消任务)。
  • 升级前建议备份 fireworks-db 卷。

部署

# 公网源(GitHub GHCR)
FW_IMAGE_TAG=0.3.3 docker compose -f docker-compose.prod.yml up -d --pull always

# 国内源(阿里云 ACR)
FW_IMAGE_TAG=0.3.3 docker compose -f docker-compose.prod.cn.yml up -d --pull always

仅本机或可信内网的纯 HTTP 部署加 COOKIE_SECURE=0。镜像标签 v0.3.3 由发布 CI 构建并推送 GHCR 与阿里云 ACR。

完整变更见 CHANGELOG

Fireworks v0.3.2

Choose a tag to compare

@github-actions github-actions released this 19 Aug 09:41

Fireworks v0.3.2

Fireworks v0.3.2 是 patch 版本:修复发布任务页「模型缓存状态」卡片不显示。平台控制平面的模型保障在后端 v0.3.1 已改为按 picker=="model" 动态识别模型变量,但前端发布页仍按 DSPARK_MODEL 键名硬编码解析模型仓库,导致模型变量使用其它键名的配方(DeepSeek b12x SPARK_MODEL、GLM GLM52_MODEL_PATH、Qwen SGLANG_MODEL)在发布页看不到节点模型缓存状态,也无法使用页内「发送模型」与发布前模型就绪校验/解锁。

修复亮点

  • 发布页模型识别与后端对齐:按配方 picker=="model" 的变量动态解析模型仓库,任意键名均能显示「模型缓存状态」卡片,并恢复「模型未就绪时页面内发起传输 → 就绪后解锁发布」的完整链路。
  • 镜像侧(picker=="image")本就为动态取键,行为不受影响;前端 typecheck 通过、unit tests 4/4 通过。

升级

  • 控制平面升级到 0.3.2;节点 Agent 仅版本号同步、无功能改动,无需重部署。
  • 无数据格式与任务语义变化,无需额外迁移。
  • 升级前建议备份 fireworks-db 卷。

部署

# 公网源(GitHub GHCR)
FW_IMAGE_TAG=0.3.2 docker compose -f docker-compose.prod.yml up -d --pull always

# 国内源(阿里云 ACR)
FW_IMAGE_TAG=0.3.2 docker compose -f docker-compose.prod.cn.yml up -d --pull always

仅本机或可信内网的纯 HTTP 部署加 COOKIE_SECURE=0。镜像标签 v0.3.2 由发布 CI 构建并推送 GHCR 与阿里云 ACR。

完整变更见 CHANGELOG