当建筑破裂时,错误会自行修复

2026年8月16日2 次浏览来源:Dev.to阅读原文

当建筑破裂时,错误会自行修复 我们停止监视CI失败 现在一个红色的建筑文件它自己的bug——一个AI代理把它捡起并运送到固定.

问题——一个失败的建筑告诉任何人 我们的线人不会失败,然后... ...

失败者静静地坐在一个无人打开的建筑控制台上.

最终有人会注意到一个变化 没有出去,去挖掘, 并意识到这个建筑已经红色了几个小时。

而注意是容易的。

实际上解决它意味着整个代码会话:拉起日志,找到失败的台阶,复制它,并让工程师坐下来亲自把固定从破碎到绿色。

每个红色建筑都花费了真正的人类时数——加上在人们甚至不知道有问题之前对延迟征收的隐形税.

一个破烂的建筑的真正代价从来不是建筑。

它是一个人必须找到它,理解它, 并手固定它。

SOLUTION——失败者自行存档——一个经纪人从那里拿走了它,现在没有人看控制台,没有人会分门别类。

建设失败的一瞬间,它会自动在Shipeasy——我们的操作平台——中将一个错误作为真实的,优先的门票,连同失败的台阶,分行,以及已经附加的日志的链接.

从那里,它完全离开人类的手。

Shipeasy将bug交给一个AI代理,后者负责调查故障,写出补丁,并开启了对它的拉取请求.

曾经的"人类通知" 人类读取日志 人类修补" 现在的"建设失败" 虫子出现 代理修补".

工程师的工作是审查已经存在的公关 DESIGN — 整个事情是如何在一起的 管道是故意无聊的——每个跳跃要么是云已经免费做的东西,要么是我们已经运行的服务:云构建——建设失败:发布自动的Pub/Sub主题上的红色部署 推接订阅:过滤到FAILURE TIMEOUT INNAL ERROR HTTPS POST /webhooks/cloud build Webhooks:CloudBuild Clooper:通过构建id ShipeasyOps: Client#file bug:POST/api/admin/ops(类型:"bug")来验证符号 *dedope shipeasy ops 队列 – bug 存档:粉丝出到 GitHub 一期 + Slack QQ AI代理调查 – 打开 PR 是什么使得这种便宜的形状:我们没有添加新的基础设施.

该活动已经在公交车(Pub/Sub)上.

我们已经做了一个服务 可以接受它。

我们只写了中间的胶水 执行——铁路部门如何运作 建设方面根本不需要任何改变——"云之建"(Cloud Build)出版"云之建"专题本身.

因此,这个作品是三个小作品:一个克云指令,一个路线,和一个控制器.

在应用程序上指向一个被过滤的按键订阅。

Pub/ Sub 负责发送; 过滤器意味着只有真正失败的终点才会被唤醒 。

添加路由——它会与我们的其他提供商一样被插入同一个webhook表面.

控制器 控制器 它认证了推力,解码了所建有效载荷(它到达了在消息.data中被编码为base64-encode),抛出任何不是真正失败的东西,去dups——Pub/Sub在-last-once发送,因此再发送不能提交第二个bug——并归档出票.

单行登票。

控制器将构建上下文交给了瘦小的Shipeasy客户端.

这是确切的调用——它将一个红色的构件变成一个一等的bug,打开一个GitHub问题,pings Slack,并获得自动固定代理的资格: 而客户端本身只是一个打字包包,覆盖一个HTTP呼叫——没有新的宝石,没有框架.

在平台上创建错误只需要这样: 这就是整个整合。

失败从Cloud Build到一个存档的,优先的bug通过两个管理的hop和大约40行Ruby——当它降落时,这是平台的问题,而不是一个人的问题.

SHIPAESY——一个问题,几种方法解决它,把它当作一个错误通过见(): 死生简单,在我们代码中已经无所不在——但它会产生自动文件错误,而不是一等错误,具有重排步骤和优先级.

例外情况很好;没有相当的跟踪工作项目w

分享