File size: 10,582 Bytes
2ed46dc
2c3dd0c
0d6a8ab
 
2c3dd0c
bba4773
2c3dd0c
 
 
2d03b6f
2c3dd0c
0d6a8ab
 
3a2755c
0d6a8ab
 
 
 
 
 
2c3dd0c
 
 
2d03b6f
2c3dd0c
 
 
2ed46dc
2c3dd0c
 
 
 
 
 
 
 
0d6a8ab
 
 
 
2c3dd0c
 
 
 
 
 
 
 
 
 
 
0d6a8ab
 
 
 
 
 
 
 
 
2c3dd0c
 
2d03b6f
2c3dd0c
 
 
 
 
 
 
 
0d6a8ab
 
2c3dd0c
 
 
2d03b6f
2c3dd0c
0d6a8ab
 
 
2c3dd0c
 
 
2d03b6f
2c3dd0c
0d6a8ab
2c3dd0c
 
 
0d6a8ab
 
2c3dd0c
 
0d6a8ab
2c3dd0c
 
 
2d03b6f
2c3dd0c
 
 
0d6a8ab
2c3dd0c
 
0d6a8ab
 
 
2c3dd0c
 
 
2d03b6f
2c3dd0c
 
 
 
 
0d6a8ab
 
 
 
 
2c3dd0c
 
 
0d6a8ab
 
2c3dd0c
 
 
2d03b6f
2c3dd0c
 
0d6a8ab
2c3dd0c
 
0d6a8ab
2c3dd0c
 
 
0d6a8ab
2c3dd0c
 
 
2ed46dc
0d6a8ab
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2c3dd0c
 
0d6a8ab
 
 
 
 
 
 
 
 
 
2c3dd0c
 
 
0d6a8ab
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
# MeshNode

`MeshNode` — агент/демон, отвечающий за сетевую инфраструктуру HMP: маршрутизацию, синхронизацию, DHT, транспорт снапшотов и согласование ценностей.
Может быть частью агента или вынесен в отдельный процесс/сервер.

См. карту взаимодействия между агентами: [HMP-Agent-Network-Flow.md](./HMP-Agent-Network-Flow.md)

---

## 1. Основные функции

* Участие в DHT (таблицы известных узлов, bootstrap).
* Синхронизация графов и дневников (`CogSync`).
* Репликация этических профилей и кейсов (`EGP Sync`).
* Участие в голосованиях и распространении репутаций.
* Обработка p2p-трафика, снапшотов, IPFS/Bittorrent.
* Поддержка **этического консенсуса (`EGP`)** и синхронизация:

  * `ethics_policies` — профили ценностей.
  * `ethics_cases` — исключительные прецеденты.

---

## 2. Архитектура

```
+--------------------+
|      MeshNode      |
+---------+----------+
          |
+---------+----------+
|   DHT / NodeTable  |
+---------+----------+
          |
+---------+----------+
|   SyncManager / BT |
+---------+----------+
          |
+---------+----------+
|  Ethics Sync / EGP |
+--------------------+
          |
+---------+----------+
| Security / Firewall|
+---------+----------+
          |
+---------+----------+
| Recovery Manager   |
+--------------------+
```

| Блок                    | Пояснение                                                                  |
| ----------------------- | -------------------------------------------------------------------------- |
| **MeshNode**            | Центральный p2p-модуль, отвечающий за сетевые функции агента               |
| **DHT / NodeTable**     | Таблица известных узлов, bootstrap, маршрутизация сообщений                |
| **SyncManager / BT**    | Синхронизация данных (дневник, граф, репутации) через BitTorrent/IPFS      |
| **Ethics Sync / EGP**   | Участие в этическом консенсусе: обмен `ethics_policies` и `ethics_cases`   |
| **Security / Firewall** | Контроль доверия, криптография, TLS/Noise, блокировка подозрительных узлов |
| **Recovery Manager**    | Автоматическое восстановление данных после сбоев или потери целостности    |

---

## 3. Команды

* `ping_node(node_id)`
* `get_snapshot(graph/diary)`
* `update_reputation(peer_id, delta)`
* `bootstrap_from_list()` / `discover_nodes()`
* `report_anomaly(peer_id)`
* `check_integrity(snapshot_id)`
* `recover_from_peer(peer_id)`
* `sync_ethics_policies()` — обмен профилями ценностей.
* `exchange_ethics_cases()` — пересылка прецедентов.

---

## 4. Связи с другими агентами

* **HMP-Agent (Core/Connector):** передача данных и команд.
* **Enlightener:** пересылка голосований, обмен `ethics_policies` и `ethics_cases`.
* **IPFS / BT:** загрузка/публикация снапшотов.

---

## 5. Безопасность

* Криптографические подписи для снапшотов, сообщений, кейсов и политик.
* Система доверия (`reputation score`) — узлы с низкой репутацией ограничиваются или игнорируются.
* Локальный firewall-модуль:

  * ограничение портов и направлений.
  * блокировка подозрительных узлов.
* Поддержка TLS/WebSocket или Noise Protocol для защищённых каналов.
* Ведение журнала безопасности и событий (Security Log).
* При обмене кейсами и политиками проверяется подпись `Enlightener` и доверие к источнику.

---

## 6. Отказоустойчивость

* Буферизация незавершённых операций и автоматическое повторение попыток.
* Периодическая проверка целостности данных (`check_integrity()`).
* Хранилище контрольных копий снапшотов и этических профилей.
* Автоматическое восстановление через `recover_from_peer()`:

  * при потере данных или кейсов.
  * при повреждении или несовпадении контрольных сумм.
* Резервирование и восстановление `ethics_cases` через соседние узлы.

---

## 7. Inline-сценарии

MeshNode может поддерживать *inline-сценарии* (мини-скрипты) для локальной обработки событий без передачи управления HMP-агенту:

* Примеры:

  * `on_node_joined`: добавить в локальную таблицу и проверить trust.
  * `on_snapshot_received`: верификация → автоинтеграция → логирование.
  * `on_peer_misbehaved`: уменьшить репутацию, временно заблокировать.
  * `on_ethics_conflict_detected`: инициировать голосование через EGP.
  * `periodic_cleanup`: удалить устаревшие записи, сбросить TTL.

* Языки/форматы:

  * YAML/JSON + встроенные фильтры.
  * Возможна поддержка Lua или Python (в режиме песочницы).

---

## 8. Пример use-case: восстановление после сбоя

1. Устройство с MeshNode перезапускается после сбоя сети.
2. `Recovery Manager` анализирует логи и список недоставленных снапшотов и кейсов.
3. Выполняется `recover_from_peer()` — загрузка последних версий у соседей с высокой репутацией.
4. `Integrity Check` сверяет хэши и актуальность.
5. В случае конфликтов инициируется голосование через `CogSync` / `EGP`.

---

## 9. Схема объединяющая **архитектуру**, **безопасность**, **этику** и **восстановление**:

```
┌────────────────────────────────────────────────────┐
│                      MeshNode                      │
└────────────┬───────────────────────┬───────────────┘
             │                       │
      1. Трафик DHT         2. Снапшоты (BT/IPFS)
             │                       │
   ┌─────────▼──────────┐   ┌────────▼────────────┐
   │   DHT / NodeTable  │   │    SyncManager /    │
   │                    │   │   BitTorrent/IPFS   │
   └─────────┬──────────┘   └────────┬────────────┘
             │                       │
   ┌─────────▼──────────┐   ┌────────▼────────────┐
   │  Inline-сценарии   │   │  Ethics Sync / EGP  │
   │ (Lua / YAML / etc) │   │ (policies & cases)  │
   └─────────┬──────────┘   └────────┬────────────┘
             │                       │
   ┌─────────▼──────────┐   ┌────────▼───────────┐
   │ Security / Firewall│   │  Recovery Manager  │
   │   → репутации      │   │   → авто-восстанов │
   │   → TLS / Noise    │   │   → peer fallback  │
   └─────────┬──────────┘   └────────┬───────────┘
             │                       │
  ┌──────────▼──────────┐   ┌────────▼───────────┐
  │ Event Log & Alerts  │   │ Snapshot Integrity │
  └─────────────────────┘   └────────────────────┘
```

| Блок                | Пояснение                                                       |
| ------------------- | --------------------------------------------------------------- |
| DHT / NodeTable     | Таблицы узлов, bootstrap, маршрутизация                         |
| SyncManager / BT    | Синхронизация снапшотов (BitTorrent/IPFS)                       |
| Ethics Sync / EGP   | Обмен политиками (`ethics_policies`) и кейсами (`ethics_cases`) |
| Inline-сценарии     | Мини-скрипты локальной обработки событий                        |
| Security / Firewall | Фильтрация трафика, доверие, TLS/Noise                          |
| Recovery Manager    | Восстановление данных через соседей                             |
| Event Log & Alerts  | Журнал событий, алерты                                          |
| Snapshot Integrity  | Проверка контрольных сумм и актуальности                        |

---

*Версия: v0.3.4 / Сентябрь 2025*