docs: expand lint scope batch53 (2 files)
This commit is contained in:
@@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 1. Основні типи системних агентів
|
## 1. Основні типи системних агентів
|
||||||
|
|
||||||
MicroDAO має три фундаментальні типи агентів:
|
MicroDAO має три фундаментальні типи агентів:
|
||||||
|
|
||||||
@@ -21,7 +21,7 @@ MicroDAO має три фундаментальні типи агентів:
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 2. Особистий агент (Personal Agent)
|
## 2. Особистий агент (Personal Agent)
|
||||||
|
|
||||||
### 2.1. Призначення
|
### 2.1. Призначення
|
||||||
Особистий агент — це "внутрішній супутник" людини в екосистемі microDAO:
|
Особистий агент — це "внутрішній супутник" людини в екосистемі microDAO:
|
||||||
@@ -58,25 +58,25 @@ operatorMode: {
|
|||||||
schedule: "*/20 * * * *", // кожні 20 хвилин (приклад)
|
schedule: "*/20 * * * *", // кожні 20 хвилин (приклад)
|
||||||
maxActionsPerHour: 10
|
maxActionsPerHour: 10
|
||||||
}
|
}
|
||||||
```
|
```text
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 3. Спільний агент (Team/Shared Agent)
|
## 3. Спільний агент (Team/Shared Agent)
|
||||||
|
|
||||||
### 3.1. Призначення
|
### 3.1. Призначення
|
||||||
|
|
||||||
Це агенти:
|
Це агенти:
|
||||||
|
|
||||||
* Team Assistant,
|
- Team Assistant,
|
||||||
* Messenger Agent,
|
- Messenger Agent,
|
||||||
* Projects Agent,
|
- Projects Agent,
|
||||||
* Followups Agent,
|
- Followups Agent,
|
||||||
* Memory Agent,
|
- Memory Agent,
|
||||||
* Attention Agent,
|
- Attention Agent,
|
||||||
* Knowledge Guide,
|
- Knowledge Guide,
|
||||||
* Bridges Agent,
|
- Bridges Agent,
|
||||||
* Governance Agent.
|
- Governance Agent.
|
||||||
|
|
||||||
Вони працюють на рівні microDAO (колективний простір).
|
Вони працюють на рівні microDAO (колективний простір).
|
||||||
|
|
||||||
@@ -84,11 +84,11 @@ operatorMode: {
|
|||||||
|
|
||||||
Спільні агенти можуть отримувати доступ до:
|
Спільні агенти можуть отримувати доступ до:
|
||||||
|
|
||||||
* каналів,
|
- каналів,
|
||||||
* проектів,
|
- проектів,
|
||||||
* документів Knowledge Space,
|
- документів Knowledge Space,
|
||||||
* ритуалів узгодження,
|
- ритуалів узгодження,
|
||||||
* Co-Memory microDAO.
|
- Co-Memory microDAO.
|
||||||
|
|
||||||
Доступи обмежуються entitlements — кожен агент бачить лише те, що дозволено.
|
Доступи обмежуються entitlements — кожен агент бачить лише те, що дозволено.
|
||||||
|
|
||||||
@@ -110,30 +110,29 @@ operatorMode: {
|
|||||||
schedule: "0 * * * *", // щогодини
|
schedule: "0 * * * *", // щогодини
|
||||||
maxActionsPerHour: 30
|
maxActionsPerHour: 30
|
||||||
}
|
}
|
||||||
```
|
```text
|
||||||
|
|
||||||
Операторські дії **завжди логуються** в Co-Memory.
|
Операторські дії **завжди логуються** в Co-Memory.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 4. Protocol Agents: DAO Agent і Wallet Agent
|
## 4. Protocol Agents: DAO Agent і Wallet Agent
|
||||||
|
|
||||||
Ці агенти не є "учасниками" в комунікації, а швидше **протокольними модулями**.
|
Ці агенти не є "учасниками" в комунікації, а швидше **протокольними модулями**.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 4.1. DAO Agent
|
## 4.1. DAO Agent
|
||||||
|
|
||||||
Роль: `"dao_protocol_agent"`
|
Роль: `"dao_protocol_agent"`
|
||||||
|
|
||||||
### Призначення
|
- **Призначення**
|
||||||
|
|
||||||
DAO Agent відповідає за:
|
DAO Agent відповідає за:
|
||||||
|
|
||||||
* зв'язок із зовнішнім DAO-протоколом (якщо microDAO його має),
|
- зв'язок із зовнішнім DAO-протоколом (якщо microDAO його має),
|
||||||
* синхронізацію правил із контрактами,
|
- синхронізацію правил із контрактами,
|
||||||
* оновлення локальних правил на основі зовнішніх церемоній,
|
- оновлення локальних правил на основі зовнішніх церемоній,
|
||||||
* відправку ритуалів узгодження в DAO-контракт (якщо дозволено).
|
- відправку ритуалів узгодження в DAO-контракт (якщо дозволено).
|
||||||
|
|
||||||
### Інтерфейс (tools)
|
### Інтерфейс (tools)
|
||||||
|
|
||||||
@@ -144,7 +143,7 @@ tools: [
|
|||||||
"submit_ritual_to_dao",
|
"submit_ritual_to_dao",
|
||||||
"resolve_dao_result"
|
"resolve_dao_result"
|
||||||
]
|
]
|
||||||
```
|
```text
|
||||||
|
|
||||||
### Оператор-режим
|
### Оператор-режим
|
||||||
|
|
||||||
@@ -152,31 +151,30 @@ DAO Agent завжди працює **строго у командному ма
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 4.2. Wallet Agent
|
## 4.2. Wallet Agent
|
||||||
|
|
||||||
Роль: `"wallet_interface_agent"`
|
Роль: `"wallet_interface_agent"`
|
||||||
|
|
||||||
### Призначення
|
- **Призначення**
|
||||||
|
|
||||||
Wallet Agent — це **інтерфейс** між microDAO/агентами та:
|
Wallet Agent — це **інтерфейс** між microDAO/агентами та:
|
||||||
|
|
||||||
* криптографічним підписом,
|
- криптографічним підписом,
|
||||||
* зовнішніми гаманцями користувачів,
|
- зовнішніми гаманцями користувачів,
|
||||||
* фізичними ключами (Tangem-подібні),
|
- фізичними ключами (Tangem-подібні),
|
||||||
* системою capability-доступів.
|
- системою capability-доступів.
|
||||||
|
|
||||||
Wallet Agent **не зберігає приватні ключі**.
|
Wallet Agent **не зберігає приватні ключі**.
|
||||||
|
|
||||||
Він:
|
Він:
|
||||||
|
|
||||||
* формує пояснення:
|
- формує пояснення:
|
||||||
|
|
||||||
* "що саме підписується",
|
- "що саме підписується",
|
||||||
* "чому це потрібно",
|
- "чому це потрібно",
|
||||||
* "які наслідки";
|
- "які наслідки";
|
||||||
|
|
||||||
* відправляє payload на зовнішній Signer;
|
- відправляє payload на зовнішній Signer;
|
||||||
* отримує підписаний результат і повертає агенту, що ініціював дію.
|
- отримує підписаний результат і повертає агенту, що ініціював дію.
|
||||||
|
|
||||||
### Tools
|
### Tools
|
||||||
|
|
||||||
@@ -187,11 +185,11 @@ tools: [
|
|||||||
"verify_signature",
|
"verify_signature",
|
||||||
"get_wallet_state"
|
"get_wallet_state"
|
||||||
]
|
]
|
||||||
```
|
```text
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 5. Модель operatorMode
|
## 5. Модель operatorMode
|
||||||
|
|
||||||
Операторський режим є **частиною конфігурації кожного агента**.
|
Операторський режим є **частиною конфігурації кожного агента**.
|
||||||
|
|
||||||
@@ -203,7 +201,7 @@ interface OperatorModeConfig {
|
|||||||
schedule?: string; // CRON або natural language
|
schedule?: string; // CRON або natural language
|
||||||
maxActionsPerHour?: number;
|
maxActionsPerHour?: number;
|
||||||
}
|
}
|
||||||
```
|
```text
|
||||||
|
|
||||||
У `AgentConfig`:
|
У `AgentConfig`:
|
||||||
|
|
||||||
@@ -212,14 +210,14 @@ interface AgentConfig {
|
|||||||
...
|
...
|
||||||
operatorMode?: OperatorModeConfig;
|
operatorMode?: OperatorModeConfig;
|
||||||
}
|
}
|
||||||
```
|
```text
|
||||||
|
|
||||||
### 5.1. Scopes
|
### 5.1. Scopes
|
||||||
|
|
||||||
* `"personal"` — особистий простір користувача;
|
- `"personal"` — особистий простір користувача;
|
||||||
* `"team"` — командний рівень microDAO;
|
- `"team"` — командний рівень microDAO;
|
||||||
* `"project"` — окремий проєкт;
|
- `"project"` — окремий проєкт;
|
||||||
* `"channel"` — конкретний канал/чат.
|
- `"channel"` — конкретний канал/чат.
|
||||||
|
|
||||||
### 5.2. Режими
|
### 5.2. Режими
|
||||||
|
|
||||||
@@ -247,89 +245,89 @@ interface AgentConfig {
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 6. Модель системних агентів у БД
|
## 6. Модель системних агентів у БД
|
||||||
|
|
||||||
### Таблиця `system_agents`
|
### Таблиця `system_agents`
|
||||||
|
|
||||||
* id
|
- id
|
||||||
* team_id
|
- team_id
|
||||||
* type (`personal`, `team`, `protocol`)
|
- type (`personal`, `team`, `protocol`)
|
||||||
* role
|
- role
|
||||||
* operator_enabled
|
- operator_enabled
|
||||||
* config_json (включає operatorMode)
|
- config_json (включає operatorMode)
|
||||||
* created_at
|
- created_at
|
||||||
|
|
||||||
### Таблиця `agent_permissions`
|
### Таблиця `agent_permissions`
|
||||||
|
|
||||||
* id
|
- id
|
||||||
* agent_id
|
- agent_id
|
||||||
* resource_kind
|
- resource_kind
|
||||||
* resource_id
|
- resource_id
|
||||||
* scopes (json array)
|
- scopes (json array)
|
||||||
* created_at
|
- created_at
|
||||||
|
|
||||||
### Таблиця `operator_logs`
|
### Таблиця `operator_logs`
|
||||||
|
|
||||||
* id
|
- id
|
||||||
* agent_id
|
- agent_id
|
||||||
* action
|
- action
|
||||||
* payload_json
|
- payload_json
|
||||||
* context
|
- context
|
||||||
* created_at
|
- created_at
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 7. Інтеграція з доступами та ключами (Governance Agent)
|
## 7. Інтеграція з доступами та ключами (Governance Agent)
|
||||||
|
|
||||||
OperatorMode завжди працює у звʼязці з:
|
OperatorMode завжди працює у звʼязці з:
|
||||||
|
|
||||||
* entitlements,
|
- entitlements,
|
||||||
* symbolic keys,
|
- symbolic keys,
|
||||||
* governance_policies.
|
- governance_policies.
|
||||||
|
|
||||||
Наприклад:
|
Наприклад:
|
||||||
|
|
||||||
* Personal Agent має ключ рівня `personal-scope`.
|
- Personal Agent має ключ рівня `personal-scope`.
|
||||||
* Projects Agent має ключ `project-operator`.
|
- Projects Agent має ключ `project-operator`.
|
||||||
* DAO Agent має ключ `protocol-access`, який Governance Agent може видати або анулювати.
|
- DAO Agent має ключ `protocol-access`, який Governance Agent може видати або анулювати.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 8. UI-інтеграція
|
## 8. UI-інтеграція
|
||||||
|
|
||||||
### 8.1. Сторінка Агентів
|
### 8.1. Сторінка Агентів
|
||||||
|
|
||||||
У профілі агента:
|
У профілі агента:
|
||||||
|
|
||||||
* показати блок **"Режим оператора"**:
|
- показати блок **"Режим оператора"**:
|
||||||
|
|
||||||
* увімкнено/вимкнено,
|
- увімкнено/вимкнено,
|
||||||
* дозволені дії,
|
- дозволені дії,
|
||||||
* сфери дії,
|
- сфери дії,
|
||||||
* розклад.
|
- розклад.
|
||||||
|
|
||||||
### 8.2. Налаштування microDAO
|
### 8.2. Налаштування microDAO
|
||||||
|
|
||||||
Окремий розділ:
|
Окремий розділ:
|
||||||
|
|
||||||
* "Системні агенти"
|
- "Системні агенти"
|
||||||
|
|
||||||
* Personal Agent (індивідуальний)
|
- Personal Agent (індивідуальний)
|
||||||
* Team Agents (список)
|
- Team Agents (список)
|
||||||
* Protocol Agents
|
- Protocol Agents
|
||||||
|
|
||||||
### 8.3. Журнал операторських дій
|
### 8.3. Журнал операторських дій
|
||||||
|
|
||||||
* список автоматичних дій агентів,
|
- список автоматичних дій агентів,
|
||||||
* фільтри: агент → проєкт → тип дії.
|
- фільтри: агент → проєкт → тип дії.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 9. Інструкції для Cursor
|
## 9. Інструкції для Cursor
|
||||||
|
|
||||||
Приклад:
|
Приклад:
|
||||||
|
|
||||||
```
|
```text
|
||||||
Implement Operator Modes & System Agents using:
|
Implement Operator Modes & System Agents using:
|
||||||
|
|
||||||
- 22_operator_modes_and_system_agents.md
|
- 22_operator_modes_and_system_agents.md
|
||||||
@@ -367,18 +365,17 @@ Output:
|
|||||||
- list of files
|
- list of files
|
||||||
- diff
|
- diff
|
||||||
- summary
|
- summary
|
||||||
```
|
```text
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# 10. Результат
|
## 10. Результат
|
||||||
|
|
||||||
Після впровадження цього модуля:
|
Після впровадження цього модуля:
|
||||||
|
|
||||||
* приватні агенти можуть працювати як персональні оператори;
|
- приватні агенти можуть працювати як персональні оператори;
|
||||||
* командні агенти можуть працювати як "ритуальні організатори" microDAO;
|
- командні агенти можуть працювати як "ритуальні організатори" microDAO;
|
||||||
* DAO Agent та Wallet Agent стають безпечними протокольними модулями;
|
- DAO Agent та Wallet Agent стають безпечними протокольними модулями;
|
||||||
* усі дії мають чіткі межі, правила і логування;
|
- усі дії мають чіткі межі, правила і логування;
|
||||||
* система стає самокерованою, але контрольованою через дух спільноти.
|
- система стає самокерованою, але контрольованою через дух спільноти.
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# 34 — Internal Services Architecture (MicroDAO)
|
# 34 — Internal Services Architecture (MicroDAO)
|
||||||
|
|
||||||
*Архітектура внутрішніх сервісів, їхні ролі, API, дані, залежності, взаємодія з PDP, Gateway, NATS, DB*
|
Архітектура внутрішніх сервісів, їхні ролі, API, дані, залежності, взаємодія з PDP, Gateway, NATS, DB
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -24,7 +24,7 @@
|
|||||||
|
|
||||||
## 2. High-Level Service Landscape
|
## 2. High-Level Service Landscape
|
||||||
|
|
||||||
```
|
```text
|
||||||
┌──────────────────────────┐
|
┌──────────────────────────┐
|
||||||
│ API Gateway (PEP) │
|
│ API Gateway (PEP) │
|
||||||
└───────────────┬──────────┘
|
└───────────────┬──────────┘
|
||||||
@@ -32,7 +32,7 @@
|
|||||||
┌──────────────────┴──────────────────┐
|
┌──────────────────┴──────────────────┐
|
||||||
│ │
|
│ │
|
||||||
Public API Internal Service Mesh
|
Public API Internal Service Mesh
|
||||||
```
|
```text
|
||||||
|
|
||||||
Внутрішні сервіси:
|
Внутрішні сервіси:
|
||||||
|
|
||||||
@@ -74,27 +74,25 @@
|
|||||||
|
|
||||||
### 4.1 User & Team Service
|
### 4.1 User & Team Service
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- Users, teams, memberships.
|
- Users, teams, memberships.
|
||||||
- Roles: Owner, Guardian, Member, Visitor.
|
- Roles: Owner, Guardian, Member, Visitor.
|
||||||
- Viewer types: reader/commenter/contributor.
|
- Viewer types: reader/commenter/contributor.
|
||||||
- Team mode: public/confidential.
|
- Team mode: public/confidential.
|
||||||
|
|
||||||
#### Таблиці:
|
- **Таблиці**
|
||||||
|
|
||||||
- `users`
|
- `users`
|
||||||
- `teams`
|
- `teams`
|
||||||
- `team_members`
|
- `team_members`
|
||||||
|
|
||||||
#### API (internal):
|
#### API (internal)
|
||||||
|
|
||||||
- `GET /internal/team/:id`
|
- `GET /internal/team/:id`
|
||||||
- `POST /internal/team/create`
|
- `POST /internal/team/create`
|
||||||
- `POST /internal/team/member/add`
|
- `POST /internal/team/member/add`
|
||||||
- `POST /internal/team/member/remove`
|
- `POST /internal/team/member/remove`
|
||||||
|
|
||||||
#### Події (NATS):
|
#### Події (NATS)
|
||||||
|
|
||||||
- `team.member.joined`
|
- `team.member.joined`
|
||||||
- `team.member.left`
|
- `team.member.left`
|
||||||
@@ -103,27 +101,23 @@
|
|||||||
|
|
||||||
### 4.2 Messaging Service
|
### 4.2 Messaging Service
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- Channels, messages, followups.
|
- Channels, messages, followups.
|
||||||
- Co-memory embeddings.
|
- Co-memory embeddings.
|
||||||
- Confidential mode enforcement (via Gateway).
|
- Confidential mode enforcement (via Gateway).
|
||||||
|
|
||||||
#### Таблиці:
|
- **Таблиці**
|
||||||
|
|
||||||
- `channels`
|
- `channels`
|
||||||
- `messages`
|
- `messages`
|
||||||
- `followups`
|
- `followups`
|
||||||
- `comemory_items`
|
- `comemory_items`
|
||||||
|
|
||||||
#### API:
|
- **API**
|
||||||
|
|
||||||
- `POST /internal/message/send`
|
- `POST /internal/message/send`
|
||||||
- `GET /internal/channel/:id/messages`
|
- `GET /internal/channel/:id/messages`
|
||||||
- `POST /internal/comemory/index`
|
- `POST /internal/comemory/index`
|
||||||
|
|
||||||
#### Події:
|
- **Події**
|
||||||
|
|
||||||
- `chat.message.created`
|
- `chat.message.created`
|
||||||
- `comemory.item.created`
|
- `comemory.item.created`
|
||||||
|
|
||||||
@@ -131,17 +125,14 @@
|
|||||||
|
|
||||||
### 4.3 Projects & Tasks Service
|
### 4.3 Projects & Tasks Service
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- Projects, tasks, workflow.
|
- Projects, tasks, workflow.
|
||||||
|
|
||||||
#### Таблиці:
|
- **Таблиці**
|
||||||
|
|
||||||
- `projects`
|
- `projects`
|
||||||
- `tasks`
|
- `tasks`
|
||||||
|
|
||||||
#### Події:
|
- **Події**
|
||||||
|
|
||||||
- `project.created`
|
- `project.created`
|
||||||
- `task.created`
|
- `task.created`
|
||||||
- `task.updated`
|
- `task.updated`
|
||||||
@@ -150,24 +141,20 @@
|
|||||||
|
|
||||||
### 4.4 Agent Orchestrator
|
### 4.4 Agent Orchestrator
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- запуск приватних агентів;
|
- запуск приватних агентів;
|
||||||
- трекінг `agent_runs`;
|
- трекінг `agent_runs`;
|
||||||
- sandbox execution.
|
- sandbox execution.
|
||||||
|
|
||||||
#### Таблиці:
|
- **Таблиці**
|
||||||
|
|
||||||
- `agents`
|
- `agents`
|
||||||
- `agent_runs`
|
- `agent_runs`
|
||||||
|
|
||||||
#### Події:
|
- **Події**
|
||||||
|
|
||||||
- `agent.run.started`
|
- `agent.run.started`
|
||||||
- `agent.run.completed`
|
- `agent.run.completed`
|
||||||
|
|
||||||
#### API:
|
- **API**
|
||||||
|
|
||||||
- `POST /internal/agent/run`
|
- `POST /internal/agent/run`
|
||||||
- `POST /internal/agent/finish`
|
- `POST /internal/agent/finish`
|
||||||
- `GET /internal/agent/run/:id/status`
|
- `GET /internal/agent/run/:id/status`
|
||||||
@@ -176,18 +163,17 @@
|
|||||||
|
|
||||||
### 4.5 LLM Proxy Service
|
### 4.5 LLM Proxy Service
|
||||||
|
|
||||||
#### Завдання:
|
#### Завдання
|
||||||
|
|
||||||
- централізований доступ до LLM (OpenAI / local models).
|
- централізований доступ до LLM (OpenAI / local models).
|
||||||
- облік токенів.
|
- облік токенів.
|
||||||
- нормалізація моделей.
|
- нормалізація моделей.
|
||||||
|
|
||||||
#### API:
|
- **API**
|
||||||
|
|
||||||
- `POST /internal/llm/chat`
|
- `POST /internal/llm/chat`
|
||||||
- `POST /internal/llm/embeddings`
|
- `POST /internal/llm/embeddings`
|
||||||
|
|
||||||
#### Event:
|
#### Event
|
||||||
|
|
||||||
- `llm.tokens.used`
|
- `llm.tokens.used`
|
||||||
|
|
||||||
@@ -195,20 +181,17 @@
|
|||||||
|
|
||||||
### 4.6 Router / Planner (DAARWIZZ)
|
### 4.6 Router / Planner (DAARWIZZ)
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- run multi-agent routing pipeline;
|
- run multi-agent routing pipeline;
|
||||||
- orchestration of tools;
|
- orchestration of tools;
|
||||||
- intent recognition;
|
- intent recognition;
|
||||||
- complex "flows".
|
- complex "flows".
|
||||||
|
|
||||||
#### API:
|
- **API**
|
||||||
|
|
||||||
- `POST /internal/router/route`
|
- `POST /internal/router/route`
|
||||||
- `POST /internal/router/plan`
|
- `POST /internal/router/plan`
|
||||||
|
|
||||||
#### Events:
|
- **Events**
|
||||||
|
|
||||||
- `router.invoked`
|
- `router.invoked`
|
||||||
- `router.completed`
|
- `router.completed`
|
||||||
|
|
||||||
@@ -216,27 +199,23 @@
|
|||||||
|
|
||||||
### 4.7 Wallet Service
|
### 4.7 Wallet Service
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- стейк RINGK;
|
- стейк RINGK;
|
||||||
- генерація payout'ів;
|
- генерація payout'ів;
|
||||||
- claim payout;
|
- claim payout;
|
||||||
- зв'язок з блокчейном.
|
- зв'язок з блокчейном.
|
||||||
|
|
||||||
#### Таблиці:
|
- **Таблиці**
|
||||||
|
|
||||||
- `wallets`
|
- `wallets`
|
||||||
- `staking_ringk`
|
- `staking_ringk`
|
||||||
- `payouts`
|
- `payouts`
|
||||||
|
|
||||||
#### API:
|
- **API**
|
||||||
|
|
||||||
- `POST /internal/wallet/stake`
|
- `POST /internal/wallet/stake`
|
||||||
- `POST /internal/wallet/payout/claim`
|
- `POST /internal/wallet/payout/claim`
|
||||||
- `GET /internal/wallet/balance/:user`
|
- `GET /internal/wallet/balance/:user`
|
||||||
|
|
||||||
#### Events:
|
- **Events**
|
||||||
|
|
||||||
- `staking.locked`
|
- `staking.locked`
|
||||||
- `payout.generated`
|
- `payout.generated`
|
||||||
- `payout.claimed`
|
- `payout.claimed`
|
||||||
@@ -245,43 +224,36 @@
|
|||||||
|
|
||||||
### 4.8 RWA Inventory Service
|
### 4.8 RWA Inventory Service
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- облік energy/food/water/etc.
|
- облік energy/food/water/etc.
|
||||||
- інтеграція з Embassy.
|
- інтеграція з Embassy.
|
||||||
- оновлення RWA стоків.
|
- оновлення RWA стоків.
|
||||||
|
|
||||||
#### Таблиці:
|
- **Таблиці**
|
||||||
|
|
||||||
- `rwa_inventory`
|
- `rwa_inventory`
|
||||||
|
|
||||||
#### Events:
|
- **Events**
|
||||||
|
|
||||||
- `rwa.inventory.updated`
|
- `rwa.inventory.updated`
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
### 4.9 Embassy Gateway Service
|
### 4.9 Embassy Gateway Service
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- прийом підписаних webhook'ів від платформ (EnergyUnion, GREENFOOD).
|
- прийом підписаних webhook'ів від платформ (EnergyUnion, GREENFOOD).
|
||||||
- HMAC перевірка.
|
- HMAC перевірка.
|
||||||
- PDP авторизація (embassy keys).
|
- PDP авторизація (embassy keys).
|
||||||
- генерація подій для NATS.
|
- генерація подій для NATS.
|
||||||
|
|
||||||
#### Таблиці:
|
- **Таблиці**
|
||||||
|
|
||||||
- `embassy_identities`
|
- `embassy_identities`
|
||||||
- `embassy_webhooks`
|
- `embassy_webhooks`
|
||||||
|
|
||||||
#### API:
|
- **API**
|
||||||
|
|
||||||
- `POST /embassy/energy`
|
- `POST /embassy/energy`
|
||||||
- `POST /embassy/rwa`
|
- `POST /embassy/rwa`
|
||||||
|
|
||||||
#### Events:
|
- **Events**
|
||||||
|
|
||||||
- `embassy.event.received`
|
- `embassy.event.received`
|
||||||
- `embassy.energy.update`
|
- `embassy.energy.update`
|
||||||
- `embassy.rwa.claim`
|
- `embassy.rwa.claim`
|
||||||
@@ -290,53 +262,45 @@
|
|||||||
|
|
||||||
### 4.10 Oracle Processor
|
### 4.10 Oracle Processor
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- обробка потоків енергетичних даних;
|
- обробка потоків енергетичних даних;
|
||||||
- нормалізація;
|
- нормалізація;
|
||||||
- створення `oracles`.
|
- створення `oracles`.
|
||||||
|
|
||||||
#### Таблиці:
|
- **Таблиці**
|
||||||
|
|
||||||
- `oracles`
|
- `oracles`
|
||||||
|
|
||||||
#### Events:
|
- **Events**
|
||||||
|
|
||||||
- `oracle.reading.published`
|
- `oracle.reading.published`
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
### 4.11 Governance Service
|
### 4.11 Governance Service
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- пропозиції,
|
- пропозиції,
|
||||||
- голосування,
|
- голосування,
|
||||||
- застосування політик,
|
- застосування політик,
|
||||||
- оновлення bundles/caps/quotas.
|
- оновлення bundles/caps/quotas.
|
||||||
|
|
||||||
#### Таблиці:
|
- **Таблиці**
|
||||||
|
|
||||||
- `governance_policies`
|
- `governance_policies`
|
||||||
|
|
||||||
#### Events:
|
- **Events**
|
||||||
|
|
||||||
- `governance.policy.updated`
|
- `governance.policy.updated`
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
### 4.12 Capability Registry Service
|
### 4.12 Capability Registry Service
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- управління:
|
- управління:
|
||||||
- capabilities,
|
- capabilities,
|
||||||
- bundles,
|
- bundles,
|
||||||
- bundle_caps,
|
- bundle_caps,
|
||||||
- plan entitlements.
|
- plan entitlements.
|
||||||
|
|
||||||
#### Таблиці:
|
- **Таблиці**
|
||||||
|
|
||||||
- `capabilities`
|
- `capabilities`
|
||||||
- `bundles`
|
- `bundles`
|
||||||
- `bundle_caps`
|
- `bundle_caps`
|
||||||
@@ -347,8 +311,7 @@
|
|||||||
|
|
||||||
### 4.13 Usage Service
|
### 4.13 Usage Service
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- підрахунок usage:
|
- підрахунок usage:
|
||||||
- agent runs,
|
- agent runs,
|
||||||
- LLM tokens,
|
- LLM tokens,
|
||||||
@@ -356,8 +319,7 @@
|
|||||||
- router invokes,
|
- router invokes,
|
||||||
- wallet transactions.
|
- wallet transactions.
|
||||||
|
|
||||||
#### Таблиці:
|
- **Таблиці**
|
||||||
|
|
||||||
(опціонально)
|
(опціонально)
|
||||||
|
|
||||||
- `usage_agent_runs`
|
- `usage_agent_runs`
|
||||||
@@ -371,13 +333,12 @@
|
|||||||
|
|
||||||
### 4.14 Outbox Worker
|
### 4.14 Outbox Worker
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- читання `outbox_events` з БД;
|
- читання `outbox_events` з БД;
|
||||||
- публікація у NATS;
|
- публікація у NATS;
|
||||||
- маркування `processed`.
|
- маркування `processed`.
|
||||||
|
|
||||||
#### Таблиця:
|
#### Таблиця
|
||||||
|
|
||||||
- `outbox_events`
|
- `outbox_events`
|
||||||
|
|
||||||
@@ -385,14 +346,12 @@
|
|||||||
|
|
||||||
### 4.15 Telemetry / Logs Service
|
### 4.15 Telemetry / Logs Service
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- прийом логів з фронтенду,
|
- прийом логів з фронтенду,
|
||||||
- прийом internal logs,
|
- прийом internal logs,
|
||||||
- агрегація в аналітичні стріми.
|
- агрегація в аналітичні стріми.
|
||||||
|
|
||||||
#### Events:
|
- **Events**
|
||||||
|
|
||||||
- `telemetry.client.event`
|
- `telemetry.client.event`
|
||||||
- `telemetry.error`
|
- `telemetry.error`
|
||||||
- `telemetry.screen_view`
|
- `telemetry.screen_view`
|
||||||
@@ -401,22 +360,19 @@
|
|||||||
|
|
||||||
### 4.16 Auth / Session Service
|
### 4.16 Auth / Session Service
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- login,
|
- login,
|
||||||
- OTP/Magic-link,
|
- OTP/Magic-link,
|
||||||
- session cookies.
|
- session cookies.
|
||||||
|
|
||||||
#### Таблиці:
|
- **Таблиці**
|
||||||
|
|
||||||
- `sessions` (опціонально)
|
- `sessions` (опціонально)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
### 4.17 File Storage / Docs Service
|
### 4.17 File Storage / Docs Service
|
||||||
|
|
||||||
#### Відповідальність:
|
- **Відповідальність**
|
||||||
|
|
||||||
- завантаження файлів у каналах,
|
- завантаження файлів у каналах,
|
||||||
- документи,
|
- документи,
|
||||||
- архіви,
|
- архіви,
|
||||||
@@ -432,24 +388,24 @@
|
|||||||
|
|
||||||
Умовний граф залежностей:
|
Умовний граф залежностей:
|
||||||
|
|
||||||
```
|
```text
|
||||||
User/Team → Messaging → Projects/Tasks → Agents → Router
|
User/Team → Messaging → Projects/Tasks → Agents → Router
|
||||||
↓ ↓ ↓
|
↓ ↓ ↓
|
||||||
RWA Wallet Embassy
|
RWA Wallet Embassy
|
||||||
↓ ↓ ↓
|
↓ ↓ ↓
|
||||||
Oracle → Usage → Governance → PDP
|
Oracle → Usage → Governance → PDP
|
||||||
```
|
```text
|
||||||
|
|
||||||
Простіший вигляд:
|
Простіший вигляд:
|
||||||
|
|
||||||
```
|
```text
|
||||||
API Gateway (PEP)
|
API Gateway (PEP)
|
||||||
↓ PDP
|
↓ PDP
|
||||||
↓
|
↓
|
||||||
Internal Services
|
Internal Services
|
||||||
↓
|
↓
|
||||||
DB + NATS
|
DB + NATS
|
||||||
```
|
```text
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -471,7 +427,7 @@ DB + NATS
|
|||||||
|
|
||||||
## 7. Horizontal Scaling Responsibilities
|
## 7. Horizontal Scaling Responsibilities
|
||||||
|
|
||||||
### Stateless services:
|
### Stateless services
|
||||||
|
|
||||||
- Messaging
|
- Messaging
|
||||||
- Projects/Tasks
|
- Projects/Tasks
|
||||||
@@ -480,7 +436,7 @@ DB + NATS
|
|||||||
- Router/Planner (частково)
|
- Router/Planner (частково)
|
||||||
- LLM Proxy
|
- LLM Proxy
|
||||||
|
|
||||||
### Stateful services:
|
### Stateful services
|
||||||
|
|
||||||
- Wallet
|
- Wallet
|
||||||
- RWA
|
- RWA
|
||||||
@@ -653,7 +609,7 @@ Output:
|
|||||||
- list of modified files
|
- list of modified files
|
||||||
- diff
|
- diff
|
||||||
- summary
|
- summary
|
||||||
```
|
```text
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -676,4 +632,3 @@ Output:
|
|||||||
**Версія:** 1.0
|
**Версія:** 1.0
|
||||||
**Останнє оновлення:** 2024-11-14
|
**Останнє оновлення:** 2024-11-14
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -135,3 +135,5 @@ docs/cursor/15_projects_agent_module.md
|
|||||||
docs/cursor/12_agent_runtime_core.md
|
docs/cursor/12_agent_runtime_core.md
|
||||||
docs/cursor/13_agent_memory_system.md
|
docs/cursor/13_agent_memory_system.md
|
||||||
docs/cursor/06_tasks_onboarding_mvp.md
|
docs/cursor/06_tasks_onboarding_mvp.md
|
||||||
|
docs/cursor/22_operator_modes_and_system_agents.md
|
||||||
|
docs/cursor/34_internal_services_architecture.md
|
||||||
|
|||||||
Reference in New Issue
Block a user