Vercel、AI SDK の大規模開発を支えるソフトウェアファクトリー構築を公開
本文の状態
日本語全文を表示中
詳細モードで約15分の本文を読めます。
同じ出来事の情報源
この情報源を基点に整理
Vercel Blog
Vercel は AI SDK のバックログ解消のため、人間が最終責任を持つ「ソフトウェアファクトリー」を構築し、PR の 3 割と課題の 8 割を自動化して管理効率を劇的に向上させた。
Continue in AI NEW LAB
このニュースを、実務の判断につなげる
AI NEW LABで、試したことや先に確認したい条件を共有できます。まずはログインなしで読めます。
AI NEW LABで論点を見るAI深層分析を開く2026年8月13日 01:46
AI深層分析
キーポイント
ソフトウェアファクトリーの構築背景
AI SDK はモデルプロバイダーや UI フレームワークなどの複雑な要因により、月間 100 件以上の課題と 800 件のプルリクエストが蓄積し、従来の人的対応では限界に達した。
完全自動化ではなく人間中心の設計
品質とセキュリティが最重要となる基盤インフラであるため、AI エージェントに任せるのではなく、人間のレビュー効率を最大化する中間的な自動化レベルを採用した。
リスクに応じたレビュー深度のスケーリング
変更のリスク度合いに応じて必要な人間によるレビューの深さを調整し、自動化と人的努力を適切に配分する仕組みを導入した。
導入後の具体的な成果
構築から 4 週間以内に、マージされるプルリクエストの 25〜35% とクローズされる課題の 70〜80% をファクトリーが処理するに至った。
タスクごとの単一エージェント設計
単一の汎用エージェントではなく、バグ再現や修正など各タスクに特化した個別のエージェントを構築した。これにより、保守負荷の軽減と各機能の独立したテスト・デバッグが可能になった。
重要な引用
That backlog is not a discipline problem. No maintainer, however good, can close that gap by working harder
We believe that human accountability is still the core of trust in agentic engineering
Our factory needed to heavily automate the lifecycle around the human, without removing them
Instead, we built a single agent for each specific task, making every new capability easier to reason about, test in isolation, and debug.
編集コメントを表示
編集コメント
AI エージェントの活用において、人間の責任を放棄せず効率化を図る「ソフトウェアファクトリー」の概念は、実務的な解決策として非常に示唆に富んでいる。Vercel の具体的な数値成果は、大規模プロジェクトにおける AI 導入の現実的な限界と可能性を如実に物語っている。
Source Article
元記事を日本語で読む
本文に関係しない購読案内、埋め込み通知、サイト内プロモーションは除いています。
AI SDK は、世界で最も人気のあるオープンソース AI プロジェクトの一つです。週に 2,000 万回を超える npm ダウンロードがあり、リポジトリには 26,000 件以上のスターがついています。コードベースを維持し続けるためには、同時に四つの要素の動きを追いかける必要があります。
モデルプロバイダー:新たなプロバイダー、新機能、そして新しいバグ
UI フレームワーク:React、Next.js、Svelte、Vue などへのバインディング
サンドボックス:エージェントがコードを実行する実行環境
ハルネス(アダプター):Codex、Claude Code、Pi などのためのアダプター
何年もの成長の末、リポジトリでは毎月 100 件以上の新しい課題が発生するようになり、Anthropic の Opus 4.6 モデルがリリースされた頃には、PR(プルリクエスト)の数も転換点に達しました。6 月末までに、蓄積した未解決の課題は 1,000 件を超え、保留中の PR は約 800 件に達していました。
このバックログは、管理側の規律の問題ではありません。どんなに優秀なメンテナーでも、より懸命に働くだけではこの格差を埋めることはできません。コード生成が安価である以上、課題の数はさらに増える一方です。
そこで私たちは、自分たちの能力で規模拡大を図るのではなく、「ソフトウェア工場」を構築しました。4 週間が経過した現在、この工場で作成された PR がマージされるものの 25〜35% を占め、課題の 70〜80% を解決しています。
どのような種類の工場を構築するかを決める
何かを構築する前に、私たちは三つの問いに答えなければなりませんでした。
なぜ既存のアージェント活用アプローチでは不十分なのか
AI SDK のようなプロジェクトに適した自動化のレベルはどの程度か
リスク管理のために自動化と人的作業をどう調整すべきか
なぜアージェントを増やさないのか
優れたプロジェクトメンテナーたちは、すでにエージェントを積極的に活用しています。Mitchell Hashimoto 氏は Ghostty の開発において「常に稼働するエージェント」を実現することを目指し、AGENTS.md にすべてのエージェントの失敗事例を記録して再発を防いでいます。Simon Willison 氏は並行して 4 つのコーディングエージェントを運用しており、Vercel Agent や CodeRabbit といったレビューボットは数百万ものリポジトリで稼働しています。また Daniel Stenberg 氏のように、curl に対して AI 生成による提出をブロックする方針を選んだメンテナーもいます。
これらすべてが役立ちますが、いずれも根本的な制約には対応していません。どの解決策も、変更は最終的に一人の人間の承認を経由しなければならないからです。私たちは、エージェントエンジニアリングにおける信頼の根幹は依然として「人間の責任」にあると考えます。そのため、ファクトリー設計においては「レビュー担当者の効率化」を第一原則としました。
では、AI SDK にはどのような自動化が適しているのでしょうか?
ソフトウェアファクトリーは連続したスペクトラム上に位置します。一端には、人間がコードを一度も読まずにエージェントが作成・出荷・デプロイまでを完結させる「完全自動化」があります。中間には Codex や Claude Code のようなハーンズがあり、人がエージェントやエージェント群を誘導する形です。他方、ペースメーカーのファームウェアや自動運転車のようにリスクが高すぎて自動化したくないソフトウェアも存在し、これはスペクトラムの遠端に位置します。
AI SDK は、慎重な運用が求められる領域で動作する必要があります。これは数百万のアプリケーションが構築される基盤となる AI インフラであり、品質とセキュリティは妥協できません。また、リリースされるコードに対して人間が最終的なコントロールを握る必要があります。私たちが目指したのは、人間を排除することなく、人間の周りにあるライフサイクルを徹底的に自動化するファクトリーです。
自動化と人的努力をリスクにどう合わせるか?
変更内容に応じて、必要な人のレビューの深さはリスクの高さに比例します。
詳細な機能仕様を持つ中央集権的なロードマップは、事前にリスクを定義し、ソフトウェアファクトリーへの投入作業を直接的に形作ることができます。しかし、AI SDK のようなオープンソースプロジェクトでは、コミュニティから課題やプルリクエストが寄せられ、それがプロジェクトの目標と一致する保証も、変更が安全である保証もありません。リスクが高いほど、人間の判断はシステムにおいてより重要な役割を果たします。
その判断力をファクトリーで最大限に活かすために、エージェントは単なる依頼に基づくコード生成を超えなければなりませんでした。彼らは、プロジェクト全体という文脈の中で、作業の単位を包括的に評価できる必要があるのです。
私たちが目指したのは、各変更について「適合性」と「リスク」の両面から包括的な評価をファクトリーが生成することです。そこには検証可能な証拠の連鎖も含まれ、レビュアーが適切な労力を投入しやすくなります。
- ドキュメントの修正は、確認のために素早くチェックする
- 明確に定義されたプロバイダーの変更は、焦点を絞って検証する
- 新しいパブリック API は、徹底的なレビューを行う
私たちが構築したもの
AI SDK 向けのソフトウェアファクトリー「ai-sdk-factory」は、流入する課題やプルリクエストを自律的に処理します。このファクトリー内のエージェントは、バグの再現、機能の実装、旧バージョンへのバックポート作成など、特定のタスクを実行し、その結果は常にレビュー可能です。ただし、すべての変更のマージを含むプロセス全体では、人間が最終的なコントロールを保っています。
このファクトリーを一度で完成させたわけではありません。プロセスの最初から段階的に構築を進め、まずは課題を「バグ」「機能」「ドキュメント更新」に分類することから始めました。この最初のステップは、バックログの形状を可視化するだけでなく、後に構築した他の専門エージェントへ有用な文脈を引き継ぐ役割も果たしました。
新しい機能タイプごとに複数の実装方法をプロトタイピングし、その過程で本番環境に導入されたファクトリーのアーキテクチャを形作る一連の指針を策定しました。
タスクごとに 1 つのエージェントを構築する
分類エージェントが十分な精度に達した後、バグの再現、修正、およびその修正レビューの自動化に注力しました。各工程で必要なスキルを持つ単一のエージェントを構築する案も検討しましたが、時間とともに保守やトラブルシューティングの負担が増大すると即座に判断しました。
代わりに、特定のタスクごとに 1 つのエージェントを構築することで、新しい機能ごとの推論、孤立したテスト、デバッグが容易になりました。各エージェントは特定の業務に限定され、独自のプロンプト、コンテキスト、評価基準(evals)を持っています。
今日、このファクトリーではフローの各工程に専用のエージェントが割り当てられています。
バグの再現
バグ修正
PR(プルリクエスト)レビュー
バックポート
ドキュメント更新
機能分析
機能実装
初期段階からのセキュリティ確保
セキュリティ対策は、2 番目のエージェントで導入しました。なぜなら、ファクトリーが制御していないコンテンツに基づいてコードを実行する最初のステップが「バグの再現」だったからです。
パブリックリポジトリ上で動作するファクトリーは、攻撃者が操作した入力であると想定する必要があります。つまり、すべてのイシュー、プルリクエスト、コメント、そしてそれらに含まれるリンクは信頼できないものとして扱われます。成功しているオープンソースプロジェクトは高価値な標的となるため、脅威は悪意のあるコード変更やサプライチェーン攻撃から、リソース枯渇、API キーの漏洩、プロンプト情報の窃取まで多岐にわたります。
サンドボックスが防御の基盤です。ai-sdk-factory のすべてのエージェントは、そのコードとランタイム、そしてタスクに必要なシークレットのみを含む隔離された Vercel サンドボックス内で実行されます。これらのガードレールにより、信頼できないコンテンツはエージェントが提案する内容に影響を与えることはできますが、1 つのタスクによって引き起こされる被害はサンドボックス内に限定されます。
さらに、サンドボックスの外側にはネットワークへのアクセスを制御するシールド層を構築しました。これにより、攻撃者が隔離環境からシークレットを抜き出すために使用する経路をブロックしています。
最後の防御ラインは人的レビューです。AI SDK チームの人間による承認がない限り、何もマージされません。
ローカルで価値を構築し、その後クラウドへ移行する
ファクトリーで最初に構築したエージェントは、すべてローカルの CLI を通じて実行されていました。これにより、チームは不具合や摩擦に気づいた際に素早く反復し、さまざまなアイデアのプロトタイプを迅速に作成できました。
CLI 上で複数のステップが安定して動作するようになった時点で、システムを管理されたインフラストラクチャへ移行する準備が整いました。ai-sdk-factory では以下の Vercel サービスを活用しています。
- API、ワーカー、ウェブフックの取り込みには Vercel Functions を使用
- タスク実行には Vercel Queues を使用
- ログ保存には Vercel Blob を使用
- エージェントのワークスペースには Vercel Sandbox を使用
- ファクトリーのデータ管理には Neon Postgres を使用
現在、GitHub のウェブフックがイシューキューにフィードされ、着信と同時にワーカーが自動的に取得してサンドボックス内でエージェントの実行を開始します。また、並列実行されるすべてのランを監視し、レビューチーム向けにキューの状況を可視化するモニタリング UI も構築しました。
ソフトウェアファクトリーを通じたリリース
7 月 24 日、コミュニティメンバーが OpenAI のウェブ検索機能でブロックドメインへのサポートを要望し、これがイシュー #17898 として登録されました。以下のセクションでは、このイシューを処理し、実装を含むプルリクエストを作成し、最終的にマージされた機能を SDK の v5 および v6 にバックポートするまで、ソフトウェアファクトリーがたどったすべての手順を解説します。
分類
ファクトリーで最初に実行されるエージェントは、イシューとプルリクエストの分類を担当します。今回のケースでは、ai-sdk-factory ボットがイシューにコメントを投稿し、ラベルを付与して「Feature(機能追加)」であることを高い確信度で特定しました。このエージェントは、その判断理由も併せてコメントに記載しています。
分析
分類処理が完了すると、分析エージェントが実行されます。ファクトリー内のエージェントは、機能リクエストやバグの技術的な妥当性について何らかの前提を持たないため、分析エージェントは「ブロックされたドメインへのサポートがないこと」を確認するプローブを作成しました。
issue-17898-type-probe.ts が生成されて実行され、blocked-domains を検索したが見つからなかったことでエラーが発生しました。この失敗したプローブが、メインブランチ上でその機能が欠落していることを証明し、分析エージェントはこれを根拠として報告に含めました。
その後、分析エージェントは調査結果を基に機能の仕様を作成しました。既存の web-search ツールにオプションの blockedDomains フィルターを追加し、プロバイダー側の blocked_domains フィールドにマッピングするという内容です。
さらに、この仕様が SDK の provider-adapter アーキテクチャに適合しており、後方互換性も保たれることを確認。ドキュメントの変更範囲についても定義しました。
実装
別のエージェントがその仕様を実装し、プルリクエストをオープンしました。実装担当のエージェントはライブの E2E テストを実行。OpenAI の Web 検索で wikipedia.org をブロックし、そのドメインに到達できないことを確認しました。このテスト結果も、追加の証拠としてプルリクエストに含まれました。
自動レビュー
次に、レビューエージェントが変更点を評価。問題点が見つからなかったため承認しました。エージェントは機能の実装状況を「完全」と判定し、以下のリスク評価を付記しました:
- サイドエフェクトのリスク:低
- パフォーマンスのリスク:なし
- 後方互換性のリスク:低
人的レビュー
最後に、ラーズはエージェントからの証拠の連鎖を読み込み、コードの変更を確認して PR #18033 を main ブランチにマージしました。
バックポートについて
ラーズが最初の PR をマージした後、ai-sdk-factory は v6 用の #18035 と v5 用の #18036 という 2 つの追加 PR を作成しました。v5 のバックポートはきれいに適用されなかったため、ファクトリーエージェントはその競合状態にラベルを付けコミットし、修正策を特定して検証した上で、17 分後にプッシュしました。レビューを経て、ラーズは両方のバックポート PR をマージしました。
結果
ソフトウェア工場を実環境で稼働させてから 4 週間弱が経過しました。その成果は以下の通りです。
main ブランチへのマージされた PR
現在、週にマージされる PR のうち 25〜35% が ai-sdk-factory エージェントによって作成されています。
バックポートについて
ファクトリーによる PR は、v6 リリースラインへの週次マージの 50% 以上を占めており、v5 も同様の傾向です。以前はマージ競合との格闘に見合う価値がないとして見送っていたバックポートですが、現在は v5 と v6 がはるかに手厚くサポートされるようになりました。
イシューについて
7 月には、クローズされたイシューの 75% 以上を工場が処理しました。
オープン状態のイシュー数は、6 月末のピーク時である 1,022 から 8 月初旬には 844 に減少し、オープンバグも約 25% 減っています。
ai-sdk-factory は公開環境で稼働しているため、リポジトリ上で作成されたすべてのプルリクエストを確認できます。
工場の改善が新たな役割に
工場を運用する中で最も興味深いのは、失敗した際に何が起こるかです。各実行は次の 4 つのいずれかで終了します:成功、不具合あり、ブロック済み、手動処理。実際にリリースされるのは「成功」のみであり、それ以外のケースはフィードバックとしてシステムに再投入されるシグナルとなります。
エージェントが誤った出力を行った「失敗した実行」では、プロンプトの改善や文脈の充実、あるいは同様のミスを自動検出するための評価ケースの追加といった対応が必要です。
環境に資格情報やサービス、依存関係などが不足して進められない「ブロックされた実行」に対しては、必要なリソースをプロビジョニングすることが解決策となります。
手動で実行するケースは意図的に設けた境界線を示すものであり、「工場の改善によってこの境界線を撤廃すべきか」という問いを投げかけます。
これらの対応はすべて自動化の範囲を広げ、毎週のように工場が以前は信頼して任せられなかった作業も処理できるようになります。
工場の運用は、チームがすでにテストスイートやパイプラインに対して適用している規律と同じものです。ただし対象となるのは「確認するシステム」ではなく、「実際に作業を行うシステム」です。エージェントがソフトウェア開発ライフサイクル(SDLC)を定義する世界において、工場を改善することが標準的なエンジニアリングの役割となっていくでしょう。
続きを読む
原文を表示
The AI SDK is one of the most popular open-source AI projects in the world. It serves over 20 million npm downloads a week and the repo has over 26,000 stars. Maintaining the codebase means tracking four moving targets at once:
Model providers: new providers, new capabilities, and new bugs
UI frameworks: bindings for React, Next.js, Svelte, Vue, and others
Sandboxes: the execution environments agents run code in
Harnesses: adapters for Codex, Claude Code, Pi, and others
After multiple years of growth, the repo was getting 100+ new issues every month, and when Anthropic's Opus 4.6 model was released, PRs hit an inflection point. By late June, that compounding had accumulated over 1,000 open issues and almost 800 pull requests.
That backlog is not a discipline problem. No maintainer, however good, can close that gap by working harder, and because generating code is cheap, it will only grow.
Instead of trying to scale ourselves, we built a software factory. Four weeks in, it authors between 25 and 35% of PRs we merge and closes 70-80% of issues.
Deciding what type of factory to build
Before we built anything, we had to answer three questions:
Why our existing approach using agents wasn't enough
What level of automation fit a project like the AI SDK
How to align automation and human effort to risk
Why not add more agents?
The best maintainers are already using agents aggressively. Mitchell Hashimoto runs Ghostty with the goal of an agent always working, and encodes every agent failure in AGENTS.md so it never repeats. Simon Willison runs four coding agents in parallel, and review bots like Vercel Agent and CodeRabbit sit on millions of repos. Other maintainers like Daniel Stenberg have opted to block AI-generated submissions to curl.
All of it helps, but none of it solves for the core constraint: every one of these solutions still routes every change through one human's attention. We believe that human accountability is still the core of trust in agentic engineering, so we knew our factory needed to solve for reviewer efficiency as a first principle.
What kind of automation fits AI SDK?
Software factories sit on a spectrum. At one end is full automation, where agents write, ship, and deploy without a human ever reading the code. In the middle are harnesses like Codex and Claude Code, where a person steers an agent or fleet of agents. At the far end is software you barely want to automate because the risk is too high, like firmware in a pacemaker or self-driving vehicle.
The AI SDK needs to operate closer to the careful end. It is foundational AI infrastructure with millions of applications built on top, so quality and security are non-negotiable, and a human needs to have control over what ships. We needed our factory to heavily automate the lifecycle around the human, without removing them.
How do we align automation and effort to risk?
For a given change, the depth of human review needed scales with risk.
Centralized roadmaps with detailed feature specs can define risk up front and directly shape the work going into a software factory. But open-source projects like AI SDK also get issues and pull requests from the community, and there is no guarantee they align with the goals of the project, or that changes are safe to make. Higher risk means human judgment is an even more critical part of the system.
To optimize our factory for that judgment, we knew agents had to go beyond generating code based on a request; they needed to evaluate full units of work in the context of the entire project.
Our goal was for the factory generate a comprehensive assessment of each change for both fit and risk, including a full chain of documented evidence, making it easy for reviewers to apply the right amount of effort:
Docs fixes get a quick glance for verification
Well-defined provider changes get focused validation
A new public API gets deep review
What we built
ai-sdk-factory is a software factory that autonomously processes incoming issues and pull requests for AI SDK. Agents in the factory perform specific, reviewable tasks, like reproducing bugs, implementing features, and creating backports for older SDK versions. A human stays in control throughout the entire process, including merging every change.
We didn't ship the factory in one swing. We built it incrementally, starting at the beginning of the process with classification of issues as bugs, features, or documentation updates. That first step not only gave us more visibility into the shape backlog, but also passed helpful context to the other specialized agents we built later.
We prototyped multiple ways to build each new type of functionality, and in the process developed a set of guiding principles that shaped the architecture of the factory that went into production.
Build one agent per task
Once our classification agent reached a high level of accuracy, we focused on automating bug reproduction, fixes, and review of those fixes. We explored building a single agent equipped with skills for each step, but quickly realized that would come with a higher maintenance and troubleshooting burden over time.
Instead, we built a single agent for each specific task, making every new capability easier to reason about, test in isolation, and debug. Each one is scoped to a specific job, with its own prompts, context, and evals.
Today the factory has dedicated agents for every step in the flow:
Bug reproduction
Bug fixes
PR reviews
Backports
Documentation updates
Feature analysis
Feature implementation
Secure everything from the start
We implemented security with the second agent, because bug reproduction was the first step where the factory executed code based on content it didn't control.
A factory operating on a public repository has to assume attacker-controlled input: every issue, pull request, comment, and the links inside them are untrusted. Because successful open-source projects are high-value targets, threats range from malicious code changes and supply chain attacks to resource exhaustion, API key exfiltration, and prompt exfiltration.
Sandboxes are the foundation of our defense. Every agent in ai-sdk-factory runs inside an isolated Vercel Sandbox containing its code, its runtime, and only the secrets the agent's specific task needs. With those guardrails, untrusted content can shape what an agent proposes, but the damage any one task can do is contained to the sandbox.
We also built a shielding layer around the sandbox that controls what agents can reach over the network, blocking the paths an attacker would use to pull secrets out of the isolated environment.
The last line of defense is human review: nothing is merged without approval from a human on the AI SDK team.
Build value locally, then move to the cloud
The first several agents we built for the factory ran through a local CLI. That enabled our team to iterate quickly as we noticed inaccuracies, felt friction, and prototyped different ideas.
Once multiple steps were running reliably through the CLI, we were ready to move the system onto managed infrastructure. ai-sdk-factory uses:
Vercel Functions for the API, workers, and webhook ingress
Vercel Queues for task execution
Vercel Blob for logs
Vercel Sandbox for the agent workspaces
Neon Postgres for factory data
Today, GitHub webhooks feed the issue queue, and as soon as they arrive workers automatically pull them and kick off agent runs in sandboxes. We also built a monitoring UI that tracks every run in parallel, and visualizes the queue for the team of reviewers.
Shipping software through our factory
On July 24, a community member asked for blocked-domain support in OpenAI web search, and the request became issue #17898. The following section explains every step the software factory went through to process the issue, open a pull request with an implementation of the feature, and ultimately backport the merged feature to v5 and v6 of the SDK.
Classification
The first agent that runs in the factory classifies issues and pull requests. In this case, the ai-sdk-factory bot commented on the issue and applied a label, identifying the type as Feature with high confidence. The agent included its rationale for the classification in the comment.
Analysis
After classification, the analysis agent runs. Agents in the factory don't make any assumptions about the technical validity of a feature request or bug, so the analysis agent wrote a probe to confirm the absence of support for blocked domains. issue-17898-type-probe.ts was generated and run, and failed with an error when it looked for blocked-domains and didn't find it.
The failing probe proved the feature was missing on main, and the agent included it in the analysis as evidence.
The analysis agent then used the results of its investigation to build out a spec for the feature: add an optional blockedDomains filter to the existing web-search tool and map it to the provider's blocked_domains field.
The agent also confirmed the spec fit the SDK's provider-adapter architecture and was backward compatible, and even scoped documentation changes.
Implementation
Another agent then implemented the spec and opened pull request. The implementation agent ran a live end-to-end test, executing an OpenAI web search with wikipedia.org blocked and confirming the domain wassn't reachable. The test was included as additional evidence on the pull request.
Automated review
Next, a review agent scored the change, and when it didn't find any concerns, approved it. The agent rated the feature as fully implemented, with:
Side-effect risk: low
Performance risk: none
Backwards-compatibility risk: low
Human review
Finally, Lars read the chain of evidence from the agents, reviewed the code changes, and merged PR #18033 into main.
Backporting
Once Lars merged the initial PR, ai-sdk-factory opened additional PRs for two backports, #18035 for v6 and #18036 for v5. The v5 backport did not apply cleanly, so the factory agent labeled and committed the conflicted state, identified and validated a fix, and pushed it seventeen minutes later. After review, Lars merged both backport PRs.
Results
We are just over four weeks into running the software factory in production. Here are the results:
PRs merged to main
Between 25-35% of the PRs we merge on a weekly basis are now authored by ai-sdk-factory agents.
Backports
Factory PRs are above 50% of weekly merges to the v6 release line, and v5 looks similar. Backports used to be work we skipped because dealing with merge conflicts wasn't worth the effort. v5 and v6 get far better support now.
Issues
In July, over 75% of closed issues were closed by the factory.
Open issues fell from a peak of 1,022 in late June to 844 by early August, and open bugs are down roughly 25%.
The ai-sdk-factory runs in public, so you can see every pull request it has authored on the repo.
Improving the factory becomes the job
The most interesting part of running the factory is what happens when it fails. Every run ends one of four ways: success, flawed, blocked, or manual. Only success ships, so the rest are signal that re-enters the system as feedback.
A flawed run means an agent produced the wrong thing, and the fix is better prompts, better context, or a new eval case so the same mistake gets caught automatically next time
A blocked run means the environment was missing something, like a credential, a service, or a dependency, and the fix is provisioning it
A manual run marks a boundary we drew on purpose, and forces us to ask whether improvements in the factory justify removing it
Each of those fixes expands the automation boundary, and every week the factory can handle work that it couldn't be trusted with before.
Running the factory is the same discipline teams already apply to their test suites and pipelines, but pointed at the system that does the work, instead of the system that checks it. In a world where agents define the SDLC, improving the factory will become the standard engineering job.
Read more
関連記事
今日のまとめ
AIデイリーブリーフで今日の重要ニュースをまとめ読み