feat(automation): add isolated job delivery mode

This commit is contained in:
William Valentin
2026-02-15 19:23:15 -08:00
parent 0470647ee7
commit 421942f66d
13 changed files with 183 additions and 11 deletions
+23
View File
@@ -132,6 +132,29 @@ describe('ChannelRegistry', () => {
expect(adapter.sendFn).toHaveBeenCalledWith('user-42', { text: 'pong' });
});
it('routes reply using metadata.replyPeerId when provided', async () => {
const adapter = createMockAdapter('test-channel');
registry.register(adapter);
const handler = vi.fn(async (_msg: InboundMessage, reply: (r: OutboundMessage) => Promise<void>) => {
await reply({ text: 'pong' });
});
registry.setMessageHandler(handler);
const msg = {
...makeMessage('test-channel'),
senderId: 'isolated-run-1',
metadata: { replyPeerId: 'job-a' },
};
adapter.triggerMessage(msg);
await vi.waitFor(() => {
expect(handler).toHaveBeenCalledOnce();
});
expect(adapter.sendFn).toHaveBeenCalledWith('job-a', { text: 'pong' });
});
it('unregisters adapter', () => {
const adapter = createMockAdapter('removeme');
registry.register(adapter);