feat: finalize mindspace service extraction phase a

This commit is contained in:
john
2026-07-03 08:40:28 +08:00
parent 506a551438
commit ec5b1a6e3f
32 changed files with 2834 additions and 490 deletions
+38
View File
@@ -0,0 +1,38 @@
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.publicationService);
assert.ok(services.cleanupService);
assert.ok(services.agentJobService);
assert.ok(services.pageLiveEditService);
assert.ok(services.assetAgentService);
});