diff options
| author | Adam Malczewski <[email protected]> | 2026-06-26 22:03:19 +0900 |
|---|---|---|
| committer | Adam Malczewski <[email protected]> | 2026-06-26 22:23:39 +0900 |
| commit | 727c98c9dae516a2070eb950410314380a20c974 (patch) | |
| tree | 52aa1022c54f11770be7e4e2a324f0a8b8b8deec /packages/message-queue/src/service.ts | |
| parent | e59dc11f63b1df51142259bb2c406af8c9c8c2bb (diff) | |
| download | dispatch-727c98c9dae516a2070eb950410314380a20c974.tar.gz dispatch-727c98c9dae516a2070eb950410314380a20c974.zip | |
style: switch from tabs to 2-space indentation
Diffstat (limited to 'packages/message-queue/src/service.ts')
| -rw-r--r-- | packages/message-queue/src/service.ts | 94 |
1 files changed, 47 insertions, 47 deletions
diff --git a/packages/message-queue/src/service.ts b/packages/message-queue/src/service.ts index 91d0fc5..97e270d 100644 --- a/packages/message-queue/src/service.ts +++ b/packages/message-queue/src/service.ts @@ -18,17 +18,17 @@ import { drain as drainQueue, enqueue as enqueueMessage, getQueue as readQueue } * `host.getService(messageQueueHandle)`. */ export interface MessageQueueService { - /** Append a message; return the CURRENT queue snapshot (post-append). */ - enqueue(conversationId: string, text: string): QueuedMessage[]; - /** Current queue snapshot (empty array if none / unknown conversation). */ - getQueue(conversationId: string): QueuedMessage[]; - /** - * Drain: return all queued messages, CLEAR the queue, and push a surface - * update (empty). Returns the raw `QueuedMessage[]` (NOT a ChatMessage — - * the caller combines + builds the ChatMessage). Empty array if the queue - * was empty (and then NO surface update is pushed — no change). - */ - drain(conversationId: string): QueuedMessage[]; + /** Append a message; return the CURRENT queue snapshot (post-append). */ + enqueue(conversationId: string, text: string): QueuedMessage[]; + /** Current queue snapshot (empty array if none / unknown conversation). */ + getQueue(conversationId: string): QueuedMessage[]; + /** + * Drain: return all queued messages, CLEAR the queue, and push a surface + * update (empty). Returns the raw `QueuedMessage[]` (NOT a ChatMessage — + * the caller combines + builds the ChatMessage). Empty array if the queue + * was empty (and then NO surface update is pushed — no change). + */ + drain(conversationId: string): QueuedMessage[]; } /** @@ -36,19 +36,19 @@ export interface MessageQueueService { * session-orchestrator imports to reach the queue — no string-keyed lookup. */ export const messageQueueHandle: ServiceHandle<MessageQueueService> = - defineService<MessageQueueService>("message-queue"); + defineService<MessageQueueService>("message-queue"); /** Deps for the service shell — the pure core's deps plus the surface notifier. */ export interface MessageQueueDeps extends QueueDeps { - /** - * Notify the surface-registry that the queue changed, so the transport - * re-fetches + pushes a full new SurfaceUpdate. Called ONLY on a real - * change (enqueue → grew; drain-non-empty → emptied); a no-op drain of an - * already-empty queue does NOT notify (no change → no surface push). - */ - readonly notify: () => void; - /** Injected host logger (optional in tests). Logs counts/lengths at debug, never bodies. */ - readonly logger?: Logger; + /** + * Notify the surface-registry that the queue changed, so the transport + * re-fetches + pushes a full new SurfaceUpdate. Called ONLY on a real + * change (enqueue → grew; drain-non-empty → emptied); a no-op drain of an + * already-empty queue does NOT notify (no change → no surface push). + */ + readonly notify: () => void; + /** Injected host logger (optional in tests). Logs counts/lengths at debug, never bodies. */ + readonly logger?: Logger; } /** @@ -58,31 +58,31 @@ export interface MessageQueueDeps extends QueueDeps { * in this closure, reachable only through the returned service. */ export function createMessageQueueService(deps: MessageQueueDeps): MessageQueueService { - const state: MessageQueueState = new Map(); + const state: MessageQueueState = new Map(); - return { - enqueue(conversationId, text) { - const snapshot = enqueueMessage(state, conversationId, text, deps); - deps.logger?.debug("message-queue: enqueued", { - conversationId, - queueLen: snapshot.length, - textLen: text.length, - }); - deps.notify(); - return snapshot; - }, - getQueue(conversationId) { - return readQueue(state, conversationId); - }, - drain(conversationId) { - const drained = drainQueue(state, conversationId); - if (drained.length === 0) return drained; - deps.logger?.debug("message-queue: drained", { - conversationId, - count: drained.length, - }); - deps.notify(); - return drained; - }, - }; + return { + enqueue(conversationId, text) { + const snapshot = enqueueMessage(state, conversationId, text, deps); + deps.logger?.debug("message-queue: enqueued", { + conversationId, + queueLen: snapshot.length, + textLen: text.length, + }); + deps.notify(); + return snapshot; + }, + getQueue(conversationId) { + return readQueue(state, conversationId); + }, + drain(conversationId) { + const drained = drainQueue(state, conversationId); + if (drained.length === 0) return drained; + deps.logger?.debug("message-queue: drained", { + conversationId, + count: drained.length, + }); + deps.notify(); + return drained; + }, + }; } |
