Skip to content

Releases: iskycc/auto-forge

AutoForge v1.21.19

Choose a tag to compare

@iskycc iskycc released this 04 Nov 12:37

Added

  • 新增可关闭的 AI 初步分析:后台配置 OpenAI 兼容端点、加密 API Key、模型与上下文、共享并发/RPM/TPM、证据预算和重试;执行详情、失败/超时尝试可发起与查看初析,任务策略支持结束后自动触发。Lite 使用独立线程,Full 多 Worker 使用主库租约、NATS 唤醒、Redis 可重建进度与 MinIO 证据;资源繁忙与限流持久退避,原执行及人工结论不变。
  • AI 使用受限 function tools,仅可读取分配证据和提交本次 AI 结论草稿;结论按尝试隔离,权限、引用及取消后发布均受校验。正常结果与失败分析表格支持导出已有部分结论,未分析行置空;AI 列保留温和分区表头和日志列布局。
  • 新增 PostgreSQL 0093/SQLite 0094 AI 作业、成员、分组、结论及配额表,外键访问配套索引;默认关闭,旧任务不自动启用。升级需备份主库和对象存储,Full Worker 随平台更新;当前不包含截图理解、历史检索、产物解析和 AI 证据自动到期清理,详见 AI 初析使用说明。

Changed

  • DDT 三方校验脚本默认忽略字段缺失与空字符串、null、纯空白之间的差异,保留“已忽略”记录和计数;数字 0、布尔 false 及非空文本仍完整比较,严格模式可通过 ignore_empty=False 恢复。
  • DDT 三方校验脚本默认在 CSV 中直接显示差异双方的类型、原值和原因,并生成可在编辑器查看的逐字段 Diff;显式关闭原值显示时保留摘要模式。比较仍使用递归字段对照,忽略 Map 键顺序,保留数组顺序、字段类型及原始字符串差异。

Compatibility

  • 新增 PostgreSQL 0093_ai_analysis.sql/SQLite 0094_ai_analysis.sql。升级前备份主库和对象存储,全部 Web 与 Worker 使用同一版本;新增索引需在维护窗口创建。AI 默认关闭,已有任务不自动启用;配置入口为“平台设置 → 模型配置”,项目需单独授予 AI 读取/创建及执行证据权限。
  • 无新增生产依赖、Runner 协议或执行超时变更。真实内网模型尚未接入验证;AI 衍生作业不随版本复制,自动到期清理、产物解析、截图理解及历史检索尚未提供,详见 AI 使用说明。

Verification

  • 155 项定向契约、应用、双数据库及现有任务/调度/导出回归通过;真实 PostgreSQL、NATS、Redis、MinIO 下两个 AI Worker 完成四成员分析和组内汇总,共享模型并发峰值为 2,原执行状态保持不变。
  • Lite 生产包 Playwright 闭环通过,覆盖 429 重试、响应断开后的幂等重试、批次/单例初析、结论读取、导出和自动触发。实际查看 1024×768、1536×960 共十张截图,分析弹窗覆盖深浅色,未发现新增变形或页面溢出。
  • Web/Full Worker 生产构建、相关类型、格式、Lint、许可证与 E2E 矩阵检查通过。未重跑完整 E2E、真实 Runner 和断网验收,合成模型不能代替真实模型兼容性及根因准确性验收。
  • 发布前补充通过 38 项 Python DDT 校验、2 项接口集成及 38 项后端打包/前端资源/部署包/发布工作流检查,保留空值忽略审计与普通字段严格比较。
  • 按用户要求采用最快发布路径,仅运行 Release;跳过标准 CI、源码发布检查、Full 分布式与发布后完整验收,保留原生双架构构建、镜像启动、内置资源、SBOM、签名及完整资产校验。

AutoForge v1.21.18

Choose a tag to compare

@iskycc iskycc released this 04 Nov 08:02

本版本修复大批次执行详情持续等待统计、分页加载缓慢及多 worker 重复计算,并加固 Lite/Full 的快照恢复和历史清理。

Fixed

  • PostgreSQL 执行明细在排序前物化紧凑分页键,总结轮次按原规则选择最近通过/最后尝试,避免自然排序与总数窗口触发重复扫描;无 attempt 条件的名称/自然排序不再关联整张尝试记录,仍保留原查询期限和结果口径。
  • 全部轮次分页仅补齐尚无尝试的初始/当前轮次资格,减少全历史重复合并;Lite 显式物化紧凑轮次集合,避免已有历史的数据库分页长时间计算,保留未执行项和每轮最后尝试。
  • 分析事实用反关联筛选未发布记录、先取键后读报告,使用事务级跨 worker 互斥与参数化批量发布,避免重复扫描与错误候选估计;保护已选尝试不被历史清理抢先删除,失败整批回滚,可重试且不重复计数。
  • Lite/Full 的同批次统计与分页快照共享一个有效生成租约,避免多个 Web/worker 同时计算大批次而争抢数据库资源;不同批次继续独立生成,不改变用例执行并发。
  • 修复 JSON 读取等待失效快照、普通后台又因前台读取而退让的等待循环;同步代次查询使用共享白名单进入单条页面等待车道,周期刷新与内存保护继续退让。
  • 执行进度 API 与详情页共用同一版统计查询,避免首次读取进度时重复生成旧版缓存或等待错误代次,保留原有响应字段和权限。
  • 为分析事实的批次、执行记录和节点外键增加索引,避免级联历史清理反复全表扫描。新增 PostgreSQL 0092/SQLite 0093 加法迁移,需在备份及停止全部写入节点的维护窗口升级;回滚可保留索引。
  • 数据库部署测试兼容 Compose JSON 省略显式 false 值的版本差异;Node Exporter 的默认启动已验证实际采集到同一 PostgreSQL 数据卷的容量。
  • 数据库部署模板移除 Node Exporter 的可选 profile,普通 Compose 启动即包含数据卷监控;同步补齐离线镜像导入、旧模板单独补启及平台监控配置说明;B 节点采集器复用公共运行配置,统一日志轮转和停止宽限。

Security

  • 将 MinIO SDK 的传递依赖 decode-uri-component 固定至 0.5.1,修复 GHSA-qr28-fpjm-wq7f 的异常编码耗时问题;为 query-string 7 的 CommonJS 调用增加 ESM 默认导出兼容补丁,随 lockfile 和许可证清单离线交付。

Compatibility

  • 新增 PostgreSQL 0092_analytics_fact_foreign_keys.sql/SQLite 0093_analytics_fact_foreign_keys.sql,仅为分析事实增加三个外键查找索引。升级前备份数据库,在停止 Web 和全部 worker 的维护窗口执行;索引创建需要额外空间和时间,应用回滚可保留索引。
  • 全部 Web 和 worker 使用同一版本;Runner 协议、任务配置与执行结果口径保持不变。旧快照若已耗尽失败次数,可点击“重新生成统计”恢复,不需要重跑用例。

Verification

  • 130 项定向测试、37 项迁移回归、33 项准入/缓存版本/真实线程检查(部分重叠)及 8 项部署检查通过;Web/worker 生产构建、相关类型、格式、Lint、许可证和 E2E 矩阵检查通过。
  • 13,001 条普通用例、十轮共 130,010 条尝试的生产构建 Playwright 回归通过:Full 使用两个独立 worker,Lite 连续运行两次;验证冷进度计数、轮次/明细、失败与长时间等待后的恢复,以及全部已请求快照最终同步。已查看 1024×768、1536×960 的浅色/深色截图,无新增错位或溢出。
  • 单核 Full 受限夹具仍触发过一次两秒分页查询保护,随后自动重试恢复;不承诺任意负载下没有超时,未做真实 Java 十轮批跑或用户三主机压测。
  • 按用户要求采用最快发布路径,仅运行 Release;跳过标准 CI、源码发布检查、Full 分布式与发布后完整验收,保留原生双架构构建、镜像启动、内置资源、SBOM、签名及完整资产校验。

AutoForge v1.21.17

Choose a tag to compare

@github-actions github-actions released this 04 Nov 01:58

修复 Full 大批次执行结束后轮次统计持续准备、无法查看详情的问题,并统一登录/注册后的来源页面返回。

  • 轮次统计先分别汇总再合并,避免 PostgreSQL 查询计划产生海量中间比较;精简最新尝试与分页查询的物化字段,保留查询期限和执行结果口径。
  • 统计失败或首次等待超过两分钟时,可在执行详情点击“重新生成统计”,只重建统计,不重新执行用例。
  • 登录、注册、切换入口及强制改密后保留原页面路径、参数和锚点,防止外部跳转或认证页循环。

升级说明:Full 请同步升级 Web 和全部独立 worker。无需新增数据库迁移或修改配置。Lite 使用相同页面与恢复入口。

已验证:70 项 SQLite/PostgreSQL 回归检查、17 项 UI 规范检查、Web/worker 生产构建通过;Lite 与 Full(两个独立 worker)均通过 13,001 用例 × 10 轮的数据页面恢复测试。实际检查了 1024/1536 宽度及深色截图,新增入口无溢出变形。此前登录/注册返回功能的单元与浏览器验证一并保留。

本次按快速路径发布,只运行 Release 打包流水线;完整标准发布验收未运行。离线包包含 amd64/arm64 后端镜像、部署配置、内置 Agent/Jenkins 插件/日志查看器,以及 SBOM、校验和与签名。

AutoForge v1.21.16

Choose a tag to compare

@github-actions github-actions released this 02 Nov 13:03

Fixed

  • 用例分析“取消认领”弹框移除不匹配的网格行布局,长用例名在正文内换行;正文按需滚动,底部操作栏保持可见,避免按钮溢出或被裁切。取消原因必填、返回、服务端失败保留输入及成功释放流程保持原有行为。

Compatibility

  • Lite/Full 复用同一弹框,无新增数据库迁移、配置、生产依赖或离线资产;认领权限、释放事务与 Runner 协议保持不变。

Verification

  • 新增回归先在旧生产构建复现 1902px 内部横向溢出,修复后两项 Playwright 场景通过,覆盖普通/长用例名、空白原因、返回、服务端拒绝后保留输入及真实释放成功。
  • Web 生产构建、17 项 UI 规范测试、相关格式/Lint/类型检查通过;实际查看 1024×768、1536×960 与 1024×600 浅色/深色截图,底部按钮完整可见,无横向溢出或裁切。
  • 按用户要求采用最快发布路径,仅运行 Release;跳过标准 CI、源码发布检查、Full 分布式与发布后完整验收,保留原生双架构构建、镜像启动、内置资源、SBOM、签名及完整资产校验。

AutoForge v1.21.15

Choose a tag to compare

@github-actions github-actions released this 02 Nov 12:12

Added

  • 本地账号自助注册页 /register 与登录框入口:注册后直接登录,无需再次修改密码,自动获得默认项目“执行操作员”权限;从公开页面进入后返回原页面,保留站内查询与锚点。
  • LDAP 开启时自动关闭注册入口、页面表单及创建 API,关闭 LDAP 后恢复。Lite/Full 在同一事务内保存账号、授权、会话和审计;补充重名、限流及目录切换竞争保护,不新增注册相关数据库迁移。

Changed

  • PostgreSQL 数据卷余量改用固定版本 Node Exporter;Compose 健康检查恢复为 pg_isready,移除 df/awk 采样和 pg_read_file 读取,主库与各日志服务器可分别配置、检查监控连接。
  • 监控容器只读挂载与数据库相同的数据目录,仅启用 filesystem collector;无需 Prometheus/Grafana、宿主机根目录或特权容器。指标请求限制为 3 秒、1 MiB 和每 Web 最多 4 个并发,监控失败不影响执行。

Fixed

  • 顶栏配置搜索弹窗在大屏下只由结果列表滚动,搜索框保持可见,避免结果区域与弹窗正文同时出现滚动条;保留搜索跳转、键盘操作和关闭后焦点恢复。

Compatibility

  • Full 新增主库迁移 0091_storage_monitoring.sql 保存共享监控配置;原采样 JSON 不再读取。旧部署启动 Node Exporter 后在页面配置监控目标;Lite 不要求新组件,不修改 Runner 协议。

Verification

  • 自助注册通过 63 项定向测试及 Lite/Full 各 3 项 Playwright 场景,覆盖即时登录、默认项目执行操作员授权、公开任务返回、重名提示和 LDAP 关闭/恢复注册;已查看 1024px、1536px 浅色/深色注册页、登录入口及关闭提示布局。
  • 81 项相关单元/PostgreSQL 集成测试、7 项 Compose/部署包检查和 Lite/Full 两项 Playwright 场景通过;实际启动只读 Node Exporter,并核对与 PostgreSQL 相同数据卷的容量。
  • Web/worker 生产构建、格式、相关 Lint、类型与许可证检查通过。已查看 1024px、1536px 配置及容量弹窗截图,无新增溢出或布局变形;未做实际三主机压测与 arm64 运行验收。
  • 配置搜索先在 2560×1440 复现双滚动条,再通过 17 项 UI 规范测试及两项 Playwright 回归;实际查看 1024px、1536px、2560px 的浅色/深色截图,搜索框保持可见,页面宽度、滚动位置与关闭后焦点恢复正常。
  • 按用户要求采用最快发布路径,仅运行 Release;跳过标准 CI、源码发布检查、Full 分布式与发布后完整验收,保留原生双架构构建、镜像启动、内置资源、SBOM、签名及完整资产校验。

AutoForge v1.21.14

Choose a tag to compare

@iskycc iskycc released this 02 Nov 01:39

AutoForge v1.21.14

Added

  • 服务账号支持永久删除并清理其全部 API 密钥,已撤销或已过期密钥支持单独删除;保留审计与执行历史,并校验账号版本及管理权限。
  • 独立“日志管理”菜单承载“日志配置、日志归档”,“系统诊断”更名为独立“系统信息”;保留旧地址跳转。
  • 系统信息增加当前 Web 进程请求与错误计数、平均响应、事件循环延迟、CPU、V8/进程内存和执行配置摘要;复用既有采样与 15 秒快照。

Changed

  • PostgreSQL 主库保留少量常驻连接并启用 TCP keepalive,空闲连接上限延长至 10 分钟;日志管理、按日建库和容量检查改为有界连接池复用,保留日期库定位及锁连接隔离,空闲连接失效后按需恢复。
  • 公开任务执行页重新分配摘要、进展与控制区,集中展示环境 IP、启动操作与状态,保持原有登录、倒计时、暂停、终止和幂等流程。

Compatibility

  • 无新增数据库迁移、持久配置字段或生产依赖;Lite 不连接外部服务,既有诊断 API 与旧页面入口继续兼容。

Verification

  • 71 项定向单元与 SQLite/PostgreSQL 集成测试通过;Lite 6 项、Full 5 项相关 Playwright 场景通过,最终公开执行布局与系统信息展开区已复测。
  • Web/worker 生产构建、相关类型检查、改动范围格式/Lint、许可证与 E2E 矩阵检查通过。实际查看 1024px、1536px 桌面及深色截图,记录行按钮在较窄区域自动换行;未做实际三主机生产压测。
  • 按用户要求采用最快发布路径,仅运行 Release;跳过标准 CI、源码发布检查、Full 分布式与发布后完整验收,保留双架构构建、镜像启动、内置资源、SBOM、签名及完整资产校验。

Node Exporter 1.12.1 · amd64 临时离线包

Choose a tag to compare

Node Exporter 1.12.1 · linux/amd64 临时离线包,用于 PostgreSQL 数据卷监控。

代码已提交到 21d5cb9。本临时版本先提供监控组件;主平台配置入口随后续主平台版本交付。当前正式版仍为 v1.21.14。

下载镜像 autoforge-infra-node-exporter-1.12.1-amd64.docker.tar;独立部署时另下载 autoforge-infra-node-exporter-compose-amd64.tar.gz。同页提供使用说明、镜像来源/摘要清单、SPDX SBOM、47 个版本化 Go 模块及 Go runtime/BusyBox 的许可证文本,以及对应版本上游源码。

sha256sum --check --ignore-missing SHA256SUMS
docker load --input autoforge-infra-node-exporter-1.12.1-amd64.docker.tar

独立 Compose 解压、填写 .env 后直接 docker compose up -d。使用新 fast-deploy 模板则在数据库目录执行 docker compose --profile monitoring up -d。主库默认端口 19100,日志库默认 19101,平台挂载点填写 /pgdata。详细步骤见附件 README.zh-CN.md。

已验证原始平台 manifest/配置/全部镜像层摘要、Docker load 回读及禁网启动版本命令;Compose 使用精确本地镜像标签和 pull_policy: never。采集容器只读挂载实际 PostgreSQL 数据目录。

临时包采用独立 Ed25519 签名密钥,不使用主平台正式发布密钥。公钥 DER SHA-256:d48ecf0f93bf5c758ab4761d79cd041ede27a6bb4e574c4083d8c500ba9d99e2。全部附件均通过 SHA256SUMS 和独立签名保护;下载后也可与 GitHub 资产摘要核对。

本次应用改动此前已通过 81 项定向测试、7 项部署检查、Lite/Full Playwright 和 Web/worker 构建;本临时包未进行实际三主机压测或 arm64 运行验收。

AutoForge v1.21.13

Choose a tag to compare

@iskycc iskycc released this 31 Oct 11:19

本次新增 SR 测试类关联 Excel 多 Sheet 配置导入导出,以及中间件使用详情和日志数据库磁盘容量诊断,并减少容器请求日志输出。

  • SR 关联页提供导入配置、导出配置和模板,覆盖候选测试类、分类执行类、SR 分类关联与历史直接关联;预览定位错误,确认时核对修订并显示进度,重复导入复用相同配置。关联配置与独立 SR 标签分别维护。
  • 平台诊断的 PostgreSQL、Redis、NATS、MinIO 卡片可查看使用详情。查询按需执行、复用短期快照并限制等待,不因打开面板触发 MinIO 全桶扫描。
  • 日志数据库新增“查看容量”,读取实际 PostgreSQL PGDATA 数据卷余量,低于 20% 提醒;未采样、权限不足或过期均明确提示。
  • 成功 HTTP 请求继续计入指标,不再逐条输出容器日志;4xx 记录警告,5xx 记录错误。Redis 增加有界队列和发送后的回复等待期限,限流故障返回明确的 503。
  • DDT 三方校验脚本可在顶部 CONFIG 直接填写参数并在 IDE 调试。补充三主机链路审查、部署说明,并修复部署包内新指南的相对路径。

升级说明:无新增数据库迁移或生产依赖。Full 的 Web 与全部独立 worker 需一起升级。已有 PostgreSQL 容器需更新部署模板中的采样健康检查后,容量面板才会显示有效余量;保留原 bind 数据目录,不会自动提升数据库权限。SR 配置按名称合并,未列出的配置保留;中断后已保存变更保留,可重新预览并继续导入。

已完成 181 项定向 Vitest、5 项最终生产构建上的 Lite/Full Playwright 场景及发布整理检查,并实际审查 1024/1536 桌面与深色截图;Full 使用本地真实 PostgreSQL、Redis、MinIO、NATS。尚未在用户三台实际生产主机压测。

按要求使用最快发布路径,仅触发 Release,不运行标准 CI、Release checks、Full 分布式及发布后完整验收。原生 amd64/arm64 构建、镜像启动、内置资源、SBOM、签名及全部发布附件校验继续保留。

AutoForge v1.21.12

Choose a tag to compare

@github-actions github-actions released this 31 Oct 06:12

本版本包含文件管理入口整理与 DDT 数据迁移三方校验工具。

  • 侧栏“文件来源”更名为“文件管理”,集中提供“文件来源”“存储空间”“日志归档”三个四字标签。旧地址保留筛选并兼容跳转,来源及全平台管理权限分别校验。
  • 新增 Python 三方校验脚本,对照 DDT 导出 XLSX/CSV、源平台与目标平台 API,验证完整 CaseID 范围、字段、类型和值,兼容中文 ID、稀疏宽表和用户旅程,输出缺失/多余用例及字段差异。
  • 校验脚本、指南随部署包交付:operations/verify_ddt_transfer.py、docs/operations/ddt-transfer-verification.md。需 Python 3.10+,无需第三方 Python 包;默认全量检查使用两端只读 API Key,只发 GET,串行限速。
  • 无新增数据库迁移、Runner 协议或持久配置变化,无新增平台运行依赖。Full 部署保持 Web 与 worker 使用同版镜像。

已完成 26 项脚本测试及生产导出格式兼容验证、文件管理定向与生产 Lite 浏览器检查,并查看 1024/1536 桌面浅深色截图。本次仅触发 Release 快速发布;标准 CI、Release checks、Full 分布式及发布后完整验收未运行。双架构原生构建、镜像启动校验、内置资源、SBOM、签名和完整附件检查继续保留。

AutoForge v1.21.11

Choose a tag to compare

@github-actions github-actions released this 31 Oct 03:08

更新内容

  • DDT 导入忽略空字符串、仅空白字符和 null,不再把跨 SR 的空列展开到每条用例;保留 0、false、有效文本和实际旅程步骤。
  • 字段详情默认隐藏旧数据中的空字段,支持字段搜索、每页 48 个字段和长文本分段查看,复制、编辑仍使用完整原值。
  • 新增 DDT 管理 → 用例 → 清空 DDT 用例:只清理当前项目、版本、测试阶段,同时从任务移除成员并保存新任务版本,保留任务、普通 TestNG 用例和已有执行记录。提供数量核对、确认文字、进度、停止及失败后继续。

升级与使用

  • 包含 SQLite 0092/PostgreSQL 0090 任务成员反查索引迁移。Full 请同步升级 Web 和全部独立 worker;无新增配置、依赖或 Runner 协议变化。
  • 升级不会自动清理已有数据。确认清空后,会永久删除对应 DDT、修改历史和回收站记录。重新导入会生成新用例记录,需重新加入任务;旧执行继续从执行记录页面访问。
  • 快速部署镜像更新为 autoforge/backend:1.21.11-amd64。Release 提供原生 amd64/arm64 镜像、部署包、元数据与 SBOM、签名和校验清单;Jenkins 插件和 Runner Agent 继续内置于主平台。

验证

121 项定向场景通过,包含真实 SQLite/PostgreSQL、8100 多条清理、任务与执行快照保留、迁移升级/失败回滚、Full/Lite 的 8100×2050 宽表预检及真实维护线程。三项生产 Lite Playwright 场景及补测通过,已审查 1024/1536 宽度带数据截图。类型、范围内 Lint/格式和 Web/worker 构建通过,发布前补充 18 项部署/工作流检查。

按要求采用最快发布路径,仅运行 Release;双架构、内置资源、SBOM、签名和完整资产检查保留。未运行其他标准远端验收,完整 Full 浏览器集群和私有表格未在本次本地复验。