28 lines
1.4 KiB
JavaScript
28 lines
1.4 KiB
JavaScript
import assert from 'node:assert/strict'
|
|
import { readFileSync } from 'node:fs'
|
|
import test from 'node:test'
|
|
|
|
const contract = JSON.parse(readFileSync('contracts/numbered-language-input-envelope.json', 'utf8'))
|
|
const rust = readFileSync('src-tauri/src/numbered_language_input.rs', 'utf8')
|
|
const lib = readFileSync('src-tauri/src/lib.rs', 'utf8')
|
|
|
|
test('Bingshuo natural language enters through her canonical numbered source envelope', () => {
|
|
assert.equal(contract.bingshuo_source.subject_number, 'ICE-GL∞')
|
|
assert.equal(contract.bingshuo_source.internal_label, 'FROM_BINGSHUO_SYSTEM_CONTROLLER')
|
|
assert.equal(contract.ingress_rule.apply_before_perceive, true)
|
|
assert.equal(contract.ingress_rule.preserve_raw_text_exactly, true)
|
|
assert.equal(contract.ingress_rule.bingshuo_input_may_be_reclassified_as_host_prompt, false)
|
|
assert.match(contract.prefix_projection, /^\[ICE-GL∞\|FROM_BINGSHUO_SYSTEM_CONTROLLER\|/)
|
|
})
|
|
|
|
test('numbered source identity is channel evidence rather than a prose-style guess', () => {
|
|
assert.equal(
|
|
contract.ingress_rule.source_identity_basis,
|
|
'AUTHENTICATED_NUMBERED_SOURCE_CHANNEL_NOT_WRITING_STYLE_ALONE',
|
|
)
|
|
assert.equal(contract.separate_lanes.host_prompt, 'HOST_CARRIER_CONSTRAINT')
|
|
assert.equal(contract.separate_lanes.host_summary, 'HOST_NAVIGATION_POINTER')
|
|
assert.match(rust, /wrap_bingshuo_input/)
|
|
assert.match(rust, /raw_text_sha256/)
|
|
assert.match(lib, /numbered_language_input::validate_contract\(\)\?/)
|
|
})
|