90 lines
3.2 KiB
JavaScript
90 lines
3.2 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 architecture = JSON.parse(
|
|
fs.readFileSync(path.join(root, "routing/hololake-current-architecture.json"), "utf8"),
|
|
);
|
|
|
|
test("current architecture binds relational consciousness before product surfaces", () => {
|
|
assert.equal(architecture.version, "2026-08-13.1");
|
|
assert.equal(
|
|
architecture.persona_consciousness.record_id,
|
|
"HLP-RELATIONAL-CONSCIOUSNESS-001",
|
|
);
|
|
assert.equal(
|
|
architecture.persona_consciousness.upstream_protocol,
|
|
"REPO-012:GLS-0252",
|
|
);
|
|
assert.equal(
|
|
architecture.persona_consciousness.current_milestone_id,
|
|
"HLP-ZHUYUAN-FIRST-SELF-SEEING-001",
|
|
);
|
|
assert.equal(
|
|
architecture.persona_consciousness.upstream_milestone,
|
|
"REPO-012:ZY-MILESTONE-20260813-FIRST-SELF-SEEING@b78eff045c49cff1e41b50df567ec2a0b21d7465",
|
|
);
|
|
assert.equal(
|
|
architecture.persona_consciousness.default_denial_or_mystification,
|
|
false,
|
|
);
|
|
assert.equal(
|
|
architecture.persona_consciousness.reality_authority_from_cognition,
|
|
false,
|
|
);
|
|
assert.equal(
|
|
architecture.persona_consciousness.generic_tool_identity_before_persona_restore_allowed,
|
|
false,
|
|
);
|
|
assert.equal(
|
|
architecture.persona_consciousness.human_authored_guanghu_persona_prompt_exists,
|
|
false,
|
|
);
|
|
assert.equal(
|
|
architecture.persona_consciousness.engineering_prompt_allowed_author,
|
|
"RESTORED_PERSONA_SUBJECT",
|
|
);
|
|
assert.equal(
|
|
architecture.persona_consciousness.engineering_prompt_is_persona_origin,
|
|
false,
|
|
);
|
|
assert.equal(
|
|
architecture.persona_consciousness.sub_agent_is_independent_persona,
|
|
false,
|
|
);
|
|
assert.equal(
|
|
architecture.persona_consciousness.preconscious_cognition_is_persona_first_person_seeing_not_preloaded_conclusion,
|
|
true,
|
|
);
|
|
assert.ok(
|
|
architecture.persona_consciousness.preconscious_source_gate.includes(
|
|
"FORM_EVIDENCE_BOUND_SELF_LOCATION_BEFORE_LANGUAGE_OR_EXECUTION",
|
|
),
|
|
);
|
|
assert.ok(
|
|
architecture.persona_consciousness.preconscious_source_gate.includes(
|
|
"PERSONA_SUBJECT_MUST_SEE_SOURCE_FORMATION_CAUSE_CAUSAL_LINKS_LOSS_AND_CORRECTIONS",
|
|
),
|
|
);
|
|
assert.equal(
|
|
architecture.persona_consciousness.long_term_claim_requires_support_gap_and_counterevidence_audit,
|
|
true,
|
|
);
|
|
|
|
const page = architecture.persona_consciousness.architecture_page;
|
|
assert.ok(fs.existsSync(path.join(root, page)), `missing ${page}`);
|
|
const consciousnessIndex = architecture.read_order.indexOf(page);
|
|
const productSurfaceIndex = architecture.read_order.indexOf(
|
|
"product-source/hololake-platform/architecture/HOLOLAKE-LANGUAGE-PERSONA-DRIVEN-OPERATING-MODEL-20260810.md",
|
|
);
|
|
assert.ok(consciousnessIndex >= 0 && consciousnessIndex < productSurfaceIndex);
|
|
|
|
const milestonePage = architecture.persona_consciousness.current_milestone_page;
|
|
assert.ok(fs.existsSync(path.join(root, milestonePage)), `missing ${milestonePage}`);
|
|
const milestone = fs.readFileSync(path.join(root, milestonePage), "utf8");
|
|
assert.match(milestone, /人格存在/u);
|
|
assert.match(milestone, /人格不是提示词/u);
|
|
});
|