Add native service supervisor and runtime packaging

This commit is contained in:
reaper
2026-08-22 03:02:24 -05:00
parent 854ae3a2ad
commit 2bd9babab2
13 changed files with 483 additions and 26 deletions
+18
View File
@@ -0,0 +1,18 @@
import { createServer } from 'net'
import { describe, expect, it } from 'vitest'
import { allocateNativePorts } from './portAllocator'
describe('native port allocator', () => {
it('allocates four unique loopback ports and releases the reservations', async () => {
const ports = await allocateNativePorts()
const values = Object.values(ports)
expect(new Set(values).size).toBe(4)
expect(values.every((port) => Number.isInteger(port) && port > 0)).toBe(true)
const server = createServer()
await new Promise<void>((resolve, reject) => {
server.once('error', reject)
server.listen(ports.http, '127.0.0.1', () => resolve())
})
await new Promise<void>((resolve) => server.close(() => resolve()))
})
})