跳转到内容

0.5.2 - When all is darkest

新功能

  • 新增运行时 API 文档入口:/api/docs/ 提供 Swagger UI,/api/redoc/ 提供 Redoc,/api/schema/ 提供 OpenAPI schema,并标注 JWT、API Key 认证方式和业务模块分组。
  • Dashboard 概览改为由独立后台 Worker 定时计算并写入 Redis 缓存;运行时设置支持 5、15、30、60 分钟刷新间隔,前端会按配置自动刷新并提示缓存陈旧状态。
  • 数据表格新增浮动帮助入口,提示宽表格可通过 Shift + 鼠标滚轮横向滚动。

优化

  • 为 Alert、Case、Enrichment、Knowledge 和 Playbook 增加 Dashboard 聚合相关索引,减少大数据量下定时汇总的查询成本。
  • Dashboard API 直接读取预计算快照,避免每个 Web 请求同步执行完整聚合;缓存响应同时包含生成时间、刷新时间、年龄和陈旧状态。
  • 前端依赖升级到 Ant Design 6.5.1、@ant-design/icons 6.3.2、React Router 7.18.1、ESLint 10.7.0 和 typescript-eslint 8.64.0。

修复

  • 对 Splunk index 名称增加严格白名单校验,阻止通过 index 参数注入 SPL;无效 SIEM 请求现在返回 400。
  • Agent API 不再向调用方暴露 SIEM 集成异常细节,详细错误仅记录在服务端日志。
  • 后端生产镜像安装 libmagic,修复容器内文件类型检测缺少系统库的问题。

部署和发布工程

  • Compose 增加 asp-worker-dashboard-cache 服务,用于持续刷新所有 Dashboard 时间窗口的缓存。
  • API 文档静态资源随后端镜像提供,不依赖运行时访问外部 CDN。
  • CI、Docker、Release 和 CodeQL 工作流依赖升级到 actions/checkout 7、actions/setup-node 7、pnpm/action-setup 6、astral-sh/setup-uv 7 和 github/codeql-action 4。
  • Compose 发布包和快速开始文档默认使用 0.5.2 镜像标签。

升级说明

如果已经部署 0.5.1,建议先完成一次备份,然后更新 .env 中的镜像版本:

text
ASP_BACKEND_IMAGE=ghcr.io/funnywolf/agentic-soc-platform/asp-backend:0.5.2
ASP_FRONTEND_IMAGE=ghcr.io/funnywolf/agentic-soc-platform/asp-frontend:0.5.2

执行升级:

bash
./scripts/upgrade.sh

本版本包含数据库迁移,会新增 Dashboard 聚合索引和 dashboard_refresh_interval_seconds 运行时设置。大数据量实例创建索引可能需要更长时间,建议在维护窗口内完成。

如果维护了自定义 Compose 文件,需要合并新的 asp-worker-dashboard-cache 服务。升级完成后,Dashboard 在 Worker 生成首个缓存快照前会暂时返回 503;默认刷新间隔为 300 秒。

如果需要使用 CLI,可以通过 pipx 安装:

bash
pipx install asp-cli==0.5.2

如果本机已经安装过 asp-cli,可以升级到最新版本:

bash
pipx upgrade asp-cli

也可以强制安装指定版本:

bash
pipx install asp-cli==0.5.2 --force

开发者笔记

Dashboard 概览的数据路径从“请求时计算”调整为“后台生成快照、请求时读取”。独立 Worker 会按时间窗口刷新缓存,并使用 Redis 锁避免多个实例重复计算;API 返回的缓存元数据让前端能够区分正常快照、陈旧数据和首次尚未生成的状态。

最后更新于: