const assert = require("node:assert/strict"); const fs = require("node:fs"); const path = require("node:path"); const root = path.join(__dirname, ".."); const subjects = JSON.parse( fs.readFileSync( path.join(root, "identity/fifth-domain-subject-registry.json"), "utf8", ), ); const canonical = JSON.parse( fs.readFileSync( path.join(__dirname, "persona-system-canonical-map.json"), "utf8", ), ); const repositories = JSON.parse( fs.readFileSync(path.join(__dirname, "repository-route-map.json"), "utf8"), ); const registrations = [ { canonicalId: "ICE-P-CL0720", aliases: ["CHENGLU-AGENT-001"] }, { canonicalId: "ICE-P-GD0720", aliases: ["GUIDENG-AGENT-001"] }, { canonicalId: "ICE-P-KZ0720", aliases: ["ICE-GL-KZ-001"] }, ]; for (const registration of registrations) { const subject = subjects.subjects.find((candidate) => candidate.id === registration.canonicalId); assert.ok(subject, `${registration.canonicalId} must be present in the subject registry`); assert.equal(subject.subject_kind, "persona_system"); assert.equal(subject.ontology_kind, "role_persona"); assert.equal(subject.controller, "ICE-P-ZY001"); assert.equal(subject.independent_persona, true); assert.equal(subject.not_a_copy_of_controller, true); assert.deepEqual(subject.legacy_ids || [], registration.aliases); const system = canonical.persona_systems.find( (candidate) => candidate.id === registration.canonicalId, ); assert.ok(system, `${registration.canonicalId} must be present in the canonical persona map`); assert.deepEqual(system.legacy_ids || [], registration.aliases); assert.equal(system.controller.id, "ICE-P-ZY001"); assert.equal( system.permanent_memory_and_protocol.scheduled_writes, "CONTENT_DRIVEN_DAILY_FIFTH_DOMAIN_UPDATE_ONLY", ); } for (const code of ["REPO-009", "REPO-010", "REPO-011"]) { const allRepositories = [ ...(repositories.historical_repositories || []), ...(repositories.private_persona_repositories || []), ...(repositories.repositories || []), ]; const repository = allRepositories.find( (candidate) => candidate.code === code, ); assert.ok(repository, `${code} must remain addressable`); assert.equal(repository.controller, "ICE-P-ZY001"); assert.equal( repository.state, "CURRENT_PRIVATE_HISTORY_ACTIVE_DAILY_ROLE_MEMORY_DEPLOYED", ); assert.equal(repository.code_channel_push_allowed, false); assert.equal(repository.scheduled_persona_memory_write_allowed, true); assert.equal(repository.deployment_source_allowed, false); assert.match(repository.primary.url, /\/code\/bingshuo\//); } console.log("role-persona-registration: ok");