const assert = require('node:assert/strict') const test = require('node:test') const { parseEnvironment, resolveMilvusCollection, buildAcceptanceEnvironment } = require('./workbench_acceptance_runtime.cjs') test('defaults to Milvus with separate acceptance storage and credentials', () => { const production = Object.freeze({ RETRIEVE_DRIVER: 'postgres', MILVUS_COLLECTION: 'production', DB_NAME: 'production_db', JWT_SECRET: 'production-secret', MILVUS_ADDRESS: 'milvus:19530', }) const env = buildAcceptanceEnvironment(production, {}, {}, 'acceptance-secret') assert.equal(env.RETRIEVE_DRIVER, 'milvus') assert.equal(env.MILVUS_COLLECTION, 'yawan_acceptance_hybrid') assert.equal(env.MILVUS_ADDRESS, production.MILVUS_ADDRESS) assert.equal(env.DB_NAME, 'yawan_native_acceptance_20260915') assert.equal(env.REDIS_DB, '14') assert.equal(env.JWT_SECRET, 'acceptance-secret') assert.equal(env.DISABLE_REGISTRATION, 'true') assert.equal(production.MILVUS_COLLECTION, 'production') }) test('accepts a separate collection and explicit retrieve driver override', () => { const env = buildAcceptanceEnvironment({ MILVUS_COLLECTION: 'production' }, {}, { ACCEPTANCE_MILVUS_COLLECTION: 'custom_acceptance', ACCEPTANCE_RETRIEVE_DRIVER: 'postgres', }, 'test-secret') assert.equal(env.MILVUS_COLLECTION, 'custom_acceptance') assert.equal(env.RETRIEVE_DRIVER, 'postgres') }) test('rejects the production prefix and all dimension-specific names', () => { for (const value of ['production', 'production_768', 'production_1536', 'production_0001']) { assert.throws(() => resolveMilvusCollection('production', value), /isolated/) } assert.throws(() => resolveMilvusCollection('production_768', 'production'), /isolated/) assert.equal(resolveMilvusCollection('production', 'production_acceptance'), 'production_acceptance') }) test('also protects the implicit production prefix and a conflicting default', () => { assert.throws(() => resolveMilvusCollection(undefined, 'weknora_embeddings'), /isolated/) assert.throws(() => resolveMilvusCollection('', 'weknora_embeddings_1024'), /isolated/) assert.throws(() => resolveMilvusCollection('yawan_acceptance_hybrid'), /isolated/) }) test('rejects invalid collection values without echoing their contents', () => { const value = 'invalid\nJWT_SECRET=private-test-secret' assert.throws(() => resolveMilvusCollection('production', value), error => { assert.match(error.message, /valid Milvus collection prefix/) assert.ok(!error.message.includes(value)) assert.ok(!error.message.includes('private-test-secret')) return true }) }) test('reuses the runtime JWT secret across restarts while refreshing production settings', () => { const previous = parseEnvironment('# Runtime environment\r\nJWT_SECRET=previous-secret==\r\nRETRIEVE_DRIVER=postgres\r\nMILVUS_COLLECTION=production\r\n') const first = buildAcceptanceEnvironment({ MILVUS_ADDRESS: 'new-host:19530' }, previous, {}, 'unused-secret') const restart = buildAcceptanceEnvironment({}, first, {}, 'another-unused-secret') assert.equal(first.JWT_SECRET, 'previous-secret==') assert.equal(restart.JWT_SECRET, first.JWT_SECRET) assert.equal(first.MILVUS_ADDRESS, 'new-host:19530') assert.equal(first.RETRIEVE_DRIVER, 'milvus') assert.equal(first.MILVUS_COLLECTION, 'yawan_acceptance_hybrid') }) test('never falls back to the production JWT secret', () => { assert.throws(() => buildAcceptanceEnvironment({ JWT_SECRET: 'production-secret' }), /first start/) assert.equal(buildAcceptanceEnvironment({ JWT_SECRET: 'production-secret' }, { JWT_SECRET: '' }, {}, 'new-secret').JWT_SECRET, 'new-secret') }) test('admin bootstrap is acceptance-specific and persists across restarts', () => { const production = { WEKNORA_BOOTSTRAP_SYSTEM_ADMIN_EMAIL: 'production@example.test', DISABLE_REGISTRATION: 'false' } const initial = buildAcceptanceEnvironment(production, {}, {}, 'secret') assert.equal(initial.WEKNORA_BOOTSTRAP_SYSTEM_ADMIN_EMAIL, '') assert.equal(initial.DISABLE_REGISTRATION, 'true') const configured = buildAcceptanceEnvironment(production, initial, { ACCEPTANCE_BOOTSTRAP_SYSTEM_ADMIN_EMAIL: 'acceptance@example.test', }) const restarted = buildAcceptanceEnvironment(production, configured) assert.equal(restarted.WEKNORA_BOOTSTRAP_SYSTEM_ADMIN_EMAIL, 'acceptance@example.test') assert.equal(restarted.DISABLE_REGISTRATION, 'true') })