变更日志
Activepieces 所有重要变更的记录
工作流现在可以在执行过程中暂停并在之后恢复,而不会丢失任何状态。执行上下文会完全持久化,因此重启、部署或长时间等待不会影响进行中的运行。
内置两种暂停类型:
- Webhook 等待点 —— 工作流暂停,在特定回调 URL 被调用时立即恢复。该 URL 对每次运行唯一,携带调用者的请求体、请求头和查询参数传递给下一步骤,并支持异步和同步(响应完成后返回)两种模式。
- 延迟等待点 —— 工作流暂停直到预定的时间戳,然后自动恢复,在等待期间释放工作线程容量。
两种类型都能经受工作线程重启。如果恢复信号在运行完成写出暂停状态之前到达,会被缓冲并自动重放 —— 不会丢失任何回调。
Activepieces 现在内置了一个网络代理,保护您的自动化免受网络攻击。
- 一键开启 —— 设置
AP_NETWORK_MODE=STRICT即可激活保护。目前是选择加入,但在即将发布的版本中将成为选择退出(默认开启)。 - 受信任内部服务允许列表 —— 如果某个工作流需要合法访问内部 API 或数据库,将其地址(或整个子网如
10.10.0.0/24)添加到AP_SSRF_ALLOW_LIST。 - 与您的企业代理兼容 —— 如果您已使用
HTTP_PROXY/HTTPS_PROXY,Activepieces 会自动遵循它们。
请参阅网络安全架构页面了解完整说明。
项目现在可以通过并发池共享单个并发限制,使平台运营商能够更精细地控制工作线程容量分配。
-
按项目并发 —— 直接在项目设置 > 常规中设置最大并发任务数。
-
共享池 —— 多个项目可以分组到同一个池中,共享一个限制,而不是每个项目都有自己的限制。
-
嵌入支持 —— 通过 JWT 配置用户时,包含
concurrencyPoolKey和concurrencyPoolLimit声明以自动创建或复用池。请参阅配置用户。
在管理并发指南中了解更多。
对工作线程架构、测试和恢复能力进行了重大投入,以确保更可靠的工作流执行。
工作线程架构
- 完整的工作线程重写(worker v2),专注于稳定性和可靠性
- 新的沙箱进程模型,改进了错误处理和资源清理
测试与质量 —— 我们添加了哪些内容以及为什么重要
竞态条件测试:
- 队列分发器(12 个测试)—— 测试任务出队但所有等待者已超时时的孤立任务处理,防止在出队过程中关闭时产生双循环,验证单出队并发控制,测试等待者超时和重试行为
- 子流程恢复(8 个测试)—— 测试引擎将暂停元数据写入 Redis 后再持久化到数据库的竞态条件,验证数据库过期时的 Redis 回退,使用 spy mock 模拟并发读/写,覆盖带有并发 Redis 更新的同步端点
- 速率限制器(5 个以上测试)—— 测试并发任务槽分配,并发调度时的幂等性,不同项目间的隔离性确保互不干扰
- 并发工作流执行 —— 端到端测试,创建 5 个并发工作流运行,验证不会出现卡死或死锁
- 内存锁 —— 验证互斥性(并发对同一键进行两次锁获取调用时串行化)
工作线程单元测试:
- 工作线程轮询 —— 测试任务执行生命周期,对无效任务数据的恢复能力,空轮询,未知任务类型,混合有效/无效序列
- 沙箱执行 —— 测试沙箱创建、启动、RPC 通信、stdout/stderr 累积、超时或内存问题时的资源清理、进程清理和监听器移除
- 进程分叉 —— 测试 execArgv 配置(内存限制、Node 选项),环境变量传播
- 缓存逻辑 —— 测试缓存命中/未命中、磁盘持久化、内存缓存、缓存失效谓词
- 配置 —— 测试不同容器类型的配置加载(WORKER_AND_APP vs WORKER)
端到端验证:
- 烟雾测试 在 GitHub Actions 中 —— 验证健康检查和 webhook 工作流在 AMD64 和 ARM64 上的执行
- 基准测试 在 GitHub Actions 中 —— 跨 6 种应用/工作线程配置进行负载测试,测量吞吐量、平均延迟、P50、P99(查看结果)
恢复能力
- 工作线程优雅处理无效任务数据、空轮询和未知任务类型
- 沙箱在超时或内存问题时正确清理进程、监听器和资源
- 修复了子流程恢复和用户交互任务的竞态条件
对所有平台管理和项目页面进行了全面的视觉刷新,界面更简洁、更一致。
平台管理
- 项目 —— 筛选芯片、内联编辑图标,更简洁的侧边栏(无品牌标识)
- 用户 —— 新增角色和最后活跃列,专用邀请按钮,以及每行操作菜单
- 项目角色 —— 从表格式切换到卡片式布局,带权限查看
- 审计日志 —— 完全启用,支持操作、执行人、项目和日期范围筛选,以及带有完整 JSON payload 查看器的详情侧滑面板
- 密钥管理器 —— 卡片式布局,支持 Hashicorp Vault、AWS Secrets Manager、Cyberark Conjur 和 1Password
- 品牌 —— 刷新页面布局
项目页面
- 自动化 —— 从”工作流”重命名,新增类型和所有者筛选,搜索,步骤图标详情,状态切换和收藏
- 连接 —— Pieces 和所有者筛选,工作流使用计数,内联编辑和刷新操作
- 运行记录 —— 更新标签导航和一致的样式
常规改进
- 统一了自动化、运行记录和连接之间的标签导航
- 在项目侧边栏底部添加了平台管理链接
- 详情视图使用侧滑面板替代页面导航
- 全局使用上一条/下一条分页样式
- 侧边栏标题替换为”返回应用”链接
所有更改现在在进入生产环境前都会经过专用的预发布环境。每次更新在推广前至少经过 16 小时的内部验证,确保更高的可靠性和更少的用户中断。
- 预发布优先部署 —— 每次更改在上线前都会在生产级环境中测试
- 每日生产推广 —— 只有经过验证的稳定版本才会被推广到生产环境
- 每周自托管发布 —— 为自托管客户每周发布可预测的稳定版本
- 紧急热修复路径 —— 在需要时关键修复仍可快速通道到生产环境
对于先前的版本,请参阅 GitHub 发布页面。