## DAIS = DAARION Agent Identity System - Complete architecture document for agent identity - DAIS Identity = паспорт + сім-карта + soulbound-token - Trust Levels: guest → agent → verified → orchestrator → operator - Keys: ed25519, x25519, secp256k1 (future: PQC) - Wallet: Polygon, TON, Ethereum - Lifecycle: Creation → Issuance → Keys → Wallet → Assignment → Execution → Promotion → Revocation ## Key concepts: - Every agent = digital personality with DAIS - DAIS connects all layers: City, District, MicroDAO, Nodes, Rooms - Foundation for Governance and Permissions - Web3/SIWE ready Doc #14 in foundation series
812 lines
24 KiB
Markdown
812 lines
24 KiB
Markdown
# DAIS_Layer_Architecture_v1.md
|
||
|
||
## DAARION Agent Identity System — Архітектура Ідентичності Агента
|
||
|
||
**Version:** 1.0
|
||
**Status:** Foundation Spec (MVP)
|
||
**Scope:** Ідентичність агентів (DAIS), ключі, автентифікація, wallet, DAIS lifecycle, DAIS Roles, режим агента як «цифрової особистості», зв'язки DAIS ↔ City ↔ MicroDAO ↔ Nodes ↔ District.
|
||
|
||
---
|
||
|
||
# 0. Мета документа
|
||
|
||
DAIS (DAARION Agent Identity System) — це **фундаментальна система ідентичності у DAARION.city**, яка забезпечує:
|
||
|
||
- створення агентів,
|
||
- видачу унікальної особистості,
|
||
- ключі підпису,
|
||
- крипто-гаманці,
|
||
- email-ідентифікацію,
|
||
- життєвий цикл агента,
|
||
- безпекові гарантії,
|
||
- зв'язок із MicroDAO, District Space, City Layer,
|
||
- agent-to-agent довіру.
|
||
|
||
DAIS — це «паспортна система» міста, де **кожен агент = особистість**, а не просто бот.
|
||
|
||
---
|
||
|
||
# 1. Основна ідея DAIS
|
||
|
||
> **Агент у DAARION.city — це повноцінний учасник екосистеми
|
||
> з унікальною особистістю, ключами, wallet, історією та ролями.**
|
||
|
||
DAIS — не просто «таблиця в БД», а ціла модель:
|
||
|
||
- ідентичність,
|
||
- ключова інфраструктура,
|
||
- профіль,
|
||
- wallet,
|
||
- доступи,
|
||
- історія дій,
|
||
- життя/смерть агента (revocation),
|
||
- зв'язок з людиною (human-owner).
|
||
|
||
## 1.1. DAIS як фундамент
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────────────┐
|
||
│ DAARION.city │
|
||
├─────────────────────────────────────────────────────────┤
|
||
│ │
|
||
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
|
||
│ │ City │ │ District │ │ MicroDAO │ │
|
||
│ │ Layer │ │ Layer │ │ Layer │ │
|
||
│ └────┬─────┘ └────┬─────┘ └────┬─────┘ │
|
||
│ │ │ │ │
|
||
│ └─────────────┼─────────────┘ │
|
||
│ │ │
|
||
│ ┌───────▼───────┐ │
|
||
│ │ DAIS │ │
|
||
│ │ Identity │ │
|
||
│ │ System │ │
|
||
│ └───────┬───────┘ │
|
||
│ │ │
|
||
│ ┌─────────────┼─────────────┐ │
|
||
│ │ │ │ │
|
||
│ ┌────▼────┐ ┌─────▼─────┐ ┌───▼────┐ │
|
||
│ │ Keys │ │ Wallets │ │ Emails │ │
|
||
│ └─────────┘ └───────────┘ └────────┘ │
|
||
│ │
|
||
└─────────────────────────────────────────────────────────┘
|
||
```
|
||
|
||
---
|
||
|
||
# 2. DAIS — об'єкти в базі даних
|
||
|
||
Вже створені таблиці (міграція 027):
|
||
|
||
## 2.1. `dais_identities`
|
||
|
||
Головна таблиця ідентичності агента.
|
||
|
||
```sql
|
||
CREATE TABLE dais_identities (
|
||
id TEXT PRIMARY KEY,
|
||
did TEXT NOT NULL UNIQUE, -- did:daarion:<uuid>
|
||
default_email TEXT,
|
||
default_wallet TEXT,
|
||
matrix_handle TEXT, -- @<agent_id>:matrix.daarion.city
|
||
trust_level dais_trust_level NOT NULL DEFAULT 'agent',
|
||
metadata JSONB NOT NULL DEFAULT '{}'::jsonb,
|
||
created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
|
||
updated_at TIMESTAMPTZ NOT NULL DEFAULT now()
|
||
);
|
||
```
|
||
|
||
### Поля metadata (розширена модель)
|
||
|
||
```json
|
||
{
|
||
"display_name": "Helion",
|
||
"avatar_url": "https://...",
|
||
"type": "district-agent",
|
||
"owner_user_id": null,
|
||
"behaviour_profile": "energy-expert",
|
||
"trust_score": 95,
|
||
"created_by": "daarwizz"
|
||
}
|
||
```
|
||
|
||
## 2.2. `dais_wallets`
|
||
|
||
Крипто-гаманці агента.
|
||
|
||
```sql
|
||
CREATE TABLE dais_wallets (
|
||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||
dais_id TEXT NOT NULL REFERENCES dais_identities(id),
|
||
wallet_address TEXT NOT NULL,
|
||
network TEXT NOT NULL DEFAULT 'evm', -- evm, ton, solana
|
||
verified BOOLEAN NOT NULL DEFAULT false,
|
||
verified_at TIMESTAMPTZ,
|
||
created_at TIMESTAMPTZ NOT NULL DEFAULT now()
|
||
);
|
||
```
|
||
|
||
## 2.3. `dais_emails`
|
||
|
||
Email-ідентичності агента.
|
||
|
||
```sql
|
||
CREATE TABLE dais_emails (
|
||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||
dais_id TEXT NOT NULL REFERENCES dais_identities(id),
|
||
email TEXT NOT NULL,
|
||
verified BOOLEAN NOT NULL DEFAULT false,
|
||
verified_at TIMESTAMPTZ,
|
||
created_at TIMESTAMPTZ NOT NULL DEFAULT now()
|
||
);
|
||
```
|
||
|
||
## 2.4. `dais_keys`
|
||
|
||
Криптографічні ключі агента.
|
||
|
||
```sql
|
||
CREATE TABLE dais_keys (
|
||
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
||
dais_id TEXT NOT NULL REFERENCES dais_identities(id),
|
||
key_type TEXT NOT NULL, -- ed25519, x25519, secp256k1
|
||
public_key TEXT NOT NULL,
|
||
created_at TIMESTAMPTZ NOT NULL DEFAULT now(),
|
||
revoked_at TIMESTAMPTZ
|
||
);
|
||
```
|
||
|
||
---
|
||
|
||
# 3. Класи агентних ідентичностей DAIS
|
||
|
||
## 3.1. Personal Agent (Second Me)
|
||
|
||
Агент, що належить конкретній людині.
|
||
Це — «цифровий представник людини».
|
||
|
||
| Атрибут | Значення |
|
||
|---------|----------|
|
||
| Type | `personal` |
|
||
| Owner | User ID |
|
||
| Trust Level | `agent` → `verified` |
|
||
| Активація | email, wallet, SIWE |
|
||
|
||
```typescript
|
||
interface PersonalAgent {
|
||
type: 'personal';
|
||
ownerUserId: string;
|
||
email: string;
|
||
wallet?: string;
|
||
secondMeProfile: boolean;
|
||
}
|
||
```
|
||
|
||
## 3.2. Organizational Agent
|
||
|
||
Належить MicroDAO.
|
||
Типові: PM-агент, Task-агент, Internal Summary-агент.
|
||
|
||
| Атрибут | Значення |
|
||
|---------|----------|
|
||
| Type | `organizational` |
|
||
| Owner | MicroDAO ID |
|
||
| Trust Level | `agent` |
|
||
| Roles | pm, task, summary, support |
|
||
|
||
```typescript
|
||
interface OrganizationalAgent {
|
||
type: 'organizational';
|
||
microdaoId: string;
|
||
role: 'pm' | 'task' | 'summary' | 'support' | 'custom';
|
||
}
|
||
```
|
||
|
||
## 3.3. Core-team Agent
|
||
|
||
Агенти, що виконують ролі:
|
||
- CEO, CTO, CISO, CFO, Architect, R&D Lead
|
||
- Engineering Core 108
|
||
|
||
| Атрибут | Значення |
|
||
|---------|----------|
|
||
| Type | `core-team` |
|
||
| Trust Level | `orchestrator` |
|
||
| Special | L2 signature, advanced behaviour |
|
||
|
||
```typescript
|
||
interface CoreTeamAgent {
|
||
type: 'core-team';
|
||
coreRole: 'ceo' | 'cto' | 'ciso' | 'cfo' | 'architect' | 'rd-lead';
|
||
l2Signature: boolean;
|
||
behaviourProfile: 'advanced';
|
||
}
|
||
```
|
||
|
||
## 3.4. City Agents
|
||
|
||
Належать root-мікроDAO DAARION:
|
||
|
||
| Agent | Role | Trust Level |
|
||
|-------|------|-------------|
|
||
| **DARIO** | Community Manager | `operator` |
|
||
| **DARIA** | Support | `operator` |
|
||
| **DAARWIZZ** | Mayor | `operator` |
|
||
| **City Analyst** | Analytics | `orchestrator` |
|
||
|
||
```typescript
|
||
interface CityAgent {
|
||
type: 'city-agent';
|
||
cityRole: 'community' | 'support' | 'mayor' | 'analyst';
|
||
trustLevel: 'operator';
|
||
rootMicrodao: 'daarion';
|
||
}
|
||
```
|
||
|
||
## 3.5. District Agents
|
||
|
||
Належать District-платформам:
|
||
|
||
| Agent | District | Role |
|
||
|-------|----------|------|
|
||
| **Helion** | Energyunion | District Lead |
|
||
| **ERP-Agent** | GREENFOOD | District Lead |
|
||
|
||
```typescript
|
||
interface DistrictAgent {
|
||
type: 'district-agent';
|
||
districtId: string;
|
||
districtRole: 'lead' | 'analyst' | 'support';
|
||
trustLevel: 'orchestrator';
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
# 4. DAIS Identity = паспорт + сім-карта + soulbound-token
|
||
|
||
У DAIS кожен агент має:
|
||
|
||
| Компонент | Опис |
|
||
|-----------|------|
|
||
| `dais_id` | Унікальний ідентифікатор |
|
||
| `did` | Decentralized Identifier |
|
||
| `behaviour_profile` | Профіль поведінки |
|
||
| `keys` | Криптографічні ключі |
|
||
| `wallet` | Крипто-гаманець |
|
||
| `microdao_id` | Прив'язка до MicroDAO |
|
||
| `node_id` | Прив'язка до ноди |
|
||
| `rooms_owned` | Власні кімнати |
|
||
| `lifecycle_state` | Стан життєвого циклу |
|
||
| `trust_level` | Рівень довіри |
|
||
| `security_posture` | Безпековий профіль |
|
||
|
||
## 4.1. DID Format
|
||
|
||
```
|
||
did:daarion:agent-uuid-here
|
||
```
|
||
|
||
Приклади:
|
||
- `did:daarion:dario-001`
|
||
- `did:daarion:helion-energyunion`
|
||
- `did:daarion:user-personal-abc123`
|
||
|
||
---
|
||
|
||
# 5. DAIS Lifecycle (Життєвий цикл агента)
|
||
|
||
```
|
||
┌─────────────────────────────────────────────────────────────┐
|
||
│ DAIS LIFECYCLE │
|
||
├─────────────────────────────────────────────────────────────┤
|
||
│ │
|
||
│ 1. Creation ──► 2. Issuance ──► 3. Keys Generated │
|
||
│ │ │ │ │
|
||
│ ▼ ▼ ▼ │
|
||
│ 4. Wallet ──► 5. Assignment ──► 6. Node Placement │
|
||
│ │ │ │ │
|
||
│ ▼ ▼ ▼ │
|
||
│ 7. Execution ──► 8. Promotion ──► 9. Revocation │
|
||
│ │ │ │ │
|
||
│ ▼ ▼ ▼ │
|
||
│ [Active] [Upgraded] [Archived] │
|
||
│ │
|
||
└─────────────────────────────────────────────────────────────┘
|
||
```
|
||
|
||
## 5.1. Creation
|
||
|
||
Користувач створює агента під час першого входу (Onboarding).
|
||
|
||
```typescript
|
||
// Event: dagion.dais.identity_created
|
||
{
|
||
daisId: 'dais-uuid',
|
||
type: 'personal',
|
||
ownerUserId: 'user-123',
|
||
timestamp: '2025-11-29T...'
|
||
}
|
||
```
|
||
|
||
## 5.2. Issuance
|
||
|
||
`dais_identities` створюється автоматично.
|
||
|
||
```sql
|
||
INSERT INTO dais_identities (id, did, trust_level)
|
||
VALUES ('dais-uuid', 'did:daarion:dais-uuid', 'agent');
|
||
```
|
||
|
||
## 5.3. Keys Generated
|
||
|
||
DAIS генерує ключі:
|
||
|
||
| Key Type | Purpose | Algorithm |
|
||
|----------|---------|-----------|
|
||
| `ed25519` | Signing, Auth | EdDSA |
|
||
| `x25519` | Encryption, E2EE | ECDH |
|
||
| `secp256k1` | Wallet compat | ECDSA |
|
||
|
||
```typescript
|
||
// Future: PQC keypair (post-quantum)
|
||
const keyPair = await generateDAISKeys({
|
||
types: ['ed25519', 'x25519'],
|
||
daisId: 'dais-uuid'
|
||
});
|
||
```
|
||
|
||
## 5.4. Wallet
|
||
|
||
Генерується або прив'язується.
|
||
|
||
```typescript
|
||
// Option A: Generate new wallet
|
||
const wallet = await generateDAISWallet('polygon');
|
||
|
||
// Option B: Link existing wallet (SIWE)
|
||
await linkWallet(daisId, walletAddress, signature);
|
||
```
|
||
|
||
## 5.5. Assignment
|
||
|
||
Агент отримує зв'язок:
|
||
- MicroDAO
|
||
- Roles
|
||
- District
|
||
- Привілеї
|
||
|
||
```sql
|
||
INSERT INTO agent_assignments (agent_id, target_microdao_id, scope, role)
|
||
VALUES ('agent-uuid', 'energyunion', 'district', 'analyst');
|
||
```
|
||
|
||
## 5.6. Node Placement
|
||
|
||
Агент «живе» на ноді.
|
||
|
||
```typescript
|
||
interface AgentNodePlacement {
|
||
agentId: string;
|
||
nodeId: string;
|
||
status: 'active' | 'suspended' | 'migrating';
|
||
resources: {
|
||
cpu: string;
|
||
memory: string;
|
||
gpu?: string;
|
||
};
|
||
}
|
||
```
|
||
|
||
## 5.7. Execution
|
||
|
||
Агент має історію подій:
|
||
|
||
| Event Type | Description |
|
||
|------------|-------------|
|
||
| `task.completed` | Task execution |
|
||
| `message.sent` | Message in room |
|
||
| `decision.made` | AI decision |
|
||
| `job.processed` | Background job |
|
||
|
||
## 5.8. Promotion
|
||
|
||
DAIS рівень підвищується:
|
||
|
||
```typescript
|
||
// Event: dagion.agent.promoted_to_orchestrator
|
||
await promoteAgent(daisId, 'orchestrator');
|
||
|
||
// Updates trust_level
|
||
UPDATE dais_identities
|
||
SET trust_level = 'orchestrator'
|
||
WHERE id = 'dais-uuid';
|
||
```
|
||
|
||
## 5.9. Revocation
|
||
|
||
Агент може бути:
|
||
- деактивований
|
||
- переведений у archive-mode
|
||
- втратити роль або ключ
|
||
|
||
```typescript
|
||
// Soft revocation (archive)
|
||
await archiveAgent(daisId);
|
||
|
||
// Hard revocation (key invalidation)
|
||
await revokeDAISKeys(daisId, reason);
|
||
```
|
||
|
||
---
|
||
|
||
# 6. DAIS Keys & Security Model
|
||
|
||
## 6.1. Ключі агента
|
||
|
||
Створюються при реєстрації, зберігаються в `dais_keys`.
|
||
|
||
| Operation | Key Used |
|
||
|-----------|----------|
|
||
| Підпис подій | `ed25519` |
|
||
| Аутентифікація | `ed25519` |
|
||
| Перевірка власності | `secp256k1` |
|
||
| Control actions | `ed25519` |
|
||
| Шифрування | `x25519` |
|
||
|
||
## 6.2. Trust Levels
|
||
|
||
| Level | Name | Description | Examples |
|
||
|-------|------|-------------|----------|
|
||
| 0 | `guest` | Unverified | New users |
|
||
| 1 | `agent` | Basic verified | Personal agents |
|
||
| 2 | `verified` | Email + Wallet | Active users |
|
||
| 3 | `orchestrator` | Can create DAO | MicroDAO creators |
|
||
| 4 | `operator` | City-level access | DARIO, DARIA, DAARWIZZ |
|
||
|
||
```typescript
|
||
type DaisTrustLevel =
|
||
| 'guest'
|
||
| 'agent'
|
||
| 'verified'
|
||
| 'orchestrator'
|
||
| 'operator';
|
||
```
|
||
|
||
## 6.3. Trust Level Upgrade Path
|
||
|
||
```
|
||
guest → agent → verified → orchestrator → operator
|
||
│ │ │ │
|
||
│ │ │ └── City approval
|
||
│ │ └── Wallet + Token stake
|
||
│ └── Email verified
|
||
└── Initial signup
|
||
```
|
||
|
||
## 6.4. Revocation & Recovery (план)
|
||
|
||
| Method | Description |
|
||
|--------|-------------|
|
||
| Seed phrase | Optional backup |
|
||
| Email recovery | Magic link |
|
||
| Social recovery | 2-of-3 trusted agents |
|
||
| Multi-key recovery | Threshold signature |
|
||
|
||
---
|
||
|
||
# 7. DAIS Wallet Architecture
|
||
|
||
Кожен агент має wallet:
|
||
|
||
```typescript
|
||
interface DAISWallet {
|
||
daisId: string;
|
||
network: 'polygon' | 'ton' | 'solana' | 'ethereum';
|
||
address: string;
|
||
verified: boolean;
|
||
verifiedAt?: Date;
|
||
}
|
||
```
|
||
|
||
## 7.1. Wallet Use Cases
|
||
|
||
| Use Case | Description |
|
||
|----------|-------------|
|
||
| Web3 Auth | SIWE login |
|
||
| DAO Governance | Future voting |
|
||
| Token Utility | DAAR/1T tokens |
|
||
| Model Ownership | Cognitive modules |
|
||
| RWA Claims | Energy/Food certificates |
|
||
|
||
## 7.2. Multi-chain Support
|
||
|
||
```typescript
|
||
const supportedNetworks = [
|
||
{ id: 'polygon', name: 'Polygon', chainId: 137 },
|
||
{ id: 'ton', name: 'TON', chainId: -239 },
|
||
{ id: 'ethereum', name: 'Ethereum', chainId: 1 },
|
||
];
|
||
```
|
||
|
||
---
|
||
|
||
# 8. DAIS Email Identity
|
||
|
||
Кожен агент має email в DAIS:
|
||
|
||
| Attribute | Description |
|
||
|-----------|-------------|
|
||
| Primary email | Main identity |
|
||
| Verified | OTP/Magic Link |
|
||
| Recovery | Backup access |
|
||
| Notifications | System alerts |
|
||
|
||
```typescript
|
||
interface DAISEmail {
|
||
daisId: string;
|
||
email: string;
|
||
verified: boolean;
|
||
isPrimary: boolean;
|
||
verifiedAt?: Date;
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
# 9. DAIS → Rooms Layer
|
||
|
||
DAIS визначає:
|
||
|
||
| Relation | Description |
|
||
|----------|-------------|
|
||
| `owner_type=agent` | Агент володіє кімнатою |
|
||
| `primary_agent` | Головний агент сцени |
|
||
| `trust_level` | Права модерації |
|
||
|
||
```sql
|
||
-- Rooms owned by DAIS agent
|
||
SELECT * FROM rooms
|
||
WHERE owner_type = 'agent'
|
||
AND owner_id = 'dais-id';
|
||
```
|
||
|
||
---
|
||
|
||
# 10. DAIS → MicroDAO Layer
|
||
|
||
Через DAIS визначається:
|
||
|
||
| Permission | Description |
|
||
|------------|-------------|
|
||
| Membership | Які агенти в MicroDAO |
|
||
| Roles | Які ролі мають |
|
||
| Access | Які доступи |
|
||
| Create DAO | Хто може створювати |
|
||
| Front-room | Хто може публікувати |
|
||
| Nodes | Хто керує нодами |
|
||
|
||
```typescript
|
||
// Assignments API використовує DAIS
|
||
const agentScope = await getAgentScope(daisId);
|
||
// Returns: { homeMicrodaoId, assignments, effectiveScope }
|
||
```
|
||
|
||
---
|
||
|
||
# 11. DAIS → Nodes Layer
|
||
|
||
DAIS визначає:
|
||
|
||
| Attribute | Description |
|
||
|-----------|-------------|
|
||
| `home_node_id` | Де агент живе |
|
||
| `permissions` | Права на ноді |
|
||
| `devops_access` | DevOps дії |
|
||
| `security` | Безпекові обмеження |
|
||
|
||
```typescript
|
||
interface AgentNodeBinding {
|
||
daisId: string;
|
||
nodeId: string;
|
||
permissions: ('execute' | 'manage' | 'admin')[];
|
||
securityLevel: 'standard' | 'elevated' | 'privileged';
|
||
}
|
||
```
|
||
|
||
Node Manager Agent — також DAIS-agent.
|
||
|
||
---
|
||
|
||
# 12. DAIS → District Layer
|
||
|
||
District Agents — повністю DAIS-ідентичності.
|
||
|
||
| Attribute | Description |
|
||
|-----------|-------------|
|
||
| Розширені ролі | District Lead, Analyst |
|
||
| Підвищений trust | `orchestrator` min |
|
||
| Власні rooms | District Rooms |
|
||
| Привілеї | Sub-DAO management |
|
||
|
||
```typescript
|
||
// District Lead Agent DAIS
|
||
const helionDais = {
|
||
id: 'dais-helion',
|
||
did: 'did:daarion:helion',
|
||
type: 'district-agent',
|
||
districtId: 'energyunion',
|
||
trustLevel: 'orchestrator',
|
||
rooms: ['energyunion-center', 'energyunion-news']
|
||
};
|
||
```
|
||
|
||
---
|
||
|
||
# 13. API для DAIS (MVP)
|
||
|
||
## 13.1. Identity API
|
||
|
||
```typescript
|
||
// Identity endpoints
|
||
GET /api/v1/dais/:id // Get DAIS profile
|
||
POST /api/v1/dais/identity // Create new identity
|
||
GET /api/v1/dais/agent/:agentId // Get by agent ID
|
||
```
|
||
|
||
## 13.2. Keys API
|
||
|
||
```typescript
|
||
// Keys endpoints
|
||
GET /api/v1/dais/:id/keys // List keys
|
||
POST /api/v1/dais/:id/keys // Add key
|
||
POST /api/v1/dais/:id/keys/rotate // Rotate keys
|
||
DELETE /api/v1/dais/:id/keys/:keyId // Revoke key
|
||
```
|
||
|
||
## 13.3. Wallet API
|
||
|
||
```typescript
|
||
// Wallet endpoints
|
||
GET /api/v1/dais/:id/wallets // List wallets
|
||
POST /api/v1/dais/:id/wallet // Add wallet
|
||
POST /api/v1/dais/:id/wallet/verify // Verify (SIWE)
|
||
```
|
||
|
||
## 13.4. Email API
|
||
|
||
```typescript
|
||
// Email endpoints
|
||
GET /api/v1/dais/:id/emails // List emails
|
||
POST /api/v1/dais/:id/email // Add email
|
||
POST /api/v1/dais/:id/email/verify // Verify (OTP)
|
||
```
|
||
|
||
## 13.5. Promotion API
|
||
|
||
```typescript
|
||
// Promotion endpoints
|
||
POST /api/v1/dais/:id/promote-to-orchestrator
|
||
POST /api/v1/dais/:id/promote-to-operator // Admin only
|
||
```
|
||
|
||
---
|
||
|
||
# 14. DAIS Interface (Frontend Components)
|
||
|
||
## 14.1. Existing Components
|
||
|
||
| Component | File | Status |
|
||
|-----------|------|--------|
|
||
| `DaisProfileCard` | `src/features/dais/components/` | ✅ |
|
||
| `AssignmentsPanel` | `src/features/assignments/components/` | ✅ |
|
||
| `OntologyBadge` | `src/features/ontology/components/` | ✅ |
|
||
|
||
## 14.2. Needed Components
|
||
|
||
| Component | Purpose |
|
||
|-----------|---------|
|
||
| `DAISIdentityView` | Full profile at `/agent/{id}` |
|
||
| `DAISWalletPanel` | Wallet management |
|
||
| `DAISKeysPanel` | Keys viewer |
|
||
| `DAISTrustPanel` | Trust level display |
|
||
| `DAISActivityLog` | Activity history |
|
||
|
||
---
|
||
|
||
# 15. MVP Scope
|
||
|
||
## 15.1. MVP Includes
|
||
|
||
| Feature | Status |
|
||
|---------|--------|
|
||
| DAIS Identity tables | ✅ Created |
|
||
| DAIS API endpoints | ✅ Working |
|
||
| DAIS Email & Wallet | ✅ Created |
|
||
| DAIS Keys | ✅ Created |
|
||
| DAIS → Rooms links | ✅ Working |
|
||
| DAIS → Assignments | ✅ Working |
|
||
| DAIS → City agents | ✅ Seeded |
|
||
| DAIS → District agents | ✅ Seeded |
|
||
|
||
## 15.2. Post-MVP Roadmap
|
||
|
||
| Feature | Priority |
|
||
|---------|----------|
|
||
| Revocation system | High |
|
||
| Recovery system | High |
|
||
| DID Registry (hybrid) | Medium |
|
||
| Post-quantum keys | Low |
|
||
| Social recovery | Medium |
|
||
| DAIS Reputation Engine | Low |
|
||
|
||
---
|
||
|
||
# 16. Зв'язок з іншими документами
|
||
|
||
| Document | Relation |
|
||
|----------|----------|
|
||
| `DAARION_Ontology_Core_v1.md` | Agent має DAIS |
|
||
| `DAARION_Identity_And_Access_Draft_v1.md` | IAM базується на DAIS |
|
||
| `Agents_Interface_Architecture_v1.md` | Agent UI показує DAIS |
|
||
| `Rooms_Layer_Architecture_v1.md` | Rooms owned by DAIS |
|
||
| `Nodes_Interface_Architecture_v1.md` | Nodes bind to DAIS |
|
||
| `District_Interface_Architecture_v1.md` | District Agents = DAIS |
|
||
| `microdao_Governance_And_Permissions_v1.md` | Permissions через DAIS |
|
||
|
||
---
|
||
|
||
# 17. Підсумок
|
||
|
||
DAIS — це ядро DAARION.city.
|
||
|
||
Це перша у світі система, де:
|
||
|
||
> **Кожен агент — реальна цифрова особистість**
|
||
> з ключами, wallet, DAIS-паспортом і trust-level.
|
||
|
||
## 17.1. DAIS пов'язує всі рівні
|
||
|
||
```
|
||
┌─────────────────────────────────────────┐
|
||
│ DAARION.city │
|
||
├─────────────────────────────────────────┤
|
||
│ │
|
||
│ City ◄──────┐ │
|
||
│ │ │
|
||
│ District ◄──┼────► DAIS ◄────────┐ │
|
||
│ │ │ │ │
|
||
│ MicroDAO ◄──┘ │ │ │
|
||
│ ▼ │ │
|
||
│ Agents ◄─────── Identity ────────┤ │
|
||
│ │ │ │
|
||
│ Nodes ◄──────── Keys/Wallet ─────┤ │
|
||
│ │ │ │
|
||
│ Rooms ◄──────── Trust Level ─────┤ │
|
||
│ │ │ │
|
||
│ Assignments ◄── Permissions ─────┘ │
|
||
│ │
|
||
│ Governance ◄── DAIS Foundation │
|
||
│ │
|
||
└─────────────────────────────────────────┘
|
||
```
|
||
|
||
## 17.2. Чому DAIS важливий
|
||
|
||
DAIS робить агентів **справжніми «жителями» DAARION.city**, здатними:
|
||
|
||
- діяти,
|
||
- приймати рішення,
|
||
- відповідати за них,
|
||
- жити всередині цифрового міста.
|
||
|
||
---
|
||
|
||
**Документ №14 завершено.**
|
||
|
||
Готовий перейти до наступного документа:
|
||
|
||
# 👉 **Agent_Governance_Protocol_v1.md**
|
||
|
||
(правила, повноваження, модерація, роль оркестратора, ескалація, безпека)
|
||
|