@stim-cli/core 1.19.0 → 1.20.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,6 +3,7 @@ import fs, { existsSync, lstatSync, mkdirSync, readFileSync, readdirSync, realpa
3
3
  import os from "node:os";
4
4
  import path, { basename, dirname, join } from "node:path";
5
5
  import { createHash, randomBytes, timingSafeEqual } from "node:crypto";
6
+ import { AsyncLocalStorage } from "node:async_hooks";
6
7
  import { spawnSync } from "node:child_process";
7
8
  import { connect, createServer, isIP } from "node:net";
8
9
  //#region dir-lock.ts
@@ -152,6 +153,48 @@ function withDirLock(lockPath, fn, { waitMs = DEFAULT_LOCK_WAIT_MS, pollMs = DEF
152
153
  }
153
154
  }
154
155
  //#endregion
156
+ //#region state/json-file.ts
157
+ const readScope = new AsyncLocalStorage();
158
+ /**
159
+ * Runs `fn` with each state file read from disk at most once: inside it, including after an `await`, `readStateFile`
160
+ * returns the text of the first read of that path, and a path found missing stays missing. Callers still parse every time, so no two
161
+ * share a mutable object. Only for computations that write none of the files they read.
162
+ */
163
+ function withStateReadCache(fn) {
164
+ return readScope.run(/* @__PURE__ */ new Map(), fn);
165
+ }
166
+ function readStateFile(path) {
167
+ const cache = readScope.getStore();
168
+ if (!cache) return readFileSync(path, "utf-8");
169
+ const cached = cache.get(path);
170
+ if (cached) {
171
+ if ("missing" in cached) throw cached.missing;
172
+ return cached.text;
173
+ }
174
+ try {
175
+ const text = readFileSync(path, "utf-8");
176
+ cache.set(path, { text });
177
+ return text;
178
+ } catch (error) {
179
+ if (error.code === "ENOENT") cache.set(path, { missing: error });
180
+ throw error;
181
+ }
182
+ }
183
+ function readJsonFile(path) {
184
+ return JSON.parse(readStateFile(path));
185
+ }
186
+ function isJsonObject(value) {
187
+ return typeof value === "object" && value !== null && !Array.isArray(value);
188
+ }
189
+ function readJsonObject(path) {
190
+ try {
191
+ const value = readJsonFile(path);
192
+ return isJsonObject(value) ? value : null;
193
+ } catch {
194
+ return null;
195
+ }
196
+ }
197
+ //#endregion
155
198
  //#region macos-resources.ts
156
199
  /** Whether a resource destination is a contained, non-empty path under Contents/Resources. */
157
200
  function validMacosResourceDestination(value) {
@@ -431,6 +474,17 @@ function absoluteEnvPath(name) {
431
474
  function configDir() {
432
475
  return absoluteEnvPath("STIM_HOME") || path.join(os.homedir(), ".stim");
433
476
  }
477
+ /** Creates `dir` and its missing parents owner-only, and narrows an existing `dir` that grants group or other access when the filesystem and owner allow it. */
478
+ function ensurePrivateDir(dir) {
479
+ fs.mkdirSync(dir, {
480
+ recursive: true,
481
+ mode: 448
482
+ });
483
+ if (process.platform === "win32") return;
484
+ try {
485
+ if ((fs.statSync(dir).mode & 63) !== 0) fs.chmodSync(dir, 448);
486
+ } catch {}
487
+ }
434
488
  function workspaceSlug(projectRoot) {
435
489
  return path.basename(path.resolve(projectRoot)).normalize("NFKD").replace(/[^A-Za-z0-9]+/g, "-").replace(/^-+|-+$/g, "").toLowerCase().slice(0, 48) || "workspace";
436
490
  }
@@ -469,7 +523,9 @@ function logSize(file) {
469
523
  }
470
524
  function cachePathSetting(key) {
471
525
  try {
472
- const value = JSON.parse(fs.readFileSync(path.join(configDir(), "config.json"), "utf-8"))?.caches?.[key];
526
+ const parsed = JSON.parse(fs.readFileSync(path.join(configDir(), "config.json"), "utf-8"));
527
+ const caches = isJsonObject(parsed) ? parsed.caches : void 0;
528
+ const value = isJsonObject(caches) ? caches[key] : void 0;
473
529
  return typeof value === "string" && path.isAbsolute(value) ? value : null;
474
530
  } catch {
475
531
  return null;
@@ -534,7 +590,8 @@ function buildCacheKey(platform, fingerprintHash, options = {}) {
534
590
  const compiler = typeof opts.compiler === "string" ? slug(opts.compiler) : "";
535
591
  const profile = typeof opts.buildProfile === "string" ? slug(opts.buildProfile) : "";
536
592
  const scheme = platform === "ios" && typeof opts.scheme === "string" && opts.scheme ? createHash("sha256").update(opts.scheme).digest("hex") : "";
537
- return `${fingerprintHash}-${buildVariant(platform, opts)}-${target}${abi ? `-${abi}` : ""}${allArch}${compiler ? `-${compiler}` : ""}${profile ? `-${profile}` : ""}${scheme ? `-scheme-${scheme}` : ""}`;
593
+ const gradleProject = platform === "android" && typeof opts.gradleProject === "string" && opts.gradleProject ? createHash("sha256").update(opts.gradleProject).digest("hex") : "";
594
+ return `${fingerprintHash}-${buildVariant(platform, opts)}-${target}${abi ? `-${abi}` : ""}${allArch}${compiler ? `-${compiler}` : ""}${profile ? `-${profile}` : ""}${scheme ? `-scheme-${scheme}` : ""}${gradleProject ? `-gradle-${gradleProject}` : ""}`;
538
595
  }
539
596
  const METRO_NAMED_CACHE_LAYOUT = "metro-named-v1";
540
597
  function cacheManifestLockPath(file) {
@@ -545,7 +602,7 @@ function readCacheManifest(file) {
545
602
  const parsed = JSON.parse(fs.readFileSync(file, "utf-8"));
546
603
  return {
547
604
  version: 1,
548
- caches: Array.isArray(parsed?.caches) ? parsed.caches : []
605
+ caches: (isJsonObject(parsed) && Array.isArray(parsed.caches) ? parsed.caches : []).filter(isJsonObject)
549
606
  };
550
607
  } catch {
551
608
  return {
@@ -600,4 +657,4 @@ function matchesCache(cache, match) {
600
657
  return match.layout === void 0 || cache.layout === match.layout;
601
658
  }
602
659
  //#endregion
603
- export { validMacosResourceDestination as A, workspaceStateDir as C, artifactIn as D, compiledHelper as E, resolveArtifact as O, workspaceSlug as S, createMetroGateway as T, tagSharedStore as _, buildCacheRoot as a, workspaceLogDir as b, cachePathSetting as c, metroCacheRoot as d, readCacheManifest as f, sharedStoreRoot as g, rotatedLogPath as h, buildCacheKey as i, withDirLock as j, storeArtifact as k, configDir as l, rotateLog as m, METRO_NAMED_CACHE_LAYOUT as n, cacheManifestLockPath as o, registerCache as p, STORE_ROOT_TAG as r, cacheNameSegment as s, LOG_ROTATE_BYTES as t, hostSimulatorArch as u, updateCacheManifest as v, createMetroBridge as w, workspaceName as x, workspaceId as y };
660
+ export { storeArtifact as A, workspaceSlug as C, compiledHelper as D, createMetroGateway as E, readStateFile as F, withStateReadCache as I, withDirLock as L, isJsonObject as M, readJsonFile as N, artifactIn as O, readJsonObject as P, workspaceName as S, createMetroBridge as T, sharedStoreRoot as _, buildCacheRoot as a, workspaceId as b, cachePathSetting as c, hostSimulatorArch as d, metroCacheRoot as f, rotatedLogPath as g, rotateLog as h, buildCacheKey as i, validMacosResourceDestination as j, resolveArtifact as k, configDir as l, registerCache as m, METRO_NAMED_CACHE_LAYOUT as n, cacheManifestLockPath as o, readCacheManifest as p, STORE_ROOT_TAG as r, cacheNameSegment as s, LOG_ROTATE_BYTES as t, ensurePrivateDir as u, tagSharedStore as v, workspaceStateDir as w, workspaceLogDir as x, updateCacheManifest as y };
@@ -734,7 +734,7 @@ interface HostedAppOffer {
734
734
  session: string;
735
735
  attempt: string;
736
736
  bundleId: string;
737
- mode: "development" | "release";
737
+ mode: "development" | "release" | "process";
738
738
  devClientScheme?: string;
739
739
  arguments?: string[];
740
740
  manifest: {
@@ -1175,6 +1175,17 @@ interface MaintenanceSize {
1175
1175
  idleDays?: number | null;
1176
1176
  blocked?: string;
1177
1177
  }
1178
+ /**
1179
+ * A process whose physical footprint, as `top` reports it, is abnormally large. `command` is the one command that
1180
+ * safely restarts or stops it, null when Stim knows none; `note` says what that command does.
1181
+ */
1182
+ interface MemoryCulprit {
1183
+ pid: number;
1184
+ name: string;
1185
+ bytes: number;
1186
+ command: string | null;
1187
+ note: string | null;
1188
+ }
1178
1189
  interface MaintenancePressure {
1179
1190
  disk: {
1180
1191
  volume: string;
@@ -1184,6 +1195,8 @@ interface MaintenancePressure {
1184
1195
  level: "normal" | "warning" | "critical" | null;
1185
1196
  availableBytes: number | null;
1186
1197
  pressured: boolean;
1198
+ /** Read only while the level is warning or critical; absent otherwise. */
1199
+ culprits?: MemoryCulprit[];
1187
1200
  };
1188
1201
  warningSince: number | null;
1189
1202
  }
@@ -1406,6 +1419,8 @@ interface BuildReport {
1406
1419
  missProvisional?: true;
1407
1420
  /** What the native build tool is doing now, once it printed a line Stim recognizes. */
1408
1421
  detail?: BuildDetail;
1422
+ /** What the `device` or `launch` phase is waiting on, once Stim observed it; absent otherwise and from older Stim. */
1423
+ activity?: BuildActivity;
1409
1424
  placement: BuildPlacement;
1410
1425
  /** While `phase` is `wait`: the workspace whose build of the same artifact this run waits on, when it is known. */
1411
1426
  waitingOn?: {
@@ -1413,6 +1428,18 @@ interface BuildReport {
1413
1428
  };
1414
1429
  waitingFor?: BuildWaitingFor;
1415
1430
  }
1431
+ /**
1432
+ * What a run's `device` or `launch` phase is waiting on. `booting` lasts while the run waits for the owned simulator or
1433
+ * emulator it started booting. `bundling` starts when the app's bundle request reaches this workspace's
1434
+ * Metro and ends when Metro delivered it; `percent` is Metro's own progress for that request, present only once Metro
1435
+ * reported one. `waiting-ready` lasts while the app reports its readiness pending. `startedAt` is when the evidence was
1436
+ * recorded.
1437
+ */
1438
+ interface BuildActivity {
1439
+ name: "booting" | "bundling" | "waiting-ready";
1440
+ startedAt: string;
1441
+ percent?: number;
1442
+ }
1416
1443
  /** One phase a running build is expected to go through, and its median duration in comparable runs. */
1417
1444
  interface PlannedPhase {
1418
1445
  phase: BuildPhase;
@@ -1633,7 +1660,7 @@ interface WorktreeFacts {
1633
1660
  path: string;
1634
1661
  branch?: string;
1635
1662
  repository?: string;
1636
- /** Null when git could not be read in time, or the worktree is in a folder status does not open. */
1663
+ /** Null when git could not be read in time, the worktree is in a folder status does not open, or one-shot status skipped an idle environment or an unprovisioned worktree. */
1637
1664
  git?: WorktreeGit | null;
1638
1665
  /** Null when GitHub has no pull request for the branch; absent when unknown, such as without `gh`. */
1639
1666
  pullRequest?: WorktreePullRequest | null;
@@ -1907,6 +1934,10 @@ interface EnvironmentState {
1907
1934
  tutorial?: {
1908
1935
  version: number;
1909
1936
  };
1937
+ /** When `stim doctor` last ran in this workspace, per platform; absent until it has run. */
1938
+ doctorRuns?: Partial<Record<"ios" | "android", {
1939
+ at: string;
1940
+ }>>;
1910
1941
  live: boolean;
1911
1942
  phase?: WorkspacePhase;
1912
1943
  /** When the warm started (`warming`) or finished (`ready`); null for `live` and `idle`. */
@@ -2429,4 +2460,4 @@ declare function readSetupJournal(hash: string): SetupJournal | null;
2429
2460
  declare function isJournalExpired(journal: SetupJournal, now?: number): boolean;
2430
2461
  declare function isSetupJournalPrunable(journal: SetupJournal, now: number): boolean;
2431
2462
  //#endregion
2432
- export { projectRootDirectories as $, WebViewport as $a, NdjsonRecord as $c, HOSTED_AGENT_DRIVERS as $i, MacosBuild as $n, serverSetupDir as $o, DeviceIdleShutdownRecord as $r, DEBUG_ENV as $s, BuildPlanPayload as $t, DeviceHostMachineCredential as A, validHostedAppBlob as Aa, SettingsObject as Ac, HostedDevicePlatform as Ai, RemoteDeviceState as An, buildMachinesLock as Ao, hostedIosRecords as Ar, logFiles as As, ACTIVITY_RECENCY_BASES as At, RunHistory as B, REMOTE_DEVICE_BACKENDS as Ba, tryAcquireBuildSlotClaim as Bc, hostedConsolePort as Bi, WEB_PAGE_STATES as Bn, easMachineStateRoot as Bo, parseHostedAndroidPlacement as Br, countErrorEntries as Bs, AppPresence as Bt, pinnedEndpoint as C, hostedAppBlobs as Ca, ConcurrencyLimits as Cc, workspaceLastUsed as Ci, MetroBundleState as Cn, recordingDeviceName as Co, MaintenanceStatus as Cr, advanceTail as Cs, readBuildDetail as Ct, HostedMetroRequest as D, readHostedAppMetadata as Da, PlatformRecords as Dc, HostedDeviceOffer as Di, PhysicalDeviceConnection as Dn, archiveLock as Do, HostedIosPlacement as Dr, compileGrep as Ds, readPullRequestCache as Dt, HostedMetroGateway as E, readHostedApp as Ea, DoctorRunRecord as Ec, HostedDevice as Ei, PHYSICAL_DEVICE_CONNECTIONS as En, archiveDir as Eo, readMaintenanceState as Er, bundleMarkerPlatform as Es, readEndedAgentSessions as Et, HISTORY_LIMIT as F, ANDROID_EMULATOR_APPS as Fa, MachineCapacity as Fc, HostedIosDevice as Fi, StatusCapacity as Fn, deviceHostMachinesFile as Fo, HostedAndroidStatus as Fr, readLogRecords as Fs, ActivityRecencyBasis as Ft, StatsCapacityWait as G, SettingDefinition as Ga, AgentDeviceUsageRoots as Gc, parseHostedLocalDeviceCount as Gi, WebPageState as Gn, gitMergeCacheDir as Go, unreadableHostedNative as Gr, readCreatedDevices as Gs, BuildDetail as Gt, STATS_VERSION as H, SETTINGS as Ha, readSwiftpmCacheUsage as Hc, parseHostedAndroidDevice as Hi, WORKSPACE_STAGE_KINDS as Hn, easSessionLedgerLock as Ho, HostedNativePlacement as Hr, CreatedDevices as Hs, BUILD_RESULTS as Ht, OffloadSummary as I, ANDROID_PCH_CHOICES as Ia, buildSlotPath as Ic, HostedNativeOffer as Ii, StatusIssue as In, deviceHostMachinesLock as Io, hostedAndroidDeviceName as Ir, readLogTimeline as Is, AgentSession as It, StatsReport as J, SettingType as Ja, readAgentDeviceUsageCache as Jc, parseHostedPlatformDevice as Ji, WorktreeFacts as Jn, maintenanceDir as Jo, DEVICE_IDLE_SHUTDOWN_KEY as Jr, isJsonObject as Js, BuildMissCategory as Jt, StatsPlacement as K, SettingEntry as Ka, agentDeviceUsageFile as Kc, parseHostedNativeOffer as Ki, WorkspacePhase as Kn, maintenanceAttemptFile as Ko, BUILD_HISTORY_KEY as Kr, readEasSessionLedger as Ks, BuildDiagnostic as Kt, PLACEMENT_DECISIONS as L, IOS_SIMULATOR_APPS as La, buildSlotsDir as Lc, assertHostedDeviceLedger as Li, StatusIssueCode as Ln, deviceViewersDir as Lo, hostedAndroidPlacements as Lr, recordMatches as Ls, AgentTool as Lt, BuildMachineTotals as M, SETTINGS_SCHEMA_URL as Ma, SupervisorRecord as Mc, HostedDeviceSelectors as Mi, STATUS_ISSUE_CODES as Mn, createdDevicesFile as Mo, parseHostedIosPlacement as Mr, parseSince as Ms, APP_PROCESS_STATES as Mt, CAPACITY_REFUSAL_LIMIT as N, settingsJsonSchema as Na, BuildMachineCredential as Nc, HostedDeviceSession as Ni, SimulatorState as Nn, createdDevicesLock as No, unreadableHostedIos as Nr, queryJsonLogs as Ns, ActiveBuildState as Nt, hostedMetroGateways as O, rememberHostedAppBlobRename as Oa, ProjectRecord as Oc, HostedDeviceOfferRequest as Oi, PhysicalDeviceState as On, archiveRoot as Oo, HostedIosStatus as Or, fileSizes as Os, withDerivedFacts as Ot, CAPACITY_REFUSAL_MAX_AGE_MS as P, ANDROID_COMPILER_CACHE_CHOICES as Pa, readBuildMachines as Pc, HostedIosChoice as Pi, StatsPlatform as Pn, deviceHostMachinesClaims as Po, HostedAndroidPlacement as Pr, queryLogs as Ps, ActivityDriver as Pt, offloadSummary as Q, WEB_VIEWPORTS as Qa, LEVELS as Qc, readHostedSessions as Qi, MacosAppState as Qn, pullRequestCacheDir as Qo, DevServerStopRequest as Qr, withStateReadCache as Qs, BuildPlacement as Qt, ReadStatsResult as R, OFFLOAD_MODES as Ra, machineCapacity as Rc, deviceHostArea as Ri, StatusPayload as Rn, diskUsageCacheDir as Ro, hostedAndroidRecords as Rr, sortByTs as Rs, AndroidDeviceState as Rt, parseMachine as S, hostedAppAttempt as Sa, validateAutomaticPool as Sc, readWorkspaceState as Si, MemorySource as Sn, recordedBytes as So, MaintenanceState as Sr, QueryCriteria as Ss, readAgentSessionsCache as St, HOSTED_METRO_REQUESTS_KEY as T, parseHostedAppOffer as Ta, DeviceRecord as Tc, HostedAndroidDevice as Ti, NativeBuildStep as Tn, agentSessionsCacheFile as To, readMaintenanceAttempt as Tr, buildCriteria as Ts, readDiskUsageFailure as Tt, StatsBucket as U, SETTING_GROUPS as Ua, swiftpmCacheUsageFile as Uc, parseHostedChoice as Ui, WarmStep as Un, emulatorLogFile as Uo, hostedNativeRecords as Ur, EasSessionClaim as Us, BuildCacheHit as Ut, RunSample as V, RemoteDeviceBackend as Va, SwiftpmCacheUsage as Vc, hostedDeviceId as Vi, WORKSPACE_PHASES as Vn, easSessionLedgerFile as Vo, unreadableHostedAndroid as Vr, CreatedDevicePlatform as Vs, BUILD_PHASES as Vt, StatsCapacityRefusal as W, SETTING_SCOPES as Wa, AgentDeviceUsage as Wc, parseHostedDevice as Wi, WebBrowserState as Wn, getConfigPath as Wo, parseHostedNativePlacement as Wr, EasSessionLedgerRead as Ws, BuildCause as Wt, decodeStats as X, TUNNEL_MODES as Xa, AgentTarget as Xc, readHostedDevice as Xi, WorktreePullRequest as Xn, maintenanceRunClaims as Xo, DEV_SERVER_STOP_REQUEST_KEY as Xr, readJsonObject as Xs, BuildMissReason as Xt, StatsScope as Y, SettingsPayload as Ya, AgentActionReaderOptions as Yc, parseHostedRequest as Yi, WorktreeGit as Yn, maintenanceNdjsonFile as Yo, DEVICE_RECLAIM_REASON as Yr, readJsonFile as Ys, BuildMissChange as Yt, findProjectRoot as Z, TunnelMode as Za, createAgentActionReader as Zc, readHostedDeviceLedger as Zi, MacosAppRecord as Zn, maintenanceStateFile as Zo, DevServerStopRecord as Zr, readStateFile as Zs, BuildPhase as Zt, Endpoint as _, HostedAppDelivery as _a, loadConfig as _c, readDevicePlacement as _i, MEMORY_SOURCES as _n, closedSegmentName as _o, MaintenanceMode as _r, workspaceRecordingsDir as _s, diskUsageCacheFile as _t, parseSetupJournal as a, HostedAppLaunch as aa, allMetroPorts as ac, READY_PHASE_MS as ai, DeviceActivity as an, settingDefinition as ao, ArchivedBytes as ar, statsFile as as, trimCapacityWaits as at, endpoint as b, HostedAppRecord as ba, automaticMachineEnabled as bc, readWarmRecord as bi, MachineUsageState as bn, listSegments as bo, MaintenanceRecord as br, ERROR_SOURCES as bs, listStatusCacheEntries as bt, HOSTED_LOGS_FIRST_BYTES as c, HostedMacosPlacement as ca, findEnclosingWorktreeRoot as cc, WarmRecord as ci, DevicePlacement as cn, runId as co, archiveEnabled as cr, workspaceAgentDeviceDir as cs, DeviceViewersRecord as ct, HostedLogsPage as d, parseHostedAgentAccess as da, getParkedMax as dc, lastUseFrom as di, EnvironmentDisk as dn, RECORDING_FOOTAGE_MS as do, readArchive as dr, workspaceEndedAgentsFile as ds, stimBuildDigest as dt, HOSTED_MACOS_APP_SLOTS as ea, DebugLog as ec, IDLE_STOP_KEY as ei, SOURCES as el, BuildPlatform as en, acceptsShape as eo, MacosProcess as er, setupJournalFile as es, readRunEstimates as et, hostedMacosLogsDir as f, parseHostedAgentGrant as fa, getProject as fc, parseMissReason as fi, EnvironmentState as fn, RECORDING_PLATFORMS as fo, readArchiveState as fr, workspaceEndedAgentsLock as fs, AgentSessionsCache as ft, readLogsSince as g, HOSTED_APP_CHUNK_BYTES as ga, isPathPrefix as gc, readDeviceIdleShutdowns as gi, MACHINE_OWNER_KINDS as gn, capDrops as go, MaintenanceCheck as gr, workspaceMetadataFile as gs, agentSessionOf as gt, readHostedNativeLogsCheckpoint as h, parseHostedMacosPlacement as ha, getRepoSettings as hc, readDevServerStopRequest as hi, LastBuildReport as hn, RecordingPlatform as ho, MaintenanceActionKind as hr, workspaceLogsDir as hs, StatusCacheEntry as ht, isSetupJournalPrunable as i, HostedAgentLease as ia, ParkedMax as ic, MetroLastStop as ii, readNdjsonGenerations as il, ChecksState as in, isSensitiveReference as io, readMacosRecord as ir, sharedPods as is, trimCapacityRefusals as it, readDeviceHostMachines as j, SETTINGS_SCHEMA_FILE as ja, StimConfig as jc, HostedDeviceRequest as ji, RunOutcomeKind as jn, configLockPath as jo, hostedIosStatus as jr, markerWindow as js, AGENT_TOOLS as jt, hostedMetroRequests as k, validHostedAppArguments as ka, RepoRecord as kc, HostedDevicePhase as ki, PlannedPhase as kn, buildMachinesFile as ko, hostedIosPlacements as kr, followLogs as ks, withGitChip as kt, HOSTED_LOGS_PAGE_BYTES as l, hostedMacosAppSlot as la, findProjectByMetroPort as lc, WorkspaceState as li, DiskMeasure as ln, validRunId as lo, archivedUsage as lr, workspaceBuildDetailFile as ls, ViewedDevice as lt, parseHostedLogsCursor as m, parseHostedMacosDevice as ma, getProjectSettings as mc, readDevServerStop as mi, GitChipPart as mn, RecordedSegment as mo, MaintenanceAction as mr, workspaceLogErrorIndex as ms, PullRequestCacheEntry as mt, SetupJournal as n, HostedAgentDriverName as na, debugLogDir as nc, LAST_BUILD_KEYS as ni, parseNdjsonLine as nl, BuildResult as nn, expectedShape as no, parseMacosRecord as nr, sharedCompilationCache as ns, readStatsReport as nt, readSetupJournal as o, HostedMacosChoice as oa, buildWorkerRoot as oc, WARM_KEY as oi, DeviceAppProcess as on, settingValueError as oo, ArchivedUsage as or, supervisorLogFile as os, trimSamples as ot, hostedNativeLogsDir as p, parseHostedMacosChoice as pa, getProjectSetting as pc, readBuildHistory as pi, GitChip as pn, RecordedDevice as po, readArchives as pr, workspaceGradleBuild as ps, ENDED_AGENT_RETENTION_MS as pt, StatsRecord as q, SettingScope as qa, readAgentDeviceUsage as qc, parseHostedOfferRequest as qi, WorkspaceStage as qn, maintenanceChildLogFile as qo, BUILD_HISTORY_LIMIT as qr, validEasSessionClaim as qs, BuildHistoryEntry as qt, isJournalExpired as r, HostedAgentGrant as ra, debugLoggingEnabled as rc, MAINTENANCE_LOG_NAME as ri, parseNdjsonText as rl, BuildWaitingFor as rn, isLayeredSetting as ro, readHostedMacosApp as rr, sharedGradle as rs, statsProjectKey as rt, agentDeviceStateDirs as s, HostedMacosDevice as sa, configCorruptRepair as sc, WORKSPACE_AGENT_KEY as si, DeviceLeaseState as sn, RUN_ID_ENV as so, ArchivedWorkspace as sr, supervisorPidFile as ss, wholePhases as st, SetupCapability as t, HostedAgentAccess as ta, createDebugLog as tc, IdleStopRecord as ti, levelRank as tl, BuildReport as tn, coerceSettingText as to, macosAppState as tr, sharedCcache as ts, readStats as tt, HostedLogsCursor as u, hostedMacosBundleId as ua, getConcurrencyLimits as uc, buildDiagnostics as ui, EndedAgentSession as un, RECORDING_CAP_BYTES as uo, linkReplacedArchives as ur, workspaceDerivedData as us, readViewedDevices as ut, TAILNET_MACHINE_PATTERN as v, HostedAppFile as va, withConfigLock as vc, readIdleStop as vi, MachineOwner as vn, footageDrops as vo, MaintenancePass as vr, workspaceStateFile as vs, diskUsageFailureFile as vt, HOSTED_METRO_GATEWAYS_KEY as w, parseHostedAppManifest as wa, Config as wc, HostedAndroidChoice as wi, NATIVE_BUILD_STEPS as wn, recordingEnabled as wo, parseMaintenanceState as wr, attachExpoErrorContext as ws, readDiskUsage as wt, findPeer as x, hostedAppArea as xa, requireAutomaticMachine as xc, readWorkspaceAgent as xi, MacosBuildPlanPayload as xn, openSegmentName as xo, MaintenanceSize as xr, NATIVE_CRASH_LOG_PREFIX as xs, pullRequestCacheFile as xt, TailnetPeer as y, HostedAppOffer as ya, AutomaticPoolRole as yc, readLastBuilds as yi, MachineOwnerKind as yn, listRecordedDevices as yo, MaintenancePressure as yr, workspaceStateLock as ys, endedAgentSessionOf as yt, RunEstimates as z, OffloadMode as za, saturation as zc, deviceHostRoot as zi, TUTORIAL_VERSION as zn, diskUsageWalkClaims as zo, hostedAndroidStatus as zr, tailRead as zs, AndroidRuntimeFacts as zt };
2463
+ export { projectRootDirectories as $, TunnelMode as $a, createAgentActionReader as $c, readHostedDeviceLedger as $i, MacosAppState as $n, maintenanceStateFile as $o, DevServerStopRecord as $r, readStateFile as $s, BuildPlacement as $t, DeviceHostMachineCredential as A, rememberHostedAppBlobRename as Aa, ProjectRecord as Ac, HostedDeviceOfferRequest as Ai, PlannedPhase as An, archiveRoot as Ao, HostedIosStatus as Ar, fileSizes as As, ACTIVITY_RECENCY_BASES as At, RunHistory as B, OFFLOAD_MODES as Ba, machineCapacity as Bc, deviceHostArea as Bi, TUTORIAL_VERSION as Bn, diskUsageCacheDir as Bo, hostedAndroidRecords as Br, sortByTs as Bs, AppPresence as Bt, pinnedEndpoint as C, hostedAppArea as Ca, requireAutomaticMachine as Cc, readWorkspaceAgent as Ci, MemorySource as Cn, openSegmentName as Co, MaintenanceState as Cr, NATIVE_CRASH_LOG_PREFIX as Cs, readBuildDetail as Ct, HostedMetroRequest as D, parseHostedAppOffer as Da, DeviceRecord as Dc, HostedAndroidDevice as Di, PHYSICAL_DEVICE_CONNECTIONS as Dn, agentSessionsCacheFile as Do, readMaintenanceAttempt as Dr, buildCriteria as Ds, readPullRequestCache as Dt, HostedMetroGateway as E, parseHostedAppManifest as Ea, Config as Ec, HostedAndroidChoice as Ei, NativeBuildStep as En, recordingEnabled as Eo, parseMaintenanceState as Er, attachExpoErrorContext as Es, readEndedAgentSessions as Et, HISTORY_LIMIT as F, settingsJsonSchema as Fa, BuildMachineCredential as Fc, HostedDeviceSession as Fi, StatsPlatform as Fn, createdDevicesLock as Fo, unreadableHostedIos as Fr, queryJsonLogs as Fs, ActivityRecencyBasis as Ft, StatsCapacityWait as G, SETTING_GROUPS as Ga, swiftpmCacheUsageFile as Gc, parseHostedChoice as Gi, WebBrowserState as Gn, emulatorLogFile as Go, hostedNativeRecords as Gr, EasSessionClaim as Gs, BuildCause as Gt, STATS_VERSION as H, REMOTE_DEVICE_BACKENDS as Ha, tryAcquireBuildSlotClaim as Hc, hostedConsolePort as Hi, WORKSPACE_PHASES as Hn, easMachineStateRoot as Ho, parseHostedAndroidPlacement as Hr, countErrorEntries as Hs, BUILD_RESULTS as Ht, OffloadSummary as I, ANDROID_COMPILER_CACHE_CHOICES as Ia, readBuildMachines as Ic, HostedIosChoice as Ii, StatusCapacity as In, deviceHostMachinesClaims as Io, HostedAndroidPlacement as Ir, queryLogs as Is, AgentSession as It, StatsReport as J, SettingEntry as Ja, agentDeviceUsageFile as Jc, parseHostedNativeOffer as Ji, WorkspaceStage as Jn, maintenanceAttemptFile as Jo, BUILD_HISTORY_KEY as Jr, readEasSessionLedger as Js, BuildHistoryEntry as Jt, StatsPlacement as K, SETTING_SCOPES as Ka, AgentDeviceUsage as Kc, parseHostedDevice as Ki, WebPageState as Kn, getConfigPath as Ko, parseHostedNativePlacement as Kr, EasSessionLedgerRead as Ks, BuildDetail as Kt, PLACEMENT_DECISIONS as L, ANDROID_EMULATOR_APPS as La, MachineCapacity as Lc, HostedIosDevice as Li, StatusIssue as Ln, deviceHostMachinesFile as Lo, HostedAndroidStatus as Lr, readLogRecords as Ls, AgentTool as Lt, BuildMachineTotals as M, validHostedAppBlob as Ma, SettingsObject as Mc, HostedDevicePlatform as Mi, RunOutcomeKind as Mn, buildMachinesLock as Mo, hostedIosRecords as Mr, logFiles as Ms, APP_PROCESS_STATES as Mt, CAPACITY_REFUSAL_LIMIT as N, SETTINGS_SCHEMA_FILE as Na, StimConfig as Nc, HostedDeviceRequest as Ni, STATUS_ISSUE_CODES as Nn, configLockPath as No, hostedIosStatus as Nr, markerWindow as Ns, ActiveBuildState as Nt, hostedMetroGateways as O, readHostedApp as Oa, DoctorRunRecord as Oc, HostedDevice as Oi, PhysicalDeviceConnection as On, archiveDir as Oo, readMaintenanceState as Or, bundleMarkerPlatform as Os, withDerivedFacts as Ot, CAPACITY_REFUSAL_MAX_AGE_MS as P, SETTINGS_SCHEMA_URL as Pa, SupervisorRecord as Pc, HostedDeviceSelectors as Pi, SimulatorState as Pn, createdDevicesFile as Po, parseHostedIosPlacement as Pr, parseSince as Ps, ActivityDriver as Pt, offloadSummary as Q, TUNNEL_MODES as Qa, AgentTarget as Qc, readHostedDevice as Qi, MacosAppRecord as Qn, maintenanceRunClaims as Qo, DEV_SERVER_STOP_REQUEST_KEY as Qr, readJsonObject as Qs, BuildPhase as Qt, ReadStatsResult as R, ANDROID_PCH_CHOICES as Ra, buildSlotPath as Rc, HostedNativeOffer as Ri, StatusIssueCode as Rn, deviceHostMachinesLock as Ro, hostedAndroidDeviceName as Rr, readLogTimeline as Rs, AndroidDeviceState as Rt, parseMachine as S, HostedAppRecord as Sa, automaticMachineEnabled as Sc, readWarmRecord as Si, MacosBuildPlanPayload as Sn, listSegments as So, MaintenanceSize as Sr, ERROR_SOURCES as Ss, readAgentSessionsCache as St, HOSTED_METRO_REQUESTS_KEY as T, hostedAppBlobs as Ta, ConcurrencyLimits as Tc, workspaceLastUsed as Ti, NATIVE_BUILD_STEPS as Tn, recordingDeviceName as To, MemoryCulprit as Tr, advanceTail as Ts, readDiskUsageFailure as Tt, StatsBucket as U, RemoteDeviceBackend as Ua, SwiftpmCacheUsage as Uc, hostedDeviceId as Ui, WORKSPACE_STAGE_KINDS as Un, easSessionLedgerFile as Uo, unreadableHostedAndroid as Ur, CreatedDevicePlatform as Us, BuildActivity as Ut, RunSample as V, OffloadMode as Va, saturation as Vc, deviceHostRoot as Vi, WEB_PAGE_STATES as Vn, diskUsageWalkClaims as Vo, hostedAndroidStatus as Vr, tailRead as Vs, BUILD_PHASES as Vt, StatsCapacityRefusal as W, SETTINGS as Wa, readSwiftpmCacheUsage as Wc, parseHostedAndroidDevice as Wi, WarmStep as Wn, easSessionLedgerLock as Wo, HostedNativePlacement as Wr, CreatedDevices as Ws, BuildCacheHit as Wt, decodeStats as X, SettingType as Xa, readAgentDeviceUsageCache as Xc, parseHostedPlatformDevice as Xi, WorktreeGit as Xn, maintenanceDir as Xo, DEVICE_IDLE_SHUTDOWN_KEY as Xr, isJsonObject as Xs, BuildMissChange as Xt, StatsScope as Y, SettingScope as Ya, readAgentDeviceUsage as Yc, parseHostedOfferRequest as Yi, WorktreeFacts as Yn, maintenanceChildLogFile as Yo, BUILD_HISTORY_LIMIT as Yr, validEasSessionClaim as Ys, BuildMissCategory as Yt, findProjectRoot as Z, SettingsPayload as Za, AgentActionReaderOptions as Zc, parseHostedRequest as Zi, WorktreePullRequest as Zn, maintenanceNdjsonFile as Zo, DEVICE_RECLAIM_REASON as Zr, readJsonFile as Zs, BuildMissReason as Zt, Endpoint as _, parseHostedMacosPlacement as _a, getRepoSettings as _c, readDevServerStopRequest as _i, MACHINE_OWNER_KINDS as _n, RecordingPlatform as _o, MaintenanceCheck as _r, workspaceLogsDir as _s, diskUsageCacheFile as _t, parseSetupJournal as a, HostedAgentGrant as aa, debugLoggingEnabled as ac, MAINTENANCE_LOG_NAME as ai, parseNdjsonText as al, ChecksState as an, isLayeredSetting as ao, readMacosRecord as ar, sharedGradle as as, trimCapacityWaits as at, endpoint as b, HostedAppFile as ba, withConfigLock as bc, readIdleStop as bi, MachineOwnerKind as bn, footageDrops as bo, MaintenancePressure as br, workspaceStateFile as bs, listStatusCacheEntries as bt, HOSTED_LOGS_FIRST_BYTES as c, HostedMacosChoice as ca, buildWorkerRoot as cc, WARM_KEY as ci, DeviceLeaseState as cn, settingValueError as co, ArchivedWorkspace as cr, supervisorLogFile as cs, DeviceViewersRecord as ct, HostedLogsPage as d, hostedMacosAppSlot as da, findProjectByMetroPort as dc, WorkspaceState as di, EndedAgentSession as dn, validRunId as do, linkReplacedArchives as dr, workspaceBuildDetailFile as ds, stimBuildDigest as dt, readHostedSessions as ea, withStateReadCache as ec, DevServerStopRequest as ei, LEVELS as el, BuildPlanPayload as en, WEB_VIEWPORTS as eo, MacosBuild as er, pullRequestCacheDir as es, readRunEstimates as et, hostedMacosLogsDir as f, hostedMacosBundleId as fa, getConcurrencyLimits as fc, buildDiagnostics as fi, EnvironmentDisk as fn, RECORDING_CAP_BYTES as fo, readArchive as fr, workspaceDerivedData as fs, AgentSessionsCache as ft, readLogsSince as g, parseHostedMacosDevice as ga, getProjectSettings as gc, readDevServerStop as gi, LastBuildReport as gn, RecordedSegment as go, MaintenanceActionKind as gr, workspaceLogErrorIndex as gs, agentSessionOf as gt, readHostedNativeLogsCheckpoint as h, parseHostedMacosChoice as ha, getProjectSetting as hc, readBuildHistory as hi, GitChipPart as hn, RecordedDevice as ho, MaintenanceAction as hr, workspaceGradleBuild as hs, StatusCacheEntry as ht, isSetupJournalPrunable as i, HostedAgentDriverName as ia, debugLogDir as ic, LAST_BUILD_KEYS as ii, parseNdjsonLine as il, BuildWaitingFor as in, expectedShape as io, readHostedMacosApp as ir, sharedCompilationCache as is, trimCapacityRefusals as it, readDeviceHostMachines as j, validHostedAppArguments as ja, RepoRecord as jc, HostedDevicePhase as ji, RemoteDeviceState as jn, buildMachinesFile as jo, hostedIosPlacements as jr, followLogs as js, AGENT_TOOLS as jt, hostedMetroRequests as k, readHostedAppMetadata as ka, PlatformRecords as kc, HostedDeviceOffer as ki, PhysicalDeviceState as kn, archiveLock as ko, HostedIosPlacement as kr, compileGrep as ks, withGitChip as kt, HOSTED_LOGS_PAGE_BYTES as l, HostedMacosDevice as la, configCorruptRepair as lc, WORKSPACE_AGENT_KEY as li, DevicePlacement as ln, RUN_ID_ENV as lo, archiveEnabled as lr, supervisorPidFile as ls, ViewedDevice as lt, parseHostedLogsCursor as m, parseHostedAgentGrant as ma, getProject as mc, parseMissReason as mi, GitChip as mn, RECORDING_PLATFORMS as mo, readArchives as mr, workspaceEndedAgentsLock as ms, PullRequestCacheEntry as mt, SetupJournal as n, HOSTED_MACOS_APP_SLOTS as na, DebugLog as nc, IDLE_STOP_KEY as ni, SOURCES as nl, BuildReport as nn, acceptsShape as no, macosAppState as nr, setupJournalFile as ns, readStatsReport as nt, readSetupJournal as o, HostedAgentLease as oa, ParkedMax as oc, MetroLastStop as oi, readNdjsonGenerations as ol, DeviceActivity as on, isSensitiveReference as oo, ArchivedBytes as or, sharedPods as os, trimSamples as ot, hostedNativeLogsDir as p, parseHostedAgentAccess as pa, getParkedMax as pc, lastUseFrom as pi, EnvironmentState as pn, RECORDING_FOOTAGE_MS as po, readArchiveState as pr, workspaceEndedAgentsFile as ps, ENDED_AGENT_RETENTION_MS as pt, StatsRecord as q, SettingDefinition as qa, AgentDeviceUsageRoots as qc, parseHostedLocalDeviceCount as qi, WorkspacePhase as qn, gitMergeCacheDir as qo, unreadableHostedNative as qr, readCreatedDevices as qs, BuildDiagnostic as qt, isJournalExpired as r, HostedAgentAccess as ra, createDebugLog as rc, IdleStopRecord as ri, levelRank as rl, BuildResult as rn, coerceSettingText as ro, parseMacosRecord as rr, sharedCcache as rs, statsProjectKey as rt, agentDeviceStateDirs as s, HostedAppLaunch as sa, allMetroPorts as sc, READY_PHASE_MS as si, DeviceAppProcess as sn, settingDefinition as so, ArchivedUsage as sr, statsFile as ss, wholePhases as st, SetupCapability as t, HOSTED_AGENT_DRIVERS as ta, DEBUG_ENV as tc, DeviceIdleShutdownRecord as ti, NdjsonRecord as tl, BuildPlatform as tn, WebViewport as to, MacosProcess as tr, serverSetupDir as ts, readStats as tt, HostedLogsCursor as u, HostedMacosPlacement as ua, findEnclosingWorktreeRoot as uc, WarmRecord as ui, DiskMeasure as un, runId as uo, archivedUsage as ur, workspaceAgentDeviceDir as us, readViewedDevices as ut, TAILNET_MACHINE_PATTERN as v, HOSTED_APP_CHUNK_BYTES as va, isPathPrefix as vc, readDeviceIdleShutdowns as vi, MEMORY_SOURCES as vn, capDrops as vo, MaintenanceMode as vr, workspaceMetadataFile as vs, diskUsageFailureFile as vt, HOSTED_METRO_GATEWAYS_KEY as w, hostedAppAttempt as wa, validateAutomaticPool as wc, readWorkspaceState as wi, MetroBundleState as wn, recordedBytes as wo, MaintenanceStatus as wr, QueryCriteria as ws, readDiskUsage as wt, findPeer as x, HostedAppOffer as xa, AutomaticPoolRole as xc, readLastBuilds as xi, MachineUsageState as xn, listRecordedDevices as xo, MaintenanceRecord as xr, workspaceStateLock as xs, pullRequestCacheFile as xt, TailnetPeer as y, HostedAppDelivery as ya, loadConfig as yc, readDevicePlacement as yi, MachineOwner as yn, closedSegmentName as yo, MaintenancePass as yr, workspaceRecordingsDir as ys, endedAgentSessionOf as yt, RunEstimates as z, IOS_SIMULATOR_APPS as za, buildSlotsDir as zc, assertHostedDeviceLedger as zi, StatusPayload as zn, deviceViewersDir as zo, hostedAndroidPlacements as zr, recordMatches as zs, AndroidRuntimeFacts as zt };
package/dist/index.d.mts CHANGED
@@ -63,6 +63,8 @@ declare function createMetroBridge({ gatewayPort, peer, secret }: {
63
63
  //#endregion
64
64
  //#region index.d.ts
65
65
  declare function configDir(): string;
66
+ /** Creates `dir` and its missing parents owner-only, and narrows an existing `dir` that grants group or other access when the filesystem and owner allow it. */
67
+ declare function ensurePrivateDir(dir: string): void;
66
68
  declare function workspaceSlug(projectRoot: string): string;
67
69
  declare function workspaceId(projectRoot: string): string;
68
70
  declare function workspaceName(projectRoot: string): string;
@@ -88,6 +90,7 @@ interface BuildRunOptions {
88
90
  arch?: string;
89
91
  configuration?: string;
90
92
  scheme?: string;
93
+ gradleProject?: string;
91
94
  buildConfiguration?: string;
92
95
  isSimulator?: boolean;
93
96
  device?: string | boolean | null;
@@ -121,4 +124,4 @@ declare function readCacheManifest(file: string): CacheManifest;
121
124
  declare function updateCacheManifest(file: string, mutate: (caches: Array<Record<string, unknown>>) => Array<Record<string, unknown>>): CacheManifest;
122
125
  declare function registerCache({ dir, name, prune, note, entriesDepth, layout, replaces }: RegisterOptions): void;
123
126
  //#endregion
124
- export { BuildRunOptions, CacheManifest, CacheRegistrationMatch, type DirLockOptions, LOG_ROTATE_BYTES, METRO_NAMED_CACHE_LAYOUT, type MetroBridge, RegisterOptions, STORE_ROOT_TAG, type StoreArtifactOptions, artifactIn, buildCacheKey, buildCacheRoot, cacheManifestLockPath, cacheNameSegment, cachePathSetting, compiledHelper, configDir, createMetroBridge, createMetroGateway, hostSimulatorArch, metroCacheRoot, quotedPath, readCacheManifest, registerCache, resolveArtifact, rotateLog, rotatedLogPath, sharedStoreRoot, storeArtifact, tagSharedStore, updateCacheManifest, validMacosResourceDestination, withDirLock, workspaceId, workspaceLogDir, workspaceName, workspaceSlug, workspaceStateDir };
127
+ export { BuildRunOptions, CacheManifest, CacheRegistrationMatch, type DirLockOptions, LOG_ROTATE_BYTES, METRO_NAMED_CACHE_LAYOUT, type MetroBridge, RegisterOptions, STORE_ROOT_TAG, type StoreArtifactOptions, artifactIn, buildCacheKey, buildCacheRoot, cacheManifestLockPath, cacheNameSegment, cachePathSetting, compiledHelper, configDir, createMetroBridge, createMetroGateway, ensurePrivateDir, hostSimulatorArch, metroCacheRoot, quotedPath, readCacheManifest, registerCache, resolveArtifact, rotateLog, rotatedLogPath, sharedStoreRoot, storeArtifact, tagSharedStore, updateCacheManifest, validMacosResourceDestination, withDirLock, workspaceId, workspaceLogDir, workspaceName, workspaceSlug, workspaceStateDir };
package/dist/index.mjs CHANGED
@@ -1,3 +1,3 @@
1
1
  import { S as quotedPath } from "./ownership-claim-O31Y5iIb.mjs";
2
- import { A as validMacosResourceDestination, C as workspaceStateDir, D as artifactIn, E as compiledHelper, O as resolveArtifact, S as workspaceSlug, T as createMetroGateway, _ as tagSharedStore, a as buildCacheRoot, b as workspaceLogDir, c as cachePathSetting, d as metroCacheRoot, f as readCacheManifest, g as sharedStoreRoot, h as rotatedLogPath, i as buildCacheKey, j as withDirLock, k as storeArtifact, l as configDir, m as rotateLog, n as METRO_NAMED_CACHE_LAYOUT, o as cacheManifestLockPath, p as registerCache, r as STORE_ROOT_TAG, s as cacheNameSegment, t as LOG_ROTATE_BYTES, u as hostSimulatorArch, v as updateCacheManifest, w as createMetroBridge, x as workspaceName, y as workspaceId } from "./core-DWOUn9xp.mjs";
3
- export { LOG_ROTATE_BYTES, METRO_NAMED_CACHE_LAYOUT, STORE_ROOT_TAG, artifactIn, buildCacheKey, buildCacheRoot, cacheManifestLockPath, cacheNameSegment, cachePathSetting, compiledHelper, configDir, createMetroBridge, createMetroGateway, hostSimulatorArch, metroCacheRoot, quotedPath, readCacheManifest, registerCache, resolveArtifact, rotateLog, rotatedLogPath, sharedStoreRoot, storeArtifact, tagSharedStore, updateCacheManifest, validMacosResourceDestination, withDirLock, workspaceId, workspaceLogDir, workspaceName, workspaceSlug, workspaceStateDir };
2
+ import { A as storeArtifact, C as workspaceSlug, D as compiledHelper, E as createMetroGateway, L as withDirLock, O as artifactIn, S as workspaceName, T as createMetroBridge, _ as sharedStoreRoot, a as buildCacheRoot, b as workspaceId, c as cachePathSetting, d as hostSimulatorArch, f as metroCacheRoot, g as rotatedLogPath, h as rotateLog, i as buildCacheKey, j as validMacosResourceDestination, k as resolveArtifact, l as configDir, m as registerCache, n as METRO_NAMED_CACHE_LAYOUT, o as cacheManifestLockPath, p as readCacheManifest, r as STORE_ROOT_TAG, s as cacheNameSegment, t as LOG_ROTATE_BYTES, u as ensurePrivateDir, v as tagSharedStore, w as workspaceStateDir, x as workspaceLogDir, y as updateCacheManifest } from "./core-CzCQ9yWY.mjs";
3
+ export { LOG_ROTATE_BYTES, METRO_NAMED_CACHE_LAYOUT, STORE_ROOT_TAG, artifactIn, buildCacheKey, buildCacheRoot, cacheManifestLockPath, cacheNameSegment, cachePathSetting, compiledHelper, configDir, createMetroBridge, createMetroGateway, ensurePrivateDir, hostSimulatorArch, metroCacheRoot, quotedPath, readCacheManifest, registerCache, resolveArtifact, rotateLog, rotatedLogPath, sharedStoreRoot, storeArtifact, tagSharedStore, updateCacheManifest, validMacosResourceDestination, withDirLock, workspaceId, workspaceLogDir, workspaceName, workspaceSlug, workspaceStateDir };
@@ -1,5 +1,5 @@
1
- import { $n as MacosBuild, $t as BuildPlanPayload, An as RemoteDeviceState, Cn as MetroBundleState, Cr as MaintenanceStatus, Gt as BuildDetail, In as StatusIssue, It as AgentSession, Jn as WorktreeFacts, Kt as BuildDiagnostic, Nn as SimulatorState, On as PhysicalDeviceState, Qt as BuildPlacement, Rn as StatusPayload, Rt as AndroidDeviceState, Wn as WebBrowserState, Xn as WorktreePullRequest, Xt as BuildMissReason, Yn as WorktreeGit, Yt as BuildMissChange, Zn as MacosAppRecord, an as DeviceActivity, bn as MachineUsageState, ca as HostedMacosPlacement, dn as EnvironmentDisk, fn as EnvironmentState, hn as LastBuildReport, ln as DiskMeasure, mr as MaintenanceAction, on as DeviceAppProcess, pn as GitChip, qn as WorkspaceStage, qt as BuildHistoryEntry, rn as BuildWaitingFor, sn as DeviceLeaseState, sr as ArchivedWorkspace, tn as BuildReport, vn as MachineOwner, vr as MaintenancePass, yr as MaintenancePressure } from "./index-BITArGWH.mjs";
2
- import { An as ReplayRange, B as DEVICE_HOST_METHODS, Dn as ReplayKeyframe, En as ReplayEndedEvent, Et as KeyModifier, F as ControlBeginParams, Fn as SERVER_UPDATE_METHODS, Ft as LogSource, H as DeviceAuth, Ht as MachineDetails, I as ControlBeginResult, It as LogsEndedEvent, K as DevicePosture, Kn as SimulatorCommand, Kt as MachineUsage, Ln as ServerEvent, Lt as LogsEvent, Mn as ReplayTarget, Mt as LogFilter, Nt as LogLevel, On as ReplayKeyframeParams, Pn as RotateDirection, Pt as LogRecord, Qn as TouchPhase, Qt as Methods, R as ControlEndedEvent, Rt as LogsQueryResult, S as BuildPlanParams, T as BuildProgressEvent, U as DeviceFrameArtwork, Ut as MachineHistory, W as DeviceFrameEvent, Yn as StatusEvent, Yt as MacosWindowsEvent, Z as ErrorEvent, _n as PushRegisterParams, a as ArchiveDetailParams, ct as FramesSubscribeResult, dr as WorkspaceDiff, er as UsageHistory, fr as WorkspaceFile, gn as PushEvent, gt as InputKey, hn as ProtocolError, hr as WorkspacePatch, i as ActionResult, in as NotificationSuppression, it as FrameTarget, jn as ReplaySpan, kn as ReplayMarker, lt as HelloParams, m as BuildClientSummary, mn as Platform, mt as InputButton, n as ActionName, nn as NotificationEvent, nt as FrameDelayedEvent, pn as PairingAuth, pr as WorkspaceFiles, q as DeviceUsageSeries, qn as SimulatorOptions, qt as MachineVolume, r as ActionParams, rn as NotificationLevel, rt as FrameEvent, s as BUILD_METHODS, sn as NotificationsListResult, t as ACTIONS, tn as NotificationEntry, tr as UsageSample, un as PROTOCOL_VERSION, ut as HelloResult, xt as InputSimulatorParams, y as BuildMachineReport } from "./protocol-CXPbHten.mjs";
1
+ import { $t as BuildPlacement, Gn as WebBrowserState, It as AgentSession, Jn as WorkspaceStage, Jt as BuildHistoryEntry, Kt as BuildDetail, Ln as StatusIssue, Pn as SimulatorState, Qn as MacosAppRecord, Rt as AndroidDeviceState, Ut as BuildActivity, Xn as WorktreeGit, Xt as BuildMissChange, Yn as WorktreeFacts, Zn as WorktreePullRequest, Zt as BuildMissReason, br as MaintenancePressure, cn as DeviceLeaseState, cr as ArchivedWorkspace, en as BuildPlanPayload, er as MacosBuild, fn as EnvironmentDisk, gn as LastBuildReport, hr as MaintenanceAction, in as BuildWaitingFor, jn as RemoteDeviceState, kn as PhysicalDeviceState, mn as GitChip, nn as BuildReport, on as DeviceActivity, pn as EnvironmentState, qt as BuildDiagnostic, sn as DeviceAppProcess, ua as HostedMacosPlacement, un as DiskMeasure, wn as MetroBundleState, wr as MaintenanceStatus, xn as MachineUsageState, yn as MachineOwner, yr as MaintenancePass, zn as StatusPayload } from "./index-DNBFsz-Q.mjs";
2
+ import { $n as TouchPhase, $t as Methods, An as ReplayMarker, B as DEVICE_HOST_METHODS, Dn as ReplayEndedEvent, Dt as KeyModifier, F as ControlBeginParams, Fn as RotateDirection, Ft as LogRecord, H as DeviceAuth, I as ControlBeginResult, In as SERVER_UPDATE_METHODS, It as LogSource, Jn as SimulatorOptions, Jt as MachineVolume, K as DevicePosture, Lt as LogsEndedEvent, Mn as ReplaySpan, Nn as ReplayTarget, Nt as LogFilter, On as ReplayKeyframe, Pt as LogLevel, R as ControlEndedEvent, Rn as ServerEvent, Rt as LogsEvent, S as BuildPlanParams, St as InputSimulatorParams, T as BuildProgressEvent, U as DeviceFrameArtwork, Ut as MachineDetails, W as DeviceFrameEvent, Wt as MachineHistory, Xn as StatusEvent, Xt as MacosWindowsEvent, Z as ErrorEvent, _n as PushEvent, _t as InputKey, a as ArchiveDetailParams, an as NotificationSuppression, cn as NotificationsListResult, ct as FramesSubscribeResult, dn as PROTOCOL_VERSION, dt as HelloResult, fr as WorkspaceDiff, gn as ProtocolError, gr as WorkspacePatch, hn as Platform, ht as InputButton, i as ActionResult, in as NotificationLevel, it as FrameTarget, jn as ReplayRange, kn as ReplayKeyframeParams, m as BuildClientSummary, mn as PairingAuth, mr as WorkspaceFiles, n as ActionName, nn as NotificationEntry, nr as UsageSample, nt as FrameDelayedEvent, pr as WorkspaceFile, q as DeviceUsageSeries, qn as SimulatorCommand, qt as MachineUsage, r as ActionParams, rn as NotificationEvent, rt as FrameEvent, s as BUILD_METHODS, t as ACTIONS, tr as UsageHistory, ut as HelloParams, vn as PushRegisterParams, y as BuildMachineReport, zt as LogsQueryResult } from "./protocol-Bp-bcZIR.mjs";
3
3
  //#region phone-protocol.d.ts
4
4
  type PhonePlatform = BuildPlanParams["platform"];
5
5
  type PhoneDevicePlatform = Platform;
@@ -30,7 +30,7 @@ type PhoneDeviceActivity = Omit<DeviceActivity, "state"> & {
30
30
  state: string;
31
31
  };
32
32
  type PhoneBuildPhase = string;
33
- type PhoneBuildReport = Omit<BuildReport, "outcomeKnown" | "placement" | "missProvisional" | "platform" | "state" | "phase" | "outcome" | "cacheLookupOutcome" | "plannedPhases" | "missReason" | "detail" | "waitingFor"> & {
33
+ type PhoneBuildReport = Omit<BuildReport, "outcomeKnown" | "placement" | "missProvisional" | "platform" | "state" | "phase" | "outcome" | "cacheLookupOutcome" | "plannedPhases" | "missReason" | "detail" | "activity" | "waitingFor"> & {
34
34
  outcomeKnown?: boolean;
35
35
  placement?: PhoneBuildPlacement;
36
36
  missProvisional?: boolean;
@@ -45,6 +45,7 @@ type PhoneBuildReport = Omit<BuildReport, "outcomeKnown" | "placement" | "missPr
45
45
  }[] | null;
46
46
  missReason?: PhoneBuildMissReason;
47
47
  detail?: PhoneBuildDetail;
48
+ activity?: PhoneBuildActivity;
48
49
  waitingFor?: Omit<BuildWaitingFor, "kind"> & {
49
50
  kind: string;
50
51
  };
@@ -54,6 +55,9 @@ type PhoneBuildDetail = Omit<BuildDetail, "step" | "unit"> & {
54
55
  step: string | null;
55
56
  unit: string | null;
56
57
  };
58
+ type PhoneBuildActivity = Omit<BuildActivity, "name"> & {
59
+ name: string;
60
+ };
57
61
  type PhoneBuildCacheHit = string | false;
58
62
  type PhoneBuildMissCategory = string;
59
63
  type PhoneBuildMissChange = Omit<BuildMissChange, "change" | "category"> & {
@@ -477,4 +481,4 @@ type PhoneResponse<M extends PhoneMethod = PhoneMethod> = {
477
481
  };
478
482
  type PhoneServerMessage = PhoneResponse | PhoneServerEvent;
479
483
  //#endregion
480
- export { ACTIONS, type PhoneActionName as ActionName, PhoneActionName, type PhoneActionParams as ActionParams, PhoneActionParams, type PhoneActionResult as ActionResult, PhoneActionResult, type PhoneAgentSession as AgentSession, PhoneAgentSession, type PhoneAndroidState as AndroidState, PhoneAndroidState, type PhoneAppPresence as AppPresence, PhoneAppPresence, type PhoneArchiveDetailResult as ArchiveDetailResult, PhoneArchiveDetailResult, type PhoneBuildCacheHit as BuildCacheHit, PhoneBuildCacheHit, type PhoneBuildClientSummary as BuildClientSummary, PhoneBuildClientSummary, type PhoneBuildDetail as BuildDetail, PhoneBuildDetail, type PhoneBuildDiagnostic as BuildDiagnostic, PhoneBuildDiagnostic, type PhoneBuildHistoryEntry as BuildHistoryEntry, PhoneBuildHistoryEntry, type PhoneBuildMachineReport as BuildMachineReport, PhoneBuildMachineReport, type PhoneBuildMissCategory as BuildMissCategory, PhoneBuildMissCategory, type PhoneBuildMissChange as BuildMissChange, PhoneBuildMissChange, type PhoneBuildMissReason as BuildMissReason, PhoneBuildMissReason, type PhoneBuildPhase as BuildPhase, PhoneBuildPhase, type PhoneBuildPlacement as BuildPlacement, PhoneBuildPlacement, type PhoneBuildPlan as BuildPlan, PhoneBuildPlan, type PhoneBuildPlanParams as BuildPlanParams, PhoneBuildPlanParams, type PhoneBuildReport as BuildReport, PhoneBuildReport, type PhoneBuildResult as BuildResult, PhoneBuildResult, type PhoneClientAuth as ClientAuth, PhoneClientAuth, type PhoneControlBeginParams as ControlBeginParams, PhoneControlBeginParams, type PhoneControlBeginResult as ControlBeginResult, PhoneControlBeginResult, type PhoneControlEndedEvent as ControlEndedEvent, PhoneControlEndedEvent, type PhoneDeviceActivity as DeviceActivity, PhoneDeviceActivity, type PhoneDeviceAppProcess as DeviceAppProcess, PhoneDeviceAppProcess, type PhoneDeviceDisk as DeviceDisk, PhoneDeviceDisk, type PhoneDeviceFrameArtwork as DeviceFrameArtwork, PhoneDeviceFrameArtwork, type PhoneDeviceFrameEvent as DeviceFrameEvent, PhoneDeviceFrameEvent, type PhoneDeviceLeaseState as DeviceLeaseState, PhoneDeviceLeaseState, type PhoneDevicePlatform as DevicePlatform, PhoneDevicePlatform, type PhoneDevicePosture as DevicePosture, PhoneDevicePosture, type PhoneEndedAgentSession as EndedAgentSession, PhoneEndedAgentSession, type PhoneEnvironmentState as EnvironmentState, PhoneEnvironmentState, type PhoneErrorEvent as ErrorEvent, PhoneErrorEvent, type PhoneFrameDelayedEvent as FrameDelayedEvent, PhoneFrameDelayedEvent, type PhoneFrameEvent as FrameEvent, PhoneFrameEvent, type PhoneFrameTarget as FrameTarget, PhoneFrameTarget, type PhoneGitChipFacts as GitChipFacts, PhoneGitChipFacts, type PhoneGitChipPart as GitChipPart, PhoneGitChipPart, type PhoneHelloResult as HelloResult, PhoneHelloResult, type PhoneInputButton as InputButton, PhoneInputButton, type PhoneInputKey as InputKey, PhoneInputKey, type PhoneInputSimulatorParams as InputSimulatorParams, PhoneInputSimulatorParams, type PhoneKeyModifier as KeyModifier, PhoneKeyModifier, type PhoneLastBuild as LastBuild, PhoneLastBuild, type PhoneLogFilter as LogFilter, PhoneLogFilter, type PhoneLogLevel as LogLevel, PhoneLogLevel, type PhoneLogRecord as LogRecord, PhoneLogRecord, type PhoneLogSource as LogSource, PhoneLogSource, type PhoneLogsEndedEvent as LogsEndedEvent, PhoneLogsEndedEvent, type PhoneLogsEvent as LogsEvent, PhoneLogsEvent, type PhoneMachineDetails as MachineDetails, PhoneMachineDetails, type PhoneMachineHistory as MachineHistory, PhoneMachineHistory, type PhoneMachineOwner as MachineOwner, PhoneMachineOwner, type PhoneMachineOwnerKind as MachineOwnerKind, PhoneMachineOwnerKind, type PhoneMachineUsage as MachineUsage, PhoneMachineUsage, type PhoneMachineUsageState as MachineUsageState, PhoneMachineUsageState, type PhoneMachineVolume as MachineVolume, PhoneMachineVolume, type PhoneMacosAppState as MacosAppState, PhoneMacosAppState, type PhoneMacosWindowsEvent as MacosWindowsEvent, PhoneMacosWindowsEvent, type PhoneMemoryPressure as MemoryPressure, PhoneMemoryPressure, type PhoneMethod as Method, PhoneMethod, type PhoneMethods as Methods, PhoneMethods, type PhoneMetroBundle as MetroBundle, PhoneMetroBundle, type PhoneNotificationEntry as NotificationEntry, PhoneNotificationEntry, type PhoneNotificationEvent as NotificationEvent, PhoneNotificationEvent, type PhoneNotificationLevel as NotificationLevel, PhoneNotificationLevel, type PhoneNotificationSuppression as NotificationSuppression, PhoneNotificationSuppression, type PhoneNotificationTarget as NotificationTarget, PhoneNotificationTarget, type PhoneNotificationsListResult as NotificationsListResult, PhoneNotificationsListResult, PROTOCOL_VERSION, type PhonePairingPayload as PairingPayload, PhonePairingPayload, PhoneMaintenanceStatus, PhonePhysicalDeviceState, type PhonePhysicalDeviceState as PhysicalDeviceState, PhonePlatform, type PhonePlatform as Platform, PhoneProtocolError, type PhoneProtocolError as ProtocolError, PhonePullRequestFacts, type PhonePullRequestFacts as PullRequestFacts, PhonePushEvent, type PhonePushEvent as PushEvent, PhonePushRegisterParams, type PhonePushRegisterParams as PushRegisterParams, PhoneReloadPlatform, type PhoneReloadPlatform as ReloadPlatform, PhoneRemoteDeviceState, type PhoneRemoteDeviceState as RemoteDeviceState, PhoneReplayEndedEvent, type PhoneReplayEndedEvent as ReplayEndedEvent, PhoneReplayKeyframe, type PhoneReplayKeyframe as ReplayKeyframe, PhoneReplayMarker, type PhoneReplayMarker as ReplayMarker, PhoneReplayRange, type PhoneReplayRange as ReplayRange, PhoneReplayRate, type PhoneReplayRate as ReplayRate, PhoneReplaySpan, type PhoneReplaySpan as ReplaySpan, PhoneResponse, type PhoneResponse as Response, PhoneRotateDirection, type PhoneRotateDirection as RotateDirection, PhoneServerEvent, type PhoneServerEvent as ServerEvent, PhoneServerMessage, type PhoneServerMessage as ServerMessage, PhoneSimState, type PhoneSimState as SimState, PhoneSimulatorCommand, type PhoneSimulatorCommand as SimulatorCommand, PhoneSimulatorOptions, type PhoneSimulatorOptions as SimulatorOptions, PhoneStackFrame, type PhoneStackFrame as StackFrame, PhoneStageFacts, type PhoneStageFacts as StageFacts, PhoneStatusEvent, type PhoneStatusEvent as StatusEvent, PhoneStatusIssue, type PhoneStatusIssue as StatusIssue, PhoneStatusPayload, type PhoneStatusPayload as StatusPayload, PhoneStatusUsage, type PhoneStatusUsage as StatusUsage, PhoneTouchPhase, type PhoneTouchPhase as TouchPhase, PhoneUsageSample, type PhoneUsageSample as UsageSample, PhoneWebBrowserState, type PhoneWebBrowserState as WebBrowserState, PhoneWorkspaceDiff, type PhoneWorkspaceDiff as WorkspaceDiff, PhoneWorkspaceDisk, type PhoneWorkspaceDisk as WorkspaceDisk, PhoneWorkspaceFile, type PhoneWorkspaceFile as WorkspaceFile, PhoneWorkspaceFiles, type PhoneWorkspaceFiles as WorkspaceFiles, PhoneWorkspacePatch, type PhoneWorkspacePatch as WorkspacePatch, PhoneWorktreeFacts, type PhoneWorktreeFacts as WorktreeFacts, PhoneWorktreeGit, type PhoneWorktreeGit as WorktreeGit };
484
+ export { ACTIONS, type PhoneActionName as ActionName, PhoneActionName, type PhoneActionParams as ActionParams, PhoneActionParams, type PhoneActionResult as ActionResult, PhoneActionResult, type PhoneAgentSession as AgentSession, PhoneAgentSession, type PhoneAndroidState as AndroidState, PhoneAndroidState, type PhoneAppPresence as AppPresence, PhoneAppPresence, type PhoneArchiveDetailResult as ArchiveDetailResult, PhoneArchiveDetailResult, type PhoneBuildActivity as BuildActivity, PhoneBuildActivity, type PhoneBuildCacheHit as BuildCacheHit, PhoneBuildCacheHit, type PhoneBuildClientSummary as BuildClientSummary, PhoneBuildClientSummary, type PhoneBuildDetail as BuildDetail, PhoneBuildDetail, type PhoneBuildDiagnostic as BuildDiagnostic, PhoneBuildDiagnostic, type PhoneBuildHistoryEntry as BuildHistoryEntry, PhoneBuildHistoryEntry, type PhoneBuildMachineReport as BuildMachineReport, PhoneBuildMachineReport, type PhoneBuildMissCategory as BuildMissCategory, PhoneBuildMissCategory, type PhoneBuildMissChange as BuildMissChange, PhoneBuildMissChange, type PhoneBuildMissReason as BuildMissReason, PhoneBuildMissReason, type PhoneBuildPhase as BuildPhase, PhoneBuildPhase, type PhoneBuildPlacement as BuildPlacement, PhoneBuildPlacement, type PhoneBuildPlan as BuildPlan, PhoneBuildPlan, type PhoneBuildPlanParams as BuildPlanParams, PhoneBuildPlanParams, type PhoneBuildReport as BuildReport, PhoneBuildReport, type PhoneBuildResult as BuildResult, PhoneBuildResult, type PhoneClientAuth as ClientAuth, PhoneClientAuth, type PhoneControlBeginParams as ControlBeginParams, PhoneControlBeginParams, type PhoneControlBeginResult as ControlBeginResult, PhoneControlBeginResult, type PhoneControlEndedEvent as ControlEndedEvent, PhoneControlEndedEvent, type PhoneDeviceActivity as DeviceActivity, PhoneDeviceActivity, type PhoneDeviceAppProcess as DeviceAppProcess, PhoneDeviceAppProcess, type PhoneDeviceDisk as DeviceDisk, PhoneDeviceDisk, type PhoneDeviceFrameArtwork as DeviceFrameArtwork, PhoneDeviceFrameArtwork, type PhoneDeviceFrameEvent as DeviceFrameEvent, PhoneDeviceFrameEvent, type PhoneDeviceLeaseState as DeviceLeaseState, PhoneDeviceLeaseState, type PhoneDevicePlatform as DevicePlatform, PhoneDevicePlatform, type PhoneDevicePosture as DevicePosture, PhoneDevicePosture, type PhoneEndedAgentSession as EndedAgentSession, PhoneEndedAgentSession, type PhoneEnvironmentState as EnvironmentState, PhoneEnvironmentState, type PhoneErrorEvent as ErrorEvent, PhoneErrorEvent, type PhoneFrameDelayedEvent as FrameDelayedEvent, PhoneFrameDelayedEvent, type PhoneFrameEvent as FrameEvent, PhoneFrameEvent, type PhoneFrameTarget as FrameTarget, PhoneFrameTarget, type PhoneGitChipFacts as GitChipFacts, PhoneGitChipFacts, type PhoneGitChipPart as GitChipPart, PhoneGitChipPart, type PhoneHelloResult as HelloResult, PhoneHelloResult, type PhoneInputButton as InputButton, PhoneInputButton, type PhoneInputKey as InputKey, PhoneInputKey, type PhoneInputSimulatorParams as InputSimulatorParams, PhoneInputSimulatorParams, type PhoneKeyModifier as KeyModifier, PhoneKeyModifier, type PhoneLastBuild as LastBuild, PhoneLastBuild, type PhoneLogFilter as LogFilter, PhoneLogFilter, type PhoneLogLevel as LogLevel, PhoneLogLevel, type PhoneLogRecord as LogRecord, PhoneLogRecord, type PhoneLogSource as LogSource, PhoneLogSource, type PhoneLogsEndedEvent as LogsEndedEvent, PhoneLogsEndedEvent, type PhoneLogsEvent as LogsEvent, PhoneLogsEvent, type PhoneMachineDetails as MachineDetails, PhoneMachineDetails, type PhoneMachineHistory as MachineHistory, PhoneMachineHistory, type PhoneMachineOwner as MachineOwner, PhoneMachineOwner, type PhoneMachineOwnerKind as MachineOwnerKind, PhoneMachineOwnerKind, type PhoneMachineUsage as MachineUsage, PhoneMachineUsage, type PhoneMachineUsageState as MachineUsageState, PhoneMachineUsageState, type PhoneMachineVolume as MachineVolume, PhoneMachineVolume, type PhoneMacosAppState as MacosAppState, PhoneMacosAppState, type PhoneMacosWindowsEvent as MacosWindowsEvent, PhoneMacosWindowsEvent, type PhoneMemoryPressure as MemoryPressure, PhoneMemoryPressure, type PhoneMethod as Method, PhoneMethod, type PhoneMethods as Methods, PhoneMethods, type PhoneMetroBundle as MetroBundle, PhoneMetroBundle, type PhoneNotificationEntry as NotificationEntry, PhoneNotificationEntry, type PhoneNotificationEvent as NotificationEvent, PhoneNotificationEvent, type PhoneNotificationLevel as NotificationLevel, PhoneNotificationLevel, type PhoneNotificationSuppression as NotificationSuppression, PhoneNotificationSuppression, type PhoneNotificationTarget as NotificationTarget, PhoneNotificationTarget, type PhoneNotificationsListResult as NotificationsListResult, PhoneNotificationsListResult, PROTOCOL_VERSION, type PhonePairingPayload as PairingPayload, PhonePairingPayload, PhoneMaintenanceStatus, PhonePhysicalDeviceState, type PhonePhysicalDeviceState as PhysicalDeviceState, PhonePlatform, type PhonePlatform as Platform, PhoneProtocolError, type PhoneProtocolError as ProtocolError, PhonePullRequestFacts, type PhonePullRequestFacts as PullRequestFacts, PhonePushEvent, type PhonePushEvent as PushEvent, PhonePushRegisterParams, type PhonePushRegisterParams as PushRegisterParams, PhoneReloadPlatform, type PhoneReloadPlatform as ReloadPlatform, PhoneRemoteDeviceState, type PhoneRemoteDeviceState as RemoteDeviceState, PhoneReplayEndedEvent, type PhoneReplayEndedEvent as ReplayEndedEvent, PhoneReplayKeyframe, type PhoneReplayKeyframe as ReplayKeyframe, PhoneReplayMarker, type PhoneReplayMarker as ReplayMarker, PhoneReplayRange, type PhoneReplayRange as ReplayRange, PhoneReplayRate, type PhoneReplayRate as ReplayRate, PhoneReplaySpan, type PhoneReplaySpan as ReplaySpan, PhoneResponse, type PhoneResponse as Response, PhoneRotateDirection, type PhoneRotateDirection as RotateDirection, PhoneServerEvent, type PhoneServerEvent as ServerEvent, PhoneServerMessage, type PhoneServerMessage as ServerMessage, PhoneSimState, type PhoneSimState as SimState, PhoneSimulatorCommand, type PhoneSimulatorCommand as SimulatorCommand, PhoneSimulatorOptions, type PhoneSimulatorOptions as SimulatorOptions, PhoneStackFrame, type PhoneStackFrame as StackFrame, PhoneStageFacts, type PhoneStageFacts as StageFacts, PhoneStatusEvent, type PhoneStatusEvent as StatusEvent, PhoneStatusIssue, type PhoneStatusIssue as StatusIssue, PhoneStatusPayload, type PhoneStatusPayload as StatusPayload, PhoneStatusUsage, type PhoneStatusUsage as StatusUsage, PhoneTouchPhase, type PhoneTouchPhase as TouchPhase, PhoneUsageSample, type PhoneUsageSample as UsageSample, PhoneWebBrowserState, type PhoneWebBrowserState as WebBrowserState, PhoneWorkspaceDiff, type PhoneWorkspaceDiff as WorkspaceDiff, PhoneWorkspaceDisk, type PhoneWorkspaceDisk as WorkspaceDisk, PhoneWorkspaceFile, type PhoneWorkspaceFile as WorkspaceFile, PhoneWorkspaceFiles, type PhoneWorkspaceFiles as WorkspaceFiles, PhoneWorkspacePatch, type PhoneWorkspacePatch as WorkspacePatch, PhoneWorktreeFacts, type PhoneWorktreeFacts as WorktreeFacts, PhoneWorktreeGit, type PhoneWorktreeGit as WorktreeGit };
@@ -1,4 +1,4 @@
1
- import { $c as NdjsonRecord, $t as BuildPlanPayload, Ai as HostedDevicePlatform, Di as HostedDeviceOffer, Ni as HostedDeviceSession, Oi as HostedDeviceOfferRequest, Rn as StatusPayload, _a as HostedAppDelivery, aa as HostedAppLaunch, d as HostedLogsPage, ji as HostedDeviceRequest, ki as HostedDevicePhase, qt as BuildHistoryEntry, u as HostedLogsCursor, ya as HostedAppOffer } from "./index-BITArGWH.mjs";
1
+ import { Ai as HostedDeviceOfferRequest, Fi as HostedDeviceSession, Jt as BuildHistoryEntry, Mi as HostedDevicePlatform, Ni as HostedDeviceRequest, d as HostedLogsPage, en as BuildPlanPayload, ji as HostedDevicePhase, ki as HostedDeviceOffer, sa as HostedAppLaunch, tl as NdjsonRecord, u as HostedLogsCursor, xa as HostedAppOffer, ya as HostedAppDelivery, zn as StatusPayload } from "./index-DNBFsz-Q.mjs";
2
2
  //#region protocol.d.ts
3
3
  declare const PROTOCOL_VERSION = 1;
4
4
  declare const PROTOCOL_SCHEMA_FILE = "protocol.schema.json";
@@ -27,9 +27,13 @@ type Capability = (typeof CAPABILITIES)[number];
27
27
  * bringing it to the front, or with null resumes following the front window.
28
28
  * `hosted-ios-data` is iOS build handoff and native log queries, persisted before device deletion.
29
29
  * `hosted-android-data` is Android APK build handoff and native log queries, persisted before device deletion.
30
+ * `hosted-ios-process` and `hosted-android-process` accept native app offers in process mode, with live process readiness and no Metro.
31
+ * `native-xcode-build` accepts native Xcode provider requests with a separate source-transfer identity.
32
+ * `native-xcode-toolchain` accepts native Xcode discovery without unrelated platform or Ruby probes.
33
+ * `native-gradle-build` accepts declared Gradle transfer inputs with no reusable artifact identity.
30
34
  * `server-update` is `server.update.status`, `server.update.start` and `server.update.chunk`.
31
35
  */
32
- declare const FEATURES: readonly ["physical-ios", "physical-android", "notifications", "macos-window", "macos-windows", "macos-window-select", "macos-window-control", "macos-keyboard-extended", "device-frames", "macos-hosted", "ios-hosted", "android-hosted", "hosted-ios-agent", "hosted-android-agent", "duo-frames", "workspace-diff", "hosted-congestion", "hosted-ios-data", "hosted-android-data", "server-update"];
36
+ declare const FEATURES: readonly ["physical-ios", "physical-android", "notifications", "macos-window", "macos-windows", "macos-window-select", "macos-window-control", "macos-keyboard-extended", "device-frames", "macos-hosted", "ios-hosted", "android-hosted", "hosted-ios-agent", "hosted-android-agent", "duo-frames", "workspace-diff", "hosted-congestion", "hosted-ios-data", "hosted-ios-process", "native-xcode-build", "native-xcode-toolchain", "native-gradle-build", "hosted-android-data", "hosted-android-process", "server-update"];
33
37
  type Feature = (typeof FEATURES)[number];
34
38
  declare const METHODS: readonly ["hello", "route.setup", "status.subscribe", "logs.query", "logs.subscribe", "stats.get", "settings.get", "workspace.files", "workspace.diff", "frames.subscribe", "frames.keyframe", "frames.seek", "frames.live", "replay.range", "archive.detail", "replay.keyframe", "recording.set", "build.plan", "machine.get", "machine.history", "machine.details", "unsubscribe", "action", "control.begin", "control.end", "input.touch", "input.text", "input.button", "input.rotate", "input.posture", "input.simulator", "input.scroll", "input.key", "input.window", "push.register", "push.unregister", "notifications.list", "build.offer", "build.sync", "build.start", "build.cancel", "build.artifact", "build.attach", "device-host.offer", "device-host.reserve", "device-host.attach", "device-host.stop", "device-host.app.offer", "device-host.app.chunk", "device-host.app.handoff", "device-host.app.launch", "device-host.app.attach", "device-host.logs.query", "device-host.metro.open", "device-host.metro.close", "device-host.frames.subscribe", "device-host.frames.keyframe", "device-host.frames.congested", "device-host.unsubscribe", "device-host.control.begin", "device-host.control.end", "device-host.input.touch", "device-host.input.text", "device-host.input.scroll", "device-host.input.key", "device-host.input.button", "device-host.input.rotate", "device-host.input.posture", "device-host.input.window", "server.update.status", "server.update.start", "server.update.chunk", "machines.update.start", "machines.update.status", "device-host.sessions", "device-host.sessions.stop"];
35
39
  /**
@@ -94,13 +98,13 @@ interface HelloResult {
94
98
  protocol: number;
95
99
  /**
96
100
  * The Mac's name, this package's version, the version of the `stim` it runs, and the home directory of the
97
- * user it runs as, so clients can show paths under it as `~/...`.
101
+ * user it runs as, so clients can show paths under it as `~/...`. A pending approval result has no `home`.
98
102
  */
99
103
  server: {
100
104
  name: string;
101
105
  version: string;
102
106
  stim: string;
103
- home: string;
107
+ home?: string;
104
108
  };
105
109
  capabilities: Capability[];
106
110
  features: Feature[];
@@ -506,6 +510,7 @@ interface BuildOfferParams {
506
510
  lockfile?: string;
507
511
  /** The project's normalized .ruby-version; absent uses the worker's default Ruby. */
508
512
  rubyVersion?: string;
513
+ native?: "xcode" | "gradle";
509
514
  }
510
515
  /** The toolchain a build must match exactly on both Macs. */
511
516
  interface BuildToolchain {
@@ -558,7 +563,7 @@ interface BuildOfferResult {
558
563
  /** One file of the client's checkout. A `link` blob holds the symlink's target. */
559
564
  interface BuildFile {
560
565
  path: string;
561
- kind: "file" | "exec" | "link";
566
+ kind: "file" | "exec" | "link" | "directory";
562
567
  size: number;
563
568
  sha256: string;
564
569
  }
@@ -582,10 +587,18 @@ interface BuildAndroidOptions {
582
587
  gradleBuildCache: boolean;
583
588
  pch: "auto" | "on" | "off";
584
589
  compilerCache: "ccache" | "none";
590
+ gradleRoot?: string | null;
591
+ module?: string | null;
592
+ }
593
+ interface GradleOffloadInputs {
594
+ complete: true;
595
+ ignored: string[];
596
+ outputs: string[];
585
597
  }
586
598
  /**
587
599
  * Builds the synced manifest of `repo`. The machine refuses unless its fingerprint equals `fingerprint`. iOS
588
600
  * needs `runtime`; Android needs `android`; macOS needs `macos` and uses the manifest digest as its fingerprint.
601
+ * Declared native Gradle jobs use a null fingerprint; their sourceDigest is only a transfer identity.
589
602
  */
590
603
  interface BuildStartParams {
591
604
  repo: string;
@@ -593,8 +606,21 @@ interface BuildStartParams {
593
606
  platform: "ios" | "android" | "macos";
594
607
  configuration?: string | null;
595
608
  scheme?: string | null;
609
+ iosProjectPath?: string | null;
596
610
  runtime?: string | null;
597
- fingerprint: string;
611
+ fingerprint: string | null;
612
+ native?: {
613
+ provider: "xcode";
614
+ sourceDigest: string;
615
+ cacheKey: string;
616
+ arch: "arm64" | "x86_64" | null;
617
+ /** The non-file parameters of the client's artifact identity, so the machine can name what differs. */
618
+ parameters: Record<string, unknown>;
619
+ } | {
620
+ provider: "gradle";
621
+ sourceDigest: string;
622
+ inputs: GradleOffloadInputs;
623
+ };
598
624
  packageName?: string | null;
599
625
  isExpo?: boolean;
600
626
  optimizations?: Record<string, unknown> | null;
@@ -629,7 +655,9 @@ interface BuildArtifactResult {
629
655
  type BuildJobOutcome = {
630
656
  ok: true;
631
657
  artifact: BuildArtifactResult;
632
- fingerprint: string;
658
+ fingerprint: string | null;
659
+ sourceDigest?: string;
660
+ androidPackage?: string;
633
661
  compilationCache: Record<string, unknown>;
634
662
  timings: Record<string, number>;
635
663
  } | {
@@ -1521,4 +1549,4 @@ type ServeRoute = {
1521
1549
  port: number;
1522
1550
  };
1523
1551
  //#endregion
1524
- export { FRAME_EDGE as $, UnsubscribeParams as $n, NOTIFICATION_LEVELS as $t, BuildToolchain as A, ReplayRange as An, LOG_SOURCES as At, DEVICE_HOST_METHODS as B, ServerUpdateOutcome as Bn, MAX_LOG_TAIL as Bt, BuildPlanResult as C, RecordingSetParams as Cn, InputTouchParams as Ct, BuildStartParams as D, ReplayKeyframe as Dn, KeyframeParams as Dt, BuildRequestAuth as E, ReplayEndedEvent as En, KeyModifier as Et, ControlBeginParams as F, SERVER_UPDATE_METHODS as Fn, LogSource as Ft, DeviceHostRequestAuth as G, SettingsResult as Gn, MachineUpdateStatus as Gt, DeviceAuth as H, ServerUpdateProgress as Hn, MachineDetails as Ht, ControlBeginResult as I, ServeRoute as In, LogsEndedEvent as It, DuoFramePose as J, StatsResult as Jn, MacosWindow as Jt, DevicePosture as K, SimulatorCommand as Kn, MachineUsage as Kt, ControlEndParams as L, ServerEvent as Ln, LogsEvent as Lt, CONTROL_END_REASONS as M, ReplayTarget as Mn, LogFilter as Mt, Capability as N, RequestId as Nn, LogLevel as Nt, BuildSyncParams as O, ReplayKeyframeParams as On, LEGACY_PUSH_EVENTS as Ot, ClientRequest as P, RotateDirection as Pn, LogRecord as Pt, FEATURES as Q, TouchPhase as Qn, Methods as Qt, ControlEndedEvent as R, ServerMessage as Rn, LogsQueryResult as Rt, BuildPlanParams as S, ROTATE_DIRECTIONS as Sn, InputTextParams as St, BuildProgressEvent as T, ReloadPlatform as Tn, KEY_MODIFIERS as Tt, DeviceFrameArtwork as U, ServerUpdateStartParams as Un, MachineHistory as Ut, DEVICE_POSTURES as V, ServerUpdatePackage as Vn, METHODS as Vt, DeviceFrameEvent as W, ServerUpdateStatus as Wn, MachineHistoryParams as Wt, ErrorCode as X, SubscribeResult as Xn, MemoryPressure as Xt, ERROR_CODES as Y, StatusEvent as Yn, MacosWindowsEvent as Yt, ErrorEvent as Z, TOUCH_PHASES as Zn, Method as Zt, BuildJobParams as _, PushRegisterParams as _n, InputKeyParams as _t, ArchiveDetailParams as a, NotificationTarget as an, VIDEO_FOLDED as ar, FramesLiveParams as at, BuildOfferParams as b, REPLAY_MARKER_KINDS as bn, InputScrollParams as bt, BUILD_REPO_PATTERN as c, PLATFORMS as cn, VIDEO_UNFOLDED as cr, FramesSubscribeResult as ct, BuildArtifactResult as d, PUSH_EVENTS as dn, WorkspaceDiff as dr, HostedSessionRow as dt, NOTIFICATION_SUPPRESSIONS as en, UsageHistory as er, FRAME_FPS as et, BuildAttachResult as f, PUSH_TOKEN_PATTERN as fn, WorkspaceFile as fr, INPUT_BUTTONS as ft, BuildJobOutcome as g, PushEvent as gn, InputKey as gt, BuildFile as h, ProtocolError as hn, WorkspacePatch as hr, InputButtonParams as ht, ActionResult as i, NotificationSuppression as in, VIDEO_CODECS as ir, FrameTarget as it, CAPABILITIES as j, ReplaySpan as jn, LegacyPushEvent as jt, BuildSyncResult as k, ReplayMarker as kn, LOG_LEVELS as kt, BUILD_RUBY_VERSION_PATTERN as l, PROTOCOL_SCHEMA_FILE as ln, VideoCodec as lr, HelloParams as lt, BuildClientSummary as m, Platform as mn, WorkspaceParams as mr, InputButton as mt, ActionName as n, NotificationEvent as nn, UsageSeries as nr, FrameDelayedEvent as nt, ArchiveDetailResult as o, NotificationsListParams as on, VIDEO_HEADER_VERSION as or, FramesSeekParams as ot, BuildCapacity as p, PairingAuth as pn, WorkspaceFiles as pr, INPUT_KEYS as pt, DeviceUsageSeries as q, SimulatorOptions as qn, MachineVolume as qt, ActionParams as r, NotificationLevel as rn, VIDEO_ARTWORK as rr, FrameEvent as rt, BUILD_METHODS as s, NotificationsListResult as sn, VIDEO_KEYFRAME as sr, FramesSeekResult as st, ACTIONS as t, NotificationEntry as tn, UsageSample as tr, Feature as tt, BuildAndroidOptions as u, PROTOCOL_VERSION as un, VideoPacket as ur, HelloResult as ut, BuildMachineCapacity as v, QuietHours as vn, InputPostureParams as vt, BuildPlatform as w, RecordingSetResult as wn, InputWindowParams as wt, BuildOfferResult as x, REPLAY_RATES as xn, InputSimulatorParams as xt, BuildMachineReport as y, RELOAD_PLATFORMS as yn, InputRotateParams as yt, ControlPlatform as z, ServerResponse as zn, MAX_INPUT_TEXT as zt };
1552
+ export { FRAME_EDGE as $, TouchPhase as $n, Methods as $t, BuildToolchain as A, ReplayMarker as An, LOG_LEVELS as At, DEVICE_HOST_METHODS as B, ServerResponse as Bn, MAX_INPUT_TEXT as Bt, BuildPlanResult as C, ROTATE_DIRECTIONS as Cn, InputTextParams as Ct, BuildStartParams as D, ReplayEndedEvent as Dn, KeyModifier as Dt, BuildRequestAuth as E, ReloadPlatform as En, KEY_MODIFIERS as Et, ControlBeginParams as F, RotateDirection as Fn, LogRecord as Ft, DeviceHostRequestAuth as G, ServerUpdateStatus as Gn, MachineHistoryParams as Gt, DeviceAuth as H, ServerUpdatePackage as Hn, METHODS as Ht, ControlBeginResult as I, SERVER_UPDATE_METHODS as In, LogSource as It, DuoFramePose as J, SimulatorOptions as Jn, MachineVolume as Jt, DevicePosture as K, SettingsResult as Kn, MachineUpdateStatus as Kt, ControlEndParams as L, ServeRoute as Ln, LogsEndedEvent as Lt, CONTROL_END_REASONS as M, ReplaySpan as Mn, LegacyPushEvent as Mt, Capability as N, ReplayTarget as Nn, LogFilter as Nt, BuildSyncParams as O, ReplayKeyframe as On, KeyframeParams as Ot, ClientRequest as P, RequestId as Pn, LogLevel as Pt, FEATURES as Q, TOUCH_PHASES as Qn, Method as Qt, ControlEndedEvent as R, ServerEvent as Rn, LogsEvent as Rt, BuildPlanParams as S, REPLAY_RATES as Sn, InputSimulatorParams as St, BuildProgressEvent as T, RecordingSetResult as Tn, InputWindowParams as Tt, DeviceFrameArtwork as U, ServerUpdateProgress as Un, MachineDetails as Ut, DEVICE_POSTURES as V, ServerUpdateOutcome as Vn, MAX_LOG_TAIL as Vt, DeviceFrameEvent as W, ServerUpdateStartParams as Wn, MachineHistory as Wt, ErrorCode as X, StatusEvent as Xn, MacosWindowsEvent as Xt, ERROR_CODES as Y, StatsResult as Yn, MacosWindow as Yt, ErrorEvent as Z, SubscribeResult as Zn, MemoryPressure as Zt, BuildJobParams as _, PushEvent as _n, InputKey as _t, ArchiveDetailParams as a, NotificationSuppression as an, VIDEO_CODECS as ar, FramesLiveParams as at, BuildOfferParams as b, RELOAD_PLATFORMS as bn, InputRotateParams as bt, BUILD_REPO_PATTERN as c, NotificationsListResult as cn, VIDEO_KEYFRAME as cr, FramesSubscribeResult as ct, BuildArtifactResult as d, PROTOCOL_VERSION as dn, VideoPacket as dr, HelloResult as dt, NOTIFICATION_LEVELS as en, UnsubscribeParams as er, FRAME_FPS as et, BuildAttachResult as f, PUSH_EVENTS as fn, WorkspaceDiff as fr, HostedSessionRow as ft, BuildJobOutcome as g, ProtocolError as gn, WorkspacePatch as gr, InputButtonParams as gt, BuildFile as h, Platform as hn, WorkspaceParams as hr, InputButton as ht, ActionResult as i, NotificationLevel as in, VIDEO_ARTWORK as ir, FrameTarget as it, CAPABILITIES as j, ReplayRange as jn, LOG_SOURCES as jt, BuildSyncResult as k, ReplayKeyframeParams as kn, LEGACY_PUSH_EVENTS as kt, BUILD_RUBY_VERSION_PATTERN as l, PLATFORMS as ln, VIDEO_UNFOLDED as lr, GradleOffloadInputs as lt, BuildClientSummary as m, PairingAuth as mn, WorkspaceFiles as mr, INPUT_KEYS as mt, ActionName as n, NotificationEntry as nn, UsageSample as nr, FrameDelayedEvent as nt, ArchiveDetailResult as o, NotificationTarget as on, VIDEO_FOLDED as or, FramesSeekParams as ot, BuildCapacity as p, PUSH_TOKEN_PATTERN as pn, WorkspaceFile as pr, INPUT_BUTTONS as pt, DeviceUsageSeries as q, SimulatorCommand as qn, MachineUsage as qt, ActionParams as r, NotificationEvent as rn, UsageSeries as rr, FrameEvent as rt, BUILD_METHODS as s, NotificationsListParams as sn, VIDEO_HEADER_VERSION as sr, FramesSeekResult as st, ACTIONS as t, NOTIFICATION_SUPPRESSIONS as tn, UsageHistory as tr, Feature as tt, BuildAndroidOptions as u, PROTOCOL_SCHEMA_FILE as un, VideoCodec as ur, HelloParams as ut, BuildMachineCapacity as v, PushRegisterParams as vn, InputKeyParams as vt, BuildPlatform as w, RecordingSetParams as wn, InputTouchParams as wt, BuildOfferResult as x, REPLAY_MARKER_KINDS as xn, InputScrollParams as xt, BuildMachineReport as y, QuietHours as yn, InputPostureParams as yt, ControlPlatform as z, ServerMessage as zn, LogsQueryResult as zt };
@@ -1,2 +1,2 @@
1
- import { $ as FRAME_EDGE, $n as UnsubscribeParams, $t as NOTIFICATION_LEVELS, A as BuildToolchain, An as ReplayRange, At as LOG_SOURCES, B as DEVICE_HOST_METHODS, Bn as ServerUpdateOutcome, Bt as MAX_LOG_TAIL, C as BuildPlanResult, Cn as RecordingSetParams, Ct as InputTouchParams, D as BuildStartParams, Dn as ReplayKeyframe, Dt as KeyframeParams, E as BuildRequestAuth, En as ReplayEndedEvent, Et as KeyModifier, F as ControlBeginParams, Fn as SERVER_UPDATE_METHODS, Ft as LogSource, G as DeviceHostRequestAuth, Gn as SettingsResult, Gt as MachineUpdateStatus, H as DeviceAuth, Hn as ServerUpdateProgress, Ht as MachineDetails, I as ControlBeginResult, In as ServeRoute, It as LogsEndedEvent, J as DuoFramePose, Jn as StatsResult, Jt as MacosWindow, K as DevicePosture, Kn as SimulatorCommand, Kt as MachineUsage, L as ControlEndParams, Ln as ServerEvent, Lt as LogsEvent, M as CONTROL_END_REASONS, Mn as ReplayTarget, Mt as LogFilter, N as Capability, Nn as RequestId, Nt as LogLevel, O as BuildSyncParams, On as ReplayKeyframeParams, Ot as LEGACY_PUSH_EVENTS, P as ClientRequest, Pn as RotateDirection, Pt as LogRecord, Q as FEATURES, Qn as TouchPhase, Qt as Methods, R as ControlEndedEvent, Rn as ServerMessage, Rt as LogsQueryResult, S as BuildPlanParams, Sn as ROTATE_DIRECTIONS, St as InputTextParams, T as BuildProgressEvent, Tn as ReloadPlatform, Tt as KEY_MODIFIERS, U as DeviceFrameArtwork, Un as ServerUpdateStartParams, Ut as MachineHistory, V as DEVICE_POSTURES, Vn as ServerUpdatePackage, Vt as METHODS, W as DeviceFrameEvent, Wn as ServerUpdateStatus, Wt as MachineHistoryParams, X as ErrorCode, Xn as SubscribeResult, Xt as MemoryPressure, Y as ERROR_CODES, Yn as StatusEvent, Yt as MacosWindowsEvent, Z as ErrorEvent, Zn as TOUCH_PHASES, Zt as Method, _ as BuildJobParams, _n as PushRegisterParams, _t as InputKeyParams, a as ArchiveDetailParams, an as NotificationTarget, ar as VIDEO_FOLDED, at as FramesLiveParams, b as BuildOfferParams, bn as REPLAY_MARKER_KINDS, bt as InputScrollParams, c as BUILD_REPO_PATTERN, cn as PLATFORMS, cr as VIDEO_UNFOLDED, ct as FramesSubscribeResult, d as BuildArtifactResult, dn as PUSH_EVENTS, dr as WorkspaceDiff, dt as HostedSessionRow, en as NOTIFICATION_SUPPRESSIONS, er as UsageHistory, et as FRAME_FPS, f as BuildAttachResult, fn as PUSH_TOKEN_PATTERN, fr as WorkspaceFile, ft as INPUT_BUTTONS, g as BuildJobOutcome, gn as PushEvent, gt as InputKey, h as BuildFile, hn as ProtocolError, hr as WorkspacePatch, ht as InputButtonParams, i as ActionResult, in as NotificationSuppression, ir as VIDEO_CODECS, it as FrameTarget, j as CAPABILITIES, jn as ReplaySpan, jt as LegacyPushEvent, k as BuildSyncResult, kn as ReplayMarker, kt as LOG_LEVELS, l as BUILD_RUBY_VERSION_PATTERN, ln as PROTOCOL_SCHEMA_FILE, lr as VideoCodec, lt as HelloParams, m as BuildClientSummary, mn as Platform, mr as WorkspaceParams, mt as InputButton, n as ActionName, nn as NotificationEvent, nr as UsageSeries, nt as FrameDelayedEvent, o as ArchiveDetailResult, on as NotificationsListParams, or as VIDEO_HEADER_VERSION, ot as FramesSeekParams, p as BuildCapacity, pn as PairingAuth, pr as WorkspaceFiles, pt as INPUT_KEYS, q as DeviceUsageSeries, qn as SimulatorOptions, qt as MachineVolume, r as ActionParams, rn as NotificationLevel, rr as VIDEO_ARTWORK, rt as FrameEvent, s as BUILD_METHODS, sn as NotificationsListResult, sr as VIDEO_KEYFRAME, st as FramesSeekResult, t as ACTIONS, tn as NotificationEntry, tr as UsageSample, tt as Feature, u as BuildAndroidOptions, un as PROTOCOL_VERSION, ur as VideoPacket, ut as HelloResult, v as BuildMachineCapacity, vn as QuietHours, vt as InputPostureParams, w as BuildPlatform, wn as RecordingSetResult, wt as InputWindowParams, x as BuildOfferResult, xn as REPLAY_RATES, xt as InputSimulatorParams, y as BuildMachineReport, yn as RELOAD_PLATFORMS, yt as InputRotateParams, z as ControlPlatform, zn as ServerResponse, zt as MAX_INPUT_TEXT } from "./protocol-CXPbHten.mjs";
2
- export { ACTIONS, ActionName, ActionParams, ActionResult, ArchiveDetailParams, ArchiveDetailResult, BUILD_METHODS, BUILD_REPO_PATTERN, BUILD_RUBY_VERSION_PATTERN, BuildAndroidOptions, BuildArtifactResult, BuildAttachResult, BuildCapacity, BuildClientSummary, BuildFile, BuildJobOutcome, BuildJobParams, BuildMachineCapacity, BuildMachineReport, BuildOfferParams, BuildOfferResult, BuildPlanParams, BuildPlanResult, BuildPlatform, BuildProgressEvent, BuildRequestAuth, BuildStartParams, BuildSyncParams, BuildSyncResult, BuildToolchain, CAPABILITIES, CONTROL_END_REASONS, Capability, ClientRequest, ControlBeginParams, ControlBeginResult, ControlEndParams, ControlEndedEvent, ControlPlatform, DEVICE_HOST_METHODS, DEVICE_POSTURES, DeviceAuth, DeviceFrameArtwork, DeviceFrameEvent, DeviceHostRequestAuth, DevicePosture, DeviceUsageSeries, DuoFramePose, ERROR_CODES, ErrorCode, ErrorEvent, FEATURES, FRAME_EDGE, FRAME_FPS, Feature, FrameDelayedEvent, FrameEvent, FrameTarget, FramesLiveParams, FramesSeekParams, FramesSeekResult, FramesSubscribeResult, HelloParams, HelloResult, HostedSessionRow, INPUT_BUTTONS, INPUT_KEYS, InputButton, InputButtonParams, InputKey, InputKeyParams, InputPostureParams, InputRotateParams, InputScrollParams, InputSimulatorParams, InputTextParams, InputTouchParams, InputWindowParams, KEY_MODIFIERS, KeyModifier, KeyframeParams, LEGACY_PUSH_EVENTS, LOG_LEVELS, LOG_SOURCES, LegacyPushEvent, LogFilter, LogLevel, LogRecord, LogSource, LogsEndedEvent, LogsEvent, LogsQueryResult, MAX_INPUT_TEXT, MAX_LOG_TAIL, METHODS, MachineDetails, MachineHistory, MachineHistoryParams, MachineUpdateStatus, MachineUsage, MachineVolume, MacosWindow, MacosWindowsEvent, MemoryPressure, Method, Methods, NOTIFICATION_LEVELS, NOTIFICATION_SUPPRESSIONS, NotificationEntry, NotificationEvent, NotificationLevel, NotificationSuppression, NotificationTarget, NotificationsListParams, NotificationsListResult, PLATFORMS, PROTOCOL_SCHEMA_FILE, PROTOCOL_VERSION, PUSH_EVENTS, PUSH_TOKEN_PATTERN, PairingAuth, Platform, ProtocolError, PushEvent, PushRegisterParams, QuietHours, RELOAD_PLATFORMS, REPLAY_MARKER_KINDS, REPLAY_RATES, ROTATE_DIRECTIONS, RecordingSetParams, RecordingSetResult, ReloadPlatform, ReplayEndedEvent, ReplayKeyframe, ReplayKeyframeParams, ReplayMarker, ReplayRange, ReplaySpan, ReplayTarget, RequestId, RotateDirection, SERVER_UPDATE_METHODS, ServeRoute, ServerEvent, ServerMessage, ServerResponse, ServerUpdateOutcome, ServerUpdatePackage, ServerUpdateProgress, ServerUpdateStartParams, ServerUpdateStatus, SettingsResult, SimulatorCommand, SimulatorOptions, StatsResult, StatusEvent, SubscribeResult, TOUCH_PHASES, TouchPhase, UnsubscribeParams, UsageHistory, UsageSample, UsageSeries, VIDEO_ARTWORK, VIDEO_CODECS, VIDEO_FOLDED, VIDEO_HEADER_VERSION, VIDEO_KEYFRAME, VIDEO_UNFOLDED, VideoCodec, VideoPacket, WorkspaceDiff, WorkspaceFile, WorkspaceFiles, WorkspaceParams, WorkspacePatch };
1
+ import { $ as FRAME_EDGE, $n as TouchPhase, $t as Methods, A as BuildToolchain, An as ReplayMarker, At as LOG_LEVELS, B as DEVICE_HOST_METHODS, Bn as ServerResponse, Bt as MAX_INPUT_TEXT, C as BuildPlanResult, Cn as ROTATE_DIRECTIONS, Ct as InputTextParams, D as BuildStartParams, Dn as ReplayEndedEvent, Dt as KeyModifier, E as BuildRequestAuth, En as ReloadPlatform, Et as KEY_MODIFIERS, F as ControlBeginParams, Fn as RotateDirection, Ft as LogRecord, G as DeviceHostRequestAuth, Gn as ServerUpdateStatus, Gt as MachineHistoryParams, H as DeviceAuth, Hn as ServerUpdatePackage, Ht as METHODS, I as ControlBeginResult, In as SERVER_UPDATE_METHODS, It as LogSource, J as DuoFramePose, Jn as SimulatorOptions, Jt as MachineVolume, K as DevicePosture, Kn as SettingsResult, Kt as MachineUpdateStatus, L as ControlEndParams, Ln as ServeRoute, Lt as LogsEndedEvent, M as CONTROL_END_REASONS, Mn as ReplaySpan, Mt as LegacyPushEvent, N as Capability, Nn as ReplayTarget, Nt as LogFilter, O as BuildSyncParams, On as ReplayKeyframe, Ot as KeyframeParams, P as ClientRequest, Pn as RequestId, Pt as LogLevel, Q as FEATURES, Qn as TOUCH_PHASES, Qt as Method, R as ControlEndedEvent, Rn as ServerEvent, Rt as LogsEvent, S as BuildPlanParams, Sn as REPLAY_RATES, St as InputSimulatorParams, T as BuildProgressEvent, Tn as RecordingSetResult, Tt as InputWindowParams, U as DeviceFrameArtwork, Un as ServerUpdateProgress, Ut as MachineDetails, V as DEVICE_POSTURES, Vn as ServerUpdateOutcome, Vt as MAX_LOG_TAIL, W as DeviceFrameEvent, Wn as ServerUpdateStartParams, Wt as MachineHistory, X as ErrorCode, Xn as StatusEvent, Xt as MacosWindowsEvent, Y as ERROR_CODES, Yn as StatsResult, Yt as MacosWindow, Z as ErrorEvent, Zn as SubscribeResult, Zt as MemoryPressure, _ as BuildJobParams, _n as PushEvent, _t as InputKey, a as ArchiveDetailParams, an as NotificationSuppression, ar as VIDEO_CODECS, at as FramesLiveParams, b as BuildOfferParams, bn as RELOAD_PLATFORMS, bt as InputRotateParams, c as BUILD_REPO_PATTERN, cn as NotificationsListResult, cr as VIDEO_KEYFRAME, ct as FramesSubscribeResult, d as BuildArtifactResult, dn as PROTOCOL_VERSION, dr as VideoPacket, dt as HelloResult, en as NOTIFICATION_LEVELS, er as UnsubscribeParams, et as FRAME_FPS, f as BuildAttachResult, fn as PUSH_EVENTS, fr as WorkspaceDiff, ft as HostedSessionRow, g as BuildJobOutcome, gn as ProtocolError, gr as WorkspacePatch, gt as InputButtonParams, h as BuildFile, hn as Platform, hr as WorkspaceParams, ht as InputButton, i as ActionResult, in as NotificationLevel, ir as VIDEO_ARTWORK, it as FrameTarget, j as CAPABILITIES, jn as ReplayRange, jt as LOG_SOURCES, k as BuildSyncResult, kn as ReplayKeyframeParams, kt as LEGACY_PUSH_EVENTS, l as BUILD_RUBY_VERSION_PATTERN, ln as PLATFORMS, lr as VIDEO_UNFOLDED, lt as GradleOffloadInputs, m as BuildClientSummary, mn as PairingAuth, mr as WorkspaceFiles, mt as INPUT_KEYS, n as ActionName, nn as NotificationEntry, nr as UsageSample, nt as FrameDelayedEvent, o as ArchiveDetailResult, on as NotificationTarget, or as VIDEO_FOLDED, ot as FramesSeekParams, p as BuildCapacity, pn as PUSH_TOKEN_PATTERN, pr as WorkspaceFile, pt as INPUT_BUTTONS, q as DeviceUsageSeries, qn as SimulatorCommand, qt as MachineUsage, r as ActionParams, rn as NotificationEvent, rr as UsageSeries, rt as FrameEvent, s as BUILD_METHODS, sn as NotificationsListParams, sr as VIDEO_HEADER_VERSION, st as FramesSeekResult, t as ACTIONS, tn as NOTIFICATION_SUPPRESSIONS, tr as UsageHistory, tt as Feature, u as BuildAndroidOptions, un as PROTOCOL_SCHEMA_FILE, ur as VideoCodec, ut as HelloParams, v as BuildMachineCapacity, vn as PushRegisterParams, vt as InputKeyParams, w as BuildPlatform, wn as RecordingSetParams, wt as InputTouchParams, x as BuildOfferResult, xn as REPLAY_MARKER_KINDS, xt as InputScrollParams, y as BuildMachineReport, yn as QuietHours, yt as InputPostureParams, z as ControlPlatform, zn as ServerMessage, zt as LogsQueryResult } from "./protocol-Bp-bcZIR.mjs";
2
+ export { ACTIONS, ActionName, ActionParams, ActionResult, ArchiveDetailParams, ArchiveDetailResult, BUILD_METHODS, BUILD_REPO_PATTERN, BUILD_RUBY_VERSION_PATTERN, BuildAndroidOptions, BuildArtifactResult, BuildAttachResult, BuildCapacity, BuildClientSummary, BuildFile, BuildJobOutcome, BuildJobParams, BuildMachineCapacity, BuildMachineReport, BuildOfferParams, BuildOfferResult, BuildPlanParams, BuildPlanResult, BuildPlatform, BuildProgressEvent, BuildRequestAuth, BuildStartParams, BuildSyncParams, BuildSyncResult, BuildToolchain, CAPABILITIES, CONTROL_END_REASONS, Capability, ClientRequest, ControlBeginParams, ControlBeginResult, ControlEndParams, ControlEndedEvent, ControlPlatform, DEVICE_HOST_METHODS, DEVICE_POSTURES, DeviceAuth, DeviceFrameArtwork, DeviceFrameEvent, DeviceHostRequestAuth, DevicePosture, DeviceUsageSeries, DuoFramePose, ERROR_CODES, ErrorCode, ErrorEvent, FEATURES, FRAME_EDGE, FRAME_FPS, Feature, FrameDelayedEvent, FrameEvent, FrameTarget, FramesLiveParams, FramesSeekParams, FramesSeekResult, FramesSubscribeResult, GradleOffloadInputs, HelloParams, HelloResult, HostedSessionRow, INPUT_BUTTONS, INPUT_KEYS, InputButton, InputButtonParams, InputKey, InputKeyParams, InputPostureParams, InputRotateParams, InputScrollParams, InputSimulatorParams, InputTextParams, InputTouchParams, InputWindowParams, KEY_MODIFIERS, KeyModifier, KeyframeParams, LEGACY_PUSH_EVENTS, LOG_LEVELS, LOG_SOURCES, LegacyPushEvent, LogFilter, LogLevel, LogRecord, LogSource, LogsEndedEvent, LogsEvent, LogsQueryResult, MAX_INPUT_TEXT, MAX_LOG_TAIL, METHODS, MachineDetails, MachineHistory, MachineHistoryParams, MachineUpdateStatus, MachineUsage, MachineVolume, MacosWindow, MacosWindowsEvent, MemoryPressure, Method, Methods, NOTIFICATION_LEVELS, NOTIFICATION_SUPPRESSIONS, NotificationEntry, NotificationEvent, NotificationLevel, NotificationSuppression, NotificationTarget, NotificationsListParams, NotificationsListResult, PLATFORMS, PROTOCOL_SCHEMA_FILE, PROTOCOL_VERSION, PUSH_EVENTS, PUSH_TOKEN_PATTERN, PairingAuth, Platform, ProtocolError, PushEvent, PushRegisterParams, QuietHours, RELOAD_PLATFORMS, REPLAY_MARKER_KINDS, REPLAY_RATES, ROTATE_DIRECTIONS, RecordingSetParams, RecordingSetResult, ReloadPlatform, ReplayEndedEvent, ReplayKeyframe, ReplayKeyframeParams, ReplayMarker, ReplayRange, ReplaySpan, ReplayTarget, RequestId, RotateDirection, SERVER_UPDATE_METHODS, ServeRoute, ServerEvent, ServerMessage, ServerResponse, ServerUpdateOutcome, ServerUpdatePackage, ServerUpdateProgress, ServerUpdateStartParams, ServerUpdateStatus, SettingsResult, SimulatorCommand, SimulatorOptions, StatsResult, StatusEvent, SubscribeResult, TOUCH_PHASES, TouchPhase, UnsubscribeParams, UsageHistory, UsageSample, UsageSeries, VIDEO_ARTWORK, VIDEO_CODECS, VIDEO_FOLDED, VIDEO_HEADER_VERSION, VIDEO_KEYFRAME, VIDEO_UNFOLDED, VideoCodec, VideoPacket, WorkspaceDiff, WorkspaceFile, WorkspaceFiles, WorkspaceParams, WorkspacePatch };
package/dist/protocol.mjs CHANGED
@@ -30,6 +30,10 @@ const CAPABILITIES = [
30
30
  * bringing it to the front, or with null resumes following the front window.
31
31
  * `hosted-ios-data` is iOS build handoff and native log queries, persisted before device deletion.
32
32
  * `hosted-android-data` is Android APK build handoff and native log queries, persisted before device deletion.
33
+ * `hosted-ios-process` and `hosted-android-process` accept native app offers in process mode, with live process readiness and no Metro.
34
+ * `native-xcode-build` accepts native Xcode provider requests with a separate source-transfer identity.
35
+ * `native-xcode-toolchain` accepts native Xcode discovery without unrelated platform or Ruby probes.
36
+ * `native-gradle-build` accepts declared Gradle transfer inputs with no reusable artifact identity.
33
37
  * `server-update` is `server.update.status`, `server.update.start` and `server.update.chunk`.
34
38
  */
35
39
  const FEATURES = [
@@ -51,7 +55,12 @@ const FEATURES = [
51
55
  "workspace-diff",
52
56
  "hosted-congestion",
53
57
  "hosted-ios-data",
58
+ "hosted-ios-process",
59
+ "native-xcode-build",
60
+ "native-xcode-toolchain",
61
+ "native-gradle-build",
54
62
  "hosted-android-data",
63
+ "hosted-android-process",
55
64
  "server-update"
56
65
  ];
57
66
  const METHODS = [