@@ -36,7 +36,6 @@ import {
3636 withDiagnosticsScope ,
3737} from '../../utils/diagnostics.ts' ;
3838import { isEnvTruthy } from '../../utils/retry.ts' ;
39- import { resetAndroidSnapshotHelperSessions } from '../../platforms/android/snapshot-helper.ts' ;
4039import {
4140 acquireDaemonLock ,
4241 parseIntegerEnv ,
@@ -55,9 +54,11 @@ import {
5554} from './transport.ts' ;
5655import { prewarmPngWorker , terminatePngWorker } from '../../utils/png-worker-client.ts' ;
5756import { sleep } from '../../utils/timeouts.ts' ;
58- import { setRunnerLeaseOwnerStateDir } from '../../platforms/apple/core/runner-owner-state.ts' ;
59- import { cleanupManagedAgentBrowserOrphans } from '../../platforms/web/agent-browser-lifecycle.ts' ;
60- import { getManagedAgentBrowserStatus } from '../../platforms/web/agent-browser-tool.ts' ;
57+ import { configureAppleRunnerLeaseOwnerStateDir } from '../../platform-runtime-apple-runner-owner.ts' ;
58+ import {
59+ cleanupManagedWebRuntimeOrphans ,
60+ resetAndroidSnapshotHelperRuntime ,
61+ } from '../../platform-runtime-resource-cleanup.ts' ;
6162import { openWebSessionNames } from '../web-session-names.ts' ;
6263import {
6364 recoverAppLogResourcesAfterDaemonLock ,
@@ -247,7 +248,7 @@ export async function startDaemonRuntime(
247248 const { baseDir, infoPath, lockPath, logPath, sessionsDir } = daemonPaths ;
248249 const daemonServerMode = resolveDaemonServerMode ( env . AGENT_DEVICE_DAEMON_SERVER_MODE ) ;
249250 const retainArtifacts = isEnvTruthy ( env . AGENT_DEVICE_RETAIN_ARTIFACTS ) ;
250- setRunnerLeaseOwnerStateDir ( baseDir ) ;
251+ await configureAppleRunnerLeaseOwnerStateDir ( baseDir ) ;
251252
252253 const sessionStore = new SessionStore ( sessionsDir ) ;
253254 const ownedProcessRecords = createOwnedProcessRecordStore ( {
@@ -479,7 +480,7 @@ export async function startDaemonRuntime(
479480 } ;
480481 if ( ! acquireDaemonLock ( baseDir , lockPath , lockData ) ) {
481482 stderr . write ( 'Daemon lock is held by another process; exiting.\n' ) ;
482- setRunnerLeaseOwnerStateDir ( undefined ) ;
483+ await configureAppleRunnerLeaseOwnerStateDir ( undefined ) ;
483484 exit ( 0 ) ;
484485 return null ;
485486 }
@@ -560,7 +561,7 @@ export async function startDaemonRuntime(
560561 closeServersBestEffort ( servers ) ;
561562 removeInfo ( infoPath ) ;
562563 releaseDaemonLock ( lockPath ) ;
563- setRunnerLeaseOwnerStateDir ( undefined ) ;
564+ await configureAppleRunnerLeaseOwnerStateDir ( undefined ) ;
564565 exit ( 1 ) ;
565566 return null ;
566567 }
@@ -587,7 +588,7 @@ export async function startDaemonRuntime(
587588 expiredProviderLeaseReleaser . beginShutdown ( ) ;
588589 await teardownDaemonSessions ( ) ;
589590 try {
590- await resetAndroidSnapshotHelperSessions ( ) ;
591+ await resetAndroidSnapshotHelperRuntime ( ) ;
591592 } catch ( error ) {
592593 emitDiagnostic ( {
593594 level : 'warn' ,
@@ -625,7 +626,7 @@ export async function startDaemonRuntime(
625626 ] ) ;
626627 removeInfo ( infoPath ) ;
627628 releaseDaemonLock ( lockPath ) ;
628- setRunnerLeaseOwnerStateDir ( undefined ) ;
629+ await configureAppleRunnerLeaseOwnerStateDir ( undefined ) ;
629630 exit ( shutdownOptions . exitCode ?? 0 ) ;
630631 } ;
631632
@@ -693,10 +694,9 @@ export async function cleanupWebBrowserOrphansForDaemonStartup(params: {
693694 sessionStore : SessionStore ;
694695 ownedProcessRecords ?: OwnedProcessRecordStore ;
695696} ) : Promise < void > {
696- const status = getManagedAgentBrowserStatus ( { stateDir : params . stateDir } ) ;
697- if ( ! status . installed ) return ;
698697 try {
699- await cleanupManagedAgentBrowserOrphans ( status , 'daemon-startup' , {
698+ await cleanupManagedWebRuntimeOrphans ( {
699+ stateDir : params . stateDir ,
700700 openWebSessionNames : openWebSessionNames ( params . sessionStore ) ,
701701 ...( params . ownedProcessRecords === undefined
702702 ? { }
0 commit comments