import assert from 'node:assert/strict'; import test from 'node:test'; import { createMindSpaceLocalRuntimeServices } from './mindspace-local-runtime-services.mjs'; test('createMindSpaceLocalRuntimeServices assembles local runtime-backed service bindings', () => { const pool = { query: async () => { throw new Error('not implemented in unit test'); }, }; const services = createMindSpaceLocalRuntimeServices({ pool, h5Root: '/tmp/h5', env: { MINDSPACE_STORAGE_ROOT: '/srv/mindspace-data', H5_PUBLIC_BASE_URL: 'https://example.com', }, maxFileBytes: 8192, publicPageLimit: 8, resolveUserIdForAgentSession: async () => 'user-1', conversationPackageBackfill: () => [], conversationPackagePublicHtmlHydrator: () => [], logger: { info() {}, warn() {}, error() {} }, }); assert.equal(services.storageRoot, '/srv/mindspace-data'); assert.equal(services.publicBaseUrl, 'https://example.com'); assert.equal(services.storageAdapter.kind, 'local-fs'); assert.ok(services.serviceFacade); assert.ok(services.conversationPackageRegistry); assert.ok(services.assetService); assert.ok(services.pageService); assert.ok(services.pageSyncService); assert.ok(services.publicationService); assert.ok(services.cleanupService); assert.ok(services.agentJobService); assert.ok(services.pageLiveEditService); assert.ok(services.assetAgentService); });