fix(coding): serialize agent server sleep restart

This commit is contained in:
2026-09-01 14:36:18 +08:00
parent 850947c092
commit 12d7588b3e
5 changed files with 141 additions and 0 deletions

View File

@@ -498,6 +498,7 @@ export function createCodingComposition(
await Promise.allSettled(conversationIds.map((conversationId) => (
runtime.dispose(conversationId, reason)
)));
if (reason === 'background_sleep' && runtime.hasActiveWork()) return;
await agentServer.stop();
},
async shutdown() {

View File

@@ -490,6 +490,7 @@ export class PiAgentServerProcess {
}
start(): Promise<void> {
if (this.stopFlight) return this.stopFlight.then(() => this.start());
if (this.startFlight) return this.startFlight;
if (this.child && !this.failure) return Promise.resolve();
this.startFlight = this.startServer().finally(() => {