fix(bash): classify signal-terminated background processes

This commit is contained in:
Yichen Jiang
2026-07-10 10:19:54 +08:00
parent f42cd49337
commit 712d481bdf
3 changed files with 23 additions and 4 deletions

View File

@@ -249,6 +249,15 @@ describe('LocalBashExecutor.start (background process handles)', () => {
expect(proc.signal).toBe('SIGTERM')
})
it('a self-signal exit settles the handle as killed, not completed', async () => {
const { bash } = await setup()
const proc = bash.start(bash.resolve({ command: 'kill -TERM $$' }))
await proc.done
expect(proc.status).toBe('killed')
expect(proc.exitCode).toBeNull()
expect(proc.signal).toBe('SIGTERM')
})
it('a background spawn failure settles as killed with the error readable on stderr', async () => {
const { bash } = await setup()
const proc = bash.start(bash.resolve({ command: 'true', workdir: '/nonexistent-dsh' }))