2026 OpenClaw 実戦:リモート Mac で 9-patch 出力ディレクトリを監視し、黒線ピクセル・命名テンプレ・容量しきい値を一括検証する

対象:ゲーム/Android UI オペ。.9.pngリモート Macの受信箱で夜間も同じ受入にする手順。OpenClaw=監視のデバウンス・単一フライト・版固定バリデータ呼び出し。幾何は 9-patch 納品チェックリスト、キュー/JSONL は 監視・リトライ・ログ HowTo と揃える。

目次

ウォッチドッグの考え方と OpenClaw の役割

ウォッチドッグはFS 上の状態機械:ノイズイベントを無音窓+サイズ安定で畳み、ピクセル検査後のみ out へ。OpenClawは許可 CLI を trace_id で相関させる層。cron より短いバースト向き。初期は インストール手順 を完了。

再現手順(ツリー → 監視 → 検証 → 昇格)

  1. ツリー:~/ninepatch_jobs/<CAMPAIGN>/inboxarchive。書き出しはsymlinkinbox へ。
  2. 命名:README に正規表現と rules_version を CI と共有。自動命名・一括検証
  3. 監視:fswatch または launchd.9.png のみ、一時ファイルとゼロバイト除外。無音 30〜60s 後 enqueue。
  4. 黒線:外周 1px のみ。マーカ #000000、他は alpha=0。逸脱は quarantinePNG QA 併用可。
  5. 容量:下表+バッチ合計+df。通過で manifest.jsonl 1 行。
  6. 昇格:workout/日付/job_id/ を原子移動。失敗は理由付き隔離。

受入しきい値表(数値はプレースホルダ)

数値は差し替え、列は policy YAML と一致させる。

ゲート 測定 例:合格しきい値 不合格時
制御環の純度 外周 1px の RGBA マーカは #000000 不透明、環のその他は alpha=0 quarantineclass=data(盲リトライ禁止)
アンチエイリアス塵 環上で 0<alpha<255 違反ピクセル 0 データ欠陥・JSONL にパス記録
四隅の透明性 四隅ピクセル いずれも alpha=0 データ欠陥
単ファイル min_bytes(xxhdpi 例) ファイルサイズ ≥ 800 空/壊れ疑い → 隔離
単ファイル max_bytes(HUD パッチ xxhdpi 例) ファイルサイズ ≤ 180000 越限 → 隔離+通知
バッチ合計 同一 dequeue のバイト和 ≤ 120 MiB キュー一時停止・オペ再開
空きディスク ジョブボリュームの df 空き率 ≥ 15% かつ絶対 ≥ 25 GiB(厳しい方) 全 dequeue 停止・pause_reason 記録
ICC/色方針 埋め込みプロファイル sRGB IEC61966-2.1(例外は README で署名) ICC 手順へルーティングまたは隔離

実行可能なプレースホルダコマンド

置換は README/リポジトリ固定。未レビュー flag は禁止。

# 0) ジョブ環境(例)
export NPROOT="$HOME/ninepatch_jobs"
export JOB_ID="feat_login_bg__pr124"
export INBOX="$NPROOT/inbox/$JOB_ID"
export LOG="$NPROOT/logs/$(date +%F).jsonl"
mkdir -p "$NPROOT"/{inbox,work,out,failed,quarantine,logs,archive}

# 1) デバウンス enqueue(実装は bin にピン留め)
fswatch -l 2.0 -o "$NPROOT/inbox" | while read -r _; do
  "$NPROOT/bin/debounced_enqueue.sh" --root "$NPROOT" --log "$LOG"
done

# 2) ワーカー単発(同時実行は別プロセスで上限)
"$NPROOT/bin/worker_once.sh" --max-files 32 --trace-id "$(uuidgen)"

# 3) 外周リング検証(倉庫スクリプトへ差し替え)
python3 "$HOME/src/macpng-tools/validate_patch_skirt.py" \
  --glob "$INBOX/*.9.png" \
  --strict-black 000000 \
  --rules-version np_ring_v3 \
  --jsonl-out "$LOG"

# 4) バイト確認(しきい値表と突合)
wc -c < "$INBOX/your_asset_xxhdpi_v1.0.0.9.png"

# 5) 監査 1 行(ローテは launchd/cron で)
printf '%s\n' "{\"ts\":\"$(date -u +%Y-%m-%dT%H:%M:%SZ)\",\"event\":\"promote\",\"job\":\"$JOB_ID\",\"trace_id\":\"$(uuidgen)\"}" \
  >> "$NPROOT/logs/audit-$(date -u +%Y-%m-%d).jsonl"

CLI 鎖:PNG CLI チェーン。ログ形:Lottie ウォッチドッグ

失敗分類・リトライ・ログ保管

一時=バックオフ+JSONL の next_eligible_atデータ=盲リトライ禁止・quarantine運用=全 dequeue 停止。logs/*.jsonl 日次ローテ、古いものを gziparchive/logs/ へ。

運用チェックリスト

  • NVMe のみ。クラウド同期パスは監視に使わない。
  • ウォッチャ 1 本・PID 記録。無音/stat.done の閉じ方を stg/本番で同一。
  • バリデータ版=CI と一致。YAML は Git。Gateway は localhost+狭い許可リスト。

FAQ

目視だけでは足りない?

1px 灰塵は dp ズレの温床。デコード走査で JSONL レシートを残す。

launchd だけ 401

HOME とトークンパスを非対話と揃える。権限 600。

ImageMagick でよいか

CI と同じデコーダ版に。Android ビルドと RGBA 解釈を一致。

Lottie キューと統合?

ログ型のみ共有。inbox は分離

まとめ:ツリー・デバウンス・黒線ゲート・しきい値・分類リトライ・JSONL。専用機は レンタル/購入料金接続ガイド(ログイン不要)。技術インサイト へ。

公開ページのみ(ログイン不要)

リモート Mac で 9-patch 監視と OpenClaw 一括検証を回す

.9.png の受入をノートから切り離し、検証器の版と キュー+JSONL をチームで共有します。

レンタル/購入 料金・ノード SSH/VNC ガイド
9-patch · OpenClaw 2026 監視・黒線・ログ
今すぐレンタル