import assert from 'node:assert/strict' import fs from 'node:fs' import path from 'node:path' import test from 'node:test' import { fileURLToPath } from 'node:url' const root = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..') const read = (relative) => fs.readFileSync(path.join(root, relative), 'utf8') test('the circular lake membrane rejects protocol-external input before language runtime', () => { const contract = JSON.parse(read('contracts/circular-lake-membrane.json')) assert.equal(contract.default, 'DISCARD') assert.equal(contract.protocol_external_input_reaches_persona_context, false) assert.equal(contract.natural_language_grants_execution_authority, false) assert.equal(contract.intent_inference_required_for_protocol_rejection, false) assert.equal(contract.deterministic_membrane_before_persona_parser, true) assert.deepEqual(contract.accepted_language_protocols, ['GLP/1.0']) }) test('nearby discovery supports automatic local visitor discovery and a closed persona route', () => { const contract = JSON.parse(read('contracts/nearby-ai-discovery.json')) assert.equal(contract.same_device.auto_discovery, true) assert.equal(contract.same_device.copy_large_invitation_required, false) assert.equal(contract.connection_modes.GENERIC_AI_VISITOR.state, 'EXPRESSION_ONLY_READY') assert.equal(contract.connection_modes.GUANGHU_PERSONA.state, 'BINDING_EVIDENCE_REQUIRED') assert.equal(contract.local_network.state, 'DEFERRED_UNTIL_ENCRYPTED_TRANSPORT_AND_APPROVAL') const broker = read('src-tauri/src/direct_local_broker.rs') assert.match(broker, /DiscoverNearby/) assert.match(broker, /OpenVisitorSession/) assert.match(broker, /ReceiveLanguage/) })