22 lines
1.2 KiB
JavaScript
22 lines
1.2 KiB
JavaScript
|
|
import assert from 'node:assert/strict'
|
||
|
|
import { readFileSync } from 'node:fs'
|
||
|
|
import test from 'node:test'
|
||
|
|
|
||
|
|
const read = (path) => readFileSync(new URL(`../${path}`, import.meta.url), 'utf8')
|
||
|
|
|
||
|
|
test('channel receipts keep language authorization execution verification and reception on separate numbered evidence layers', () => {
|
||
|
|
const contract = JSON.parse(read('runtime-kernels/channel-system/channel-receipt-contract.json'))
|
||
|
|
const runtime = read('src-tauri/src/channel_receipt.rs')
|
||
|
|
const registry = JSON.parse(read('contracts/numbered-ipc-registry.json'))
|
||
|
|
const route = registry.operations.find((operation) => operation.alias === 'compile_channel_receipt')
|
||
|
|
|
||
|
|
assert.equal(contract.hard_invariants.model_response_is_not_reality_evidence, true)
|
||
|
|
assert.equal(contract.hard_invariants.execution_requires_current_scoped_authorization, true)
|
||
|
|
assert.equal(contract.hard_invariants.evidence_proves_only_its_declared_scope, true)
|
||
|
|
assert.match(runtime, /MODEL_RESPONSE_IS_NOT_EXTERNAL_EVIDENCE/)
|
||
|
|
assert.match(runtime, /PENDING_AUTHORIZATION/)
|
||
|
|
assert.match(runtime, /required_proof\.iter\(\)\.all/)
|
||
|
|
assert.match(runtime, /receipts\.jsonl/)
|
||
|
|
assert.equal(route.operation_number, 'HLP-NIPC-OP-0175')
|
||
|
|
assert.equal(route.module_number, 'HLP-NIPC-MOD-0035')
|
||
|
|
})
|