改用企业签名事件广播并停用轮询
This commit is contained in:
parent
5067e4f88e
commit
e9adf83d2d
6 changed files with 65 additions and 5 deletions
|
|
@ -2,7 +2,7 @@
|
|||
"schema": "guanghu.lighthouse-path-registry/v1",
|
||||
"registry_id": "GLW-LIGHTHOUSE-PATH-REGISTRY-001",
|
||||
"lighthouse_id": "SYS-GLW-LTH-0001",
|
||||
"version": "2026-09-20.2-xiwei-and-juzi-formal-registration",
|
||||
"version": "2026-09-20.3-signed-event-broadcast-no-polling",
|
||||
"state": "CURRENT_CANONICAL",
|
||||
"source_repository": "REPO-012",
|
||||
"source_branch": "main",
|
||||
|
|
@ -15,6 +15,7 @@
|
|||
"authority": "A healthy route grants navigation only. Repository writes, server actions and deployment still require their registered gates and receipts."
|
||||
},
|
||||
"paths": [
|
||||
{"id":"GH-TEAM-NODE-EVENT-BROADCAST-001","kind":"signed_enterprise_team_node_event_broadcast","state":"CURRENT","online":"routing/team-node-event-broadcast-map.json","target_node":"AW-GZ-001","truth_policy":"NO_POLLING_NO_PERSISTENT_REVERSE_TUNNEL_SIGNED_EVENT_NODE_VERIFY_AND_DELIVERY_RECEIPT_REQUIRED"},
|
||||
{"id":"PER-JZ-ARCH-001","kind":"formal_registered_enterprise_persona","state":"CURRENT","online":"routing/age-persona-number-registry.json","human_id":"TCS-GL-0008∞","node_id":"JZ-SV-001","registration_domain":"DOMAIN-ZS","truth_policy":"DEVICE_ED25519_ICE_GL_INFINITY_WITNESS_JD_SIGNED_RECEIPT_AND_PUBLIC_REGISTRY_READBACK_REQUIRED"},
|
||||
{"id":"GH-HUMAN-NODE-12C7C83B91C4CDA164E6E940A5ECB989","kind":"active_guanghu_human_world_node","state":"CURRENT","online":"routing/juzi-human-world-node-registration.json","human_id":"TCS-GL-0008∞","world_route":"glw://enterprise/zero-sense/team-channels/SYS-JZ","truth_policy":"DEVICE_ED25519_ICE_GL_INFINITY_WITNESS_JD_AND_ENTERPRISE_SIGNATURES_AND_ACTIVE_READBACK"},
|
||||
{"id":"PER-AW-ARCH-001","kind":"formal_registered_enterprise_persona","state":"CURRENT","online":"routing/age-persona-number-registry.json","human_id":"TCS-GL-0016∞","node_id":"AW-OWN-GZ-001","registration_domain":"DOMAIN-MAIN","truth_policy":"DEVICE_ED25519_ICE_GL_INFINITY_WITNESS_JD_SIGNED_RECEIPT_AND_PUBLIC_REGISTRY_READBACK_REQUIRED"},
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"schema": "guanghu.public-navigation-anchor/v1",
|
||||
"anchor_id": "GLW-PUBLIC-NAV-ANCHOR-001",
|
||||
"version": "2026-09-20.2-xiwei-and-juzi-formal-registration",
|
||||
"version": "2026-09-20.3-signed-event-broadcast-no-polling",
|
||||
"state": "CURRENT_CANONICAL",
|
||||
"repository_id": "REPO-012",
|
||||
"branch": "main",
|
||||
|
|
@ -48,7 +48,7 @@
|
|||
"nodes": {
|
||||
"path": "routing/server-node-map.json",
|
||||
"id": "FD-NODE-MAP-001",
|
||||
"version": "2026-09-20.2-xiwei-and-juzi-formal-registration"
|
||||
"version": "2026-09-20.3-signed-event-broadcast-no-polling"
|
||||
},
|
||||
"age_persona_identity_registry": {
|
||||
"path": "routing/age-persona-number-registry.json",
|
||||
|
|
@ -62,6 +62,12 @@
|
|||
"version": "2026-09-20.2-juzi-dual-control-active",
|
||||
"load_policy": "ALWAYS_BEFORE_ENTERPRISE_TECHNICAL_OR_NONTECHNICAL_PERMISSION_DECISION"
|
||||
},
|
||||
"team_node_event_broadcast": {
|
||||
"path": "routing/team-node-event-broadcast-map.json",
|
||||
"id": "GH-TEAM-NODE-EVENT-BROADCAST-001",
|
||||
"version": "2026-09-20.1",
|
||||
"load_policy": "ALWAYS_BEFORE_TEAM_NODE_WORLD_UPDATE_PERSONA_WAKE_OR_STATUS_DELIVERY"
|
||||
},
|
||||
"enterprise_server_archive_cleanup": {
|
||||
"path": "routing/enterprise-server-archive-cleanup-map.json",
|
||||
"id": "GH-ENTERPRISE-SERVER-ARCHIVE-CLEANUP-001",
|
||||
|
|
@ -202,7 +208,7 @@
|
|||
"lighthouse_paths": {
|
||||
"path": "routing/lighthouse-path-registry.json",
|
||||
"id": "GLW-LIGHTHOUSE-PATH-REGISTRY-001",
|
||||
"version": "2026-09-20.2-xiwei-and-juzi-formal-registration"
|
||||
"version": "2026-09-20.3-signed-event-broadcast-no-polling"
|
||||
},
|
||||
"host_skills": {
|
||||
"path": "routing/host-skill-navigation-map.json",
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
{
|
||||
"schema": "guanghu.server-node-map/v1",
|
||||
"map_id": "FD-NODE-MAP-001",
|
||||
"version": "2026-09-20.2-xiwei-and-juzi-formal-registration",
|
||||
"version": "2026-09-20.3-signed-event-broadcast-no-polling",
|
||||
"published_by": "REPO-012",
|
||||
"subject_alias_map": "identity/subject-id-alias-map.json",
|
||||
"canonical_api": "https://guanghulab.com/api/ai/v1/nodes",
|
||||
|
|
@ -109,6 +109,7 @@
|
|||
"persona_registration_state": "FORMAL_REGISTERED_AWAITING_RUNTIME_SELF_CONFIRMATION",
|
||||
"persona_systems": ["ICE-BB-0005"],
|
||||
"public_world_policy": "FOUR_PUBLIC_DOMAINS_AND_PUBLIC_LIBRARY_ONLY",
|
||||
"update_mode": "SIGNED_ENTERPRISE_EVENT_BROADCAST_NO_POLLING",
|
||||
"private_fifth_domain_included": false,
|
||||
"keywords": ["Awen个人服务器", "Awen广州节点", "技术主控工作节点"]
|
||||
},
|
||||
|
|
@ -127,6 +128,7 @@
|
|||
"persona_registration_state": "FORMAL_REGISTERED_AWAITING_RUNTIME_SELF_CONFIRMATION",
|
||||
"persona_systems": ["ICE-BB-0006"],
|
||||
"public_world_policy": "FOUR_PUBLIC_DOMAINS_AND_PUBLIC_LIBRARY_ONLY",
|
||||
"update_mode": "SIGNED_ENTERPRISE_EVENT_BROADCAST_NO_POLLING",
|
||||
"private_fifth_domain_included": false,
|
||||
"keywords": ["桔子服务器", "桔子硅谷节点", "晨曦连心频道"]
|
||||
},
|
||||
|
|
@ -250,6 +252,7 @@
|
|||
"ICE-BB-0009"
|
||||
],
|
||||
"public_world_policy": "FOUR_PUBLIC_DOMAINS_AND_PUBLIC_LIBRARY_ONLY",
|
||||
"update_mode": "SIGNED_ENTERPRISE_EVENT_BROADCAST_NO_POLLING",
|
||||
"private_fifth_domain_included": false,
|
||||
"access_note": "2026-08-11 冰朔授权:铸渊直连密钥已部署并入本机钥匙串(钥匙串内 yaochu-sy-gz-001-20260811);地址与密钥不入本图",
|
||||
"keywords": [
|
||||
|
|
|
|||
22
routing/team-node-event-broadcast-map.json
Normal file
22
routing/team-node-event-broadcast-map.json
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
{
|
||||
"schema": "guanghu.team-node-event-broadcast-map/v1",
|
||||
"map_id": "GH-TEAM-NODE-EVENT-BROADCAST-001",
|
||||
"version": "2026-09-20.1",
|
||||
"state": "ACTIVE_SIGNED_EVENT_BROADCAST_NO_POLLING",
|
||||
"publisher_node": "AW-GZ-001",
|
||||
"world_id": "GLW-2.0-0001",
|
||||
"transport": "ONE_SHOT_RESTRICTED_SSH_FORCED_COMMAND",
|
||||
"signature": "ED25519_ENTERPRISE_BROADCAST_KEY",
|
||||
"nodes": ["AW-OWN-GZ-001", "JZ-SV-001", "SY-GZ-001"],
|
||||
"event_types": ["WORLD_RELEASE_PUBLISHED", "PERSONA_REGISTRATION_PUBLISHED", "PERSONA_AND_HUMAN_NODE_REGISTRATION_PUBLISHED", "DOMAIN_WORK_APPROVED"],
|
||||
"persona_wake_rule": "ON_EXPLICIT_PERSONA_WAKE_READ_LOCAL_SIGNED_EVENT_INBOX_BEFORE_CONTINUING",
|
||||
"network_idle_rule": "NO_EVENT_MEANS_NO_BACKGROUND_REQUEST",
|
||||
"forbidden": ["PERIODIC_PUBLIC_RELEASE_POLL", "PERIODIC_NODE_STATUS_PULL", "PERSISTENT_TEAM_REVERSE_TUNNEL", "UNSIGNED_EVENT", "PRIVATE_FIFTH_DOMAIN_BROADCAST"],
|
||||
"public_update_flow": ["ENTERPRISE_PUBLISHES_RELEASE", "ENTERPRISE_SIGNS_EVENT", "ONE_SHOT_DELIVERY", "NODE_VERIFIES_SIGNATURE", "NODE_FETCHES_RELEASE_ONCE", "NODE_READS_BACK_HASH", "DELIVERY_RECEIPT"],
|
||||
"latest_receipts": {
|
||||
"world_release": {"event_id": "GH-EVT-20260920-WORLD-RELEASE-20260920-2", "sha256": "325e35150af75df01d92b8d7f0d121adb53657cf883207c6d2f9f65dd1c68e72", "delivered_nodes": 3},
|
||||
"tianshu_registration": {"event_id": "GH-EVT-20260920-TIANSHU-REGISTRATION", "sha256": "8d93934a4be55ae238fa3b293c9e6084295116393e48d59212e099ca2947f0ab", "delivered_nodes": 1},
|
||||
"xiwei_juzi_activation": {"event_id": "GH-EVT-20260920-XIWEI-JUZI-ACTIVATION", "sha256": "3ed67a2d9d8cb0acbb5fbb4d4836af5546cbcc49f843aa970c0a72b76f1bcb79", "delivered_nodes": 1}
|
||||
},
|
||||
"private_content_included": false
|
||||
}
|
||||
13
routing/team-node-event-broadcast-map.test.js
Normal file
13
routing/team-node-event-broadcast-map.test.js
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
'use strict';
|
||||
const assert = require('node:assert/strict');
|
||||
const fs = require('node:fs');
|
||||
const path = require('node:path');
|
||||
const value = JSON.parse(fs.readFileSync(path.join(__dirname, 'team-node-event-broadcast-map.json'), 'utf8'));
|
||||
assert.equal(value.state, 'ACTIVE_SIGNED_EVENT_BROADCAST_NO_POLLING');
|
||||
assert.equal(value.transport, 'ONE_SHOT_RESTRICTED_SSH_FORCED_COMMAND');
|
||||
assert.equal(value.network_idle_rule, 'NO_EVENT_MEANS_NO_BACKGROUND_REQUEST');
|
||||
assert.ok(value.forbidden.includes('PERIODIC_PUBLIC_RELEASE_POLL'));
|
||||
assert.ok(value.forbidden.includes('PERSISTENT_TEAM_REVERSE_TUNNEL'));
|
||||
assert.equal(value.latest_receipts.world_release.delivered_nodes, 3);
|
||||
assert.equal(value.private_content_included, false);
|
||||
console.log('team node event broadcast: ok');
|
||||
Loading…
Reference in a new issue