Add fail-closed macOS 27 selector driver - #1206
Conversation
|
Scripts/lab/remote.sh — [[ "$resource" =~ '^[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}$' ]] || die "invalid Parallels resource id"In bash, quoting any part of the RHS of Compare with the correctly-written validation added a few lines earlier in the same PR ( [[ ${2:-} =~ ^[0-9]+$ ]] # unquoted — real regex matchThe fix is simply to drop the quotes around the UUID pattern: [[ "$resource" =~ ^[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}$ ]] || die "invalid Parallels resource id"This also means the new test in No other blocking issues found in the rest of the diff (the new |
What changed
Why
Fresh macOS 27 clones currently expose an automation-infrastructure gap: the clean source does not contain the tools, approvals, Remote Management state, or Apple-Account-free console state required for selector capture. This change makes that boundary explicit and fail-closed while providing the evidence driver needed to validate the reusable Desktop Automation Base next.
Impact
Automation will stop before running a System Settings scenario when the guest is not selector-ready. Results distinguish lab preparation failures from unsupported OS selectors and product failures.
Validation
python3 Scripts/lab/tests/macos-27-selector-driver-tests.py(5 tests)bash -n Scripts/lab/keypath-labzsh -n Scripts/lab/remote.shScripts/lab/tests/keypath-lab-tests.shgit diff --checkThe repository review gate selected the remote GitHub review check; this draft must not merge until that check passes.