2026 OpenClaw フロント実戦:
リモート Mac でバンドル閾値・レポート解析・PR 要約を一本化
マージごとにバンドルを守るには、正規化レポート・CI ゲート・PR 要約返却の三点が有効です。リモート Mac でも再現できるよう、bundle_report.json、ベースライン回帰閾値、OpenClaw による bundle_gate.json 解析、最小権限コメントまでを整理します。Storybook サイズゲート、Vite/Webpack キャッシュ、プリフライト。
01 CI のフロント容量ゲート、OpenClaw 解析、PR への要約返却
① 本番ビルド直後に比較用の単一 JSON を出力。② 既定枝ベースラインと二段(警告/失敗)でゲート。③ OpenClaw が結果を要約し PR に投稿。NODE_ENV=production 等はフレームワークに合わせて固定してください。
プラグイン選定より「出力契約」の固定が先です。webpack-bundle-analyzer、Rollup visualizer、Rspack stats はいずれも正規化で同一スキーマにできます。
パス例 .openclaw/reports/${GITHUB_SHA}/bundle_report.json。PR には巨大 JSON を貼らず実行 URL かアーティファクトへ誘導します。
02 ① アナライザ出力形式の約束(スキーマ)
stats.json は版と設定で形が揺れるため、bundle_report v1 をリポに短く定義し、Node で必ず変換します。最低限は次です。
schemaVersion、generatedAt(ISO-8601)、gitSha、branchtoolchain:Node の major、パッケージマネージャ、バンドラ名と版chunks[]:安定したidまたはエントリ名、rawBytes、任意でgzipBytes、内容差分用のhashtopModules[]:件数上限付きでpath(リポジトリ相対)、bytes、任意でreason(同期 import、動的 import、ベンダ)
ソースマップ本体はゲート JSON に含めない。gzip の出所は README に一行。小さな gzip 差はノイズ扱いでよい、と明示します。
一ビルド一 JSON、UTF-8、stdout 混在禁止。ゲート前に jq empty bundle_report.json で検証。
03 ② 閾値とベースライン戦略
ベースラインは git または SHA 付きアーティファクトに置く。代表例は次表です。
| パターン | 向く場面 | トレードオフ |
|---|---|---|
既定枝の bundle_baseline.json |
エントリチャンクが少なく名前が安定 | 意図的な増加後はボットまたはメンテ PR で更新が必要 |
| main の最後の緑アーティファクトを取得 | 動的チャンクが多く変化が早いアプリ | 保持期間とチャンク命名の決定性が前提 |
二段階推奨:例として合計/チャンクで 5% と 50KB の大きい方を警告、ハード超過や新規チャンク天井で失敗。チャンク名は設定で固定。キャッシュ安定化でコールド CI の偽回帰を減らします。
04 ③ OpenClaw タスク雛形
入力・出力・トリガーを固定し体裁を揃えます。
- 入力:
bundle_report.json、bundle_gate.json、PR 番号、slug。 - 規則:差分降順でチャンク上位三、モジュール計五。絶対パスはマスク。
- 出力:
pr_bundle_summary.md(状態・最大回帰・次の一手)。 - トリガー:ゲート失敗または警告。同一 SHA は二重投稿禁止。
- 秘密:トークンはコメント段の環境変数のみ。ログに出さない。
05 ④ トークンの最小権限
単一リポ限定の GitHub App または PAT。fine-grained は選択リポのみ、API で baseline 取得なら Contents: Read、コメントなら Pull requests: Read and write。workflow/admin:org は不要。シークレットは定期ローテーション。
ワークフローに GITHUB_TOKEN と pull-requests: write があれば gh pr comment で二枚目 PAT を避けられることが多いです。
06 ⑤ 誤検知とフレーク FAQ
チャンク名だけ変わる:ハッシュが ID に混ざっていることが多い。エントリ名で正規化。
gzip と raw が逆方向:圧縮の取り違え。ゲートは raw 主、圧縮は参考。
ベースライン競合:「最新 main」無ロックはブレる。マージベースまたは緑 main を SHA 固定。
二重投稿:<!-- bundle-gate/${SHA} --> マーカー、または POST 前に API で検索。
Mac と Linux:正史ゲートは Linux で同一比較器。Mac は検査・エージェント向け。Node/ロックは揃える。
07 FAQ
なぜ stats.json を直接パースしないのですか?
巨大で版に敏感。薄いスキーマなら jq とプロンプトが長く使えます。
ベースラインのノイズを減らすコツは?
ツールチェーン固定、決定的ビルド、最小バイト差しきい値。
PR コメントに足りる権限は?
単一リポの Pull request 書き込み、または絞った GITHUB_TOKEN。組織管理者不要。
正規化レポート・ベースライン比較・OpenClaw 要約・最小権限 PR 返却の四拍子で、マージ前の肥大を早期可視化します。正史ゲートは Linux、長時間エージェントと Apple Silicon 再現はリモート Mac に載せる分担が現実的です。
常時オン検証には料金とヘルプ(SSH/VNC)を確認し、購入・レンタルはログイン不要です。ノートを占有せずゲートと OpenClaw を回せます。ブログ一覧。
アナライザゲートと OpenClaw を 24 時間体制で
本番に近いフロントビルド、容量回帰ゲート、OpenClaw 自動化に向けた Mac Mini M4 のレンタル・購入。料金、ヘルプ(SSH/VNC)、購入ページはログイン不要です。