Summary of work done

Sam selected the recommended Chrome recovery and recurring visibility check. I created /Users/samaguiar/Documents/Projects/admin/scripts/chrome-window-visibility.sh with check and recover modes. I ran recovery without closing tabs or quitting Chrome. Before recovery, Chrome had 3 windows: Sam's Operations Center at 22,22,1302,742; New Incognito Tab at 0,0,1280,600; Sign in - Google Accounts at 0,0,1280,600. After recovery, the same 3 windows were visible and cascaded at 80,80,1260,800; 112,112,1292,832; and 144,144,1324,864.

Recurring monitor

I installed a LaunchAgent at /Users/samaguiar/Library/LaunchAgents/com.sail.chrome-window-visibility.plist to run every 10 minutes. The first attempt used the repo script directly and macOS launchd returned Operation not permitted, likely Documents/TCC behavior. I corrected that by placing the launchd-safe runnable at /Users/samaguiar/Library/Scripts/SAIL/chrome-window-visibility.sh and writing recurring logs to /Users/samaguiar/Library/Logs/SAIL/chrome-window-visibility/. Verification showed launchctl print gui/501/com.sail.chrome-window-visibility with run interval 600 seconds and last exit code 0. The recurring log captured the 3 recovered Chrome windows successfully.

Skill and QA capture

Because this is repeatable, I added Skills/local-mac-window-visibility/SKILL.md and registered it in Skills/SKILL-INDEX.md. I also mirrored the self-audit choices into /Users/samaguiar/Documents/Codex/_qa-queue/2026-05-24.md.

QA performed

Validated both shell scripts with bash -n. Ran the manual check mode and confirmed logs. Verified the LaunchAgent with launchctl print and checked recurring log output. Attempted the skill registry validator named in Skills/SKILL-INDEX.md, but /Users/samaguiar/Documents/Projects/routines-build/scripts/skill_registry_check.py was missing and no replacement was found with a quick file search, so registry validation is pending.

Rollback

To stop the monitor, run launchctl bootout gui/$(id -u)/com.sail.chrome-window-visibility. Then remove /Users/samaguiar/Library/LaunchAgents/com.sail.chrome-window-visibility.plist and /Users/samaguiar/Library/Scripts/SAIL/chrome-window-visibility.sh if the monitor is no longer wanted. The repo script and skill can be reverted through git if desired.

Reason for session ending

Requested recovery and monitor setup are complete and verified. The only pending item is whether Sam wants the monitor expanded, migrated, or left as-is.

Suggested next steps

If the windows disappear again, inspect /Users/samaguiar/Library/Logs/SAIL/chrome-window-visibility/YYYY-MM-DD.log around the time it happened. A future agent can compare the last good bounds to the changed bounds and decide whether Spaces, Stage Manager, display movement, or another window manager is involved. A separate follow-up can repair the stale skill registry validator path.

Handoff note

The main lesson is that launchd on this Mac may refuse to execute scripts directly under Documents even when interactive Codex can run them. Keep launchd runnables in a user Library or local bin path and verify both logs and launchctl print.