毎日変わるはずの壁紙ウィジェットが止まった — WidgetKit のリロード予算を実測して設計を組み直した記録
毎日壁紙が切り替わるはずのウィジェットが数日で更新を止めました。WidgetKit のタイムラインとリロード予算、拡張のメモリ上限を実測し、1日分のエントリをまとめて積む設計へ組み直した過程をまとめます。
レビュー導線を出したのに何も表示されない — Play In-App Review の数量制限と「表示保証なし」前提の設計
Play In-App Review API は launchReviewFlow が成功しても、ダイアログが表示されたとは限りません。数量制限・表示保証なし・テストでの無音化という3つの罠を解きほぐし、満足の瞬間に出して衝突を避ける発火設計を、Antigravity に実装させる手順とあわせて記録します。
StoreKit 2 で「課金したのに使えない」と言われたとき — サブスク権利状態のズレを直す運用メモ
StoreKit 2 のサブスクリプションは実装より運用でつまずきます。currentEntitlements と subscription.status のズレ、Transaction.updates の取りこぼし、未 finish トランザクション、復元と返金の扱いを、本番で効いた整流ロジックとともに記録します。
シェア画像の日本語だけが □ になる — Antigravity に next/og の CJK フォント供給を直させた実装メモ
next/og の ImageResponse で日本語タイトルだけが豆腐(□)になる。原因の Satori と woff2 の関係を解きほぐし、Google Fonts の text= サブセットをエッジで軽量に引き当てる実装を、Antigravity に直させる手順とあわせて記録します。
入れ子になったAGENTS.mdの優先順位 — 複数プロジェクトを一つのワークスペースで束ねる合流設計
一つのワークスペースに複数のプロジェクトを置き、それぞれにAGENTS.mdを持たせると、エージェントはどの指示に従うのか曖昧になります。ルートと各プロジェクトの指示が静かに衝突し、片方だけが効いたり両方が混ざったりします。「近いほど強い」を基本則に、上書きと追記を区別して合流させる設計を、動くPython実装と運用の所感つきでまとめました。
保存するエージェントログから秘密を消す — 投入前のリダクション層を設計する
無人で走るエージェントのログを残し始めると、いつかトークンやAPIキーが平文で記録されます。ローテートしても、流出したログは消えません。書き込みの直前で秘密を確実に落とすリダクション層を、正規表現だけに頼らず既知の秘密を登録して消す方式まで含めて、動くPython実装と運用の所感つきで設計します。
エージェントに渡すMCPツールを絞る — 最小権限の許可リスト設計
Antigravity 2.0 に MCP サーバーを足していくと、各エージェントが触れるツールはいつの間にか「全部入り」になります。読み取りしか必要ないエージェントに削除系ツールまで見えている状態は、いつか事故を起こします。ツールをエージェント単位の許可リストで絞り、呼び出し直前で弾き、破壊的操作だけ二段階にする最小権限の設計を、動くPython実装と運用の所感つきでまとめました。
Antigravity の独自ツールが本番で事故るのは『設計』ではなく『再実行』のとき — 冪等化とエラー契約の運用メモ
Antigravity エージェントに独自ツールを足したあと、実運用で本当に問題になるのは再実行と二重副作用です。冪等キー・エラー契約・ヘルスゲート・ツール乱立の抑制を、実装と判断基準ごと整理しました。
並列エージェントの同時実行数を固定しない — 観測した詰まりから自動で増減させる設計
Antigravity 2.0 で複数エージェントを並列に走らせるとき、同時実行数を固定値で決め打ちすると昼は429で詰まり夜は能力を遊ばせます。TCPの輻輳制御に学んだ適応制御(加法的増加・乗法的減少)で、詰まりの兆候から同時実行数を自動で増減させる設計を、動くPython実装と実測の所感つきでまとめました。
戻るボタンで広告が出る/出ないが安定しない — 入れ子のifを独立ガードのリストに作り替えた記録
戻るボタン直後にインタースティシャル広告が稀に重なる不具合を、入れ子の if から理由を返す独立ガードの並びへ作り替えて解決した記録です。評価順序の明示、決定表を起点にしたテスト生成、複数の壁紙アプリへ展開したときに効いた点までまとめました。
エージェントが足した依存を、あとから棚卸しする — ライセンスと出所を追える形で残す設計
エージェント運用を続けると package.json に見覚えのない依存が増えていきます。git 履歴から追加された依存を抽出し、ライセンスを集計してポリシーと突き合わせる棚卸しの実装と、追加理由を残す記録の設計を、動くスクリプトとともに紹介します。
長く走ったエージェントが何をしたかを遡る — 会話内検索を起点にしたレビュー術
Antigravity v2.1.4 で加わった会話ビュー内の検索を、長時間エージェントのレビューの起点として使う方法を整理します。検索語の選び方、見るべき分岐点、背景エージェントのログ突き合わせまで、実際の手順を具体的にまとめました。