⏱️ 実行の最適化 (Self-Tuning & Dynamic Wait)
最大待機時間 = 記録された操作間隔 × (1 + バッファ比率)
- タイムアウト限界の算出: ユーザーの実際の操作時間に対し、環境変数等で定義した割合(例:30%)をバッファとして加算し、PC負荷の揺らぎによる不要な自己修復の発動(誤検知)を防止します。
- 即時ポーリング: 最大待機時間までただ待つのではなく、200ms間隔でImage Diff検証を実施。画面遷移が完了した瞬間に最速で次のステップへ進行します。
🖼️ 画像キャプチャの最適化 (Image Lifecycle Optimization)
- トリガーの拡大(マウス&キー): 高精度なコンテキスト抽出を行うため、マウスクリック操作だけでなく、キーボード操作(キー入力)時もスクリーンショット取得(Pre画像およびCrop画像)の契機とします。
- 操作直後(Post)スクショの廃止: 各アクションの直後に専用のスクリーンショットを独立して撮影する仕様は廃止します。「連続する次のステップの直前(Pre)」に撮影される画像が、前のアクションの実行直後のUI状態を実質的に内包していると見なせるため、処理を一本化して無駄なI/Oを省きます。
- 低変化率画像の一律自動削除(間引き機構): テキスト入力欄への文字入力などのキー操作時、画面変化が非常に少ない割に大量の重複画像ファイルが短時間で生まれてしまう課題を解決します。今回撮影したスクリーンショットと「前回の有効なスクリーンショット」との画像差分(変化率)を算出し、変化率が事前に定義した閾値未満(軽微な変化)であった場合、その冗長な画像ファイルをディスクから即時自動削除(間引き)してストレージ消費を抑えます。
🛡️ 堅牢性と安全対策 (Safety & Fail-safes)
- ワンキー状態制御(Ctrl + \): 操作の迷いをなくし、誤動作時や異常発生時のリスクを最小化するため、システムの主要な状態遷移(記録開始、記録終了、緊急停止)をすべて単一のショートカットキー(
Ctrl + \)に統合します。
- 待機中(ホーム画面): 新規マクロの記録を即座に開始。
- 記録中(ウィジェット): 記録をその場で安全に終了し、バックグラウンド自動生成フェーズへ移行。
- マクロ実行中: OSレベルの最優先割り込みにより、実行プロセスを即座に強制終了(グローバル・キルスイッチ)。
- Bounding Box制限: AIが再生成した座標であっても、対象アプリケーションのウィンドウ外(タスクバーやシステムトレイ等)への操作をドライバレベルでブロックします。