Skip to content

Releases: pgnzbl-ux/crucible

v3.1.0 · 子代理线程观测、报告结构化字段与 Agent 测试抗抖动

Choose a tag to compare

@pgnzbl-ux pgnzbl-ux released this 27 Aug 10:44

亮点

  • 🧵 子代理可观测:容器端事件携带线程标识(parent_tool_use_id),事件流工具栏单点入口(运行中转圈)点开清单即可切换查看各子代理的 SSE 流;Agent 子代理的工具结果不再显示"无输出内容"
  • 📋 报告结构化字段:标题(「系统」「接口」存在「漏洞」句式)、产品名称、影响版本(ref@commit 本次复现版本)、项目地址——模型产出 → 平台校验 → reports 表落库 → 管理表格与详情页展示
  • 🧪 Agent 兼容测试抗抖动:LLM 瞬时类失败自动重试一次,证据链(工具序列/结束态/末条回复)随结果回显,同 Provider 测试进程内串行
  • 🛡️ 安全加固:凭据加密密钥独立管理;孤儿线索回收与任务状态机修复

✨ 新特性

  • 容器侧事件增强:所有 AI 事件带 parent_tool_use_id;tool.call.completed 回填工具名与 Bash 命令;新增 agent.subagent.updated 生命周期广播(同一 NODE_KEY 经 NODE_SCHEMA_KEY 切换提交契约)
  • 二审批量子代理模式(triage_batch):单容器内 Task/Agent 子代理并行审议家族,汇总一次提交
  • 任务时长治理:总时长预算 / 单 AI 节点超时进入设置页,编排器调度循环与线索认领前检查,超预算优雅收尾且不推翻已封口结论
  • api_hunt 按画像框架注入特化猎洞笔记(Spring/Express/Django/FastAPI/Flask/Gin/NestJS/NextJS/Laravel),框架未命中回退语言级提示
  • 节点列表展示耗时、产出指标卡与跳过原因,运行态静默化;流程图节点悬停详情

🐛 修复

  • 已失败任务在左侧节点列表误显示为「执行中」:失败收尾统一清理残留线索并闭合孤儿阶段行
  • Agent 工具结果为 dict 块列表时(SDK 0.2.x 新形态)被丢成空串
  • 单节点重试白名单前后端漂移(补齐 lead_verify / finalize / api_inventory / api_hunt)
  • LeadWorker 异常置败不落错误文本,排障无法归因
  • env_ready 靶场配方未优先复用仓库自带 docker-compose、漏配依赖服务与 .env.example 的 localhost 默认值

⚙️ 升级指南

  1. 数据库迁移(reports 表新增产品名称 / 影响版本 / 项目地址三列):
    cd backend && alembic upgrade head   # → w8d4f2a61b73
  2. 重建 Agent 运行镜像(run_one 事件协议扩展,含线程标识与结果块兼容):
    docker build -f infrastructure/agent-runner/Dockerfile -t crucible-agent-runner:base .
  3. 无破坏性 API 变更;存量报告三字段为空不影响既有页面渲染

Full Changelog: v3.0.0...v3.1.0

v3.0.0 · 模式化子图编排与子代理批量二审

Choose a tag to compare

@pgnzbl-ux pgnzbl-ux released this 27 Aug 06:05

亮点

  • 🏭 仓库审计(discovery)正式可用:semgrep / gitleaks / osv / api_hunt 四路发现统一进入 cluster → screen → triage → dispatch 漏斗,合格线索逐条终认(LeadRun / LeadNodeRun 全程留痕)
  • 🧩 模式化子图编排:按 task_type 裁剪流水线(discovery 15 / verify 7),lead_verify / finalize 显式化工位,finalize 固化任务权威结论、报告失败不再改写终态
  • 🤖 二审批量子代理:整个二审节点单容器运行,家族以 SDK 子代理(Agent/Task)在容器内并行,替代逐族开容器
  • ⏱️ 时长治理用户可配:任务总时长预算 + 单 AI 节点超时进入设置页(platform_settings),Celery 软硬超时退居部署级兜底

✨ 新特性

编排与审计链路

  • 节点交接契约(Handoff/Inputs/Signals)与子图拓扑自检;按子图裁剪流水线与断点续跑
  • api_hunt 并列入漏斗并与 §2.7 合格门对齐;API 清单按画像语言分流解析
  • 审计报告 Tab 与终认链路完整性;合格线索直送终认,移除发现侧人肉队列
  • env_ready 拆分重构;AI 未提交结果时回喂重试而非直接降级

运行时与设置

  • task_time_budget_seconds / ai_node_timeout_seconds 用户可配,超预算优雅收尾且不推翻已封口结论
  • Provider Agent 兼容测试(canary):Read/Bash/MCP/多轮/凭据隔离六项校验;瞬时类失败自动重试、证据链回显、per-provider 串行锁
  • 运行容器默认内存提升至 2g(.env 可覆盖)

事件流与界面

  • 事件流子代理线程分组:工具栏单点入口(运行中转圈)→ 清单切换查看各子代理流;思考过程折叠、命令执行与结果合并为单条可折叠行
  • 节点列表展示耗时、产出指标卡与跳过原因;运行态静默化,流程图节点悬停详情

安全与稳健性

  • 生产安全硬化;封堵 compose rebuild 旁路;压缩产物识别并禁止 AI 直接整读
  • 按 commit 全量克隆后再检出,修复短 SHA 当远端 ref 的问题

🐛 修复

  • 失败任务在节点列表误显示为「执行中」:失败收尾统一清理残留线索并闭合孤儿阶段行
  • Agent 子代理工具结果(dict 块列表形态)在事件流中被丢成空串
  • 单节点重试白名单前后端漂移(补齐 lead_verify / finalize / api_inventory / api_hunt)
  • 二审级联快照 ProviderRuntimeConfig;NodeRun 唯一约束竞态

⚙️ 升级指南

  1. 数据库迁移(新增 lead_node_runs 表与时长预算列):
    cd backend && alembic upgrade head   # → u4b1e7c30a91
  2. 重建 Agent 运行镜像(容器端事件协议已扩展):
    docker build -f infrastructure/agent-runner/Dockerfile -t crucible-agent-runner:base .
  3. 重启 API 与 Worker 进程即可,无破坏性 API 变更;旧 run 数据兼容(前端自动合成缺失节点行)

Full Changelog: v2.1.0...v3.0.0

Crucible v2.1.0

Choose a tag to compare

@pgnzbl-ux pgnzbl-ux released this 20 Aug 10:14

【新功能】

▸ 本地源码包上传
· 任务创建支持上传 zip / tar.gz 源码包,不再仅依赖 git clone
· 上传包存入 MinIO,节点 0 从对象存储解压;相同内容指纹复用 source_artifacts
· 新增「登记源码」抽屉,项目页与任务创建流程均可使用

▸ 源码登记与项目版本展示
· 上传包按 owner + 名称冲突拒绝,避免误复用
· 任务创建下拉以「名称:tag/commit/branch 」区分仓库与缓存版本

▸ 任务级凭据管理(P1-6)
· 设置页新增凭据 CRUD:支持 env_var / file 两种注入方式
· 创建任务时可选择凭据,agent-runner 运行时注入容器
· 响应层掩码,明文存库(与 LLM Key 策略一致)

▸ 靶场手动重建
· 任务结束后 TTL 会拆除 Docker 靶场,现可在流程外按 commit 手动重建
· 靶场列表 UI 增加重建操作

【改进】

· 前端品牌视觉:新 Logo / Favicon / 登录页与全局样式优化
· LLM Provider 移除 OpenAI 兼容模式,错误提示更友好
· Celery worker 固定 prefork 池,移除 Windows solo 分支(宿主统一 Linux / WSL)
· 新增 Cloud Agent 环境脚本(install.sh / start.sh),支持云端 Agent 一键部署
· 仓库换行统一 LF(.gitattributes),避免 WSL 迁移后出现伪变更

【修复】

· labs.commit_sha 从 40 位加宽至 64 位,兼容上传包的 sha256 指纹