织灵实战:从手动排查到AI自主修复,测试与缺陷处理全链路自动化

案例背景
软件迭代中的三大核心痛点

这些问题的本质,并不只是“工具不够好”,而是整个研发流程仍然依赖人工驱动:问题需要人发现、信息需要人搬运、流程需要人串联。
织灵的价值,正是在这里显现:不是替代某一个工具,而是将分散的研发环节连接为一个可持续运转的智能闭环,让问题处理从“人驱动流程”转向“系统自主运行”。
现状:基于 GitLab Issue 的低效循环
在日常开发中,Issue 虽是需求与任务的载体,但在自动化不足的环境下,其生命周期充斥着大量低效的人工操作:
发现阶段
线上错误日志分散在 Kibana 或 Grafana Loki 中,缺乏自动聚类与告警,问题难以及时收敛
分析阶段
开发需结合Issue描述手动排查代码,频繁在日志、代码与上下文之间切换
修复阶段
修改完成后,仍需手动进行Commit、Push、创建MR,并更新Issue状态
测试阶段
集成测试脚本依赖人工编写,边界Case容易遗漏且成本较高
执行阶段
测试执行与结果分析依赖人工触发与整理,再粘贴至Issue中
同步阶段
信息同步依赖IM工具(如飞书)人工通知,沟通碎片化且易遗漏
数据观察:一个简单的Bug,从日志出现到 MR 合并总耗时约 1–2 小时。其中,真正用于分析与编码的有效时间 不足 30%,其余 70% 以上的时间被消耗在上下文切换、信息搬运等重复性操作上。
解决方案:织灵 ADE 修改自身代码,实现测试/Debug自动化闭环
我们基于织灵平台,沉淀出一套以 ADE(AI R&D Engineer) 为核心的自动化工作方法。织灵 ADE 已具备端到端的问题处理能力,能够围绕自身代码仓库,完成测试生成、错误分析、Issue 创建、根因定位及修复提交,并通过飞书进行结果同步。
在该模式下,问题处理由人工驱动转为自动化闭环执行,织灵能够对自身运行过程中产生的问题进行识别与修复,将单个问题的平均处理时间从 120 分钟压缩至 15 分钟以内。
案例描述
本次实践围绕“ADE驱动的测试-运维-Bug修复自动化”展开,对传统缺陷处理流程进行重构。
-
在问题发现侧,构建“自动生成集成测试–>定时执行并更新Issue –>日志触发自动开Issue”的自动化机制。
-
在问题处理侧,实现“根因分析–>飞书通知–>自动修复并创建MR”的闭环执行。
整体打通从错误发现到合并请求的关键路径,实现测试-运维-缺陷修复流程的端到端AI提效。
多场景优化实践
场景一:自动生成集成测试代码,补全遗漏
传统做法:开发人员根据API文档或已有接口,手动编写adeworker/backend/tests目录下的测试用例。一个模块约20个接口,每个接口写3~5个测试用例,常因疏忽遗漏异常场景(如鉴权失败、参数越界)。
织灵ADE做法:
织灵ADE扫描代码目录并分析现有测试覆盖情况:
-
识别未覆盖的接口及缺失的异常场景(如鉴权失败、参数越界)
-
基于接口定义自动生成对应测试函数
-
将新增测试写入代码文件并完成本地校验
-
直接在会话里提交Git Commit
实际输出:



场景二:自动执行集成测试,生成报告并更新至GitLab Issue
传统做法:CI流水线触发全量测试,但报告以文件形式存储。开发人员需手动下载、解析、再将失败摘要复制到对应Issue的评论中。
织灵ADE做法:
织灵ADE调用Skilladeworker-api-test执行测试脚本:
-
运行全部API测试用例并收集执行结果
-
统计通过率、失败用例及错误栈信息
-
汇总生成结构化的Markdown测试报告
-
通过GitLab API自动追加至指定Issue评论
实际输出:


场景三:抓取错误日志,分析Error并自动开Issue
场景三:抓取错误日志,分析Error并自动开Issue
传统做法:运维或开发人员定期登录日志平台(如Kibana),按时间筛选Error级别日志,手动分析每条错误,判断是否值得创建Issue。
织灵ADE做法:
织灵ADE调用Skilladeworker-healthy-analysis进行日志分析:
-
按环境和命名空间抓取服务错误日志
-
对相似错误进行聚类归并,识别潜在根因
-
结合影响范围判断问题严重程度
-
在GitLab自动创建Issue,并写入错误堆栈与实例信息
实际输出:

场景四:分析Issue里的问题描述,找到原因、相关代码与方案,并更新Issue
场景四:分析Issue里的问题描述,找到原因、相关代码与方案,并更新Issue
传统做法:开发人员收到Issue后,阅读问题描述,然后在IDE中搜索相关代码,根据经验推断可能原因。
织灵ADE做法:
织灵ADE调用Skilladeworker-issue-analysis,输入Issue ID。它会:
-
解析Issue描述中的关键词(如错误消息、接口名、异常类型)
-
拉取相关代码文件(基于历史修改记录和符号引用)
-
使用代码静态分析定位可能出错的函数和行号
-
生成根因分析报告与修复建议,并自动追加到Issue评论中
实际输出:

场景五:把生成的GitLab Issue发送到飞书群里
场景五:把生成的GitLab Issue发送到飞书群里
传统做法:开发人员或运维人员手动复制Issue标题和链接,粘贴到飞书群中,并@相关负责人。
织灵ADE做法:
织灵ADE调用飞书 lark-cli 完成通知流程(飞书 lark-cli 已内置于环境中,无需额外安装):
-
提取新建 Issue 的标题、摘要、链接与优先级
-
按预设模板组装通知内容
-
发送至指定团队群
-
实现问题创建后的即时同步与提醒
实际输出:

飞书消息

场景六:ADE分析Bug,指定方案,修改Bug,Commit Code,Push Code,Create MR
场景六:ADE分析Bug,指定方案,修改Bug,Commit Code,Push Code,Create MR
传统做法:开发人员根据Issue中的根因分析,手动修改代码、本地测试、Commit、Push、再到GitLab网页创建MR,最后手动更新Issue状态。
织灵ADE做法:
织灵ADE调用Skilladeworker-bug-fix,基于子场景四生成的修复方案,执行以下全自动流程:
-
在内嵌VS Code编辑器中直接修改相关代码文件
-
运行单元测试确保修复不引入回归
-
执行
git commit和git push到特性分支 -
通过GitLab API创建MR,并将MR链接自动追加到Issue评论
-
更新Issue状态为“已修复,待Review”
实际输出:

结论
通过织灵Loom改造自身Adeworker模块的测试与运维流程,我们取得了以下核心成效:


更关键的是协作模式的转变:
-
以前:开发提交代码后,测试人员写脚本、运维人员看日志、开发人员再修Bug,各角色串行,信息割裂。
-
现在:多个织灵Loom ADE围绕同一个GitLab Issue并行工作,人只需要在关键节点做Review和决策。研发完成之后,测试、日常运维、Bug修复真正跑通了一个完整闭环。

织灵在这一实践中真正做到了:
从测试生成、日志分析,到问题定位与代码修复,全链路均由系统自主完成。这不仅是流程的优化,更是软件生产方式的重写——将传统的“人工串联流程”彻底升级为为“系统自主完成循环”。
在织灵的体系中,流程被折叠为持续运转的智能闭环。问题被自动发现、理解并修复,系统具备了自我维持与进化的能力。
这意味着软件工程的基本单元正发生根本性位移:
从“人与任务”转向“目标与智能体”。人不再深陷于执行细节,而是跃升至系统之上,专注于定义目标与边界。软件不再仅仅是静态的构建产物,而进化为持续演化的生命过程。
而织灵,正是在这一转折点上,让这种新范式真正落地。

夜雨聆风