OpenClaw · Playwright sharding · リモート Mac · 2026
オープンクロー実戦:シャード集約レポートと flake 閾値をゲートウェイから PR へ返す
2026.04.24
フロント QA 自動化
約 9 分
00 痛みと前提
シャードは速いが失敗行が散り読み手が疲れます。
一通知乱立二未マージ blob でトークン溶け三再試行過多で偽陽性。
同一プルリクエストではマージ完了まで通知を抑えチャンネルを静かに保ちます。
可引用:マージ後一ファイルを境界に。
01 対照
| 観点 | 単独ランナー | シャード並列 |
|---|---|---|
| 通知 | 一括可読。 | 断片多し要約必須。 |
| レポート | 一箇所。 | 衝突避け約束要。 |
| flake | 影響見えやすい。 | 片ごと閾値ズレ。 |
可引用:集約後にオープンクローへ。
02 分片パラメータ表
環境変数は三行で固定し片インデックスはゼロ始まりで統一。
| 変数 | 意味 | 例 |
|---|---|---|
PLAYWRIGHT_SHARD_TOTAL |
総片数 | 例四 |
PLAYWRIGHT_SHARD_INDEX |
片番号 | 零〜三 |
PLAYWRIGHT_HTML_OUTPUT_DIR |
blob 先 | .openclaw/reports/shard-2/ |
03 レポートディレクトリ約束
各片.openclaw/reports/shard-{index}/blob-report。RUN_IDとgit_shaを名に含め上書き回避。
npx playwright merge-reports --reporter=html ./.openclaw/reports/shard-*/blob-report -o ./.openclaw/reports/merged
証跡はトレース整理へ。ゲートウェイは merge 済み要約のみ。
04 オープンクロー呼び出し境界
ゲートウェイはマージ済み JSONと失敗件数・上位名・所要のみ読み短文コメントへ。生ログ・トレース・未マージ blob は渡さない。冪等鍵環境-識別子-日付。検証フックと粒度揃え。
可引用:境界はマージ後一ファイル。
05 再試行しきい値式例
Fをフレーク疑い件数R = min(3, max(1, ceil(0.15×F)))で片上限。ΣR ≤ 8で全体蓋。監視へ数値のみ。
06 再現五手(HowTo)
- 固定:
RUN_IDと総片数一致。 - 隔離:片ごと blob と終了コード分離。
- 畳む:単一ノードで merge。
- 閾値:式で
Rと全体蓋。 - 投稿:表とパスのみオープンクローへ。