Autonomaの18か月にわたるコードベース書き換え:テスト、技術的負債、サーバーアクションに関する教訓

成功したプロダクトが完全な書き直しを必要とした理由
Autonomaは、複数回の方向転換(エンタープライズ検索、ドキュメント生成、コーディングエージェント、QAテストプラットフォーム)を経て、1.5年以上にわたりプロダクトを開発し、顧客を獲得し、主要な業界プレーヤーから資金調達を行い、14人のチームを雇用しました。このような進展にもかかわらず、彼らはコードベース全体を破棄し、一からやり直すことを決断しました。
テストなしの時代とその結果
当初、チームは厳格モードなしでテストもないTypeScriptモノレポを使用していました。これは、コードベースの大部分を所有する2人のエンジニアでは機能しましたが、雇用後に災害となりました。コードベースにはnull問題、未定義の動作、不適切なエラーハンドリングが生じ、「突然」バグが発生し、顧客を失うことさえありました。創業者は当初、迅速なリリース文化を維持するためにテストを禁止していましたが、後にこれがプロダクトの品質と生産性に影響を与えたことに気づきました。
書き直しを促した技術的決定
元のプロダクトはGPT-4時代(4oではない)に構築され、モデルには広範なガードレールが必要でした。彼らは複雑な検査と7つのクリック戦略を備えた洗練されたPlaywrightとAppiumのラッパーを構築し、これらはその場で自己修復を行いました。モデルの進歩により、このような洗練された検査はもはや必要なくなり、技術的負債を抱えたレガシーコードベースの価値は低下しました。
Next.jsとServer Actionsの廃止
チームはNext.jsとServer Actionsから離れることを決め、以下の問題を挙げています:
- Server Actionsは非同期であり、ReactでuseEffectブロックや手動の状態管理が必要
- テストが困難 - テストにはインメモリデータベースを使用したPrismaオブジェクトの作成やモックが必要
- 依存性注入の機能がない
- グローバルに順次実行され、「TypeScriptでの人工的なPythonグローバルインタプリタロック」を生み出す
新しい実装では、最初からテストを導入し、最も厳格なTypeScriptモードを使用しています。
📖 完全なソースを読む: HN AI Agents
👀 See Also

完全AI工程师:不再触碰代码
Max Heyerは、エージェントがすべてのコードを書き、自分はdiffを読んで仕様を書き、レビューするだけというワークフローを説明しています。重要なスキルはテイスト(味覚)であり、コードを評価することは書くことよりも難しいと述べています。

アンソピック、責任あるスケーリング方針から主要な安全公約を削除
Anthropicは、競争圧力と開発継続の必要性を理由に、AIシステムの訓練前に適切な安全対策を保証することを要求する中心的な約束を、その責任あるスケーリングポリシーから削除しました。

バークレー研究:AIリビジョンプロンプトはすべて散文を形式性へとドリフトさせる、「声を保持する」場合でも
バークレー校の新しい論文では、Claude、ChatGPT、Geminiを用いて300の個人語りを3つのプロンプト条件下で測定。すべてのモデルと条件において、短縮形、一人称代名詞、語りの親密さが減少し、「声を保持する」プロンプトはドリフトの大きさを減らすだけで、方向は変わらなかった。

バイブコーディング vs エージェンティックエンジニアリング:曖昧化する境界線が気まずい
Simon Willisonは、自身のワークフローにおいてvibe codingとagentic engineeringが収束しつつあることを振り返り、今ではClaude Codeが書いた本番用JSON APIエンドポイントのコードを一行もレビューせずに信頼している——それが奇妙な感じだと述べている。