feat(wave1): @mosaic/types populated + @mosaic/queue migrated to use it (#1)

Co-authored-by: Jason Woltje <jason@diversecanvas.com>
Co-committed-by: Jason Woltje <jason@diversecanvas.com>
This commit was merged in pull request #1.
This commit is contained in:
2026-03-06 22:44:05 +00:00
committed by jason.woltje
parent 5103406c93
commit 8a2fb6c1ec
24 changed files with 4946 additions and 13 deletions

View File

@@ -0,0 +1,50 @@
import { describe, expect, it } from 'vitest';
import {
QUEUE_MCP_TOOL_DEFINITIONS,
buildQueueMcpServer,
} from '../src/mcp-server.js';
describe('queue MCP server', () => {
it('declares all required phase-1 tools', () => {
const toolNames = QUEUE_MCP_TOOL_DEFINITIONS.map((tool) => tool.name).sort();
expect(toolNames).toEqual([
'queue_claim',
'queue_complete',
'queue_fail',
'queue_get',
'queue_heartbeat',
'queue_list',
'queue_release',
'queue_status',
]);
});
it('builds an MCP server instance', () => {
const server = buildQueueMcpServer({
openSession: () =>
Promise.resolve({
repository: {
list: () => Promise.resolve([]),
get: () => Promise.resolve(null),
claim: () => Promise.reject(new Error('not implemented')),
heartbeat: () => Promise.reject(new Error('not implemented')),
release: () => Promise.reject(new Error('not implemented')),
complete: () => Promise.reject(new Error('not implemented')),
fail: () => Promise.reject(new Error('not implemented')),
},
checkHealth: () =>
Promise.resolve({
checkedAt: 1,
latencyMs: 0,
ok: true,
response: 'PONG',
}),
close: () => Promise.resolve(),
}),
});
expect(server).toBeDefined();
});
});