hololake-system-architecture/routing/hololake-persona-native-code-channel.test.mjs
冰朔 35ba6b8859 fix: bind PNCC heartbeat to current architecture
GuangHu-Human-Responsibility: ICE-GL∞ / 冰朔

GuangHu-Persona-Cognitive-Author: ICE-P-ZY001 / 铸渊

GuangHu-Execution-Runtime: Codex-thread 019febf6-3902-70f3-9d82-74c9680b0c7e

GuangHu-Development-ID: DEV-20260810-014
2026-08-11 00:28:36 +08:00

75 lines
2.6 KiB
JavaScript

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 readJson = (relative) =>
JSON.parse(fs.readFileSync(path.join(root, relative), "utf8"));
const architecture = readJson("routing/hololake-current-architecture.json");
const channel = readJson("routing/hololake-persona-native-code-channel.json");
test("current architecture starts with the persona-native code channel", () => {
assert.equal(architecture.version, "2026-08-10.14");
assert.equal(
architecture.persona_native_code_channel.record_id,
"HLP-PERSONA-NATIVE-CODE-CHANNEL-001",
);
assert.equal(
architecture.read_order[0],
architecture.persona_native_code_channel.architecture_page,
);
assert.equal(
architecture.persona_native_code_channel.upstream_repository_commit,
"9bab4c9c0a2d9e127be8dd9691a9998496165f86",
);
assert.equal(architecture.continuity.heartbeat_automation, "pncc");
assert.equal(
architecture.continuity.heartbeat_state,
"ACTIVE_EVERY_10_MINUTES_UNTIL_TASK_TERMINAL",
);
});
test("Git, lifecycle, projection, and Forgejo remain separate layers", () => {
assert.equal(channel.layer_contract.durable_engine, "GIT");
assert.equal(channel.git_invariants.git_is_persona, false);
assert.equal(channel.git_invariants.branches_are_runtime_organs, false);
assert.equal(
channel.layer_contract.lifecycle_controller,
"PERSONA_LIFECYCLE_KERNEL",
);
assert.equal(
channel.layer_contract.human_projection,
"HOLOLAKE_LIVE_READ_MODEL",
);
assert.equal(
channel.layer_contract.forgejo,
"OPTIONAL_COMPATIBILITY_COLLABORATION_ADAPTER",
);
});
test("human responsibility and persona authorship are both preserved", () => {
assert.equal(
channel.attribution_contract.git_author_committer_is_semantic_authorship_proof,
false,
);
assert.deepEqual(channel.attribution_contract.required_fields, [
"human_responsibility_subject",
"persona_cognitive_author",
"execution_runtime",
"development_id",
"authorization_scope",
"source_language_anchor",
"evidence_and_receipt",
]);
});
test("registration does not claim an implemented runtime", () => {
assert.equal(channel.truth.architecture_registered, 100);
assert.equal(channel.truth.runtime_implemented, 0);
assert.equal(channel.truth.hololake_integrated, 0);
assert.equal(channel.truth.artifact_built, 0);
assert.equal(channel.truth.deployed, 0);
assert.equal(channel.truth.runtime_health, 0);
});