feat(doctor): device prereqs replace java/sidecar for ios-device

iosDeviceChecks now verifies devicectl, iproxy on PATH, a connected+paired
device (via ios.ConnectedDevices), and App Store Connect signing creds (via
ioscompanion.VerifyDeviceSigning). The retired JVM sidecar checks stay only
under android.
This commit is contained in:
pj committed 2026-06-08 23:20:35 +05:30
1 parent f5cfc4407e
commit 743b62b2bd
4 files changed
+120 -13

No files matched your search

@@ -75,6 +75,14 @@ func readSigningCredentials() (signingCredentials, error) {
return creds, nil
}
// VerifyDeviceSigning reports whether the device signing environment is complete
// and the App Store Connect key file exists. The doctor calls it so the device
// preflight surfaces missing credentials before a run reaches the build step.
func VerifyDeviceSigning() error {
_, err := readSigningCredentials()
return err
}
func firstNonEmpty(values ...string) string {
for _, value := range values {
if value != "" {
+6
View File
@@ -39,6 +39,12 @@ type coreDeviceList struct {
// canned devicectl output without invoking xcrun.
var listDevices = coreDevices
// ConnectedDevices lists the physical iOS devices devicectl reports. The doctor
// uses it to confirm at least one device is connected and paired.
func ConnectedDevices(ctx context.Context) ([]Device, error) {
return listDevices(ctx)
}
// ResolveDevice picks the physical iOS device a run drives. An empty query
// resolves the single connected device (an error names them all when several
// are connected). A non-empty query matches a device by name, hardware UDID, or