feat(mindspace): enforce PostgreSQL user data delivery

This commit is contained in:
john
2026-07-13 15:29:29 +08:00
parent b33c943b69
commit a6620fb719
57 changed files with 2779 additions and 164 deletions
+21
View File
@@ -3,8 +3,29 @@ import fs from 'node:fs';
import os from 'node:os';
import path from 'node:path';
import test from 'node:test';
import { spawnSync } from 'node:child_process';
import { createUserDataSpaceService } from './user-data-space-service.mjs';
test('runtime rejects SQLite user data backend outside node tests', () => {
const script = `
import { createUserDataSpaceService } from './user-data-space-service.mjs';
try {
createUserDataSpaceService({ workspaceRoot: '/tmp/runtime-sqlite-denied', backend: 'sqlite' });
process.exit(0);
} catch (error) {
console.error(error.code);
process.exit(7);
}
`;
const result = spawnSync(process.execPath, ['--input-type=module', '--eval', script], {
cwd: process.cwd(),
encoding: 'utf8',
env: { ...process.env, NODE_TEST_CONTEXT: '' },
});
assert.equal(result.status, 7);
assert.match(result.stderr, /sqlite_runtime_disabled/);
});
function createTempWorkspace() {
return fs.mkdtempSync(path.join(os.tmpdir(), 'user-data-space-'));
}