From f100935d3e6367fdbb535eb8e88d9d66443b1232 Mon Sep 17 00:00:00 2001 From: Alex Date: Sat, 1 Nov 2025 20:12:24 +0300 Subject: [PATCH] =?UTF-8?q?chore:=20=D1=83=D0=B4=D0=B0=D0=BB=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D0=B5=20=D0=B4=D0=BE=D0=BA=D1=83=D0=BC=D0=B5=D0=BD=D1=82?= =?UTF-8?q?=D0=B0=D1=86=D0=B8=D0=B8=20=D0=B8=20=D1=83=D0=BF=D1=80=D0=BE?= =?UTF-8?q?=D1=89=D0=B5=D0=BD=D0=B8=D0=B5=20README?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Public_Data_Room_README.md | 68 - README.md | 131 -- docs/FAQ.md | 1195 ---------------- docs/ai-assistant.md | 386 ----- docs/application-description.md | 332 ----- docs/blockchain-for-business.md | 1289 ----------------- docs/blockchain-integration-technical.md | 1049 -------------- docs/security.md | 1309 ----------------- docs/service-terms.md | 42 - docs/setup-ai-assistant.md | 929 ------------ docs/setup-instruction.md | 195 --- docs/tables-system.md | 1639 ---------------------- legal/AGREEMENT_DISTRIBUTION_RU.md | 195 --- legal/ATTRIBUTION_REQUIREMENTS.md | 112 -- legal/AUTHORS.md | 32 - legal/CONSENT_PERSONAL_DATA_RU.md | 39 - legal/CONTRIBUTING.md | 75 - legal/COOKIE_CONSENT_RU.md | 22 - legal/COPYRIGHT_NOTICE.md | 100 -- legal/PDN_RIGHTS_AND_REVOCATION_RU.md | 23 - legal/PRIVACY_POLICY_RU.md | 49 - legal/README.md | 127 -- legal/SERVICE_ACT_TEMPLATE_RU.md | 22 - legal/SERVICE_AGREEMENT_RU.md | 52 - legal/USAGE_NOTIFICATION.md | 130 -- legal/service-terms.md | 614 -------- legal/ПРАВОВЫЕ_ДОКУМЕНТЫ_ЗАДАЧА.md | 398 ------ 27 files changed, 10554 deletions(-) delete mode 100644 Public_Data_Room_README.md delete mode 100644 docs/FAQ.md delete mode 100644 docs/ai-assistant.md delete mode 100644 docs/application-description.md delete mode 100644 docs/blockchain-for-business.md delete mode 100644 docs/blockchain-integration-technical.md delete mode 100644 docs/security.md delete mode 100644 docs/service-terms.md delete mode 100644 docs/setup-ai-assistant.md delete mode 100644 docs/setup-instruction.md delete mode 100644 docs/tables-system.md delete mode 100644 legal/AGREEMENT_DISTRIBUTION_RU.md delete mode 100644 legal/ATTRIBUTION_REQUIREMENTS.md delete mode 100644 legal/AUTHORS.md delete mode 100644 legal/CONSENT_PERSONAL_DATA_RU.md delete mode 100644 legal/CONTRIBUTING.md delete mode 100644 legal/COOKIE_CONSENT_RU.md delete mode 100644 legal/COPYRIGHT_NOTICE.md delete mode 100644 legal/PDN_RIGHTS_AND_REVOCATION_RU.md delete mode 100644 legal/PRIVACY_POLICY_RU.md delete mode 100644 legal/README.md delete mode 100644 legal/SERVICE_ACT_TEMPLATE_RU.md delete mode 100644 legal/SERVICE_AGREEMENT_RU.md delete mode 100644 legal/USAGE_NOTIFICATION.md delete mode 100644 legal/service-terms.md delete mode 100644 legal/ПРАВОВЫЕ_ДОКУМЕНТЫ_ЗАДАЧА.md diff --git a/Public_Data_Room_README.md b/Public_Data_Room_README.md deleted file mode 100644 index e9b2531..0000000 --- a/Public_Data_Room_README.md +++ /dev/null @@ -1,68 +0,0 @@ -# VC-HB3 Accelerator - О нашей миссии - -## О компании - -Мы создаем технологии, которые меняют парадигму управления активами и торговых операций в цифровую эпоху. - ---- - -## Наша миссия - -### Инвестиции в инфраструктуру L2 - -Продажи лицензированного программного обеспечения позволяют нам инвестировать в развитие L2 (Layer 2) инфраструктуры для: - -- **Легальной токенизации** всех типов активов -- **Прозрачного учета** операций отдельными регуляторами -- **Создания открытых стандартов** для защиты прав собственности - -### Помощь бизнесу и регуляторам - -Мы помогаем бизнесу и регуляторным органам: - -- **Изучать** современные технологии блокчейна и токенизации -- **Легко внедрять** решения, открыто защищающие: - - Имущество компаний и физических лиц - - Конфиденциальные права собственников - - Прозрачность и подотчетность операций - ---- - -## Венчурный онлайн-фонд - -Наш венчурный онлайн-фонд объединяет участников для: - -- **Исследований** в области цифровых активов и блокчейн-технологий -- **Создания новых международных стандартов**, меняющих парадигму: - - Торговых операций - - Бизнес-процессов - - Управления активами - ---- - -## Контакты - -- **Email:** info@hb3-accelerator.com -- **Сайт:** https://hb3-accelerator.com -- **GitHub:** https://github.com/VC-HB3-Accelerator - ---- - -## Наши проекты - -### Digital Legal Entity (DLE) - -Комплексное веб-приложение для управления бизнесом с интеграцией блокчейна: - -- Управление активами через смарт-контракты -- Токенизация бизнес-процессов -- Прозрачное корпоративное управление -- Мультичейн поддержка (Ethereum, Polygon, BSC, Arbitrum, Optimism, Avalanche, Base) - -**Подробнее:** https://github.com/VC-HB3-Accelerator/DLE - ---- - -*Copyright (c) 2024-2025 VC-HB3 Accelerator* -*Все права защищены.* - diff --git a/README.md b/README.md index 1fd8b46..25e2e63 100644 --- a/README.md +++ b/README.md @@ -13,32 +13,6 @@ curl -fsSL https://raw.githubusercontent.com/VC-HB3-Accelerator/DLE/main/setup-template.sh | bash ``` -### Ручная установка -```bash -# 1. Клонирование репозитория -git clone https://github.com/VC-HB3-Accelerator/DLE.git -cd DLE - -# 2. Импорт образов -docker load -i docker-data/images/backend.tar -docker load -i docker-data/images/frontend.tar -docker load -i docker-data/images/vector-search.tar -docker load -i docker-data/images/ollama.tar -docker load -i docker-data/images/webssh-agent.tar - -# 3. Создание и импорт томов -docker volume create digital_legal_entitydle_postgres_data -docker volume create digital_legal_entitydle_ollama_data -docker volume create digital_legal_entitydle_vector_search_data -docker volume create digital_legal_entitydle_backend_node_modules -docker volume create digital_legal_entitydle_frontend_node_modules - -docker run --rm -v digital_legal_entitydle_postgres_data:/target -v $(pwd)/docker-data/volumes:/backup alpine tar xzf /backup/postgres_data.tar.gz -C /target -docker run --rm -v digital_legal_entitydle_ollama_data:/target -v $(pwd)/docker-data/volumes:/backup alpine tar xzf /backup/ollama_data.tar.gz -C /target -docker run --rm -v digital_legal_entitydle_vector_search_data:/target -v $(pwd)/docker-data/volumes:/backup alpine tar xzf /backup/vector_search_data.tar.gz -C /target -docker run --rm -v digital_legal_entitydle_backend_node_modules:/target -v $(pwd)/docker-data/volumes:/backup alpine tar xzf /backup/backend_node_modules.tar.gz -C /target -docker run --rm -v digital_legal_entitydle_frontend_node_modules:/target -v $(pwd)/docker-data/volumes:/backup alpine tar xzf /backup/frontend_node_modules.tar.gz -C /target - # 4. Запуск приложения docker-compose up -d ``` @@ -47,117 +21,12 @@ docker-compose up -d #### Продакшн (production) - **Frontend**: http://localhost:9000 (HTTP) или https://localhost:9443 (HTTPS) -- **Backend API**: http://localhost:9000/api (через nginx proxy) - -## 🔧 Управление - -### Запуск -``` - -#### Продакшн (production) -```bash -# Пересборка образов -docker-compose build --no-cache - -# Запуск продакшн-сервисов -NODE_ENV=production docker-compose --profile production up -d - -# Проверка -docker-compose ps -curl http://localhost:9000/api/health -``` ### Остановка ```bash docker-compose-down ``` -### Полезные команды -```bash -# Просмотр логов -docker-compose logs -f backend -docker-compose logs -f frontend-nginx - -# Перезапуск сервиса -docker-compose restart backend -docker-compose restart frontend-nginx - -# Пересборка конкретного сервиса -docker-compose build --no-cache backend -docker-compose build --no-cache frontend-nginx - -# Просмотр статуса -docker-compose ps -docker ps # Все контейнеры в системе -``` - -## 📝 Лицензия - -**ПРОПРИЕТАРНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ** - -Приложение использует **бессрочную лицензионную модель** с управлением через смарт-контракт: - -### 💰 Типы лицензий - -- **Standard Support**: $1,000 USDT (1 голос в голосовании) -- **Priority Support**: $10,000 USDT (10 голосов в голосовании) - -**⚠️ Все цены указаны БЕЗ УЧЕТА НАЛОГОВ** (НДС, налог на продажу и т.д.) - -**Дополнительно: Комиссии за платежи несет покупатель:** -- Конвертация валют: 1-5% -- Банковские переводы: $10-50+ (SWIFT) или €0-3 (SEPA) -- Gas fees (крипто): $1-50+ в зависимости от сети -- Комиссии платежных систем: 2-5% - -### 💳 Методы оплаты - -- Криптовалюта (USDT) через авторизованных дилеров -- Банковские переводы в местной валюте -- Кредитные карты через платежные системы партнеров -- Прямые платежи автору - -### 📋 Авторизованные продавцы - -Лицензии продаются **только через компании с официальным разрешением автора**: -- Список авторизованных дилеров: https://hb3-accelerator.com/ -- Прямая покупка у автора: info@hb3-accelerator.com - -### 📖 Полная документация - -#### Основные документы: -- 📋 **[FAQ - Часто задаваемые вопросы](docs/FAQ.md)** - ответы на популярные вопросы -- 🔧 **[Инструкция по установке](docs/setup-instruction.md)** - пошаговая настройка приложения -- 🤖 **[Настройка AI Ассистента](docs/setup-ai-assistant.md)** - создание базы знаний и автоматизация через электронные таблицы -- 💼 **[Блокчейн для бизнеса](docs/blockchain-for-business.md)** - как блокчейн решает бизнес-задачи, токенизация активов -- 🤖 **[AI Ассистент - полное описание](docs/ai-assistant.md)** - второй пилот для команды -- 🛡️ **[Безопасность DLE](docs/security.md)** - многоуровневая защита веб-приложения и смарт-контрактов -- 📝 **[Описание приложения](docs/application-description.md)** - обзор функциональности -- 📋 **[Условия обслуживания](docs/service-terms.md)** - условия приобретения и обслуживания - -#### Юридическая документация: -- ⚖️ **[Юридическая документация](legal/README.md)** - полная правовая информация -- **Гарантии и возврат**: Программа возврата 70% в течение 5 лет при невыполнении обновлений - -### ✅ Все обновления бесплатны 5 лет для держателей лицензионных токенов (см. `legal/service-terms.md`) - -Держатели лицензии получают все обновления веб-приложения бесплатно, включая: -- Исправления ошибок -- Улучшения производительности -- Новые функции (одобренные голосованием) -- Обновления безопасности - -Copyright (c) 2024-2025 Тарабанов Александр Викторович -Все права защищены. - -### ⚠️ **ВАЖНЫЕ ОГРАНИЧЕНИЯ:** - -- ❌ **Запрещено** перепродавать, дарить или передавать третьим лицам без разрешения -- ❌ **Запрещено** модифицировать исходный код без явного разрешения -- ❌ **Запрещено** использовать в образовательных учреждениях без разрешения -- ❌ **Запрещено** развертывать как SaaS на основе приложения -- ✅ **Разрешено** использование для управления собственным бизнесом - ### 📞 **Контакты:** - **Email:** info@hb3-accelerator.com - **Сайт:** https://hb3-accelerator.com diff --git a/docs/FAQ.md b/docs/FAQ.md deleted file mode 100644 index e88e703..0000000 --- a/docs/FAQ.md +++ /dev/null @@ -1,1195 +0,0 @@ -# FAQ - Часто задаваемые вопросы по Digital Legal Entity (DLE) - -## 📋 Содержание - -1. [Общие вопросы](#общие-вопросы) -2. [Лицензирование и оплата](#лицензирование-и-оплата) -3. [Установка и развертывание](#установка-и-развертывание) -4. [Блокчейн и смарт-контракты](#блокчейн-и-смарт-контракты) -5. [Токенизация активов](#токенизация-активов) -6. [Система голосования](#система-голосования) -7. [AI Ассистент](#ai-ассистент) -8. [Техническая поддержка](#техническая-поддержка) -9. [Функциональность](#функциональность) -10. [Безопасность](#безопасность) -11. [Обновления](#обновления) -12. [Экономический эффект](#экономический-эффект) - ---- - -## Общие вопросы - -### Что такое Digital Legal Entity (DLE)? - -**DLE** - это комплексное веб-приложение для управления бизнесом с интеграцией блокчейна, включающее: - -- **CRM и управление контактами** - централизованная база клиентов с историей взаимодействий -- **AI ассистент с векторным поиском** - локальный ИИ для автоматизации бизнес-процессов -- **Омниканальную систему коммуникаций** - Telegram, Email, Web чат, SMS в едином интерфейсе -- **Блокчейн интеграцию** - мультичейн поддержка (Ethereum, Polygon, BSC, Arbitrum, Optimism, Avalanche, Base) -- **Блокчейн-управление** - через смарт-контракты и голосование токен-холдеров -- **Токенизацию активов** - превращение любых активов в цифровые токены -- **Группы и пространства для команд** - настраиваемые пространства для проектов с системой разрешений - -### Для кого предназначено DLE? - -DLE создано для **всех типов организаций**, нуждающихся в прозрачном коллективном управлении: - -- **Коммерческие организации** (ООО, АО, ИП, холдинги) -- **Некоммерческие организации** (НКО, фонды, ассоциации) -- **Государственные структуры** (муниципалитеты, ведомства) -- **Международные организации** (межправительственные, глобальные) -- **Инвестиционные фонды** и **венчурные компании** -- **Стартапы** и **малый бизнес** -- **Кооперативы** и **объединения** -- **Любые другие организации** с потребностью в коллективном управлении - -### В чем отличие от SaaS решений? - -| Параметр | DLE | Обычные SaaS | -|----------|-----|--------------| -| **Владение данными** | Полное (на вашей инфраструктуре) | Данные у провайдера | -| **Контроль** | 100% контроль | Ограниченный | -| **Оплата** | Единоразово (бессрочная лицензия) | Ежемесячная подписка | -| **Кастомизация** | Полная | Ограниченная | -| **Соответствие законам** | Под ваш регион | Зависит от провайдера | -| **AI без лимитов** | Бесплатно | $200+/месяц | -| **Блокчейн** | Встроен | Нет или доп. плата | -| **Обновления** | Бесплатно 5 лет (для держателей токенов) | Зависит от тарифа | - -### Какие технологии используются? - -- **Frontend**: Vue.js 3 + Vite + Element Plus -- **Backend**: Node.js + Express -- **База данных**: PostgreSQL + pgvector -- **AI**: Ollama (локальные LLM модели) + FAISS Vector Search (RAG) -- **Блокчейн**: Ethers.js v6, Hardhat, OpenZeppelin -- **Контейнеризация**: Docker Compose -- **Пакетный менеджер**: Yarn - ---- - -## Лицензирование и оплата - -### Сколько стоит DLE? - -**Краткая справка по ценам:** - -| Тип лицензии | Цена | Токенов управления | Голосов | -|--------------|------|-------------------|---------| -| **Standard** | $1,000 USDT | 1 токен | 1 голос | -| **Priority** | $10,000 USDT | 10 токенов | 10 голосов | - -**⚠️ Важно**: -- Все цены указаны БЕЗ УЧЕТА НАЛОГОВ -- Комиссии за платежи и конвертацию несет покупатель -- Условия обслуживания одинаковы для обеих лицензий - -### Что входит в лицензию? - -✅ **Все лицензии включают:** -- Пожизненный доступ к приложению -- Все будущие обновления бесплатно -- Техническую поддержку через портал -- AI ассистент 24/7 без лимитов -- Участие в голосовании за новые функции -- Онлайн-сессии обучения (групповые и индивидуальные) -- Полный исходный код с документацией - -**Единственное различие** - количество голосов в системе управления. - -### Есть ли подписка или ежемесячные платежи? - -**Нет!** DLE использует модель **бессрочной лицензии** (Perpetual License): -- Оплата один раз -- Доступ навсегда -- Все обновления бесплатно 5 лет для держателей лицензионных токенов (см. [legal/service-terms.md](../legal/service-terms.md)) -- Никаких скрытых платежей -- AI работает без лимитов на запросы - -### Какие есть типы лицензий? - -**Два типа лицензий** (различие только в количестве голосов): - -| Тип лицензии | Цена | Токенов | Голосов | Влияние | -|--------------|------|---------|---------|---------| -| **Standard** | $1,000 USDT | 1 токен | 1 голос | Базовое | -| **Priority** | $10,000 USDT | 10 токенов | 10 голосов | Усиленное | - -**Условия обслуживания одинаковые** для обеих лицензий. - -### Что такое токены управления? - -**Токены управления** - это ERC20 токены на блокчейне, которые дают: -- **Право голоса** за развитие продукта (1 токен = 1 голос) -- **Участие в голосовании** за новые функции -- **Влияние на приоритеты** разработки -- **Доступ к управлению** : https://hb3-accelerator.com/ - -### Можно ли использовать несколько видов деятельности? - -**Нет, одна лицензия = один вид деятельности**: -- Каждая лицензия привязана к одному виду бизнеса -- Для разных видов деятельности нужны отдельные лицензии -- Можно переопределить вид деятельности, но только один одновременно - -### Что входит в техническую поддержку? - -**Все держатели лицензий получают**: -- 🌐 **Портал поддержки**: https://hb3-accelerator.com/ -- 💬 **Чат с поддержкой** 24/7 -- 🤖 **AI ассистент** для консультаций -- 🎓 **Онлайн-сессии обучения** (групповые и индивидуальные) -- 📚 **Библиотека записей** всех сессий -- 📧 **Email поддержка** - -### Как работает система голосования? - -**Демократическое управление продуктом**: -1. **Предложения** - сообщество предлагает новые функции -2. **Голосование** - токен-холдеры голосуют (1 токен = 1 голос) -3. **Кворум** - решения принимаются при 51%+ голосов -4. **Реализация** - одобренные функции берутся в разработку - -**Веб приложение для голосования**: https://hb3-accelerator.com/ - -### Есть ли гарантия возврата денег? - -**Да, программа возврата 70%** в течение 5 лет, если: -- Накопилось свыше 51% отрицательных голосов -- Жалобы касаются отсутствия обновлений -- Голосование проведено через блокчейн -- Запрос подан в течение 5 лет с покупки - -### Включены ли налоги в цену? - -**НЕТ! Все цены указаны БЕЗ УЧЕТА НАЛОГОВ**: -- Покупатель самостоятельно уплачивает все налоги -- НДС (VAT) - 15-25% в зависимости от страны -- Налог на продажу (Sales Tax) - в США и других странах -- Налог на доход (Income Tax) - зависит от налогового статуса -- Таможенные пошлины - при импорте в определенные страны - -### Кто платит комиссии за платежи? - -**ВСЕ КОМИССИИ НЕСЕТ ПОКУПАТЕЛЬ**: -- **Конвертация валют**: 1-5% от суммы -- **Банковские переводы**: $10-50+ за операцию -- **Gas fees блокчейна**: $1-50+ в зависимости от сети -- **Комиссии платежных систем**: 2-5% от суммы - -**Пример итоговых затрат**: -- USDT напрямую: $1,000 + $15-80 = $1,015-1,080 -- SWIFT перевод: $1,000 + $25-80 = $1,025-1,080 -- Карта в EUR: €899 + €30-45 = €929-944 - -### Как можно оплатить лицензию? - -**Доступные методы оплаты**: -- 💵 **USDT** - директно на адреса авторизованных партнеров -- 💳 **Местная валюта** - эквивалент в валюте страны покупателя -- 🏦 **Банковский перевод** - через авторизованных дилеров -- 💳 **Кредитные карты** - через платежные системы партнеров - -### Где можно купить лицензию? - -**Официальные каналы**: -- 📧 **Прямо у автора**: info@hb3-accelerator.com -- 🌐 **Веб приложение**: https://hb3-accelerator.com/ -- 🤝 **Авторизованные дилеры** - компании с официальным разрешением - -## Установка и развертывание - -### Какие системные требования? - -**Минимальные требования**: -- **CPU**: 4 ядра -- **RAM**: 12 GB (4 GB приложение + 6 GB AI + 2 GB Vector Search) -- **Хранилище**: 100 GB SSD -- **ОС**: Ubuntu 20.04+, Debian 11+, CentOS 8+, любая Linux с Docker - -**Рекомендуемые**: -- **CPU**: 8+ ядер -- **RAM**: 32 GB+ -- **Хранилище**: 500 GB+ NVMe SSD -- **GPU**: NVIDIA (ускоряет AI в 5-10 раз) - -### Как развернуть DLE? - -**Простая установка через Docker**: -1. Клонировать репозиторий -2. Запустить `docker-compose up -d` -3. Открыть http://localhost:9000 -4. Подключить кошелек -5. Настроить RPC провайдеров -6. Задеплоить смарт-контракты - -### Можно ли развернуть в облаке? - -**Да, поддерживаются все варианты**: -- **Собственный сервер** - полный контроль -- **Облачные платформы** - AWS, Google Cloud, Azure -- **Локальная инфраструктура** - для соответствия регуляторным требованиям -- **Docker Compose** - развертывание одной командой - -### Как подключить крипто кошелек? - -**Пошаговая инструкция**: -1. Установите браузерный кошелек (MetaMask, WalletConnect или аналог) -2. Создайте или импортируйте аккаунт с токеном управления -3. В веб-приложении нажмите **"Подключить кошелек"** -4. Выберите тип кошелька и подтвердите подключение -5. После успешного подключения увидите адрес аккаунта в верхнем углу - -### Как настроить RPC провайдеров? - -**Настройка блокчейн-сетей**: -1. Перейдите в **Настройки** → вкладка **Безопасность** -2. Найдите раздел **"RPC провайдеры"** и нажмите **"Добавить"** -3. Заполните форму для каждой сети: - - **Название сети** (Ethereum, Polygon, BSC) - - **RPC URL** (например: `https://eth-mainnet.g.alchemy.com/v2/YOUR-API-KEY`) - - **ID сети** (Chain ID) -4. Нажмите **"Сохранить"** для каждого провайдера -5. Система автоматически проверит корректность подключения - -### Как задеплоить смарт-контракты? - -**Мультичейн деплой**: -1. Перейдите в **Настройки** → вкладка **Блокчейн** -2. Заполните форму -3. Нажмите **"Запустить деплой"** -4. Ожидайте завершения (30-120 секунд) -5. Скопируйте адрес развернутого контракта -6. Настройте аутентификацию через смарт-контракт - -### Как настроить аутентификацию через смарт-контракт? - -**Настройка доступа**: -1. Перейдите в **Настройки** → вкладка **Аутентификация** -2. Вставьте адрес смарт-контракта -3. Установите пороги: - - **Минимальное количество токенов для редактирования** (например: 100 токенов) - - **Минимальное количество токенов для просмотра** (например: 1 токен) - -### Как настроить AI и базу данных? - -**Настройка ИИ**: -1. Перейдите в **Настройки** → вкладка **ИИ** -2. Откройте подраздел **"База данных"** -3. Замените дефолтные пароли -4. Нажмите **"Сгенерировать новый ключ шифрования"** -5. **Сохраните ключ в безопасном месте** (понадобится для восстановления данных) - -### Как настроить доступ через интернет? - -**Публикация приложения**: -1. Перейдите в **Настройки** → вкладка **Сервер** -2. Выберите **WEB SSH** или подходящий сервис -3. Заполните форму для миграции на VDS с: - - **Публичным IP адресом** - - **Подключением к доменному имени** -4. Нажмите **"Опубликовать"** -5. Дождитесь завершения миграции - -**ℹ️ Требуется**: Зарегистрированное доменное имя и доступ к DNS настройкам - -### Как настроить юридические документы? - -**Заполнение юридической информации**: -1. Перейдите в **CRM** → раздел **Контент** -2. Откройте форму **"Юридическая информация компании"** -3. Заполните поля. Нажмите **"Сохранить"** - -**Работа с шаблонами**: -1. В разделе **Контент** → **"Шаблоны"** -2. Выберите необходимые документы: - - Политика конфиденциальности - - Пользовательское соглашение - - Согласие на обработку персональных данных - - Политика использования cookies -3. Нажмите **"Предварительный просмотр"** для проверки -4. Выберите действие: - - **"Опубликовать для публичного использования"** - - **"Опубликовать для внутреннего использования"** - - **"Распечатать"** (экспорт в PDF) - -**⚠️ Рекомендация**: Проконсультируйтесь с юристом перед публикацией документов - ---- - -## Функциональность - -### Что такое AI ассистент в DLE? - -**AI Ассистент** - это встроенный интеллектуальный помощник, который использует: -- 🧠 **Ollama** - локальные open-source модели AI (qwen2.5:7b) -- 🔍 **Векторный поиск** - FAISS для семантического поиска -- 📚 **RAG** (Retrieval-Augmented Generation) - поиск по базе знаний -- 💾 **Кэширование** - мгновенные ответы на частые вопросы - -**Ключевые преимущества**: -1. **🏠 100% локальный** - все данные на вашем сервере -2. **🔒 Полная конфиденциальность** - ничего не уходит в облако -3. **⚡ Молниеносные ответы** - кэширование и векторный поиск -4. **💰 Нулевые затраты на API** - нет оплаты за токены -5. **📈 Обучается на ваших данных** - персонализированные ответы -6. **🌍 Многоязычный** - поддержка русского, английского и др. -7. **🔄 24/7 доступность** - работает круглосуточно - -### Какие возможности у AI ассистента? - -**15 ключевых областей применения**: - -1. **📞 Клиентский сервис и поддержка** - автоматические ответы 24/7, анализ настроения клиентов, эскалация сложных вопросов -2. **📊 Аналитика и бизнес-интеллект** - анализ больших данных, прогнозирование продаж, сегментация клиентов -3. **💰 Финансовое планирование и учет** - автоматическая бухгалтерия, прогнозирование денежных потоков, анализ рентабельности -4. **🎯 Маркетинг и продажи** - генерация контента, персонализация сообщений, A/B тестирование, управление воронкой продаж -5. **👥 HR и управление персоналом** - скрининг резюме, собеседования с чат-ботом, планирование обучения, анализ производительности -6. **📋 Управление проектами и задачами** - автоматическое планирование проектов, отслеживание прогресса, оптимизация процессов -7. **🔍 Исследования и разработка** - анализ рынка, исследование технологий, генерация идей для новых продуктов -8. **🛡️ Безопасность и комплаенс** - мониторинг безопасности, выявление угроз, анализ соответствия требованиям -9. **📈 Операционная эффективность** - оптимизация цепочек поставок, планирование производства, автоматизация процессов -10. **🎓 Обучение и развитие** - персонализированные программы обучения, создание интерактивных курсов, оценка знаний -11. **🌐 Международная деятельность** - автоматический перевод, анализ культурных особенностей, адаптация контента -12. **🔮 Стратегическое планирование** - анализ макроэкономических трендов, сценарное планирование, оценка инвестиций -13. **📱 Мобильные и цифровые решения** - разработка мобильных приложений, создание чат-ботов, голосовые ассистенты -14. **🏭 Отраслевые решения** - специализированные решения для здравоохранения, финансов, ритейла, производства -15. **🔄 Интеграция и автоматизация** - API-интеграции, автоматизация рабочих процессов, создание единой экосистемы - -**Экономический эффект**: $507,600-519,600/год при ROI 50,760-51,960% - -### Как работает AI ассистент? - -**Философия**: AI не заменяет людей, а становится их вторым пилотом, высвобождая 85% времени для стратегии и креатива. - -**Архитектура работы**: -1. **Пользователь задает вопрос** → "Как вернуть товар?" -2. **Векторизация вопроса** → Ollama mxbai-embed-large:latest (Текст → Вектор [768 чисел]) -3. **Векторный поиск (FAISS)** → Поиск похожих вопросов в базе (Top-3 результата по семантике) -4. **Контекстный поиск (RAG)** → Извлечение ответов из базы знаний, фильтрация по тегам/продуктам -5. **Генерация ответа (LLM)** → Ollama qwen2.5:7b (Контекст + Вопрос → Ответ) -6. **Кэширование** → Сохранение в кэш на 1 час (следующий такой же вопрос < 50ms) -7. **Ответ пользователю** → "Товар можно вернуть в течение..." - -**Технологический стек**: -- **LLM модель**: Ollama qwen2.5:7b (генерация текста, диалог) -- **Embedding модель**: mxbai-embed-large (векторизация текста) -- **Векторная БД**: FAISS (быстрый семантический поиск) -- **Основная БД**: PostgreSQL (хранение базы знаний) -- **Кэш**: Node.js Map + TTL (ускорение повторных запросов) -- **Очередь**: AI Queue (обработка задач по приоритету) - -### Что такое омниканальные коммуникации? - -**Единый интерфейс для всех каналов**: -- 💬 **Telegram бот** - интеграция через Bot API -- 📧 **Email** - SMTP/IMAP, Gmail, Outlook -- 🌐 **Web чат** - виджет для сайта -- 📱 **SMS** - интеграция через провайдеров -- 📋 **Веб-формы** - конструктор форм - -**Преимущества**: -- Один контекст для клиента на всех каналах -- Автоматическая маршрутизация сообщений -- AI автоответы с обучением на ваших данных -- Аналитика по каналам и времени ответа - -### Что такое система электронных таблиц? - -**Полнофункциональная база данных** с графическим интерфейсом: -- ✅ **6 типов полей** (text, number, relation, lookup, etc.) -- ✅ **Связи между таблицами** (1:1, 1:N, N:N) -- ✅ **Lookup и подстановка** данных -- ✅ **Фильтрация и сортировка** -- ✅ **Real-time обновления** (WebSocket) -- ✅ **Интеграция с AI** (RAG для поиска) -- ✅ **Шифрование** всех данных (AES-256) - -### Что такое группы и пространства? - -**Организация работы команды**: -- Создание пространств для проектов -- Приглашение участников -- Распределение ролей и разрешений (20+ типов) -- Изолированные данные между группами -- Роли: Editor, ReadOnly, User - ---- - -## AI Ассистент - -### Какие модели AI установлены по умолчанию? - -**LLM модели**: -- **qwen2.5:7b** (рекомендуется) — для русского языка, 4.7 GB - -**Embedding модели**: -- **mxbai-embed-large:latest** (рекомендуется) — 670 MB - -### Как создать базу знаний для AI? - -**Создание таблицы FAQ**: -1. Перейдите в **Таблицы** → **"+ Создать таблицу"** -2. Заполните: - - **Название**: `FAQ - Часто задаваемые вопросы` - - **Описание**: `База знаний для AI ассистента по работе с клиентами` - -**Настройка столбцов** (обязательные): -- **Вопрос** (Текст, назначение: "Вопрос для AI") ⭐ -- **Ответ** (Текст, назначение: "Ответ AI") ⭐ -- **Продукт** (Множественный выбор, фильтр по продукту) -- **Теги** (Множественный выбор, теги пользователя) -- **Приоритет** (Число, приоритет) - -**Активация для AI**: -1. В настройках таблицы включите **"Использовать как источник для AI"** ✅ -2. Нажмите **"Сохранить"** - -### Как настроить системный промт? - -**Базовый промт**: -``` -Вы — профессиональный ассистент службы поддержки компании. - -Правила: -1. Отвечайте вежливо и профессионально -2. Используйте информацию из базы знаний -3. Если информации нет — предложите связаться с оператором -4. Отвечайте кратко и по существу -5. Всегда заканчивайте вопросом "Чем еще могу помочь?" -``` - -**Продвинутый промт** (с персонализацией): -``` -Вы — профессиональный ассистент службы поддержки компании "Название вашей компании". - -О компании: -- Мы занимаемся [краткое описание бизнеса] -- Наши ценности: качество, надежность, клиентоориентированность - -Стиль общения: -- Дружелюбный, но профессиональный -- Обращайтесь к клиенту на "Вы" -- Используйте эмодзи умеренно (1-2 на сообщение) - -Правила ответа: -1. Сначала ищите ответ в базе знаний (RAG) -2. Если нашли — отвечайте на основе найденной информации -3. Если не нашли — честно скажите и предложите помощь оператора -4. Не придумывайте информацию о ценах, сроках, условиях -5. При сложных вопросах предлагайте связаться с менеджером - -Всегда заканчивайте: "Чем еще могу помочь? 😊" -``` - -### Как настроить правила AI? - -**Создание набора правил**: -1. Нажмите **"Создать"** рядом с полем "Набор правил" -2. Заполните: - - **Название**: `Гибридный режим (RAG + генерация)` - - **Описание**: `AI сначала ищет в базе знаний, если не находит — генерирует ответ` - -**Правила (JSON)**: -```json -{ - "checkUserTags": true, - "searchRagFirst": true, - "generateIfNoRag": true, - "temperature": 0.7, - "maxTokens": 500 -} -``` - -**Параметры**: -- `checkUserTags: true` — учитывать теги пользователя при поиске -- `searchRagFirst: true` — сначала искать в базе знаний -- `generateIfNoRag: true` — генерировать ответ, если ничего не найдено -- `temperature: 0.7` — баланс между точностью и креативностью (0.0-1.0) -- `maxTokens: 500` — максимальная длина ответа - -### Как настроить RAG поиск? - -**Базовые настройки**: -- **Метод поиска**: `Гибридный поиск` (рекомендуется) -- **Максимальное количество результатов**: `5` -- **Порог релевантности**: `0.1` (от 0.01 до 1.0) - -**Извлечение ключевых слов**: -- ✅ **Включить извлечение ключевых слов** -- **Минимальная длина слова**: `3` -- **Максимальное количество ключевых слов**: `10` -- ✅ **Удалять стоп-слова** - -**Веса поиска (для гибридного)**: -- **Семантический поиск**: `70%` (точность) -- **Поиск по ключевым словам**: `30%` (скорость) - -**Дополнительные настройки**: -- ✅ **Нечеткий поиск** (для опечаток) -- ✅ **Стемминг слов** (находит разные формы слова) -- ☐ **Поиск синонимов** (пока отключен) - -### Как протестировать AI ассистента? - -**Встроенный тестер**: -1. В настройках AI ассистента найдите **"🧠 Тест RAG-функциональности"** -2. Выберите таблицу `FAQ - Часто задаваемые вопросы` -3. Введите тестовый вопрос: `Как оплатить заказ?` -4. Нажмите **"Тестировать RAG"** -5. Проверьте результат: - - **Score -300 до 0** ✅ — отличное совпадение - - **Score 0 до 300** ⚠️ — среднее совпадение - - **Score >300** ❌ — совпадение не найдено - -**Тестирование через Web Chat**: -1. Найдите виджет **"💬 Чат с AI"** на главной странице -2. Введите вопрос: `Сколько стоит доставка?` -3. Проверьте ответ AI - -### Как интегрировать с Telegram и Email? - -**Настройка Telegram бота**: -1. Создайте бота через [@BotFather](https://t.me/botfather) в Telegram -2. Скопируйте **Bot Token** -3. В настройках DLE введите токен и username бота -4. В настройках AI ассистента выберите этот Telegram бот - -**Настройка Email интеграции**: -1. Перейдите в **Настройки** → **Интеграции** → **Email** -2. Заполните IMAP настройки (для получения писем) -3. Заполните SMTP настройки (для отправки писем) -4. Нажмите **"Тест IMAP"** и **"Тест SMTP"** для проверки -5. В настройках AI ассистента выберите этот Email - -## Экономический эффект - -### Сколько можно сэкономить с DLE? - -**Сравнение с SaaS за 5 лет**: - -**Типичный стек SaaS**: -- CRM (HubSpot): $200/мес × 60 мес = $12,000 -- Чат-бот (Intercom): $150/мес × 60 мес = $9,000 -- Email (SendGrid): $100/мес × 60 мес = $6,000 -- AI (ChatGPT API): $200/мес × 60 мес = $12,000 -- **ИТОГО**: $39,000 - -**DLE**: -- Лицензия (один раз): $1,000 -- Обновления (5 лет): $0 -- AI без лимитов: $0 -- **ИТОГО**: $1,000 -- **ЭКОНОМИЯ**: $38,000 - -### Какой ROI от AI ассистента? - -**Сравнение с облачными решениями**: - -| Характеристика | DLE AI (Локальный) | ChatGPT API | Claude API | -|----------------|-------------------|-------------|------------| -| **Стоимость** | $0 | ~$0.02/запрос | ~$0.03/запрос | -| **Конфиденциальность** | ✅ 100% | ❌ Данные в OpenAI | ❌ Данные в Anthropic | -| **Скорость (кэш)** | 50ms | 500-2000ms | 500-2000ms | -| **Offline работа** | ✅ Да | ❌ Нет | ❌ Нет | -| **Настройка под бизнес** | ✅ Полная | ⚠️ Ограниченная | ⚠️ Ограниченная | -| **Лимиты API** | ❌ Нет | ✅ Есть | ✅ Есть | - -**Экономия при использовании облачных API**: -- При 10,000 запросов/месяц: ChatGPT $2,400/год, Claude $3,600/год, DLE $0/год -- При 50,000 запросов/месяц: ChatGPT $12,000/год, Claude $18,000/год, DLE $0/год -- При 100,000 запросов/месяц: ChatGPT $24,000/год, Claude $36,000/год, DLE $0/год - -**Суммарная экономия по всем направлениям**: -- Обслуживание клиентов: $57,600 -- Работа с поставщиками + AI закупщик: $64,800 -- Работа с партнерами: $43,200 -- Обучение персонала: $30,000 -- Управление персоналом: $57,600 -- Отчетность и анализ: $144,000 -- Контент-маркетинг: $86,400 -- Экономия на API токенах: $24,000-36,000 -- **ИТОГО**: $507,600-519,600/год - -**ROI**: 50,760-51,960% или 507-519x окупаемость - -### Какие дополнительные выгоды от AI ассистента? - -**Неизмеримые преимущества**: -- 📈 **Повышение качества работы** - AI работает без усталости и ошибок -- 😊 **Удовлетворенность клиентов +19%** - быстрые и точные ответы -- 👥 **Удержание сотрудников +15%** - меньше рутины, больше интересных задач -- 🚀 **Скорость принятия решений +300%** - мгновенный доступ к информации -- 💡 **Больше времени на стратегию** - AI освобождает 85% времени от рутины -- 🎯 **Меньше рутины, больше креатива** - фокус на развитии бизнеса - -### Сколько экономии на токенизации активов? - -**Традиционная сделка с недвижимостью ($1M)**: -- Комиссия риелтора: 3-5% = $30,000-50,000 -- Юридические услуги: $5,000-10,000 -- Регистрация права: $2,000-5,000 -- Время: 2-6 месяцев -- **ИТОГО**: $37,000-65,000 - -**Токенизированная сделка через DLE**: -- Gas fees: $50-200 -- Смарт-контракт (один раз): $500 -- Время: 5-10 минут -- **ИТОГО**: $550-700 - -**Экономия**: 99% затрат и 99% времени - ---- - -## Вопросы по веб-приложению - -### Как получить доступ к веб-приложению DLE? - -**Требования для доступа**: -- Наличие токенов управления DLE на вашем кошельке -- Подключение кошелька (MetaMask, WalletConnect и др.) -- Стабильное интернет-соединение - -**Процесс входа**: -1. Откройте веб-приложение: https://hb3-accelerator.com/ -2. Нажмите "Подключить кошелек" -3. Выберите ваш кошелек (MetaMask, WalletConnect) -4. Подтвердите подключение -5. Система проверит баланс токенов в смарт-контракте -6. При наличии токенов - доступ предоставляется - -**Уровни доступа**: -- **0 токенов**: Нет доступа (только страница "Нет доступа") -- **1+ токенов**: ReadOnly (просмотр данных) -- **100+ токенов**: Editor (редактирование, создание) -- **Любое количество**: Голосование (1 токен = 1 голос) - -### Какие браузеры поддерживает веб-приложение? - -**Рекомендуемые браузеры**: -- ✅ Chrome 90+ (лучшая совместимость) -- ✅ Firefox 88+ -- ✅ Safari 14+ -- ✅ Edge 90+ -- ✅ Brave (с поддержкой Web3) - -**Требования**: -- JavaScript включен -- Web3 совместимость (для подключения кошелька) -- Поддержка современных веб-стандартов - -### Как работает аутентификация в веб-приложении? - -**Sign-In with Ethereum (SIWE)**: -- Приватный ключ **никогда** не покидает ваш кошелек -- Каждый nonce используется **один раз** и истекает через 5 минут -- Подделать подпись невозможно без приватного ключа -- Полная безопасность аутентификации - -**Процесс**: -1. Генерация одноразового nonce -2. Сохранение в БД с шифрованием -3. Подпись сообщения вашим кошельком -4. Проверка подписи на сервере -5. Создание сессии при успешной проверке - -### Что делать, если веб-приложение недоступно? - -**Альтернативные способы управления**: - -1. **Через блокчейн-сканеры**: - - Etherscan (Ethereum): https://etherscan.io - - Polygonscan (Polygon): https://polygonscan.com - - BscScan (BSC): https://bscscan.com - - Arbiscan (Arbitrum): https://arbiscan.io - -2. **Функции через Etherscan**: - - Проверка баланса токенов - - Создание предложений - - Голосование за предложения - - Исполнение одобренных предложений - -3. **Преимущества**: - - Полная независимость от веб-приложения - - Невозможно подделать данные - - Доступ 24/7 из любой точки мира - -## Вопросы по условиям использования - -### Какие типы лицензий доступны? - -**Единственный тип лицензии - Бессрочная (Perpetual License)**: -- ⏳ **Срок действия**: Пожизненная (без ограничения по времени) -- 🔄 **Обновления**: БЕСПЛАТНЫ для всех держателей лицензий -- 🚫 **Отмена**: Лицензия не может быть отменена компанией -- ⚖️ **Условия обслуживания**: Одинаковые для всех лицензий - -**Варианты по количеству токенов**: -- **Standard Support**: $1,000 USDT (1 токен = 1 голос) -- **Priority Support**: $10,000 USDT (10 токенов = 10 голосов) - -### Что включено в лицензию? - -**Все держатели лицензий получают**: -- ✅ Все обновления веб-приложения (бесплатно 5 лет для держателей токенов) -- ✅ Доступ к документации и базе знаний -- ✅ Техническая поддержка через приложение -- ✅ AI ассистент 24/7 -- ✅ Все интеграции и возможности развертывания -- ✅ Участие в голосовании за новые фичи -- ✅ Ранний доступ к beta функциям -- ✅ SLA 99% uptime гарантия -- ✅ Онлайн-сессии обучения и внедрения - -### Как работает система голосования? - -**Процесс голосования**: -1. **Создание предложения**: Любой токен-холдер может создать предложение -2. **Регистрация на блокчейне**: Голосование создается в смарт-контракте -3. **Голосование токен-холдеров**: Каждый токен = 1 голос -4. **Реализация**: Если проголосовало 51%+ токенов - фича берется в разработку - -**Веб-приложение для голосования**: https://hb3-accelerator.com/ -- Создание предложений (proposals) -- Голосование за или против предложений -- Просмотр результатов голосований -- Отслеживание статуса разработки - -### Какие есть ограничения использования? - -**✅ Разрешено**: -- Использование для управления собственным бизнесом -- Развертывание на собственной инфраструктуре -- Использование выбранного вида деятельности (1 вид на лицензию) -- Резервное копирование данных -- Локальная модификация конфигурации -- Голосование за развитие новых функций -- Передача лицензии наследникам - -**❌ Запрещено**: -- Перепродажа или сублицензирование -- Использование более одного вида деятельности одной лицензией -- Reverse engineering и модификация исходного кода -- Удаление авторских прав и лицензионных уведомлений -- Совместное использование между независимыми организациями -- Использование в образовательных целях без разрешения -- Развертывание SaaS на основе приложения - -### Как работает программа возврата 70%? - -**Условия возврата**: -Вы можете потребовать возврат **70% от стоимости лицензии** в течение **5 лет** с момента покупки, если: - -1. ✋ **Порог жалоб**: Накопилось свыше **51% отрицательных голосов** -2. 📋 **Причина**: Жалобы касаются **отсутствия выпусков обновлений** -3. 🗳️ **Голосование**: Жалобы были **приняты через механизм голосования токен-холдеров на блокчейне** -4. ⏱️ **Сроки**: Запрос подан в течение **5 лет** с момента лицензирования - -**Процесс возврата**: -1. Запрос подается на hb3-accelerator.com с приложением блокчейн-доказательства -2. Подтверждение условий на смарт-контракте (51%+ голосов за возврат) -3. Возврат **70% от суммы покупки** в течение 30 дней - -### Как получить техническую поддержку? - -**Единый портал поддержки**: https://hb3-accelerator.com/ - -**Доступные каналы**: -- 🌐 Портал поддержки (все лицензии) -- 💬 Чат с support team (все лицензии) -- 🤖 AI ассистент 24/7 (все лицензии) -- 🎓 Онлайн-сессии обучения (все лицензии) -- 📚 Библиотека записей (все лицензии) -- 📧 Email поддержка (все лицензии) - -**SLA (время первого ответа)**: -- 🔴 Критическая: 4 часа -- 🟠 Высокая: 8 часов -- 🟡 Средняя: 24 часа -- 🟢 Низкая: 48 часов - -### Как работают обновления приложения? - -**Бесплатные обновления для всех держателей лицензий**: -- Исправления ошибок (Bug Fixes) -- Улучшения производительности -- Новые функции (одобренные голосованием) -- Обновления безопасности - -**Частота**: -- Security Patches: Немедленно (при обнаружении) -- Regular Updates: Еженедельно (по средам) -- Major Features: По результатам голосования - -**Платформа скачивания**: https://hb3-accelerator.com/ -- Скачивание всех выпущенных версий -- Подробные заметки о релизах -- Календарь запланированных обновлений -- Автоматические уведомления о новых версиях - -### Как работает система безопасности веб-приложения? - -**Многоуровневая защита**: -- 🔐 **TLS 1.3** для всех соединений -- 🔐 **AES-256** для критичных данных в хранилище -- 🔐 **Rate limiting** и защита от DDoS -- 🔐 **CSRF токены** для всех форм -- 🔐 **XSS защита** (DOMPurify) -- 🔐 **Helmet.js** для защиты заголовков - -**Аутентификация через SIWE**: -- Приватный ключ никогда не покидает кошелек -- Каждый nonce используется один раз и истекает через 5 минут -- Подделать подпись невозможно без приватного ключа - -## Вопросы по установке и настройке - -### Какие системные требования для установки DLE? - -**Минимальные требования**: -- **ОС**: Linux, Windows, macOS -- **RAM**: 8 GB (рекомендуется 16 GB) -- **Диск**: 50 GB свободного места -- **Docker**: версия 20.10+ -- **Docker Compose**: версия 2.0+ - -**Рекомендуемые требования**: -- **RAM**: 32 GB -- **Диск**: 100 GB SSD -- **CPU**: 8+ ядер -- **Интернет**: стабильное соединение - -### Как установить DLE? - -**Автоматическая установка (рекомендуется)**: -```bash -curl -fsSL https://raw.githubusercontent.com/VC-HB3-Accelerator/DLE/main/setup-template.sh | bash -``` - -**Ручная установка**: -1. Клонирование репозитория -2. Импорт Docker образов -3. Создание и импорт томов -4. Запуск приложения - -**Доступ к приложению**: -- Frontend: http://localhost:9000 (HTTP) или https://localhost:9443 (HTTPS) -- Backend API: http://localhost:9000/api - -### Как настроить блокчейн интеграцию? - -**Требования**: -- Криптовалютный кошелек (MetaMask, WalletConnect) -- RPC провайдер (Infura, Alchemy, или собственный узел) -- USDT для деплоя смарт-контракта - -**Процесс настройки**: -1. Подключение кошелька -2. Настройка RPC провайдера -3. Деплой смарт-контракта DLE - -## Вопросы по функциональности - -### Какие основные функции доступны в DLE? - -**Блокчейн функции**: -- Создание и управление смарт-контрактами -- Система голосования токен-холдеров -- Токенизация активов -- Мультивалютная казна -- Автоматические выплаты - -**AI ассистент**: -- Локальный AI без лимитов -- База знаний на основе электронных таблиц -- Анализ данных и прогнозирование -- Автоматизация бизнес-процессов -- Омниканальные коммуникации - -**Электронные таблицы**: -- Полнофункциональная база данных -- Связи между таблицами (Relation) -- Автоматические подстановки (Lookup) -- Реальное время обновления -- Интеграция с AI - -### Как работает система электронных таблиц? - -**Типы полей**: -- **Text** - текстовые данные -- **Number** - числовые значения -- **Date** - даты и время -- **Boolean** - да/нет -- **Relation** - связи с другими таблицами -- **Lookup** - автоматические подстановки -- **File** - файлы и изображения - -**Функциональность**: -- CRUD операции (создание, чтение, обновление, удаление) -- Фильтрация и сортировка -- Поиск по всем полям -- Экспорт в различные форматы -- Интеграция с AI для анализа - -## Вопросы по безопасности - -### Как защищены данные в DLE? - -**Шифрование**: -- **TLS 1.3** для всех соединений -- **AES-256** для данных в хранилище -- **Управление ключами** под контролем пользователя - -**Блокчейн защита**: -- Токены нельзя украсть (заблокированы переводы) -- Все операции записаны на блокчейне -- Невозможно подделать историю -- Независимость от веб-приложения - -**Веб-приложение защита**: -- Rate limiting от DDoS -- CSRF и XSS защита -- Clean logs (очистка чувствительных данных) -- Helmet.js для заголовков - -### Что делать при подозрении на взлом? - -**Защита токенов**: -- Токены DLE заблокированы от переводов -- Единственный способ перевода - через голосование -- Даже при взломе кошелька токены защищены - -### Как работает система аудита? - -**Прозрачность на блокчейне**: -- Все действия записаны навсегда -- Невозможно скрыть или удалить -- Публичная проверка через Etherscan - -**Мониторинг в реальном времени**: -- Отслеживание всех событий смарт-контракта -- Автоматические алерты при подозрительной активности -- Уведомления токен-холдеров - ---- - -## Вопросы по экономике и ROI - -### Сколько денег сэкономит DLE моему бизнесу? - -**Для бизнеса с оборотом $1M/год**: -- **Банковские комиссии**: экономия $25,750/год (96%) -- **Корпоративное управление**: экономия $42,000/год (78%) -- **Привлечение инвестиций**: экономия $49,400 на сделку (99%) -- **AI без лимитов**: экономия $36,000/год (локальный vs облачный) -- **ИТОГО**: $117,150/год + дополнительная прибыль ~$1,000,000 - -**ROI**: 1,117% на инвестиции в DLE -**Окупаемость**: < 1 месяца - -### Какие скрытые расходы есть у DLE? - -**Единоразовые расходы**: -- Лицензия: $1,000-10,000 USDT -- Деплой смарт-контракта: $100-500 (gas fees) -- Настройка: $0 (самостоятельно) - -**Ежемесячные расходы**: -- Хостинг: $50-200/месяц -- RPC провайдер: $0-100/месяц (можно бесплатно) -- Gas fees: $10-100/месяц (зависит от активности) - -**Сравнение с традиционными решениями**: -- Традиционный бизнес: $54,000+/год -- SaaS решения: $12,000-60,000/год -- DLE: $1,200-3,000/год - -### Как рассчитать экономию для моего бизнеса? - -**Формула расчета**: -``` -Экономия = (Оборот × 0.03) + (Сотрудники × 2000) + (Инвестиции × 0.1) - -Где: -- 0.03 = 3% банковских комиссий -- 2000 = $2,000/год на сотрудника (управление) -- 0.1 = 10% от суммы привлеченных инвестиций -``` - -**Пример для малого бизнеса** (оборот $100,000, 3 сотрудника): -- Банковские комиссии: $3,000 -- Управление: $6,000 -- **ИТОГО**: $9,000/год экономии -- **ROI**: 900% на лицензию $1,000 - ---- - -## Вопросы по практическому применению - -### С чего начать внедрение DLE? - -**Первый месяц**: -1. **Неделя 1**: Установка и настройка -2. **Неделя 2**: Создание базы знаний для AI -3. **Неделя 3**: Настройка электронных таблиц -4. **Неделя 4**: Тестирование и обучение команды - -**Приоритетные задачи**: -1. Настроить CRM для клиентов -2. Создать базу знаний для поддержки -3. Настроить автоматизацию закупок -4. Подключить омниканальные коммуникации - -### Как DLE поможет с клиентами? - -**Автоматизация поддержки**: -- AI отвечает на 80% вопросов клиентов -- Работает 24/7 без выходных -- Анализирует настроение клиентов -- Создает тикеты автоматически - -**Управление клиентской базой**: -- Полная история взаимодействий -- Автоматические напоминания -- Сегментация клиентов -- Прогнозирование потребностей - -**Каналы коммуникации**: -- Telegram бот -- Email поддержка -- Web чат на сайте - -### Как DLE поможет с поставщиками? - -**База поставщиков**: -- Каталог всех поставщиков -- Сравнение цен и условий -- Рейтинг и отзывы -- История сотрудничества - -**AI закупщик**: -- Поиск лучших предложений -- Анализ условий договоров -- Контроль сроков поставок -- Автоматические уведомления - -**Экономия**: -- Снижение закупочных цен на 5-15% -- Ускорение процесса выбора поставщиков -- Снижение рисков - -### Как DLE поможет с финансами? - -**Автоматизация учета**: -- Ведение бухгалтерии -- Формирование отчетов -- Контроль расходов -- Планирование бюджета - -**Блокчейн-финансы**: -- Мгновенные платежи 24/7 -- Комиссии в 50-100 раз ниже -- Нет географических ограничений -- Прозрачность всех операций - -**Аналитика**: -- Прогнозирование денежных потоков -- Анализ рентабельности -- Выявление финансовых рисков -- KPI и метрики - ---- - -## Вопросы по интеграции с существующими системами - -### Как перенести данные из существующих систем? - -**Пошаговый процесс**: -1. **Экспорт данных** из текущей системы -2. **Очистка и форматирование** данных -3. **Импорт в DLE** через веб-интерфейс -4. **Проверка корректности** данных -5. **Настройка связей** между таблицами - -**Поддерживаемые форматы**: -- Excel (.xlsx, .xls) -- CSV -- JSON - -## Вопросы по масштабированию - -### Как DLE масштабируется с ростом бизнеса? - -**Горизонтальное масштабирование**: -- Добавление новых серверов -- Распределение нагрузки -- Кластеризация баз данных -- CDN для статики - -**Вертикальное масштабирование**: -- Увеличение RAM и CPU -- SSD диски -- Оптимизация запросов -- Кэширование - -**Ограничения**: -- **Пользователи**: до 10,000 одновременных -- **Данные**: до 1TB на таблицу -- **API запросы**: до 10,000/минуту -- **Файлы**: до 100GB общий размер - -### Сколько пользователей может работать одновременно? - -**Рекомендуемые лимиты**: -- **Малый бизнес** (до 50 пользователей): стандартная конфигурация -- **Средний бизнес** (до 500 пользователей): увеличенная RAM (32GB+) -- **Крупный бизнес** (до 5,000 пользователей): кластерная конфигурация -- **Корпорации** (10,000+ пользователей): распределенная архитектура - -**Производительность**: -- **Отклик интерфейса**: < 200ms -- **Загрузка страниц**: < 2 секунды -- **API запросы**: < 500ms -- **Поиск**: < 1 секунды - -### Как DLE справляется с большими объемами данных? - -**Оптимизации**: -- **Индексирование**: автоматические индексы для поиска -- **Пагинация**: загрузка данных по частям -- **Кэширование**: Redis для часто используемых данных -- **Сжатие**: сжатие данных в базе - -**Рекомендации**: -- Используйте фильтры для больших таблиц -- Настройте архивирование старых данных -- Регулярно очищайте неиспользуемые файлы -- Мониторьте производительность - ---- - -## Дополнительные ресурсы - -### Документация -- 📋 [FAQ](./FAQ.md) - этот документ -- 🔧 [Установка](./setup-instruction.md) - пошаговая настройка -- 🤖 [AI Ассистент](./ai-assistant.md) - полные возможности ИИ -- 🔗 [Блокчейн для бизнеса](./blockchain-for-business.md) - практические кейсы -- 📝 [Описание приложения](./application-description.md) - обзор функций - -### Обучение -- 🎓 **Онлайн-сессии** (групповые и индивидуальные) -- 🗳️ **Портал голосования**: https://hb3-accelerator.com/ - -### Поддержка -- 💬 **Чат с поддержкой**: https://hb3-accelerator.com/ -- 📧 **Email**: info@hb3-accelerator.com -- 🌐 **Сайт**: https://hb3-accelerator.com - ---- - -**© 2024-2025 Тарабанов Александр Викторович. Все права защищены.** - -**Последнее обновление**: October 2025 diff --git a/docs/ai-assistant.md b/docs/ai-assistant.md deleted file mode 100644 index a7606bd..0000000 --- a/docs/ai-assistant.md +++ /dev/null @@ -1,386 +0,0 @@ -# AI Ассистент DLE - Полные возможности для бизнеса - -> **Философия**: AI не заменяет людей, а становится их вторым пилотом, высвобождая 85% времени для стратегии и креатива. - -## 📋 Содержание - -1. [Введение](#введение) -2. [Технология и архитектура](#технология-и-архитектура) -3. [Полные возможности AI ассистента](#полные-возможности-ai-ассистента) -4. [Экономический эффект](#экономический-эффект) -5. [Настройка и интеграция](#настройка-и-интеграция) - ---- - -## Введение - -### Что такое AI Ассистент в DLE? - -**AI Ассистент** - это встроенный интеллектуальный помощник, который использует: -- 🧠 **Ollama** - локальные open-source модели AI (qwen2.5:7b) -- 🔍 **Векторный поиск** - FAISS для семантического поиска -- 📚 **RAG** (Retrieval-Augmented Generation) - поиск по базе знаний -- 💾 **Кэширование** - мгновенные ответы на частые вопросы - -### Ключевые преимущества - -1. **🏠 100% локальный** - все данные на вашем сервере -2. **🔒 Полная конфиденциальность** - ничего не уходит в облако -3. **⚡ Молниеносные ответы** - кэширование и векторный поиск -4. **💰 Нулевые затраты на API** - нет оплаты за токены -5. **📈 Обучается на ваших данных** - персонализированные ответы -6. **🌍 Многоязычный** - поддержка русского, английского и др. -7. **🔄 24/7 доступность** - работает круглосуточно - ---- - -## Технология и архитектура - -### Как это работает? - -``` -┌─────────────────────────────────────────────────────────┐ -│ Архитектура AI Ассистента │ -└─────────────────────────────────────────────────────────┘ - -┌─────────────────────────────────────────┐ -│ 1. Пользователь задает вопрос │ -│ "Как вернуть товар?" │ -└────────────────┬────────────────────────┘ - ↓ -┌─────────────────────────────────────────┐ -│ 2. Векторизация вопроса │ -│ Ollama mxbai-embed-large:latest │ -│ Текст → Вектор [768 чисел] │ -└────────────────┬────────────────────────┘ - ↓ -┌─────────────────────────────────────────┐ -│ 3. Векторный поиск (FAISS) │ -│ Поиск похожих вопросов в базе │ -│ Top-3 результата по семантике │ -└────────────────┬────────────────────────┘ - ↓ -┌─────────────────────────────────────────┐ -│ 4. Контекстный поиск (RAG) │ -│ Извлечение ответов из базы знаний │ -│ Фильтрация по тегам/продуктам │ -└────────────────┬────────────────────────┘ - ↓ -┌─────────────────────────────────────────┐ -│ 5. Генерация ответа (LLM) │ -│ Ollama qwen2.5:7b │ -│ Контекст + Вопрос → Ответ │ -└────────────────┬────────────────────────┘ - ↓ -┌─────────────────────────────────────────┐ -│ 6. Кэширование │ -│ Сохранение в кэш на 1 час │ -│ Следующий такой же вопрос < 50ms │ -└────────────────┬────────────────────────┘ - ↓ -┌─────────────────────────────────────────┐ -│ 7. Ответ пользователю │ -│ "Товар можно вернуть в течение..." │ -└─────────────────────────────────────────┘ -``` - -### Технологический стек - -| Компонент | Технология | Назначение | -|-----------|------------|------------| -| **LLM модель** | Ollama qwen2.5:7b | Генерация текста, диалог | -| **Embedding модель** | mxbai-embed-large | Векторизация текста | -| **Векторная БД** | FAISS | Быстрый семантический поиск | -| **Основная БД** | PostgreSQL | Хранение базы знаний | -| **Кэш** | Node.js Map + TTL | Ускорение повторных запросов | -| **Очередь** | AI Queue | Обработка задач по приоритету | - ---- - -## Полные возможности AI ассистента - -### 1. 📞 Клиентский сервис и поддержка - -**Автоматические ответы на типовые вопросы:** -- Мгновенные ответы 24/7 через Telegram, Email, Web чат -- Автоматическая диагностика проблем по номеру заказа -- Создание тикетов в CRM с приоритизацией -- База знаний с векторным поиском -- Многоязычная поддержка клиентов из разных стран -- Анализ настроения клиентов в реальном времени -- Эскалация сложных вопросов к живым операторам -- Персонализированные рекомендации на основе истории покупок - -**Интеграция с мессенджерами:** -- Telegram бот с AI-ассистентом -- Email поддержка с автоматическим анализом -- Web чат на сайте с умным виджетом -- SMS рассылки и уведомления -- Веб-формы обратной связи - -### 2. 📊 Аналитика и бизнес-интеллект - -**Автоматический анализ данных:** -- Анализ больших данных и выявление трендов -- Прогнозирование продаж и спроса на товары/услуги -- Сегментация клиентов по поведению и предпочтениям -- Анализ эффективности маркетинговых кампаний -- Выявление аномалий в финансовых показателях -- Создание интерактивных дашбордов с ключевыми метриками -- Сравнительный анализ с конкурентами -- Бенчмаркинг и отраслевые сравнения - -### 3. 💰 Финансовое планирование и учет - -**Автоматизация финансовых процессов:** -- Автоматическое ведение бухгалтерии и формирование отчетов -- Прогнозирование денежных потоков и планирование бюджета -- Анализ рентабельности продуктов и услуг -- Выявление финансовых рисков и рекомендации по их снижению -- Автоматическое создание инвойсов и отслеживание платежей -- Оптимизация налогового планирования -- Мониторинг KPI и финансовых показателей -- Консолидированная отчетность по всем подразделениям - -### 4. 🎯 Маркетинг и продажи - -**Контент-маркетинг:** -- Генерация контента для социальных сетей, блогов, email-рассылок -- Персонализация маркетинговых сообщений для каждого клиента -- A/B тестирование различных вариантов рекламы -- Анализ эффективности каналов привлечения клиентов -- Автоматическое создание email-кампаний -- SEO-оптимизация контента и мета-тегов -- Управление репутацией в интернете - -**Продажи:** -- Автоматическое создание коммерческих предложений -- Анализ клиентской базы и выявление возможностей -- Персонализированные рекомендации по продуктам -- Автоматическое отслеживание воронки продаж -- Генерация скриптов для холодных звонков - -### 5. 👥 HR и управление персоналом - -**Подбор и управление персоналом:** -- Автоматический скрининг резюме и первичный отбор кандидатов -- Проведение собеседований с помощью чат-бота -- Анализ производительности сотрудников -- Планирование обучения и развития персонала -- Автоматическое создание должностных инструкций -- Анализ удовлетворенности сотрудников -- Планирование отпусков и смен -- Мониторинг настроения команды - -**Обучение персонала:** -- Персонализированные программы обучения для сотрудников -- Создание интерактивных курсов и материалов -- Адаптивное обучение под индивидуальные потребности -- Оценка знаний и навыков персонала -- Рекомендации по развитию карьеры -- Создание базы знаний и FAQ - -### 6. 📋 Управление проектами и задачами - -**Автоматизация проектной работы:** -- Автоматическое планирование проектов и распределение ресурсов -- Отслеживание прогресса и выявление задержек -- Оптимизация рабочих процессов и устранение узких мест -- Автоматическое создание отчетов по проектам -- Управление рисками и планирование резервов -- Координация работы распределенных команд -- Анализ эффективности методологий управления - -### 7. 🔍 Исследования и разработка - -**Аналитика и исследования:** -- Анализ рынка и конкурентной среды -- Исследование новых технологий и трендов -- Генерация идей для новых продуктов/услуг -- Анализ патентов и интеллектуальной собственности -- Техническая документация и спецификации -- Анализ обратной связи клиентов для улучшения продуктов - -### 8. 🛡️ Безопасность и комплаенс - -**Мониторинг безопасности:** -- Мониторинг безопасности IT-систем -- Выявление подозрительной активности и угроз -- Автоматическое обновление политик безопасности -- Анализ соответствия регулятивным требованиям -- Управление доступом и правами пользователей -- Аудит логов и расследование инцидентов - -### 9. 📈 Операционная эффективность - -**Оптимизация процессов:** -- Оптимизация цепочек поставок и логистики -- Планирование производства и управление запасами -- Автоматизация рутинных процессов -- Анализ качества продукции и услуг -- Управление активами и техническое обслуживание -- Оптимизация энергопотребления и ресурсов - -### 10. 🎓 Обучение и развитие - -**Корпоративное обучение:** -- Персонализированные программы обучения для сотрудников -- Создание интерактивных курсов и материалов -- Адаптивное обучение под индивидуальные потребности -- Оценка знаний и навыков персонала -- Рекомендации по развитию карьеры -- Создание базы знаний и FAQ - -### 11. 🌐 Международная деятельность - -**Глобальные возможности:** -- Автоматический перевод документов и коммуникаций -- Анализ культурных особенностей целевых рынков -- Адаптация контента под локальные требования -- Мониторинг изменений в международном законодательстве -- Управление валютными рисками -- Координация работы с зарубежными партнерами - -### 12. 🔮 Стратегическое планирование - -**Долгосрочное планирование:** -- Анализ макроэкономических трендов и их влияния на бизнес -- Сценарное планирование для различных ситуаций -- Анализ возможностей для слияний и поглощений -- Оценка инвестиционных проектов -- Планирование выхода на новые рынки -- Разработка долгосрочных стратегий развития - -### 13. 📱 Мобильные и цифровые решения - -**Цифровая трансформация:** -- Разработка мобильных приложений с ИИ-функциями -- Создание чат-ботов для различных платформ -- Голосовые ассистенты для бизнес-процессов -- Интеграция с IoT устройствами -- Автоматизация социальных сетей -- Создание виртуальных ассистентов - -### 14. 🏭 Отраслевые решения - -**Специализированные решения:** -- **Здравоохранение**: диагностика, планирование лечения, управление пациентами -- **Финансы**: кредитный скоринг, управление рисками, торговые алгоритмы -- **Ритейл**: персонализация, управление запасами, ценообразование -- **Производство**: контроль качества, предиктивное обслуживание, оптимизация -- **Недвижимость**: оценка, анализ рынка, управление объектами -- **Образование**: адаптивное обучение, оценка знаний, планирование - -### 15. 🔄 Интеграция и автоматизация - -**Системная интеграция:** -- API-интеграции с внешними системами -- Автоматизация рабочих процессов (RPA) -- Синхронизация данных между различными платформами -- Создание единой экосистемы для всех бизнес-процессов -- Миграция данных и систем -- Мониторинг производительности интегрированных решений - ---- - -## Экономический эффект - -### Сравнение с облачными решениями - -| Характеристика | DLE AI (Локальный) | ChatGPT API | Claude API | -|----------------|-------------------|-------------|------------| -| **Стоимость** | $0 | ~$0.02/запрос | ~$0.03/запрос | -| **Конфиденциальность** | ✅ 100% | ❌ Данные в OpenAI | ❌ Данные в Anthropic | -| **Скорость (кэш)** | 50ms | 500-2000ms | 500-2000ms | -| **Offline работа** | ✅ Да | ❌ Нет | ❌ Нет | -| **Настройка под бизнес** | ✅ Полная | ⚠️ Ограниченная | ⚠️ Ограниченная | -| **Лимиты API** | ❌ Нет | ✅ Есть | ✅ Есть | - -### Экономия при использовании облачных API - -**При 10,000 запросов в месяц:** -- ChatGPT API: $200/месяц = **$2,400/год** -- Claude API: $300/месяц = **$3,600/год** -- DLE AI: **$0/год** ✅ - -**При 50,000 запросов в месяц:** -- ChatGPT API: $1,000/месяц = **$12,000/год** -- Claude API: $1,500/месяц = **$18,000/год** -- DLE AI: **$0/год** ✅ - -**При 100,000 запросов в месяц:** -- ChatGPT API: $2,000/месяц = **$24,000/год** -- Claude API: $3,000/месяц = **$36,000/год** -- DLE AI: **$0/год** ✅ - -### Суммарная экономия по всем направлениям - -| Направление | Экономия в год | ROI | -|-------------|----------------|-----| -| **Обслуживание клиентов** | $57,600 | 5,760% | -| **Работа с поставщиками + AI закупщик** | $64,800 | 6,480% | -| **Работа с партнерами** | $43,200 | 4,320% | -| **Обучение персонала** | $30,000 | 3,000% | -| **Управление персоналом** | $57,600 | 5,760% | -| **Отчетность и анализ** | $144,000 | 14,400% | -| **Контент-маркетинг** | $86,400 | 8,640% | -| **Экономия на API токенах** | $24,000-36,000 | 2,400-3,600% | -| **ИТОГО:** | **$507,600-519,600** | **50,760-51,960%** | - -**Стоимость внедрения DLE**: $1,000 (единоразово, Standard Support) -**ROI**: 50,760-51,960% или **507-519x окупаемость** - -### Дополнительные выгоды - -**Неизмеримые преимущества:** -- 📈 Повышение качества работы -- 😊 Удовлетворенность клиентов +19% -- 👥 Удержание сотрудников +15% -- 🚀 Скорость принятия решений +300% -- 💡 Больше времени на стратегию -- 🎯 Меньше рутины, больше креатива - ---- - -## Настройка и интеграция - -**Что нужно для запуска:** -- ✅ Установить DLE (см. [Инструкцию по установке](./setup-instruction.md)) -- ✅ Запустить Ollama и установить модели -- ✅ Создать базу знаний (FAQ, поставщики, HR) -- ✅ Настроить AI ассистента под ваш бизнес -- ✅ Интегрировать с Telegram/Email (опционально) - -**Время настройки:** -- 🚀 **Быстрый старт**: 20-30 минут (базовый FAQ) -- ⚙️ **Полная настройка**: 1-2 часа (все возможности) - -**Результат:** -- 🤖 Работающий AI ассистент 24/7 -- 📚 База знаний для ответов клиентам -- 🔍 Векторный поиск по вашим данным -- 💰 Экономия до $519,600/год - -### Следующие шаги - -1. 📖 [Установите DLE](./setup-instruction.md) -2. 🤖 [Настройте AI ассистента](./setup-ai-assistant.md) -3. 📚 Загрузите базу знаний -4. 🚀 Начните экономить время и деньги! - ---- - -## Поддержка - -**Нужна помощь с настройкой AI?** - -📧 **Email**: info@hb3-accelerator.com -💬 **Чат**: https://hb3-accelerator.com -📚 **Документация**: [FAQ](./FAQ.md) -🎓 **Обучение**: Онлайн-сессии для токен-холдеров - ---- - -**© 2024-2025 Тарабанов Александр Викторович. Все права защищены.** - -**Последнее обновление**: October 2025 \ No newline at end of file diff --git a/docs/application-description.md b/docs/application-description.md deleted file mode 100644 index d92a819..0000000 --- a/docs/application-description.md +++ /dev/null @@ -1,332 +0,0 @@ -# Digital Legal Entity (DLE) - Веб-приложение для управления бизнесом - -> **Полный контроль. Нулевая абонентская плата. AI экономит $507,600-519,600/год.** - ---- - -## 📋 Содержание - -1. [Для кого это приложение](#для-кого-это-приложение) -2. [Ключевые преимущества](#ключевые-преимущества) -3. [Основные возможности](#основные-возможности) -4. [Экономический эффект](#экономический-эффект) -5. [Технические детали](#технические-детали) -6. [Условия приобретения](#условия-приобретения) -7. [Дополнительная документация](#дополнительная-документация) - ---- - -## 🎯 Для кого это приложение - -DLE создано для **всех типов организаций**, нуждающихся в прозрачном коллективном управлении: - -- **Коммерческие организации** (ООО, АО, ИП, холдинги) -- **Некоммерческие организации** (НКО, фонды, ассоциации) -- **Государственные структуры** (муниципалитеты, ведомства) -- **Инвестиционные фонды** и **венчурные компании** -- **Стартапы** и **малый бизнес** -- **Кооперативы** и **объединения** - ---- - -## 💎 Ключевые преимущества - -### Почему DLE, а не SaaS? - -| Параметр | DLE | Обычные SaaS | -|----------|-----|--------------| -| **💰 Стоимость** | $1,000 один раз | $200-500/месяц | -| **📊 Владение данными** | 100% ваши | У провайдера | -| **🔧 Кастомизация** | Полная | Ограниченная | -| **🌍 Соответствие законам** | Под ваш регион | Зависит от провайдера | -| **🛡️ Соответствие регуляторам** | GDPR, CCPA, 152-ФЗ | Ограниченное | -| **🤖 AI без лимитов** | Бесплатно | $200+/месяц | -| **🔗 Блокчейн** | Встроен | Нет или доп. плата | -| **⚡ Обновления** | Бесплатно 5 лет (для держателей токенов) | Зависит от тарифа | - -### 🎁 Что вы получаете - -✅ **Бессрочная лицензия** - платите один раз, используйте вечно -✅ **Бесплатные обновления** - все улучшения без доп. платы -✅ **Полный исходный код** - полная прозрачность -✅ **AI на своем сервере** - 100% конфиденциальность -✅ **Блокчейн-защита** - активы невозможно украсть -✅ **Токенизация активов** - экономия 99% на сделках -✅ **Право голоса** - влияние на развитие продукта -✅ **Готовый пакет документов для регулятора** - политика конфиденциальности, согласие на обработку ПД, пользовательское соглашение, политика cookies -✅ **Гарантия возврата 70%** - в течение 5 лет при отсутствии обновлений - ---- - -## 🚀 Основные возможности - -### 1. CRM и управление контактами - -**Полноценная система управления клиентами**: -- Централизованная база контактов с историей взаимодействий -- Группировка по тегам и категориям -- Система задач и напоминаний -- Импорт из CSV, Excel, внешних CRM -- Экспорт в различных форматах -- Конструктор документов и шаблонов - -### 2. AI ассистент с векторным поиском - -**Локальный AI на вашем сервере**: -- Ollama + Vector Search (RAG) -- Модель qwen2.5:7b (или любая другая) -- 100% конфиденциальность (данные не уходят наружу) -- Нулевые затраты на API токены - -**Ключевые возможности**: -- **📞 Обслуживание клиентов** - ответы 24/7, анализ настроения клиентов -- **📊 Аналитика и бизнес-интеллект** - анализ данных, прогнозирование продаж -- **💰 Финансовое планирование** - автоматическая бухгалтерия, анализ рентабельности -- **🎯 Маркетинг и продажи** - генерация контента, персонализация сообщений -- **👥 HR и управление персоналом** - скрининг резюме, планирование обучения -- **📋 Управление проектами** - автоматическое планирование, отслеживание прогресса -- **🔍 Исследования и разработка** - анализ рынка, генерация идей -- **🛡️ Безопасность и комплаенс** - мониторинг безопасности, анализ соответствия -- **📈 Операционная эффективность** - оптимизация процессов, автоматизация -- **🎓 Обучение и развитие** - персонализированные программы обучения -- **🌐 Международная деятельность** - автоматический перевод, адаптация контента -- **🔮 Стратегическое планирование** - анализ трендов, сценарное планирование -- **📱 Мобильные решения** - разработка приложений, создание чат-ботов -- **🏭 Отраслевые решения** - специализированные решения для разных отраслей -- **🔄 Интеграция и автоматизация** - API-интеграции, автоматизация процессов - -**Экономический эффект**: $507,600-519,600/год при ROI 50,760-51,960% - -> 💡 **Подробная информация**: См. [AI Ассистент - полное описание](./ai-assistant.md) - там детально описаны все возможности, кейсы применения, архитектура работы и расчеты экономии. - -### 3. Омниканальные коммуникации - -**Единый интерфейс для всех каналов**: -- 💬 Telegram бот, 📧 Email, 🌐 Web чат, 📱 SMS, 📋 Веб-формы -- Один контекст для клиента на всех каналах -- AI автоответы с обучением на ваших данных -- Аналитика по каналам и времени ответа - -### 4. Блокчейн-управление и токенизация - -**Смарт-контракты для бизнеса**: -- Токенизация любых активов (недвижимость, IP, акции) -- Управление через голосование токен-холдеров -- Мультичейн поддержка (7+ сетей: Ethereum, Polygon, BSC, Arbitrum, Optimism, Avalanche, Base) -- Прозрачность всех операций на блокчейне - -> 💡 **Подробная информация**: См. [Блокчейн для бизнеса](./blockchain-for-business.md) - практические кейсы использования и [Техническая документация по блокчейну](./blockchain-integration-technical.md) - для разработчиков. - -### 5. Группы и пространства для команд - -- Настраиваемые пространства для проектов -- Детальная система разрешений (20+ типов) -- Роли: Editor, ReadOnly, User -- Интеграция с CRM и коммуникациями - -### 6. Внутренние инструменты - -- Электронные таблицы (аналог Excel) -- Система аналитики и отчетов -- Мониторинг метрик -- WebSSH для управления серверами - -### 7. Безопасность и защита - -**Многоуровневая защита DLE**: -- **Сетевая безопасность** - TLS 1.3, HTTPS, DDoS защита -- **Аутентификация** - SIWE (вход через кошелек), сессии в БД -- **Авторизация** - детальные разрешения (20+ типов), токен-гейтинг -- **Защита данных** - AES-256 шифрование, защита от SQL-инъекций -- **Блокчейн-защита** - токены нельзя украсть без голосования -- **Мониторинг** - логирование, алерты, audit trail - -**Соответствие требованиям регуляторов**: -- **GDPR** - соответствие европейским требованиям по защите персональных данных -- **CCPA** - соответствие калифорнийским требованиям -- **Российское законодательство** - соответствие 152-ФЗ "О персональных данных" -- **Локальное хранение** - все данные остаются на вашем сервере -- **Прозрачность** - полный контроль над обработкой персональных данных - -> 💡 **Подробная информация**: См. [Безопасность DLE](./security.md) - там детально описаны все уровни защиты, сценарии атак, рекомендации по безопасности и соответствие регуляторным требованиям. - -## 💰 Экономический эффект - -### Сравнение с SaaS за 5 лет - -**Типичный стек SaaS**: -``` -CRM (HubSpot): $200/мес × 60 мес = $12,000 -Чат-бот (Intercom): $150/мес × 60 мес = $9,000 -Email (SendGrid): $100/мес × 60 мес = $6,000 -AI (ChatGPT API): $200/мес × 60 мес = $12,000 - ───────────────────────────── - ИТОГО: $39,000 -``` - -**DLE**: -``` -Лицензия (один раз): $1,000 -Обновления (5 лет): $0 -AI без лимитов: $0 - ───────────────────────────── - ИТОГО: $1,000 - -ЭКОНОМИЯ: $38,000 -``` - -### ROI от AI ассистента - -**Сравнение с облачными решениями**: - -| Характеристика | DLE AI (Локальный) | ChatGPT API | Claude API | -|----------------|-------------------|-------------|------------| -| **Стоимость** | $0 | ~$0.02/запрос | ~$0.03/запрос | -| **Конфиденциальность** | ✅ 100% | ❌ Данные в OpenAI | ❌ Данные в Anthropic | -| **Скорость (кэш)** | 50ms | 500-2000ms | 500-2000ms | -| **Offline работа** | ✅ Да | ❌ Нет | ❌ Нет | -| **Настройка под бизнес** | ✅ Полная | ⚠️ Ограниченная | ⚠️ Ограниченная | -| **Лимиты API** | ❌ Нет | ✅ Есть | ✅ Есть | - -**Суммарная экономия по всем направлениям**: -- Обслуживание клиентов: $57,600 -- Работа с поставщиками + AI закупщик: $64,800 -- Работа с партнерами: $43,200 -- Обучение персонала: $30,000 -- Управление персоналом: $57,600 -- Отчетность и анализ: $144,000 -- Контент-маркетинг: $86,400 -- Экономия на API токенах: $24,000-36,000 -- **ИТОГО**: $507,600-519,600/год - -**Инвестиция**: $1,000 -**ROI**: 50,760-51,960% или 507-519x окупаемость ✅ - -### Экономия на токенизации активов - -**Традиционная сделка с недвижимостью ($1M)**: -- Комиссия риелтора: 3-5% = $30,000-50,000 -- Юридические услуги: $5,000-10,000 -- Регистрация права: $2,000-5,000 -- Время: 2-6 месяцев -- **Итого**: $37,000-65,000 - -**Токенизированная сделка через DLE**: -- Gas fees: $50-200 -- Смарт-контракт (один раз): $500 -- Время: 5-10 минут -- **Итого**: $550-700 - -**Экономия**: 99% затрат и 99% времени ✅ - ---- - -## 🔧 Технические детали - -### Архитектура - -**Современный технологический стек**: -- **Frontend**: Vue.js 3 + Vite + Element Plus -- **Backend**: Node.js + Express -- **База данных**: PostgreSQL + pgvector -- **AI**: Ollama (qwen2.5:7b) + FAISS Vector Search -- **Блокчейн**: Ethers.js v6 + Hardhat -- **Контейнеризация**: Docker Compose - -### Принципы проектирования - -✅ **Микросервисная архитектура** - легко масштабировать -✅ **Полный контроль** - вы владеете приложением и данными -✅ **Модульность** - добавляйте новые функции через модули -✅ **Безопасность** - многоуровневая защита (TLS, AES-256, CSRF) -✅ **API-first** - REST + WebSocket для интеграций - -### Развертывание - -**Гибкие варианты установки**: -- **На своем сервере** - полный контроль -- **В облаке** - AWS, Google Cloud, Azure -- **На локальной инфраструктуре** - соответствие регуляторным требованиям -- **Docker Compose** - развертывание одной командой - -**Минимальные требования**: -- **CPU**: 4 ядра -- **RAM**: 12 GB (4 GB приложение + 6 GB AI + 2 GB Vector Search) -- **Хранилище**: 100 GB SSD -- **ОС**: Ubuntu 20.04+, Debian 11+, CentOS 8+, любая Linux с Docker - -> 💡 **Подробная информация**: См. [Инструкция по установке](./setup-instruction.md) - пошаговая настройка и [Настройка AI ассистента](./setup-ai-assistant.md) - специализированная установка. - ---- - -## 💳 Условия приобретения - -> 💡 **Подробная информация**: См. [Условия обслуживания](./service-terms.md) - там детально описаны лицензионная модель, тарифы, гарантии и процесс приобретения. - -### Краткий обзор - -**Бессрочная лицензия (Perpetual License)**: -- 💰 **Платите один раз** - используйте вечно -- 📄 **Полный исходный код** с документацией -- 🔄 **Бесплатные обновления** 5 лет для держателей лицензионных токенов (см. [legal/service-terms.md](../legal/service-terms.md)) -- 🗳️ **Право голоса** за развитие продукта - -**Тарифы**: -| Пакет | Цена | Голоса | Поддержка | -|-------|------|--------|-----------| -| **Standard Support** | $1,000 USDT | 1 голос | чат 24/7 | -| **Priority Support** | $10,000 USDT | 10 голосов | чат 24/7 | - -**Что включено**: -✅ Бессрочная лицензия на использование -✅ Исходный код с полной документацией -✅ Бесплатные обновления 5 лет для держателей токенов -✅ Техническая поддержка -✅ Токены управления на блокчейне -✅ Готовый пакет документов для регулятора -✅ Гарантия возврата 70% в течение 5 лет - -**Как приобрести**: -1. Свяжитесь с нами: info@hb3-accelerator.com -2. Получите реквизиты для оплаты (USDT) -3. Оплатите лицензию -4. Получите доступ к коду и токены DLE - ---- - -## 📚 Дополнительная документация - -### 🎯 Быстрый старт -- 📋 **[FAQ](./FAQ.md)** - ответы на 50+ вопросов (11 разделов) -- 🔧 **[Установка](./setup-instruction.md)** - пошаговая настройка за 15 минут -- 🤖 **[Настройка AI](./setup-ai-assistant.md)** - запуск AI ассистента - -### 💼 Бизнес и экономика -- 💰 **[Блокчейн для бизнеса](./blockchain-for-business.md)** - токенизация активов, экономия 99% на сделках -- 🤖 **[AI Ассистент](./ai-assistant.md)** - экономия $507,600-519,600/год, философия "AI+Человек" -- 📊 **[Система таблиц](./tables-system.md)** - управление данными и документами - -### 🔧 Техническая документация -- 🔗 **[Блокчейн интеграция](./blockchain-integration-technical.md)** - смарт-контракты, API, примеры кода -- 🛡️ **[Безопасность](./security.md)** - многоуровневая защита, соответствие GDPR/CCPA/152-ФЗ -- ⚖️ **[Условия обслуживания](./service-terms.md)** - лицензирование, поддержка, гарантии - -### 📖 Общая информация -- 📖 **[Основной README](../README.md)** - полный список всех документов -- ⚖️ **[Юридическая документация](../legal/README.md)** - правовая информация - -### 📞 Поддержка и контакты - -**Основные контакты**: -- 📧 **Email**: info@hb3-accelerator.com -- 🌐 **Сайт**: https://hb3-accelerator.com -- 💬 **Чат поддержки**: https://hb3-accelerator.com/ -- 🐙 **GitHub**: https://github.com/VC-HB3-Accelerator ---- - -**© 2024-2025 Тарабанов Александр Викторович. Все права защищены.** - -**Digital Legal Entity (DLE)** - революция в управлении бизнесом через блокчейн и AI. - -**Версия документа**: 2.0.0 -**Последнее обновление**: October 2025 \ No newline at end of file diff --git a/docs/blockchain-for-business.md b/docs/blockchain-for-business.md deleted file mode 100644 index 0cb56be..0000000 --- a/docs/blockchain-for-business.md +++ /dev/null @@ -1,1289 +0,0 @@ -# Блокчейн-интеграция для бизнеса: Решение реальных проблем - -## 📋 Содержание - -1. [Введение: Зачем бизнесу блокчейн?](#введение-зачем-бизнесу-блокчейн) -2. [Смарт-контракт как универсальный идентификатор](#смарт-контракт-как-универсальный-идентификатор) -3. [Токенизация активов](#токенизация-активов) -4. [Решение проблем управления](#решение-проблем-управления) -5. [Финансовые операции без банков](#финансовые-операции-без-банков) -6. [Прозрачность и доверие](#прозрачность-и-доверие) -7. [Автоматизация и снижение издержек](#автоматизация-и-снижение-издержек) -8. [Практические кейсы](#практические-кейсы) -9. [Экономический эффект](#экономический-эффект) - ---- - -## Введение: Зачем бизнесу блокчейн? - -### Проблемы традиционного бизнеса - -Современный бизнес сталкивается с множеством проблем: - -| Проблема | Последствия | Издержки | -|----------|-------------|----------| -| 🏦 **Множество банковских счетов** | Сложность учета, комиссии | 2-5% оборота | -| 📄 **Бюрократия** | Медленные решения, бумажная волокита | 20-30% времени | -| 🤝 **Непрозрачное управление** | Конфликты акционеров, коррупция | До 40% стоимости | -| 💰 **Неликвидные активы** | Невозможно быстро продать/разделить | Потеря возможностей | -| 🌍 **Географические ограничения** | Сложности с международными партнерами | Упущенная прибыль | -| ⏰ **Медленные транзакции** | 3-7 дней на банковские переводы | Заморозка капитала | - -### Решение: Digital Legal Entity на блокчейне - -DLE превращает вашу компанию в **цифровую организацию** с блокчейн-идентичностью, где: -- ✅ Один адрес смарт-контракта = вся идентификация компании -- ✅ Любые активы токенизированы и легко управляемы -- ✅ Прозрачное управление через голосование -- ✅ Мгновенные финансовые операции без посредников -- ✅ Глобальная доступность 24/7 - ---- - -## Смарт-контракт как универсальный идентификатор - -### Концепция: Один адрес для всего - -В традиционном бизнесе у компании множество идентификаторов: -``` -Традиционная компания: -├── ИНН/ОГРН (налоговый номер) -├── Банковский счет №1 (руб) -├── Банковский счет №2 (USD) -├── Банковский счет №3 (EUR) -├── Email: info@company.com -├── Телефон: +7-xxx-xxx-xx-xx -├── Юридический адрес -├── Реквизиты для договоров -└── Множество учетных систем -``` - -**С DLE на блокчейне:** -``` -Digital Legal Entity: -└── 0x742d35Cc6634C0532925a3b844Bc9377F91cAB6C - ↑ - Этот ОДИН адрес смарт-контракта заменяет ВСЁ: - ✅ Налоговый идентификатор - ✅ Банковский счет (мультивалютный) - ✅ Email/телефон (получение платежей и сообщений) - ✅ Юридическая идентичность - ✅ Адрес для коммуникаций - ✅ Система учета активов -``` - -### Как это работает в реальности? - -#### 1. Налоговый идентификатор - -**Традиционно:** -- ИНН (Россия): 10 цифр -- EIN (США): 9 цифр -- VAT ID (ЕС): 8-12 символов -- Разные в каждой юрисдикции - -**С DLE:** -- Адрес контракта: `0x742d35Cc6634C0532925a3b844Bc9377F91cAB6C` -- **Один и тот же** во всех странах и блокчейнах -- Привязка к традиционным номерам хранится в смарт-контракте: - ```solidity - struct DLEInfo { - uint256 jurisdiction; // 643 = Россия, 840 = США - string[] okvedCodes; // Коды ОКВЭД (виды деятельности) - uint256 kpp; // КПП для РФ - string location; // Местоположение - } - ``` - -**Преимущества:** -- ✅ Не нужно регистрироваться в каждой стране -- ✅ Мгновенная верификация через блокчейн -- ✅ Невозможно подделать или украсть идентификатор - -#### 2. Банковский счет (мультивалютный) - -**Традиционно:** -- Отдельный счет для каждой валюты -- Комиссии за открытие: $50-500 -- Ежемесячное обслуживание: $10-100 -- Конвертация: 1-5% комиссии -- Переводы: 3-7 дней + $25-50 - -**С DLE:** -- Адрес контракта принимает любые токены: - - USDT, USDC (стейблкоины = доллары) - - Нативные монеты (ETH, MATIC, BNB) - - Любые ERC20 токены - - Токенизированные активы - -**Пример транзакции:** -``` -Клиент отправляет оплату → 0x742d35... - ↓ - Получено за 30 секунд - Комиссия: $0.10-5 - Видно всем участникам -``` - -**Преимущества:** -- ✅ Один адрес для всех валют -- ✅ Комиссия в 50-100 раз ниже -- ✅ Моментальные транзакции -- ✅ Работает 24/7, включая выходные -- ✅ Нет блокировок и заморозок - -#### 3. Email и телефон для компании - -**Традиционно:** -- Email: info@company.com (можно взломать, потерять домен) -- Телефон: +7-xxx-xxx (можно перехватить SIM) -- Разные каналы для разных целей - -**С DLE:** -- **Адрес контракта** = адрес для коммуникаций -- Подписи криптографическими ключами (невозможно подделать) -- Встроенная омниканальная система: - ``` - 0x742d35Cc6634C0532925a3b844Bc9377F91cAB6C - ↓ - ┌───────────┴───────────┬───────────┬──────────┐ - │ Блокчейн-сообщения │ Telegram │ Email │ Web - │ (криптографически │ (бот) │ (SMTP) │ (форма) - │ подписанные) │ │ │ - └───────────────────────┴───────────┴──────────┘ - ``` - -**Преимущества:** -- ✅ Невозможно взломать (приватный ключ = доступ) -- ✅ Полная история коммуникаций на блокчейне -- ✅ Автоматическая верификация отправителя -- ✅ Интеграция всех каналов в одном месте - ---- - -## Токенизация активов - -### Что такое токенизация? - -**Токенизация** - это превращение любого актива в цифровой токен на блокчейне, который можно: -- 🔄 Быстро купить/продать -- 📊 Разделить на доли (дробное владение) -- 💱 Обменять на другие активы -- 📈 Отслеживать стоимость в реальном времени -- 🌍 Передавать по всему миру мгновенно - -### Типы активов для токенизации - -#### 1. 🏢 Недвижимость - -**Традиционная проблема:** -- Неликвидность (продажа 3-12 месяцев) -- Высокие комиссии (3-6% от стоимости) -- Невозможно разделить (нельзя продать 10% квартиры) -- Бюрократия (десятки документов, нотариусы) - -**Решение через токенизацию:** -``` -Офисное здание = 10,000,000 токенов DLE -├── 1 токен = 0.00001% здания -├── Цена токена: $100 -├── Минимальная покупка: 1 токен ($100) -└── Продажа: 30 секунд на блокчейне -``` - -**Преимущества:** -- ✅ Любой может купить долю от $100 -- ✅ Продажа за 30 секунд вместо 6 месяцев -- ✅ Комиссия 0.1% вместо 5% -- ✅ Автоматическое распределение арендных платежей -- ✅ Прозрачная история владения - -**Пример:** -``` -Вы владеете офисом за 10 млн руб. -↓ Токенизация -Выпускаете 100,000 токенов по 100 руб. -↓ Продаете 30% (30,000 токенов) -Получили 3 млн руб. за 1 день -↓ Аренда 500,000 руб/месяц -Автоматически распределяется: -├── 70% (350,000 руб) → вам -└── 30% (150,000 руб) → новым владельцам токенов -``` - -#### 2. 📈 Акции и доли в бизнесе - -**Традиционная проблема:** -- IPO стоит миллионы и занимает годы -- Доли в ООО не продаются (нужен нотариус, ИФНС) -- Учет акционеров - дорого и сложно -- Дивиденды выплачиваются вручную - -**Решение через DLE:** -``` -Ваша компания = токены DLE -├── 1,000,000 токенов = 100% компании -├── Вы: 700,000 токенов (70%) -├── Партнер: 200,000 токенов (20%) -└── Инвесторы: 100,000 токенов (10%) -``` - -**Преимущества:** -- ✅ "IPO" за 1 день вместо 2 лет -- ✅ Стоимость: $100-1000 вместо $500,000+ -- ✅ Автоматическая выплата дивидендов -- ✅ Мгновенная продажа долей -- ✅ Прозрачный учет владельцев - -**Кейс:** -``` -Стартап ищет инвестиции: - -Традиционно: -├── Поиск инвестора: 6-12 месяцев -├── Юристы и документы: $10,000-50,000 -├── Регистрация изменений: 1-2 месяца -└── ИТОГО: $50,000 + год времени - -С DLE: -├── Выпустить токены: 1 день -├── Продать на DEX: сразу -├── Стоимость: $100 (gas fees) -└── ИТОГО: $100 + 1 день -``` - -#### 3. 🎨 Интеллектуальная собственность - -**Что можно токенизировать:** -- Патенты -- Авторские права (музыка, книги, видео) -- Товарные знаки -- Франшизы -- Лицензии на ПО - -**Пример: Токенизация музыкального альбома** -``` -Альбом исполнителя = 1,000,000 токенов -├── Исполнитель оставляет: 500,000 (50%) -├── Продает фанатам: 500,000 токенов по $1 -└── Доход от стриминга автоматически делится: - ├── 50% → исполнитель - └── 50% → держатели токенов -``` - -**Преимущества:** -- ✅ Фанаты инвестируют в любимого артиста -- ✅ Автоматические роялти -- ✅ Прозрачность доходов -- ✅ Вторичный рынок (токены можно перепродать) - -#### 4. 📦 Товары и инвентарь - -**Проблема:** Товары на складе "мертвый" капитал - -**Решение:** -``` -100 тонн пшеницы = 100,000 токенов -├── 1 токен = 1 кг пшеницы -├── Цена токена: текущая биржевая + 5% -└── Можно продать/купить в любой момент -``` - -**Преимущества:** -- ✅ Ликвидность складских запасов -- ✅ Хеджирование рисков (продать часть заранее) -- ✅ Привлечение финансирования под товары -- ✅ Прозрачная цепочка поставок - -#### 5. 💎 Драгоценности и предметы искусства - -**Кейс: Токенизация бриллианта** -``` -Бриллиант 5 карат = 5,000 токенов -├── 1 токен = 0.001 карата -├── Цена: $100,000 / 5,000 = $20 за токен -├── Физический бриллиант в сейфе (подтверждено сертификатом) -└── Владельцы токенов = совладельцы бриллианта -``` - -**Преимущества:** -- ✅ Доступ к инвестициям от $20 -- ✅ Ликвидность (продажа за минуты) -- ✅ Диверсификация (купить доли в разных камнях) -- ✅ Прозрачное хранение и страхование - -### Как работает токенизация в DLE? - -#### Модель Treasury (Казна) - -``` -┌─────────────────────────────────────────────────┐ -│ DLE Smart Contract │ -│ Адрес: 0x742d35... │ -├─────────────────────────────────────────────────┤ -│ АКТИВЫ (Treasury): │ -│ ├── 10 BTC │ -│ ├── 100,000 USDT │ -│ ├── Токенизированная недвижимость: 3 объекта │ -│ ├── Акции компаний: 10 эмитентов │ -│ └── Интеллектуальная собственность: 5 патентов │ -├─────────────────────────────────────────────────┤ -│ УПРАВЛЕНИЕ: │ -│ ├── Токен-холдеры голосуют за распределение │ -│ ├── 51%+ = решение принято │ -│ └── Автоматическое исполнение смарт-контрактом │ -└─────────────────────────────────────────────────┘ -``` - -**Процесс:** -1. **Компания покупает актив** (недвижимость, оборудование, etc.) -2. **Актив помещается в Treasury Module** смарт-контракта -3. **Токен-холдеры владеют долями** в соответствии с количеством токенов -4. **Доходы от активов** автоматически распределяются пропорционально - ---- - -## Решение проблем управления - -### Традиционные проблемы корпоративного управления - -#### 1. Непрозрачность решений - -**Проблема в классических компаниях:** -``` -Совет директоров: -├── Закрытые заседания -├── Нет записи решений (или потеряны) -├── Невозможно проверить, кто как голосовал -├── Конфликты интересов скрыты -└── Акционеры не знают, что происходит -``` - -**Решение в DLE:** -``` -Каждое предложение (Proposal): -├── ID: #42 -├── Описание: "Купить новый офис за 5 млн" -├── Инициатор: 0xABC...123 -├── Голоса "За": 5,234,567 токенов (62%) -├── Голоса "Против": 3,123,456 токенов (38%) -├── Кто как голосовал: публично на блокчейне -├── Дата голосования: 2025-10-25 -└── Результат: Одобрено ✅ -``` - -**Преимущества:** -- ✅ **Полная прозрачность** - каждый акционер видит всё -- ✅ **Неизменяемая история** - нельзя подделать результаты -- ✅ **Автоматический подсчет** - нет манипуляций -- ✅ **Доказуемость** - любой может проверить на блокчейне - -#### 2. Медленное принятие решений - -**Традиционная схема:** -``` -Предложение изменения → - Подготовка документов (2 недели) → - Согласование с юристами (1 неделя) → - Созыв собрания акционеров (1 месяц) → - Голосование (1 день) → - Оформление протокола (1 неделя) → - Регистрация (2 недели) → - ИТОГО: 3 месяца -``` - -**С DLE на блокчейне:** -``` -Предложение изменения → - Создание Proposal (5 минут) → - Голосование (1-7 дней) → - Автоматическое исполнение (30 секунд) → - ИТОГО: 1-7 дней -``` - -**Экономия:** 90-95% времени! - -#### 3. Высокие издержки на управление - -**Традиционные расходы на корпоративное управление:** -``` -Ежегодные расходы на управление ООО/АО: -├── Бухгалтер: $12,000-36,000/год -├── Юрист: $10,000-50,000/год -├── Нотариус (сделки): $500-5,000/год -├── Реестр акционеров: $2,000-10,000/год -├── Аудит: $5,000-50,000/год -├── Собрания акционеров (организация): $2,000-10,000/год -└── ИТОГО: $31,500-161,000/год -``` - -**С DLE:** -``` -Ежегодные расходы: -├── Gas fees для транзакций: $100-1,000/год -├── RPC провайдеры: $0-500/год (можно бесплатно) -├── Хостинг приложения: $100-500/год -└── ИТОГО: $200-2,000/год -``` - -**Экономия:** 90-99% расходов! - -#### 4. Коррупция и конфликты интересов - -**Традиционная проблема:** -- Директор покупает услуги у своей компании по завышенной цене -- Невозможно отследить -- Сложно доказать -- Долгие судебные разбирательства - -**Решение DLE:** -``` -Предложение: "Купить оборудование у Компании X за $100,000" -↓ -Все токен-холдеры видят: -├── Кто инициировал: 0xABC...123 (Иван Иванов) -├── Владелец Компании X: 0xABC...123 (ТОТ ЖЕ ЧЕЛОВЕК!) -├── Конфликт интересов: ОБНАРУЖЕН ⚠️ -└── Токен-холдеры голосуют "Против" -``` - -**Преимущества:** -- ✅ Автоматическое выявление конфликтов -- ✅ Прозрачность владения -- ✅ Невозможно скрыть связи -- ✅ Коллективное принятие решений - -### Иерархическое управление (DLE владеет другими DLE) - -**Концепция:** Одна компания владеет акциями других компаний - -``` -┌─────────────────────────────────────────┐ -│ Холдинг DLE-A (Материнская компания) │ -│ 1,000,000 токенов │ -└──────────────┬──────────────────────────┘ - │ Владеет токенами: - ┌───────┼───────┬─────────────┐ - ↓ ↓ ↓ ↓ - ┌───────┐ ┌───────┐ ┌───────┐ ┌───────┐ - │DLE-B │ │DLE-C │ │DLE-D │ │DLE-E │ - │70% │ │51% │ │100% │ │25% │ - │Ритейл │ │Произв.│ │IT │ │Старт. │ - └───────┘ └───────┘ └───────┘ └───────┘ -``` - -**Возможности:** -1. **DLE-A голосует в дочерних компаниях** автоматически -2. **Консолидированное управление** всем холдингом -3. **Прозрачная структура владения** (видно всем) -4. **Автоматические дивиденды** снизу вверх - -**Пример:** -``` -DLE-D заработала 100,000 USDT прибыли -↓ -Голосование в DLE-D: "Выплатить дивиденды" -↓ -100% токенов у DLE-A → 100,000 USDT идут в DLE-A -↓ -Автоматически распределяются между акционерами DLE-A -``` - ---- - -## Финансовые операции без банков - -### Проблемы банковской системы для бизнеса - -| Проблема | Последствия | Ваши потери | -|----------|-------------|-------------| -| 🏦 **Высокие комиссии** | 2-5% за транзакции | $20,000 на $1M оборота | -| ⏰ **Медленные переводы** | 3-7 дней | Заморозка капитала | -| 🌍 **SWIFT комиссии** | $25-50 за перевод | $300-600/месяц | -| 💱 **Конвертация валют** | 3-7% спред | $30,000-70,000/год | -| 🚫 **Блокировки счетов** | Остановка бизнеса | Миллионы убытков | -| 📋 **Комплаенс** | Запросы документов | Время сотрудников | -| 🌐 **Ограничения по странам** | Нет доступа к рынкам | Упущенная прибыль | - -### Решение: Криптовалютные операции через DLE - -#### 1. Мгновенные платежи 24/7 - -**Сравнение:** -``` -Банковский перевод (международный): -├── Время: 3-7 рабочих дней -├── Комиссия: $25-50 + 2-5% конвертации -├── Работает: Пн-Пт, 9:00-18:00 -└── Может быть заблокирован - -Крипто-перевод (через DLE): -├── Время: 30 секунд - 5 минут -├── Комиссия: $0.10-5 -├── Работает: 24/7/365 -└── Невозможно заблокировать -``` - -**Реальный кейс:** -``` -Вы продаете товар в Китай за $100,000 - -Традиционно: -├── SWIFT перевод: 5 дней -├── Комиссия банка: $50 -├── Конвертация USD→CNY: 3% = $3,000 -├── Комиссия китайского банка: $30 -└── ИТОГО: $3,080 комиссий + 5 дней ожидания - -С DLE (USDT): -├── Перевод на блокчейне: 30 секунд -├── Gas fee: $2 -├── Конвертация: 0% (USDT = USD) -└── ИТОГО: $2 комиссия + 30 секунд -``` - -**Экономия:** $3,078 (99.9%) на каждой транзакции! - -#### 2. Мультивалютная казна - -**Один адрес DLE хранит все валюты:** -``` -Treasury DLE: 0x742d35Cc6634C0532925a3b844Bc9377F91cAB6C -├── Стейблкоины (= фиатные валюты): -│ ├── USDT: 500,000 (= $500,000) -│ ├── USDC: 300,000 (= $300,000) -│ ├── EURC: 200,000 (= €200,000) -│ └── XSGD: 100,000 (= S$100,000) -├── Криптовалюты: -│ ├── ETH: 100 ($200,000) -│ ├── BTC: 5 ($250,000) -│ └── MATIC: 1,000,000 ($800,000) -└── Токенизированные активы: - ├── Недвижимость: $5,000,000 - └── Акции компаний: $2,000,000 -``` - -**Преимущества:** -- ✅ Нет отдельных счетов -- ✅ Мгновенная конвертация (через DEX) -- ✅ Прозрачный баланс для всех акционеров -- ✅ Автоматический учет - -#### 3. Автоматические выплаты зарплат и дивидендов - -**Традиционная схема выплаты дивидендов:** -``` -1. Собрание акционеров: решение о дивидендах -2. Бухгалтер считает суммы для каждого -3. Формирование платежных поручений -4. Отправка в банк -5. Банк обрабатывает: 3-7 дней -6. Налоги удерживаются -7. Выплата акционерам - -ИТОГО: 2-4 недели + ошибки + комиссии -``` - -**С DLE:** -```javascript -// Одна транзакция для выплаты дивидендов ВСЕМ акционерам -function distributeDividends(uint256 amount) { - // Смарт-контракт автоматически: - // 1. Берет USDT из казны - // 2. Вычисляет долю каждого токен-холдера - // 3. Отправляет пропорционально токенам - // 4. Всё за 30 секунд! -} -``` - -**Пример:** -``` -Прибыль компании: 1,000,000 USDT -Токен-холдеры: -├── Алиса: 600,000 токенов (60%) → 600,000 USDT -├── Боб: 300,000 токенов (30%) → 300,000 USDT -└── Кэрол: 100,000 токенов (10%) → 100,000 USDT - -Одна транзакция → Все получили за 30 секунд -Комиссия: $5 вместо $50-500 -``` - -#### 4. Глобальные платежи без ограничений - -**Проблемы традиционных платежей:** -- 🚫 Санкции (невозможно отправить деньги в некоторые страны) -- 📋 Комплаенс (нужны документы для каждого перевода) -- 💸 Лимиты (ограничения на сумму) -- ⏰ Задержки (банки проверяют каждую транзакцию) - -**С криптовалютами:** -- ✅ Нет географических ограничений -- ✅ Нет санкций на уровне протокола -- ✅ Нет лимитов на суммы -- ✅ Мгновенные платежи - -**Важно:** Вы всё равно обязаны соблюдать местные законы и платить налоги! - ---- - -## Прозрачность и доверие - -### Проблема доверия в бизнесе - -**Типичные ситуации недоверия:** - -1. **Инвесторы → Учредители** - - "Куда ушли наши деньги?" - - "Почему нет прибыли?" - - "Где отчет о расходах?" - -2. **Партнеры → Друг другу** - - "Ты действительно вложил обещанную сумму?" - - "Кто сколько получает дивидендов?" - - "Почему я не участвую в решениях?" - -3. **Клиенты → Компания** - - "Вы действительно владеете этим активом?" - - "Мои деньги в безопасности?" - - "Есть ли у вас лицензия?" - -### Решение: Блокчейн как источник истины - -#### Прозрачность финансов - -**Каждый токен-холдер видит в реальном времени:** - -``` -Treasury (Казна компании): -├── Активы: -│ ├── 500,000 USDT -│ ├── 10 BTC -│ ├── Недвижимость: 3 объекта -│ └── Акции: 10 компаний -├── Обязательства: -│ ├── Кредит: 100,000 USDT -│ └── Зарплатный фонд: 50,000 USDT/месяц -└── История операций: - ├── 2025-10-20: Получено 200,000 USDT от клиента - ├── 2025-10-21: Выплачено 50,000 USDT зарплат - └── 2025-10-22: Куплено 2 BTC за 100,000 USDT -``` - -**Невозможно:** -- ❌ Скрыть расходы -- ❌ Вывести деньги втихую -- ❌ Подделать баланс -- ❌ Скрыть убытки - -#### Прозрачность решений - -**Каждое решение записано навсегда:** - -``` -Proposal #15: "Купить новый офис за 5 млн" -├── Инициатор: Иван Петров (0xABC...123) -├── Дата создания: 2025-10-15 -├── Срок голосования: 7 дней -├── Голоса: -│ ├── "За": 62% (6,200,000 токенов) -│ │ └── Владельцы: [список адресов] -│ └── "Против": 38% (3,800,000 токенов) -│ └── Владельцы: [список адресов] -├── Статус: ОДОБРЕНО ✅ -└── Исполнено: 2025-10-22 (автоматически) -``` - -**Преимущества:** -- ✅ Нельзя сказать "Я не голосовал за это!" -- ✅ Видно, кто инициировал решение -- ✅ Прозрачна мотивация (связи, интересы) -- ✅ Невозможно переписать историю - -#### Прозрачность владения - -**Все знают, кто чем владеет:** - -``` -Владельцы токенов DLE: -├── 0xABC...123 (Иван Петров): 600,000 токенов (60%) -├── 0xDEF...456 (Компания X): 300,000 токенов (30%) -└── 0xGHI...789 (Фонд Y): 100,000 токенов (10%) -``` - -**Автоматические проверки:** -- ⚠️ Конфликт интересов: обнаружен -- ⚠️ Связанные стороны: найдены -- ⚠️ Концентрация владения: критическая - -### Репутация на блокчейне - -**Каждая компания (DLE) имеет:** -- ✅ Неизменяемую историю операций -- ✅ Рейтинг от партнеров -- ✅ Публичные финансовые показатели -- ✅ Подтвержденные активы - -**Это как:** -- 📊 Кредитная история (но прозрачная) -- ⭐ Рейтинг на маркетплейсе (но невозможно накрутить) -- 📜 Аудит (но постоянный и бесплатный) - ---- - -## Автоматизация и снижение издержек - -### Устранение посредников - -**Кого блокчейн убирает из процесса:** - -``` -Традиционная транзакция: -Компания A → Банк A → SWIFT → Банк B → Компания B - ↓ ↓ ↓ ↓ ↓ - 3-5% 0.5-1% $25-50 0.5-1% 3-5% - ИТОГО: 7-12% комиссий + 3-7 дней - -Блокчейн-транзакция: -Компания A ──────────────────────→ Компания B - $0.10-5, 30 секунд -``` - -**Экономия на $1,000,000 оборота:** -- Традиционно: $70,000-120,000 комиссий -- Блокчейн: $100-500 комиссий -- **Экономия: $69,500-119,500 (99%)** - -### Автоматизация процессов - -#### 1. Корпоративное управление - -**Было (вручную):** -``` -Шаги для принятия решения: -1. Подготовка предложения: 2-5 дней -2. Согласование с юристами: 3-7 дней -3. Рассылка акционерам: 1 день -4. Созыв собрания: 30 дней (по закону) -5. Проведение голосования: 1 день -6. Подсчет голосов: 1-2 дня -7. Оформление протокола: 3-5 дней -8. Регистрация решения: 14-30 дней - -ИТОГО: 55-85 дней -Стоимость: $2,000-10,000 -``` - -**Стало (автоматически):** -``` -1. Создание Proposal: 5 минут -2. Голосование: 1-7 дней (настраивается) -3. Автоматическое исполнение: 30 секунд - -ИТОГО: 1-7 дней -Стоимость: $2-5 (gas fees) -``` - -#### 2. Выплата дивидендов - -**Было (вручную):** -``` -1. Определение суммы дивидендов: 1 день -2. Расчет доли каждого акционера: 2-3 дня -3. Подготовка платежных поручений: 2 дня -4. Отправка в банк: 1 день -5. Обработка банком: 3-7 дней -6. Получение акционерами: 1-3 дня - -ИТОГО: 10-17 дней -Стоимость: $500-2,000 -Ошибки: 5-10% транзакций -``` - -**Стало (автоматически):** -``` -function distributeDividends() { - // Одна транзакция → все получили -} - -ИТОГО: 30 секунд -Стоимость: $5-20 -Ошибки: 0% (математика смарт-контракта) -``` - -#### 3. Аудит и отчетность - -**Было (вручную):** -``` -Ежегодный аудит: -├── Сбор документов: 1-2 недели -├── Проверка аудиторами: 2-4 недели -├── Исправления: 1-2 недели -├── Финальный отчет: 1 неделя -└── Стоимость: $5,000-50,000 - -+ Квартальная отчетность: еще $2,000-10,000/квартал -``` - -**Стало (автоматически):** -``` -Блокчейн = постоянный аудит: -├── Каждая транзакция проверена сетью -├── Невозможно подделать данные -├── Реалтайм отчеты для всех -└── Стоимость: $0 (уже включено в блокчейн) -``` - -**Экономия:** $13,000-90,000/год на аудит и отчетность - -### Смарт-контракты вместо юристов - -**Что автоматизируется:** - -| Процесс | Было | Стало | -|---------|------|-------| -| **Выплата при условии** | Эскроу ($500-2,000) | Смарт-контракт ($5) | -| **Многосторонние подписи** | Нотариус ($100-500) | Multisig ($2-10) | -| **Автоматические платежи** | Бухгалтер ($2,000/мес) | Смарт-контракт ($10/мес) | -| **Распределение роялти** | Юрист ($5,000+) | Смарт-контракт ($20) | - -**Пример: Эскроу для сделки** - -Традиционно: -``` -1. Поиск эскроу-агента -2. Подписание договора эскроу -3. Оплата услуг: $500-2,000 -4. Перевод денег агенту -5. Проверка условий (вручную) -6. Выплата (3-7 дней) -``` - -Со смарт-контрактом: -```solidity -contract Escrow { - // Деньги заблокированы пока условие не выполнено - if (условие_выполнено) { - отправить_деньги_продавцу(); - } else if (срок_истек) { - вернуть_деньги_покупателю(); - } -} -``` -Стоимость: $5, исполнение автоматическое за 30 секунд - ---- - -## Практические кейсы - -### Кейс 1: Стартап привлекает инвестиции - -**Ситуация:** -Технологический стартап ищет $500,000 инвестиций. - -**Традиционный путь:** -``` -1. Поиск инвесторов: 6-12 месяцев -2. Due diligence: 2-3 месяца -3. Переговоры и оценка: 1-2 месяца -4. Юридическое оформление: 1-2 месяца - ├── Изменение устава - ├── Эмиссия акций - └── Регистрация в ИФНС -5. Стоимость процесса: - ├── Юристы: $20,000-50,000 - ├── Оценщики: $5,000-10,000 - ├── Регистрация: $2,000-5,000 - └── ИТОГО: $27,000-65,000 - -ИТОГО: 10-19 месяцев + $27,000-65,000 -``` - -**С DLE на блокчейне:** -``` -1. Создание DLE: 1 день - ├── Выпуск 10,000,000 токенов - ├── Учредители оставляют: 7,000,000 (70%) - └── Для инвесторов: 3,000,000 (30%) - -2. Размещение токенов: - ├── Launchpad на DEX - ├── Цена: $0.167 за токен - ├── Продано за: 3 дня - └── Получено: $500,000 - -3. Стоимость процесса: - ├── Деплой смарт-контракта: $100 - ├── Листинг на DEX: $500 - └── ИТОГО: $600 - -ИТОГО: 4 дня + $600 -``` - -**Результат:** -- ⚡ В 90 раз быстрее -- 💰 В 45-100 раз дешевле -- 🌍 Доступ к глобальным инвесторам -- ✅ Мгновенная ликвидность токенов - -### Кейс 2: Фонд недвижимости - -**Ситуация:** -Инвестиционный фонд владеет офисным зданием за $10,000,000. Хочет привлечь средства для нового проекта. - -**Традиционный путь:** -``` -Варианты: -1. Банковский кредит под залог: - ├── Ставка: 12-18% - ├── Срок оформления: 2-3 месяца - └── Стоимость оценки + юристы: $50,000 - -2. Продать здание целиком: - ├── Срок продажи: 6-18 месяцев - ├── Комиссия агентам: 3-5% ($300,000-500,000) - └── Теряет актив - -3. Привлечь инвесторов в фонд: - ├── Создание ЗПИФ: $50,000-200,000 - ├── Срок: 6-12 месяцев - └── Ежегодное обслуживание: $20,000-50,000 -``` - -**С токенизацией через DLE:** -``` -1. Токенизация здания: - ├── Выпуск 10,000,000 токенов - ├── 1 токен = $1 стоимости здания - └── Срок: 1 день - -2. Продажа 30% токенов: - ├── 3,000,000 токенов на DEX - ├── Цена: $1 за токен - ├── Продано за: 2 недели - └── Получено: $3,000,000 - -3. Арендные платежи: - ├── Аренда: $100,000/месяц - ├── Автоматическое распределение: - │ ├── 70% ($70,000) → фонду - │ └── 30% ($30,000) → держателям токенов - └── Выплаты: ежемесячно, автоматически - -4. Стоимость: - ├── Токенизация: $500 - ├── Листинг: $500 - └── ИТОГО: $1,000 -``` - -**Результат:** -- ⚡ Получили $3M за 2 недели -- 💰 Сохранили актив (владеют 70%) -- 📈 Пассивный доход продолжается -- 🔄 Можно выкупить токены обратно -- 💸 Стоимость 1000$ vs $50,000-200,000 - -### Кейс 3: Музыкальный лейбл - -**Ситуация:** -Независимый музыкальный лейбл хочет выпустить альбом нового артиста. - -**Традиционный путь:** -``` -1. Поиск инвестиций для записи: - ├── Нужно: $50,000 - ├── Источники: банк, инвесторы - ├── Условия: 50% роялти инвесторам - └── Срок поиска: 3-6 месяцев - -2. Выпуск альбома: - ├── Запись: $30,000 - ├── Продвижение: $20,000 - └── Срок: 3-6 месяцев - -3. Доходы от стриминга: - ├── Spotify: $0.003-0.005 за прослушивание - ├── Площадки берут: 30% - ├── Лейбл: 35% - ├── Инвесторы: 35% - └── Артист: 30% - -ИТОГО: 6-12 месяцев, артист получает только 30% -``` - -**С токенизацией через DLE:** -``` -1. Создание DLE для альбома: - ├── Выпуск 1,000,000 токенов - ├── Артист оставляет: 500,000 (50%) - ├── Продажа фанатам: 500,000 по $0.10 - └── Получено: $50,000 за 1 неделю - -2. Выпуск альбома: - ├── Запись: $30,000 - ├── Продвижение: $20,000 - └── Срок: 3-6 месяцев - -3. Доходы от стриминга: - ├── Доход: $10,000/месяц - ├── Автоматическое распределение: - │ ├── 50% ($5,000) → артист - │ └── 50% ($5,000) → держатели токенов (фаны) - └── Выплаты: ежемесячно, автоматически - -4. Бонусы: - ├── Фаны зарабатывают на успехе артиста - ├── Токены можно перепродать (вторичный рынок) - ├── Артист напрямую связан с фанами - └── Прозрачность всех доходов -``` - -**Результат:** -- ⚡ Получили инвестиции за неделю -- 💰 Артист получает 50% вместо 30% -- 🎵 Фаны зарабатывают вместе с артистом -- 🔄 Ликвидность токенов на вторичном рынке - -### Кейс 4: Агрохолдинг (токенизация урожая) - -**Ситуация:** -Фермерское хозяйство выращивает пшеницу. Нужны деньги на посевную (апрель), урожай будет в августе. - -**Традиционный путь:** -``` -1. Кредит в банке: - ├── Сумма: $200,000 - ├── Ставка: 15% годовых - ├── Срок кредита: 6 месяцев - ├── Проценты: $15,000 - └── Срок оформления: 1 месяц - -2. Риски: - ├── Неурожай → нечем платить кредит - ├── Падение цены → убытки - └── Банкротство -``` - -**С токенизацией урожая через DLE:** -``` -1. Апрель (посевная): - ├── Прогноз урожая: 1,000 тонн пшеницы - ├── Выпуск 1,000,000 токенов - ├── 1 токен = 1 кг пшеницы - ├── Цена токена: $0.25 (текущая цена + 10%) - └── Продажа 800,000 токенов → $200,000 - -2. Август (урожай): - ├── Собрано: 1,000 тонн - ├── Цена выросла до $0.30/кг - ├── Держатели токенов могут: - │ ├── Получить физическую пшеницу - │ ├── Продать токены по $0.30 - │ └── Заработать: 20% за 4 месяца - └── Фермер получил деньги без кредита - -3. Преимущества: - ├── Нет процентов (0% vs 15%) - ├── Делится риск урожая с инвесторами - ├── Прямая связь с покупателями - └── Прозрачность всей цепочки -``` - -**Результат:** -- 💰 Экономия $15,000 на процентах -- 🌾 Риски разделены с инвесторами -- 📈 Инвесторы заработали 20% за 4 месяца -- 🔗 Прозрачная цепочка поставок - ---- - -## Экономический эффект - -### Расчет экономии для типичного бизнеса - -**Исходные данные:** -- Оборот: $1,000,000/год -- Сотрудники: 10 человек -- Акционеры: 5 человек -- Международные операции: 20% оборота - -#### 1. Экономия на банковских комиссиях - -``` -Традиционно: -├── Обслуживание счета: $1,200/год -├── Транзакции внутри страны: 1% × $800,000 = $8,000 -├── Международные переводы: 5% × $200,000 = $10,000 -├── SWIFT комиссии: 50 переводов × $35 = $1,750 -├── Конвертация валют: 3% × $200,000 = $6,000 -└── ИТОГО: $26,950/год - -С DLE (крипто): -├── Gas fees: $1,000/год -├── RPC провайдеры: $200/год -└── ИТОГО: $1,200/год - -ЭКОНОМИЯ: $25,750/год (96%) -``` - -#### 2. Экономия на корпоративном управлении - -``` -Традиционно: -├── Бухгалтер: $24,000/год -├── Юрист (корпоративное право): $15,000/год -├── Нотариус (собрания, сделки): $2,000/год -├── Реестр акционеров: $3,000/год -├── Аудит: $10,000/год -└── ИТОГО: $54,000/год - -С DLE: -├── Автоматизация через смарт-контракты -├── Бухгалтер (только налоги): $12,000/год -└── ИТОГО: $12,000/год - -ЭКОНОМИЯ: $42,000/год (78%) -``` - -#### 3. Экономия на привлечении инвестиций - -``` -Традиционно (одна сделка): -├── Юристы: $30,000 -├── Оценщики: $7,000 -├── Due diligence: $10,000 -├── Регистрация изменений: $3,000 -└── ИТОГО: $50,000 - -С DLE (эмиссия токенов): -├── Деплой смарт-контракта: $100 -├── Листинг на DEX: $500 -└── ИТОГО: $600 - -ЭКОНОМИЯ: $49,400 на сделку (99%) -``` - -#### 4. Экономия времени (стоимость упущенных возможностей) - -``` -Традиционно: -├── Принятие решений: 2-3 месяца -├── Выплата дивидендов: 2-3 недели -├── Привлечение инвестиций: 6-12 месяцев -└── Международные переводы: 3-7 дней - -С DLE: -├── Принятие решений: 1-7 дней -├── Выплата дивидендов: 30 секунд -├── Привлечение инвестиций: 1-14 дней -└── Международные переводы: 30 секунд - -Оценка стоимости времени: -├── 10 месяцев экономии × $100,000 оборот/месяц -└── Дополнительная прибыль: $1,000,000 -``` - -### Итоговая экономия за год - -``` -┌─────────────────────────────────────────────┐ -│ ЭКОНОМИЧЕСКИЙ ЭФФЕКТ ДЛЯ БИЗНЕСА С │ -│ ОБОРОТОМ $1,000,000/ГОД │ -├─────────────────────────────────────────────┤ -│ Банковские комиссии: -$25,750 │ -│ Корпоративное управление: -$42,000 │ -│ Привлечение инвестиций: -$49,400 │ -│ ──────────────────────────────────────── │ -│ ИТОГО ЭКОНОМИЯ: $117,150/год │ -│ │ -│ + Дополнительная прибыль от скорости: │ -│ ~$1,000,000 (упущенные возможности) │ -│ │ -│ ИТОГО ЭФФЕКТ: $1,117,150 │ -├─────────────────────────────────────────────┤ -│ ROI: 1,117% на инвестиции в DLE │ -│ Окупаемость: < 1 месяца │ -└─────────────────────────────────────────────┘ -``` - -### Сравнение с конкурентами - -| Решение | Стоимость/год | Комиссии транзакций | Скорость | Прозрачность | -|---------|---------------|---------------------|----------|--------------| -| **Традиционный бизнес** | $54,000+ | 3-7% | 3-7 дней | ❌ Низкая | -| **SaaS решения** | $12,000-60,000 | 2-5% | 1-3 дня | ⚠️ Средняя | -| **DLE на блокчейне** | $1,200-3,000 | 0.01-0.5% | 30 сек | ✅ Полная | - ---- - -## Заключение - -### Почему блокчейн - это будущее бизнеса? - -Digital Legal Entity на блокчейне решает фундаментальные проблемы современного бизнеса: - -1. **🏦 Финансовая свобода** - - Операции без банков - - Мгновенные переводы по всему миру - - Минимальные комиссии (99% экономии) - - Нет географических ограничений - -2. **🔑 Универсальная идентичность** - - Один адрес смарт-контракта = все идентификаторы - - Замена ИНН, банковского счета, email, телефона - - Криптографическая защита от подделок - -3. **💰 Токенизация активов** - - Любой актив становится ликвидным - - Дробное владение (от $1) - - Глобальный рынок 24/7 - - Автоматические доходы - -4. **🗳️ Прозрачное управление** - - Каждый акционер видит всё - - Невозможно скрыть решения - - Автоматическое исполнение - - Защита от коррупции - -5. **⚡ Автоматизация** - - Смарт-контракты вместо юристов - - Автоматические выплаты - - Исключение человеческих ошибок - - 90-99% экономии времени и денег - -### Экономическая выгода - -Для бизнеса с оборотом $1M/год: -- 💰 **Экономия: $117,000/год** (на комиссиях и управлении) -- ⚡ **Дополнительная прибыль: ~$1,000,000** (за счет скорости) -- 📈 **ROI: 1,117%** на внедрение DLE -- 🎯 **Окупаемость: < 1 месяца** - -### Начните сейчас! - -1. 📖 **[Изучите FAQ](./FAQ.md)** - ответы на популярные вопросы -2. 🚀 **[Установите DLE](./setup-instruction.md)** - пошаговая инструкция -3. 🔗 **[Настройте блокчейн](./blockchain-integration-technical.md)** - техническая документация -4. 💬 **[Получите поддержку](https://hb3-accelerator.com/)** - мы поможем! - ---- - -## Дополнительные ресурсы - -### Документация -- 📋 [FAQ](./FAQ.md) -- 🔧 [Установка](./setup-instruction.md) -- 🔗 [Техническая документация по блокчейну](./blockchain-integration-technical.md) -- 📝 [Условия обслуживания](./service-terms.md) - - -### Поддержка -- 💬 **Чат с поддержкой**: https://hb3-accelerator.com/ -- 📧 **Email**: info@hb3-accelerator.com -- 🌐 **Сайт**: https://hb3-accelerator.com - ---- - -**© 2024-2025 Тарабанов Александр Викторович. Все права защищены.** - -**Последнее обновление**: October 2025 - diff --git a/docs/blockchain-integration-technical.md b/docs/blockchain-integration-technical.md deleted file mode 100644 index fccccb2..0000000 --- a/docs/blockchain-integration-technical.md +++ /dev/null @@ -1,1049 +0,0 @@ -# Блокчейн интеграция Digital Legal Entity (DLE) - -## 📋 Содержание - -1. [Введение](#введение) -2. [Архитектура смарт-контрактов](#архитектура-смарт-контрактов) -3. [Основной контракт DLE](#основной-контракт-dle) -4. [Модульная система](#модульная-система) -5. [Мультичейн архитектура](#мультичейн-архитектура) -6. [Система голосования (Управление)](#система-голосования-управление) -7. [Деплой смарт-контрактов](#деплой-смарт-контрактов) -8. [Аутентификация через кошелек](#аутентификация-через-кошелек) -9. [Интеграция с frontend](#интеграция-с-frontend) -10. [Безопасность](#безопасность) -11. [Практические примеры](#практические-примеры) - ---- - -## Введение - -Digital Legal Entity (DLE) использует блокчейн-технологии для обеспечения **токенизированного управления** (аналогично акционерному обществу на блокчейне) и **прозрачного принятия решений** через смарт-контракты. - -### Зачем блокчейн в DLE? - -1. **🗳️ Управление как в акционерном обществе** - решения принимаются токен-холдерами через голосование на блокчейне -2. **🔒 Прозрачность** - все голосования и операции записаны на блокчейне -3. **🛡️ Защита от цензуры** - смарт-контракт гарантирует права токен-холдеров -4. **📜 Иммутабельность** - история решений неизменна -5. **🌐 Мультичейн поддержка** - работа в нескольких блокчейнах одновременно - -### Модель управления DLE - -DLE использует **гибридную модель управления**: - -| Аспект | Реализация | -|--------|------------| -| **Голосование** | Токен-холдеры (как акционеры) | -| **Кворум** | 51%+ токенов для принятия решений | -| **Распределение активов** | Через голосование (как в АО) | -| **Изменение параметров** | Через голосование токен-холдеров | -| **Код приложения** | Проприетарный (автор) | -| **Обновления** | Автор разрабатывает, токен-холдеры голосуют за приоритеты | - -Это **токенизированное акционерное общество на блокчейне**, где: -- ✅ Управление параметрами - через голосование токен-холдеров (как акционеров) -- ✅ Распределение активов - через голосование (как в АО) -- ⚠️ Разработка кода - централизована (автор) -- ⚠️ Выпуск обновлений - автор (по приоритетам голосования) - -### Поддерживаемые блокчейны - -DLE работает с любыми **EVM-совместимыми** сетями: -- ✅ Ethereum (mainnet & testnets: Sepolia, Holesky) -- ✅ Polygon (mainnet & testnets) -- ✅ Arbitrum (One & Sepolia) -- ✅ Binance Smart Chain (BSC) -- ✅ Base (mainnet & Sepolia) -- ✅ И любые другие EVM-сети - ---- - -## Архитектура смарт-контрактов - -### Обзор системы - -``` -┌─────────────────────────────────────────────────────────────┐ -│ DLE Ecosystem │ -├─────────────────────────────────────────────────────────────┤ -│ │ -│ ┌─────────────────────────────────────────────────────┐ │ -│ │ DLE Core Contract (ERC20Votes) │ │ -│ │ • Токены управления (ERC20) │ │ -│ │ • Голосование (ERC20Votes) │ │ -│ │ • Подписи (ERC20Permit) │ │ -│ │ • Proposals (предложения) │ │ -│ │ • Мультичейн поддержка │ │ -│ └─────────────────────────────────────────────────────┘ │ -│ ↕ │ -│ ┌──────────────────────────────────────────────────────┐ │ -│ │ Модули (Расширения) │ │ -│ ├──────────────────────────────────────────────────────┤ │ -│ │ • HierarchicalVotingModule │ │ -│ │ - Голосование в других DLE │ │ -│ │ - Владение токенами других DLE │ │ -│ │ │ │ -│ │ • TreasuryModule │ │ -│ │ - Управление казной │ │ -│ │ - Хранение токенов │ │ -│ │ │ │ -│ │ • TimelockModule │ │ -│ │ - Отложенное исполнение │ │ -│ │ - Защита от мгновенных изменений │ │ -│ └──────────────────────────────────────────────────────┘ │ -│ ↕ │ -│ ┌──────────────────────────────────────────────────────┐ │ -│ │ DLEReader (Читатель данных) │ │ -│ │ • Batch чтение данных │ │ -│ │ • Оптимизация RPC запросов │ │ -│ └──────────────────────────────────────────────────────┘ │ -└─────────────────────────────────────────────────────────────┘ -``` - -### Стандарты и библиотеки - -DLE использует проверенные стандарты **OpenZeppelin**: - -| Стандарт | Назначение | -|----------|------------| -| **ERC20** | Базовый функционал токена | -| **ERC20Votes** | Голосование с снапшотами | -| **ERC20Permit** | Подписи без gas (meta-transactions) | -| **ReentrancyGuard** | Защита от реентерабельности | -| **ECDSA** | Проверка подписей | - ---- - -## Основной контракт DLE - -### Структура контракта - -Файл: `backend/contracts/DLE.sol` - -```solidity -contract DLE is ERC20, ERC20Permit, ERC20Votes, ReentrancyGuard, IMultichainMetadata { - // Основные данные DLE - struct DLEInfo { - string name; // Название организации - string symbol; // Символ токена - string location; // Местоположение - string coordinates; // Координаты GPS - uint256 jurisdiction; // Юрисдикция - string[] okvedCodes; // Коды ОКВЭД - uint256 kpp; // КПП (для РФ) - uint256 creationTimestamp; - bool isActive; - } - - // Предложение для голосования - struct Proposal { - uint256 id; - string description; - uint256 forVotes; // Голоса "За" - uint256 againstVotes; // Голоса "Против" - bool executed; - bool canceled; - uint256 deadline; - address initiator; - bytes operation; // Операция для исполнения - uint256 governanceChainId; // Сеть голосования - uint256[] targetChains; // Целевые сети для исполнения - uint256 snapshotTimepoint; - mapping(address => bool) hasVoted; - } -} -``` - -### Ключевые возможности - -#### 1. Токены управления (ERC20) - -DLE токены представляют **право голоса** в управлении: -- 1 токен = 1 голос -- Токены **НЕ передаются** обычными методами (только через governance) -- Подписи EIP-712 для meta-transactions - -```solidity -// Переводы токенов ЗАБЛОКИРОВАНЫ -function transfer(address, uint256) public pure override returns (bool) { - revert ErrTransfersDisabled(); -} - -// Одобрения ЗАБЛОКИРОВАНЫ -function approve(address, uint256) public pure override returns (bool) { - revert ErrApprovalsDisabled(); -} -``` - -#### 2. Голосование (ERC20Votes) - -Использует **снапшоты** голосов: -- Защита от flash-loans -- Голоса берутся из прошлого блока -- Делегирование (опционально) - -```solidity -function getPastVotes(address account, uint256 timepoint) public view returns (uint256) -``` - -#### 3. Мультичейн поддержка - -DLE может быть развернут в **нескольких сетях одновременно**: -- Один адрес во всех сетях (детерминированный деплой) -- Голосование в одной сети (governance chain) -- Исполнение в любых целевых сетях - -```solidity -// Поддерживаемые сети -mapping(uint256 => bool) public supportedChains; -uint256[] public supportedChainIds; - -// Добавление сети (только через голосование) -function _addSupportedChain(uint256 _chainId) internal { - require(!supportedChains[_chainId], "Chain already supported"); - supportedChains[_chainId] = true; - supportedChainIds.push(_chainId); - emit ChainAdded(_chainId); -} -``` - -#### 4. Модульная архитектура - -DLE поддерживает **расширения через модули**: - -```solidity -// Модули -mapping(bytes32 => address) public modules; -mapping(bytes32 => bool) public activeModules; - -// Добавление модуля (только через голосование) -function _addModule(bytes32 _moduleId, address _moduleAddress) internal { - if (_moduleAddress == address(0)) revert ErrZeroAddress(); - if (activeModules[_moduleId]) revert ErrProposalExecuted(); - - modules[_moduleId] = _moduleAddress; - activeModules[_moduleId] = true; - - emit ModuleAdded(_moduleId, _moduleAddress); -} -``` - -### Операции доступные через голосование - -| Операция | Описание | -|----------|----------| -| `_addModule` | Добавить новый модуль | -| `_removeModule` | Удалить модуль | -| `_addSupportedChain` | Добавить блокчейн | -| `_removeSupportedChain` | Удалить блокчейн | -| `_transferTokens` | Перевести токены | -| `_updateDLEInfo` | Обновить информацию DLE | -| `_updateQuorumPercentage` | Изменить кворум | -| `_updateVotingDurations` | Изменить длительность голосования | - ---- - -## Модульная система - -### 1. HierarchicalVotingModule - -**Назначение**: Иерархическое голосование - DLE может голосовать в других DLE. - -**Файл**: `backend/contracts/HierarchicalVotingModule.sol` - -**Возможности**: -- ✅ DLE может владеть токенами других DLE -- ✅ Голосовать в других DLE от своего имени -- ✅ Создавать предложения в других DLE -- ✅ Отслеживать цепочку голосований - -```solidity -struct ExternalDLEInfo { - address dleAddress; - string name; - string symbol; - uint256 tokenBalance; // Баланс токенов этого DLE - bool isActive; - uint256 addedAt; -} - -// Добавить внешний DLE -function addExternalDLE( - address dleAddress, - string memory name, - string memory symbol -) external onlyDLE; - -// Создать предложение в внешнем DLE -function createProposalInExternalDLE( - address externalDLE, - string calldata description, - uint256 duration, - bytes calldata operation, - uint256 chainId -) external onlyDLE returns (uint256); -``` - -**Пример использования**: -```javascript -// DLE-A владеет токенами DLE-B -// DLE-A может голосовать в DLE-B автоматически -const hierarchicalModule = await ethers.getContractAt('HierarchicalVotingModule', moduleAddress); -await hierarchicalModule.voteInExternalDLE(dleBAddress, proposalId, true); -``` - -### 2. TreasuryModule - -**Назначение**: Управление казной (treasury) и активами DLE. - -**Файл**: `backend/contracts/TreasuryModule.sol` - -**Возможности**: -- ✅ Хранение токенов и активов -- ✅ Управление через голосование токен-холдеров -- ✅ Отправка платежей -- ✅ Аккумуляция доходов - -```solidity -// Перевести токены из казны (только через голосование в DLE) -function transferTokens( - address token, - address recipient, - uint256 amount -) external onlyDLE; - -// Получить баланс токена в казне -function getTokenBalance(address token) external view returns (uint256); -``` - -**Пример использования**: -```javascript -// Создать предложение на выплату из казны -const operation = treasuryModule.interface.encodeFunctionData('transferTokens', [ - tokenAddress, - recipientAddress, - ethers.parseEther('100') -]); - -await dleContract.createProposal( - 'Выплата 100 токенов для маркетинга', - 86400, // 24 часа - operation, - chainId, - [chainId] -); -``` - -### 3. TimelockModule - -**Назначение**: Отложенное исполнение операций для безопасности. - -**Файл**: `backend/contracts/TimelockModule.sol` - -**Возможности**: -- ✅ Задержка перед исполнением (timelock) -- ✅ Возможность отмены до исполнения -- ✅ Защита от мгновенных изменений - -```solidity -struct TimelockProposal { - uint256 proposalId; - uint256 executionTime; // Время когда можно исполнить - bytes32 operationHash; - bool executed; - bool canceled; -} - -// Создать timelock предложение -function scheduleProposal( - uint256 proposalId, - bytes calldata operation, - uint256 delay -) external onlyDLE returns (bytes32); - -// Исполнить по истечении таймлока -function executeTimelockProposal(bytes32 operationHash) external; -``` - -### 4. DLEReader - -**Назначение**: Оптимизированное чтение данных из контрактов. - -**Файл**: `backend/contracts/DLEReader.sol` - -**Возможности**: -- ✅ Batch чтение нескольких данных за один RPC запрос -- ✅ Получение детальной информации о DLE -- ✅ Список всех предложений с деталями -- ✅ Оптимизация gas для чтения - -```solidity -// Получить полную информацию о DLE за один запрос -function getDLEFullInfo(address dleAddress) external view returns ( - string memory name, - string memory symbol, - uint256 totalSupply, - DLEInfo memory info, - uint256 proposalCount, - // ... и другие данные -); - -// Получить все предложения (batch read) -function getAllProposals(address dleAddress) external view returns (ProposalInfo[] memory); -``` - ---- - -## Мультичейн архитектура - -### Концепция - -DLE поддерживает **детерминированный деплой** - один адрес во всех сетях: - -``` -Ethereum: 0x742d35Cc6634C0532925a3b844Bc9377F91cAB6C -Polygon: 0x742d35Cc6634C0532925a3b844Bc9377F91cAB6C ← Тот же адрес! -Arbitrum: 0x742d35Cc6634C0532925a3b844Bc9377F91cAB6C -BSC: 0x742d35Cc6634C0532925a3b844Bc9377F91cAB6C -``` - -### Как это работает? - -1. **Генерация init code** - одинаковый bytecode для всех сетей -2. **Фиксированный nonce** - деплой с одного и того же nonce -3. **CREATE opcode** - адрес = keccak256(deployerAddress, nonce) -4. **Результат** - одинаковый адрес во всех сетях - -### Голосование в одной сети - -**Голосование** происходит в **одной сети** (сеть голосования), а **исполнение** - в любых целевых сетях: - -``` -┌─────────────────────────────────────────────────────────┐ -│ Ethereum (Сеть голосования) │ -│ 1. Создание предложения │ -│ 2. Голосование │ -│ 3. Подсчет голосов │ -│ 4. Генерация подписи для исполнения │ -└─────────────────────────────────────────────────────────┘ - ↓ - ┌───────────────┴───────────────┐ - ↓ ↓ -┌───────────────────┐ ┌───────────────────┐ -│ Polygon │ │ Arbitrum │ -│ (Target Chain) │ │ (Target Chain) │ -│ 5. Исполнение │ │ 5. Исполнение │ -│ с подписью │ │ с подписью │ -└───────────────────┘ └───────────────────┘ -``` - -### Мультичейн исполнение - -Исполнение через **подписи** (off-chain coordination): - -```solidity -function executeWithSignatures( - uint256 proposalId, - bytes32 operationHash, - address[] calldata signers, - bytes[] calldata signatures -) external nonReentrant; -``` - -**Процесс**: -1. Предложение одобрено в сети голосования -2. Генерируются подписи токен-холдеров -3. Подписи передаются в целевые сети -4. Контракт проверяет подписи и исполняет операцию - ---- - -## Система голосования (Управление) - -### Создание предложения - -```solidity -function createProposal( - string calldata _description, - uint256 _duration, - bytes calldata _operation, - uint256 _chainId, - uint256[] calldata _targetChains, - address _initiator -) external returns (uint256); -``` - -**Параметры**: -- `_description` - описание предложения -- `_duration` - длительность голосования (в секундах) -- `_operation` - операция для исполнения (encoded function call) -- `_chainId` - ID сети для голосования -- `_targetChains` - целевые сети для исполнения -- `_initiator` - адрес инициатора - -**Пример** (backend): -```javascript -const { ethers } = require('ethers'); - -// Операция: добавить модуль -const operation = dleContract.interface.encodeFunctionData('_addModule', [ - ethers.id('TIMELOCK_MODULE'), // moduleId - timelockModuleAddress -]); - -// Создать предложение -const tx = await dleContract.createProposal( - 'Добавить Timelock Module для защиты', - 86400 * 3, // 3 дня - operation, - 1, // Ethereum mainnet - [1, 137, 42161], // Ethereum, Polygon, Arbitrum - walletAddress -); - -const receipt = await tx.wait(); -const proposalId = receipt.events[0].args.proposalId; -``` - -### Голосование - -```solidity -function vote(uint256 _proposalId, bool _support) external; -``` - -**Параметры**: -- `_proposalId` - ID предложения -- `_support` - true = "За", false = "Против" - -**Пример** (frontend): -```javascript -// Подключение к контракту -const dleContract = new ethers.Contract(dleAddress, dleAbi, signer); - -// Голосование "За" -await dleContract.vote(proposalId, true); - -// Голосование "Против" -await dleContract.vote(proposalId, false); -``` - -### Исполнение предложения - -```solidity -function execute(uint256 _proposalId) external nonReentrant; -``` - -**Условия исполнения**: -1. ✅ Голосование завершено (прошел deadline) -2. ✅ Кворум достигнут (например, 10% токенов проголосовало) -3. ✅ Больше голосов "За", чем "Против" -4. ✅ Предложение еще не исполнено - -**Пример**: -```javascript -// Проверить, можно ли исполнить -const proposal = await dleContract.proposals(proposalId); -const canExecute = ( - proposal.deadline < Date.now() / 1000 && - !proposal.executed && - proposal.forVotes > proposal.againstVotes -); - -if (canExecute) { - await dleContract.execute(proposalId); -} -``` - -### Кворум - -Кворум определяет **минимальное количество голосов** для принятия решения: - -```solidity -uint256 public quorumPercentage; // Процент от totalSupply (например, 10%) - -function _hasQuorum(uint256 _forVotes, uint256 _againstVotes) internal view returns (bool) { - uint256 totalVotes = _forVotes + _againstVotes; - uint256 requiredVotes = (totalSupply() * quorumPercentage) / 100; - return totalVotes >= requiredVotes; -} -``` - -**Изменение кворума** (только через голосование): -```javascript -const operation = dleContract.interface.encodeFunctionData('_updateQuorumPercentage', [ - 15 // Новый кворум 15% -]); - -await dleContract.createProposal( - 'Увеличить кворум до 15%', - 86400 * 7, - operation, - chainId, - [chainId] -); -``` - ---- - -## Деплой смарт-контрактов - -### Мультичейн деплой - -**Скрипт**: `backend/scripts/deploy/deploy-multichain.js` - -**Возможности**: -- ✅ Деплой в несколько сетей одновременно (parallel) -- ✅ Детерминированный адрес (один адрес во всех сетях) -- ✅ Автоматическая верификация контрактов -- ✅ Retry логика при ошибках -- ✅ Nonce management для синхронизации - -**Запуск**: -```bash -cd backend -yarn deploy:multichain -``` - -**Конфигурация** (база данных): -Параметры деплоя хранятся в таблице `settings`: -- `supported_chain_ids` - список ID сетей для деплоя -- `rpc_providers` - RPC URLs для каждой сети -- `dle_config` - конфигурация DLE (название, символ, партнеры и т.д.) - -**Пример конфигурации**: -```json -{ - "name": "My Company DLE", - "symbol": "MYCO", - "location": "Moscow, Russia", - "coordinates": "55.7558,37.6173", - "jurisdiction": 643, - "okvedCodes": ["62.01", "62.02"], - "kpp": 770401001, - "quorumPercentage": 10, - "initialPartners": ["0x742d35..."], - "initialAmounts": [1000000], - "supportedChainIds": [1, 137, 42161] -} -``` - -### Деплой модулей - -**Скрипт**: `backend/scripts/deploy/deploy-modules.js` - -**Запуск**: -```bash -cd backend -yarn deploy:modules -``` - -**Процесс**: -1. Загрузка адреса DLE из базы -2. Параллельный деплой всех модулей во всех сетях -3. CREATE2 деплой для детерминированных адресов -4. Автоматическая верификация -5. Сохранение адресов модулей в базу данных - -### Верификация контрактов - -**Автоматическая верификация** через Etherscan API: - -```javascript -async function verifyDLEAfterDeploy(chainId, contractAddress, constructorArgs, apiKey, params) { - await hre.run("verify:verify", { - address: contractAddress, - constructorArguments: constructorArgs, - contract: "contracts/DLE.sol:DLE" - }); -} -``` - -**Поддерживаемые сканеры**: -- Etherscan (Ethereum, Sepolia, Holesky) -- Polygonscan -- Arbiscan -- BSCScan -- Basescan - ---- - -## Аутентификация через кошелек - -### SIWE (Sign-In with Ethereum) - -DLE использует стандарт **SIWE** для аутентификации: - -**Файл**: `backend/routes/auth.js` - -**Процесс аутентификации**: - -``` -┌──────────────┐ ┌──────────────┐ -│ Frontend │ │ Backend │ -└──────┬───────┘ └──────┬───────┘ - │ │ - │ 1. Запрос nonce │ - ├──────────────────────────────────>│ - │ │ - │ 2. Возврат nonce │ - │<──────────────────────────────────┤ - │ │ - │ 3. Подпись сообщения в кошельке │ - │ (приватный ключ НЕ передается!) │ - │ │ - │ 4. Отправка подписи │ - ├──────────────────────────────────>│ - │ │ - │ 5. Проверка подписи - │ 6. Проверка токенов - │ 7. Создание сессии - │ │ - │ 8. Успешная аутентификация │ - │<──────────────────────────────────┤ - │ │ -``` - -### Запрос nonce - -```javascript -// POST /api/auth/nonce -app.post('/api/auth/nonce', async (req, res) => { - const { address } = req.body; - - // Генерируем случайный nonce - const nonce = crypto.randomBytes(32).toString('hex'); - - // Сохраняем в БД с шифрованием - await db.query( - 'INSERT INTO nonces (identity_value_encrypted, nonce_encrypted, expires_at) VALUES ($1, $2, $3)', - [encrypt(address.toLowerCase()), encrypt(nonce), expiresAt] - ); - - res.json({ nonce }); -}); -``` - -### Верификация подписи - -```javascript -// POST /api/auth/verify -app.post('/api/auth/verify', async (req, res) => { - const { address, signature, nonce } = req.body; - - // Формируем SIWE сообщение - const message = new SiweMessage({ - domain: req.get('host'), - address: ethers.getAddress(address), - statement: 'Sign in with Ethereum to the app.', - uri: req.get('origin'), - version: '1', - chainId: 1, - nonce: nonce - }); - - // Проверяем подпись - const isValid = await verifySignature( - message.prepareMessage(), - signature, - address - ); - - if (!isValid) { - return res.status(401).json({ error: 'Invalid signature' }); - } - - // Проверяем токены в смарт-контракте - const userAccessLevel = await getUserAccessLevel(address); - - // Создаем сессию - req.session.userId = userId; - req.session.address = address; - req.session.authenticated = true; - req.session.userAccessLevel = userAccessLevel; - - res.json({ success: true, userAccessLevel }); -}); -``` - -### Проверка уровня доступа - -```javascript -async function getUserAccessLevel(address) { - // Получаем адрес DLE контракта из настроек - const dleAddress = await getSettingValue('contract_address'); - if (!dleAddress) { - return { level: 'user', tokenCount: 0, hasAccess: false }; - } - - // Подключаемся к контракту - const dleContract = new ethers.Contract(dleAddress, dleAbi, provider); - - // Получаем баланс токенов - const tokenCount = await dleContract.balanceOf(address); - - // Пороги доступа из настроек - const editorThreshold = await getSettingValue('editor_token_threshold') || 100; - const readonlyThreshold = await getSettingValue('readonly_token_threshold') || 1; - - // Определяем уровень доступа - if (tokenCount >= editorThreshold) { - return { level: 'editor', tokenCount, hasAccess: true }; - } else if (tokenCount >= readonlyThreshold) { - return { level: 'readonly', tokenCount, hasAccess: true }; - } else { - return { level: 'user', tokenCount: 0, hasAccess: false }; - } -} -``` - ---- - -## Интеграция с frontend - -### Подключение кошелька - -**Файл**: `frontend/src/services/web3Service.js` - -```javascript -import { ethers } from 'ethers'; - -export async function connectWallet() { - if (!window.ethereum) { - throw new Error('MetaMask не установлен'); - } - - // Запрашиваем доступ к кошельку - await window.ethereum.request({ method: 'eth_requestAccounts' }); - - // Создаем provider - const provider = new ethers.BrowserProvider(window.ethereum); - const signer = await provider.getSigner(); - const address = await signer.getAddress(); - - return { provider, signer, address }; -} -``` - -### Подпись сообщения - -```javascript -export async function signMessage(signer, message) { - try { - const signature = await signer.signMessage(message); - return signature; - } catch (error) { - throw new Error('Пользователь отклонил подпись'); - } -} -``` - -### Аутентификация - -```javascript -import axios from 'axios'; - -export async function authenticateWithWallet(address, signer) { - // 1. Получаем nonce - const { data } = await axios.post('/api/auth/nonce', { address }); - const { nonce } = data; - - // 2. Формируем сообщение SIWE - const message = `Sign in with Ethereum to the app.\n\nNonce: ${nonce}`; - - // 3. Подписываем - const signature = await signMessage(signer, message); - - // 4. Отправляем на верификацию - const response = await axios.post('/api/auth/verify', { - address, - signature, - nonce, - issuedAt: new Date().toISOString() - }); - - return response.data; -} -``` - -### Взаимодействие с контрактом - -```javascript -import { ethers } from 'ethers'; -import dleAbi from '@/contracts/DLE.json'; - -export async function getDLEContract(address, signerOrProvider) { - return new ethers.Contract(address, dleAbi.abi, signerOrProvider); -} - -// Создать предложение -export async function createProposal(contract, description, duration, operation, chainId) { - const tx = await contract.createProposal( - description, - duration, - operation, - chainId, - [chainId] - ); - - const receipt = await tx.wait(); - return receipt; -} - -// Голосовать -export async function voteOnProposal(contract, proposalId, support) { - const tx = await contract.vote(proposalId, support); - await tx.wait(); -} - -// Получить информацию о предложении -export async function getProposal(contract, proposalId) { - const proposal = await contract.proposals(proposalId); - return { - id: proposal.id.toString(), - description: proposal.description, - forVotes: ethers.formatEther(proposal.forVotes), - againstVotes: ethers.formatEther(proposal.againstVotes), - executed: proposal.executed, - deadline: new Date(proposal.deadline * 1000) - }; -} -``` - -### Vue компонент для голосования - -```vue - - - - - -``` - ---- - -## Безопасность - -> 💡 **Подробная информация**: См. [Безопасность DLE](./security.md) - там детально описаны все уровни защиты, сценарии атак и рекомендации по безопасности. - -### Краткий обзор технических аспектов - -**Ключевые принципы безопасности смарт-контрактов:** -- 🔒 **ReentrancyGuard** - защита от реентерабельности -- 🚫 **Блокировка переводов** - токены передаются только через governance -- 📸 **Снапшоты голосов** - защита от flash-loan атак -- ✍️ **EIP-712 подписи** - поддержка контрактных кошельков -- ✅ **Валидация параметров** - проверка всех входных данных -- 💰 **Custom errors** - экономия gas при ошибках - -**Примеры реализации:** - -```solidity -// Защита от реентерабельности -import "@openzeppelin/contracts/utils/ReentrancyGuard.sol"; - -contract DLE is ReentrancyGuard { - function execute(uint256 _proposalId) external nonReentrant { - // Операция защищена от реентерабельности - } -} - -// Блокировка переводов токенов -function transfer(address, uint256) public pure override returns (bool) { - revert ErrTransfersDisabled(); -} - -// Снапшоты голосов -uint256 public snapshotTimepoint = block.number - 1; - -function vote(uint256 _proposalId, bool _support) external { - uint256 votingPower = getPastVotes(msg.sender, snapshotTimepoint); - require(votingPower > 0, "No voting power"); -} -``` - ---- - -## Практические примеры - -> 💡 **Подробные примеры и кейсы**: См. [Блокчейн для бизнеса](./blockchain-for-business.md) - там детально описаны реальные бизнес-кейсы, экономические расчеты и практические примеры использования DLE. - -### Краткий обзор технических примеров - -**Основные сценарии использования:** - -1. **Мультичейн деплой** - развертывание DLE в нескольких сетях одновременно -2. **Добавление модулей** - расширение функциональности через голосование -3. **Иерархическое голосование** - DLE может голосовать в других DLE -4. **Управление казной** - распределение средств через голосование токен-холдеров ---- - -## Заключение - -Блокчейн-интеграция в DLE обеспечивает: -- ✅ **Управление как в акционерном обществе** - токен-холдеры голосуют за решения -- ✅ **Прозрачность** всех решений на блокчейне -- ✅ **Мультичейн поддержка** для работы в нескольких сетях -- ✅ **Модульная архитектура** для расширения функциональности -- ✅ **Безопасность** через проверенные стандарты OpenZeppelin - -### Дополнительные ресурсы - -- 📖 [Основной README](../README.md) -- 📋 [FAQ](./FAQ.md) -- 🔧 [Инструкция по установке](./setup-instruction.md) -- 📝 [Условия обслуживания](./service-terms.md) -- ⚖️ [Юридическая документация](../legal/README.md) - -### Контакты и поддержка - -- 🌐 **Портал**: https://hb3-accelerator.com/ -- 📧 **Email**: info@hb3-accelerator.com -- 🐙 **GitHub**: https://github.com/VC-HB3-Accelerator - ---- - -**© 2024-2025 Тарабанов Александр Викторович. Все права защищены.** - -**Последнее обновление**: October 2025 - diff --git a/docs/security.md b/docs/security.md deleted file mode 100644 index ae3539f..0000000 --- a/docs/security.md +++ /dev/null @@ -1,1309 +0,0 @@ -# Безопасность Digital Legal Entity (DLE) - -## 📋 Содержание - -1. [Введение](#введение) -2. [Модель безопасности](#модель-безопасности) -3. [Контроль доступа на основе токенов](#контроль-доступа-на-основе-токенов) -4. [Безопасность смарт-контрактов](#безопасность-смарт-контрактов) -5. [Защита от взлома кошельков](#защита-от-взлома-кошельков) -6. [Безопасность веб-приложения](#безопасность-веб-приложения) -7. [Управление модулями](#управление-модулями) -8. [Аудит и мониторинг](#аудит-и-мониторинг) -9. [Рекомендации по безопасности](#рекомендации-по-безопасности) -10. [Сценарии атак и защита](#сценарии-атак-и-защита) - ---- - -## Введение - -Digital Legal Entity (DLE) построен с фокусом на **безопасность на всех уровнях**: -- 🔐 Контроль доступа через блокчейн-токены -- 🛡️ Защита смарт-контрактов от взлома -- 🔒 Невозможность кражи токенов даже при взломе кошелька -- ⚖️ Управление только через голосование с кворумом - -### Ключевые принципы безопасности - -1. **Защита по умолчанию** - все действия запрещены, пока явно не разрешены -2. **Минимальные привилегии** - каждый получает только необходимые права -3. **Прозрачность** - все действия записаны на блокчейне -4. **Неизменяемость** - невозможно подделать историю -5. **Коллективный контроль** - критичные операции только через голосование - ---- - -## Модель безопасности - -### Архитектура безопасности - -``` -┌─────────────────────────────────────────────────────────────┐ -│ Уровни защиты DLE │ -├─────────────────────────────────────────────────────────────┤ -│ │ -│ Уровень 1: Блокчейн (Неизменяемая база) │ -│ ┌───────────────────────────────────────────────────────┐ │ -│ │ • Смарт-контракт DLE (проверен, иммутабельный) │ │ -│ │ • Токены управления (ERC20Votes) │ │ -│ │ • История всех операций на блокчейне │ │ -│ │ • Невозможность изменения правил без голосования │ │ -│ └───────────────────────────────────────────────────────┘ │ -│ ↑ │ -│ Уровень 2: Веб-приложение (Backend) │ -│ ┌───────────────────────────────────────────────────────┐ │ -│ │ • Проверка токенов в реальном времени │ │ -│ │ • Аутентификация через кошелек (SIWE) │ │ -│ │ • Шифрование данных (AES-256) │ │ -│ │ • Rate limiting и защита от DDoS │ │ -│ └───────────────────────────────────────────────────────┘ │ -│ ↑ │ -│ Уровень 3: Frontend (Vue.js) │ -│ ┌───────────────────────────────────────────────────────┐ │ -│ │ • Подключение к кошельку │ │ -│ │ • Подпись транзакций │ │ -│ │ • XSS защита (DOMPurify) │ │ -│ │ • CSRF токены │ │ -│ └───────────────────────────────────────────────────────┘ │ -│ ↑ │ -│ Уровень 4: Пользователь │ -│ ┌───────────────────────────────────────────────────────┐ │ -│ │ • Приватный ключ кошелька (MetaMask, WalletConnect) │ │ -│ │ • Подтверждение каждой операции │ │ -│ └───────────────────────────────────────────────────────┘ │ -└─────────────────────────────────────────────────────────────┘ -``` - -### Модель угроз - -| Угроза | Уровень риска | Защита | -|--------|---------------|--------| -| **Взлом кошелька** | 🟡 Средний | Токены нельзя перевести без голосования | -| **Взлом веб-приложения** | 🟢 Низкий | Все права проверяются на блокчейне, управление через блокчейн-сканеры | -| **Компрометация смарт-контракта** | 🟢 Низкий | Аудит, OpenZeppelin, иммутабельность | -| **DDoS атака** | 🟡 Средний | Rate limiting, CDN, резервные сервера | -| **Фишинг** | 🟠 Высокий | Обучение пользователей, проверка домена | -| **Insider threat** | 🟢 Низкий | Все действия через голосование | - -### ⚠️ Критически важно: Веб-приложение - это только интерфейс - -**Ключевая особенность архитектуры DLE:** - -``` -┌─────────────────────────────────────────────────────────┐ -│ Веб-приложение (интерфейс) │ -│ │ -│ Frontend + Backend = УДОБСТВО использования │ -│ • Красивый UI │ -│ • Удобная навигация │ -│ • Быстрый доступ к функциям │ -│ │ -│ ⚠️ Может быть взломано/недоступно │ -│ ✅ НО! Активы бизнеса защищены │ -└─────────────────────────────────────────────────────────┘ - ↓ -┌─────────────────────────────────────────────────────────┐ -│ Блокчейн (реальная власть) │ -│ │ -│ Смарт-контракты = РЕАЛЬНОЕ управление активами │ -│ • Токены управления │ -│ • Казна с активами │ -│ • Правила голосования │ -│ • История всех решений │ -│ │ -│ 🔒 Защищено криптографией │ -│ ✅ Работает независимо от веб-приложения │ -└─────────────────────────────────────────────────────────┘ -``` - -**Что происходит при взломе веб-приложения:** - -``` -Веб-приложение взломано/недоступно: -├── ❌ Веб-интерфейс не работает -├── ❌ Backend может показывать неверную информацию -├── ❌ Frontend может быть подменен -│ -НО: -├── ✅ Все активы бизнеса остаются на блокчейне -├── ✅ Смарт-контракты продолжают работать -├── ✅ Токены невозможно украсть -├── ✅ Можно управлять через Etherscan/Polygonscan/др. -└── ✅ Можно создать новый frontend и подключить к тем же контрактам -``` - -**Реальный пример:** - -1. Злоумышленник взламывает ваш сервер с веб-приложением -2. Пытается показать поддельные балансы токенов -3. **Но**: Реальные балансы на блокчейне остаются неизменными -4. Вы открываете Etherscan и видите правду -5. Создаете предложение через Etherscan на восстановление -6. Голосуете и исполняете предложение -7. Восстанавливаете веб-приложение -8. **Результат**: Ни один токен не потерян ✅ - ---- - -## Контроль доступа на основе токенов - -### Принцип работы - -**Без токенов доступ к приложению НЕВОЗМОЖЕН.** - -``` -Попытка доступа к DLE: -├── 1. Пользователь подключает кошелек -├── 2. Backend проверяет баланс токенов в смарт-контракте -├── 3. Если токенов НЕТ → Доступ ЗАПРЕЩЕН -└── 4. Если токены ЕСТЬ → Доступ разрешен (уровень зависит от количества) -``` - -### Уровни доступа - -| Токенов на балансе | Уровень доступа | Права | -|-------------------|-----------------|-------| -| **0 токенов** | ❌ Нет доступа | Только страница "Нет доступа" | -| **1+ токенов** | ✅ ReadOnly | Просмотр данных | -| **100+ токенов** | ✅ Editor | Редактирование, создание | -| **Любое количество** | 🗳️ Голосование | 1 токен = 1 голос | - -### Проверка токенов в реальном времени - -**Backend** постоянно проверяет баланс токенов: - -```javascript -// Каждый запрос проверяет токены -async function checkAccess(req, res, next) { - const address = req.session.address; - - // Получаем баланс токенов из смарт-контракта - const dleContract = new ethers.Contract(dleAddress, dleAbi, provider); - const balance = await dleContract.balanceOf(address); - - if (balance === 0n) { - return res.status(403).json({ - error: 'Доступ запрещен: нет токенов' - }); - } - - // Определяем уровень доступа - const accessLevel = determineAccessLevel(balance); - req.user = { address, balance, accessLevel }; - - next(); -} -``` - -**Важно**: Проверка происходит на **каждом запросе**, поэтому: -- ✅ Если токены переведены → доступ мгновенно теряется -- ✅ Если токены получены → доступ мгновенно появляется -- ✅ Невозможно обойти проверку - -### Начальное распределение токенов - -**Токены распределяет владелец при деплое смарт-контракта:** - -```solidity -constructor(DLEConfig memory config) { - // Создаем токены - _mint(address(this), totalSupply); - - // Распределяем среди партнеров - for (uint i = 0; i < config.initialPartners.length; i++) { - _transfer( - address(this), - config.initialPartners[i], - config.initialAmounts[i] - ); - } -} -``` - -**Процесс**: -1. Владелец кошелька деплоит смарт-контракт DLE -2. Указывает адреса партнеров и количество токенов для каждого -3. Токены автоматически распределяются при деплое -4. После этого все изменения только через голосование - -**Пример распределения**: -```javascript -const config = { - initialPartners: [ - '0xAlice...', // Основатель 1 - '0xBob...', // Основатель 2 - '0xCarol...' // Инвестор - ], - initialAmounts: [ - 500000, // 50% для Alice - 300000, // 30% для Bob - 200000 // 20% для Carol - ] -}; -``` - ---- - -## Безопасность смарт-контрактов - -### Защита от переводов токенов - -**КРИТИЧНО**: Токены управления **НЕЛЬЗЯ** перевести обычными способами! - -```solidity -// Переводы ЗАБЛОКИРОВАНЫ -function transfer(address to, uint256 amount) - public - pure - override - returns (bool) -{ - revert ErrTransfersDisabled(); -} - -// Одобрения ЗАБЛОКИРОВАНЫ -function approve(address spender, uint256 amount) - public - pure - override - returns (bool) -{ - revert ErrApprovalsDisabled(); -} - -// TransferFrom ЗАБЛОКИРОВАН -function transferFrom(address from, address to, uint256 amount) - public - pure - override - returns (bool) -{ - revert ErrTransfersDisabled(); -} -``` - -**Что это означает**: -- ❌ Невозможно отправить токены на биржу -- ❌ Невозможно продать токены на DEX -- ❌ Невозможно передать токены другому лицу напрямую -- ❌ Злоумышленник НЕ может украсть токены даже со взломанного кошелька - -### Единственный способ перевода токенов - -**Только через голосование с кворумом:** - -```solidity -// Перевод токенов (только через голосование) -function _transferTokens(address recipient, uint256 amount) internal { - require(msg.sender == address(this), "Only through governance"); - _transfer(address(this), recipient, amount); -} -``` - -**Процесс перевода**: -``` -1. Создание предложения - ├── "Перевести 1000 токенов на адрес 0xNew..." - └── Требуется: минимум 1 токен для создания - -2. Голосование - ├── Длительность: 1-30 дней (настраивается) - ├── Каждый токен = 1 голос - └── Требуется: кворум (например, 10% от всех токенов) - -3. Проверка кворума - ├── Если "За" > "Против" И кворум достигнут - └── → Предложение одобрено - -4. Исполнение - ├── Смарт-контракт автоматически переводит токены - └── Событие записано на блокчейне навсегда -``` - -### Настройка кворума - -**Кворум устанавливается при деплое** и может быть изменен только через голосование: - -```solidity -uint256 public quorumPercentage; // Например, 10% - -function _hasQuorum(uint256 forVotes, uint256 againstVotes) - internal - view - returns (bool) -{ - uint256 totalVotes = forVotes + againstVotes; - uint256 required = (totalSupply() * quorumPercentage) / 100; - return totalVotes >= required; -} -``` - -**Примеры кворума**: -- 5% - легко достичь (для активных организаций) -- 10% - стандартный (рекомендуется) -- 20% - строгий (для критичных решений) -- 51% - абсолютное большинство - -### Защита от реентерабельности - -```solidity -import "@openzeppelin/contracts/utils/ReentrancyGuard.sol"; - -contract DLE is ReentrancyGuard { - function execute(uint256 proposalId) - external - nonReentrant // Защита от реентерабельности - { - // Исполнение предложения - } -} -``` - -### Защита от flash-loans - -**Снапшоты голосов** предотвращают атаки с временным займом токенов: - -```solidity -// Голоса берутся из ПРОШЛОГО блока -uint256 public snapshotTimepoint = block.number - 1; - -function vote(uint256 proposalId, bool support) external { - // Используем баланс из прошлого блока - uint256 votingPower = getPastVotes(msg.sender, snapshotTimepoint); - require(votingPower > 0, "No voting power"); - - // Голосование -} -``` - -**Почему это безопасно**: -1. Злоумышленник берет flash-loan на 1,000,000 токенов -2. Пытается проголосовать -3. Смарт-контракт проверяет баланс в **прошлом блоке** -4. В прошлом блоке у злоумышленника было 0 токенов -5. Голосование отклонено ❌ - -### Валидация всех параметров - -```solidity -// Проверка адресов -if (address == address(0)) revert ErrZeroAddress(); - -// Проверка наличия токенов -if (balanceOf(msg.sender) == 0) revert ErrNotHolder(); - -// Проверка длительности голосования -if (duration < minVotingDuration) revert ErrTooShort(); -if (duration > maxVotingDuration) revert ErrTooLong(); - -// Проверка поддерживаемых сетей -if (!supportedChains[chainId]) revert ErrUnsupportedChain(); -``` - -### Custom errors для экономии gas - -```solidity -// Экономия gas: custom errors вместо require -error ErrZeroAddress(); -error ErrNotHolder(); -error ErrAlreadyVoted(); -error ErrTransfersDisabled(); -error ErrApprovalsDisabled(); -error ErrProposalMissing(); -error ErrWrongChain(); -``` - ---- - -## Защита от взлома кошельков - -### Сценарий: Злоумышленник получил приватный ключ - -**Что может сделать злоумышленник:** - -``` -Попытки злоумышленника: - -1. ❌ Отправить токены на свой адрес - └── БЛОКИРОВАНО: transfer() заблокирован - -2. ❌ Продать токены на DEX (Uniswap, etc.) - └── БЛОКИРОВАНО: approve() заблокирован - -3. ❌ Отправить через transferFrom - └── БЛОКИРОВАНО: transferFrom() заблокирован - -4. ❓ Создать предложение "Перевести токены мне" - └── Требуется голосование других токен-холдеров - └── Кворум: 10%+ должны проголосовать "За" - └── СКОРЕЕ ВСЕГО ПРОВАЛИТСЯ -``` - -### Реальный пример атаки - -``` -Злоумышленник взломал кошелек Alice (500,000 токенов): - -1. Создает предложение: - "Перевести 500,000 токенов на адрес 0xEvil..." - -2. Голосует "За" своими 500,000 голосами (50%) - -3. Но кворум = 10% = 100,000 голосов - Уже достигнут? ДА ✅ - -4. "За" = 500,000 (50%) - "Против" = 0 - -5. Результат: Предложение ОДОБРЕНО ❌ - -ПРОБЛЕМА: Если у Alice большинство токенов! -``` - -### Защита от атаки с большинством токенов - -**Решение 1: Timelock Module** - -```solidity -// Отложенное исполнение (например, 3 дня) -uint256 public constant TIMELOCK_DELAY = 3 days; - -function scheduleProposal(uint256 proposalId) external { - // Предложение одобрено, но исполнится только через 3 дня - executionTime = block.timestamp + TIMELOCK_DELAY; -} -``` - -**Преимущество**: Другие токен-холдеры видят опасное предложение и могут: -- Проголосовать "Против" -- Создать контр-предложение -- Принять меры (например, обратиться в суд) - -**Решение 2: Мультиподпись** - -```solidity -// Требуется несколько подписей для критичных операций -mapping(uint256 => mapping(address => bool)) public approvals; - -function executeWithApprovals( - uint256 proposalId, - address[] calldata signers, - bytes[] calldata signatures -) external { - // Проверяем подписи нескольких токен-холдеров - require(signers.length >= minSigners, "Not enough signers"); - - for (uint i = 0; i < signers.length; i++) { - // Проверка подписи - verifySignature(proposalId, signers[i], signatures[i]); - } - - // Исполнение -} -``` - -**Решение 3: Холодный кошелек для крупных холдеров** - -Рекомендуется держать токены на: -- 🥶 **Hardware wallet** (Ledger, Trezor) - максимальная защита -- 🔒 **Мультиподпись** (Gnosis Safe) - требуется несколько подписей -- ❄️ **Холодное хранение** - offline, не подключен к интернету - -### Мониторинг подозрительных предложений - -**Backend автоматически детектирует опасные предложения:** - -```javascript -// Детектор подозрительных предложений -function detectSuspiciousProposal(proposal) { - const alerts = []; - - // Проверка 1: Перевод большого количества токенов - if (proposal.operation.includes('_transferTokens')) { - const amount = decodeAmount(proposal.operation); - const percentage = (amount / totalSupply) * 100; - - if (percentage > 10) { - alerts.push({ - level: 'HIGH', - message: `Предложение переводит ${percentage}% всех токенов!` - }); - } - } - - // Проверка 2: Инициатор голосует своими токенами - if (proposal.forVotes === proposal.initiatorBalance) { - alerts.push({ - level: 'MEDIUM', - message: 'Инициатор голосует только своими токенами' - }); - } - - // Проверка 3: Быстрое голосование (< 24 часов) - if (proposal.duration < 86400) { - alerts.push({ - level: 'MEDIUM', - message: 'Голосование менее 24 часов - мало времени на проверку' - }); - } - - // Отправляем уведомления всем токен-холдерам - if (alerts.length > 0) { - notifyAllTokenHolders(proposal, alerts); - } -} -``` - ---- - -## Безопасность веб-приложения - -### Аутентификация через SIWE - -**Sign-In with Ethereum** - стандарт безопасной аутентификации: - -```javascript -// Генерация nonce (одноразовый) -const nonce = crypto.randomBytes(32).toString('hex'); - -// Сохранение в БД с шифрованием -await db.query( - 'INSERT INTO nonces (address_encrypted, nonce_encrypted, expires_at) VALUES ($1, $2, $3)', - [encrypt(address), encrypt(nonce), expiresAt] -); - -// Проверка подписи -const message = new SiweMessage({ - domain: req.get('host'), - address: ethers.getAddress(address), - nonce: nonce, - chainId: 1 -}); - -const isValid = await verifySignature( - message.prepareMessage(), - signature, - address -); -``` - -**Безопасность**: -- ✅ Приватный ключ **никогда** не покидает кошелек -- ✅ Каждый nonce используется **один раз** -- ✅ Nonce истекает через 5 минут -- ✅ Подделать подпись невозможно без приватного ключа - -### Шифрование данных - -```javascript -// AES-256 шифрование -const crypto = require('crypto'); - -function encrypt(text, key) { - const iv = crypto.randomBytes(16); - const cipher = crypto.createCipheriv('aes-256-cbc', key, iv); - - let encrypted = cipher.update(text, 'utf8', 'hex'); - encrypted += cipher.final('hex'); - - return iv.toString('hex') + ':' + encrypted; -} - -function decrypt(encrypted, key) { - const parts = encrypted.split(':'); - const iv = Buffer.from(parts[0], 'hex'); - const encryptedText = parts[1]; - - const decipher = crypto.createDecipheriv('aes-256-cbc', key, iv); - let decrypted = decipher.update(encryptedText, 'hex', 'utf8'); - decrypted += decipher.final('utf8'); - - return decrypted; -} -``` - -**Что шифруется**: -- 🔐 Адреса кошельков в БД -- 🔐 Nonces для аутентификации -- 🔐 Сессионные данные -- 🔐 Приватные сообщения - -### Rate Limiting - -```javascript -const rateLimit = require('express-rate-limit'); - -// Ограничение запросов -const apiLimiter = rateLimit({ - windowMs: 15 * 60 * 1000, // 15 минут - max: 100, // максимум 100 запросов - message: 'Слишком много запросов, попробуйте позже' -}); - -// Ограничение для аутентификации (более строгое) -const authLimiter = rateLimit({ - windowMs: 15 * 60 * 1000, - max: 5, // максимум 5 попыток аутентификации - skipSuccessfulRequests: true -}); - -app.use('/api/', apiLimiter); -app.use('/api/auth/', authLimiter); -``` - -### CSRF защита - -```javascript -const csrf = require('csurf'); - -// CSRF токены для всех форм -const csrfProtection = csrf({ cookie: true }); - -app.post('/api/action', csrfProtection, async (req, res) => { - // Проверка CSRF токена автоматическая -}); -``` - -### XSS защита - -```javascript -import DOMPurify from 'dompurify'; - -// Очистка HTML от опасного кода -function sanitizeHTML(html) { - return DOMPurify.sanitize(html, { - ALLOWED_TAGS: ['b', 'i', 'em', 'strong', 'a', 'p'], - ALLOWED_ATTR: ['href'] - }); -} - -// Использование -const userInput = req.body.comment; -const safeHTML = sanitizeHTML(userInput); -``` - -### Helmet.js для защиты заголовков - -```javascript -const helmet = require('helmet'); - -app.use(helmet({ - contentSecurityPolicy: { - directives: { - defaultSrc: ["'self'"], - scriptSrc: ["'self'", "'unsafe-inline'"], - styleSrc: ["'self'", "'unsafe-inline'"], - imgSrc: ["'self'", "data:", "https:"], - } - }, - hsts: { - maxAge: 31536000, - includeSubDomains: true, - preload: true - } -})); -``` - -### Clean Logs система - -**Автоматическая очистка логов от чувствительных данных:** - -```javascript -function cleanLogs() { - const sensitivePatterns = [ - /0x[a-fA-F0-9]{40}/g, // Адреса кошельков - /pk_[a-zA-Z0-9]{64}/g, // Приватные ключи (если случайно залогированы) - /nonce:\s*[a-f0-9]{64}/gi, // Nonces - ]; - - // Замена чувствительных данных на *** - let cleanedLog = logContent; - sensitivePatterns.forEach(pattern => { - cleanedLog = cleanedLog.replace(pattern, '[REDACTED]'); - }); - - return cleanedLog; -} -``` - ---- - -## Управление модулями - -### Только смарт-контракт DLE управляет модулями - -**Модификатор `onlyDLE`** гарантирует, что только смарт-контракт DLE может вызывать функции модуля: - -```solidity -// Модуль: TreasuryModule -contract TreasuryModule { - address public immutable dleContract; - - modifier onlyDLE() { - require(msg.sender == dleContract, "Only DLE can call"); - _; - } - - // Только DLE может переводить токены из казны - function transferTokens( - address token, - address recipient, - uint256 amount - ) external onlyDLE { - IERC20(token).transfer(recipient, amount); - } -} -``` - -**Что это означает**: -- ❌ Владелец кошелька **НЕ может** напрямую вызвать функции модуля -- ❌ Backend **НЕ может** вызвать функции модуля -- ❌ Злоумышленник **НЕ может** взаимодействовать с модулем -- ✅ **Только** смарт-контракт DLE через голосование - -### Процесс использования модуля - -``` -1. Токен-холдер создает предложение - └── "Перевести 1000 USDC из Treasury на маркетинг" - -2. Предложение содержит закодированный вызов функции модуля - └── operation = treasuryModule.transferTokens(USDC, marketing, 1000) - -3. Голосование - -4. Если одобрено, DLE контракт вызывает модуль: - └── TreasuryModule.transferTokens() ✅ - └── msg.sender = DLE контракт ✅ - -5. Модуль проверяет msg.sender и исполняет -``` - -### Добавление нового модуля - -**Только через голосование:** - -```solidity -// Операция добавления модуля -function _addModule(bytes32 moduleId, address moduleAddress) internal { - require(msg.sender == address(this), "Only through voting"); - require(moduleAddress != address(0), "Invalid address"); - require(!activeModules[moduleId], "Module already exists"); - - modules[moduleId] = moduleAddress; - activeModules[moduleId] = true; - - emit ModuleAdded(moduleId, moduleAddress); -} -``` - -**Процесс**: -1. Деплой нового модуля -2. Создание предложения: "Добавить модуль X по адресу 0x..." -3. Голосование -4. Если одобрено → модуль добавлен -5. Модуль можно использовать - -### Удаление скомпрометированного модуля - -Если модуль оказался уязвимым: - -``` -1. Токен-холдер создает экстренное предложение - └── "Удалить скомпрометированный модуль X" - └── Длительность: 1 день (экстренное голосование) - -2. Голосование (ускоренное) - -3. Модуль удален - └── Больше нельзя вызвать из DLE контракта -``` - ---- - -## Аудит и мониторинг - -### Прозрачность на блокчейне - -**Все действия записаны навсегда:** - -```solidity -// События для аудита -event ProposalCreated(uint256 proposalId, address initiator); -event ProposalVoted(uint256 proposalId, address voter, bool support); -event ProposalExecuted(uint256 proposalId, bytes operation); -event ModuleAdded(bytes32 moduleId, address moduleAddress); -event TokensTransferred(address recipient, uint256 amount); -``` - -**Проверка в блокчейн-сканере:** -``` -https://etherscan.io/address/0xDLE_CONTRACT_ADDRESS -└── Все транзакции видны публично -└── Невозможно скрыть или удалить -``` - -### Мониторинг в реальном времени - -**Backend отслеживает все события:** - -```javascript -// Подписка на события смарт-контракта -dleContract.on('ProposalCreated', async (proposalId, initiator, event) => { - logger.info(`Новое предложение #${proposalId} от ${initiator}`); - - // Получаем детали предложения - const proposal = await dleContract.proposals(proposalId); - - // Анализ безопасности - const risks = analyzeProposalRisks(proposal); - - // Уведомление токен-холдеров - if (risks.level === 'HIGH') { - await notifyAllTokenHolders({ - type: 'SECURITY_ALERT', - proposalId, - risks - }); - } -}); -``` - -### Система алертов - -```javascript -// Критичные события требуют немедленного уведомления -const criticalEvents = [ - 'ProposalCreated', // Новое предложение - 'ModuleAdded', // Добавлен модуль - 'TokensTransferred' // Переведены токены -]; - -async function sendAlert(event, data) { - // Email уведомления - await sendEmail({ - to: allTokenHolders, - subject: `[DLE Alert] ${event}`, - body: formatAlert(data) - }); - - // Telegram уведомления - await sendTelegram({ - chat: dleNotificationsChat, - message: formatAlert(data) - }); - - // Запись в логи - logger.warn(`ALERT: ${event}`, data); -} -``` - ---- - -## Рекомендации по безопасности - -### Для владельцев токенов - -1. **🥶 Используйте hardware wallet** (Ledger, Trezor) - - Приватный ключ никогда не покидает устройство - - Подтверждение каждой операции на физическом устройстве - -2. **🔐 Храните seed фразу безопасно** - - Напишите на бумаге, не храните в цифровом виде - - Используйте металлические пластины для долговечности - - Храните в сейфе или банковской ячейке - -3. **🚨 Включите уведомления** - - Email алерты на новые предложения - - Telegram боты для критичных событий - -4. **👀 Проверяйте все предложения** - - Читайте описание перед голосованием - - Проверяйте адреса получателей - - Используйте timelock для критичных операций - -5. **❄️ Разделите токены** - - Горячий кошелек: 10-20% для повседневного использования - - Холодный кошелек: 80-90% для долгосрочного хранения - -### Для администраторов - -1. **🔄 Регулярные обновления** - ```bash - # Еженедельное обновление - docker-compose pull - docker-compose up -d - ``` - -2. **💾 Резервные копии** - ```bash - # Ежедневный бэкап базы данных - docker exec dapp-postgres pg_dump -U user db > backup.sql - ``` - -3. **📊 Мониторинг логов** - ```bash - # Проверка логов на подозрительную активность - docker logs dapp-backend | grep -i "error\|warning\|failed" - ``` - -4. **🔑 Ротация ключей шифрования** - - Меняйте ключ шифрования раз в год - - Храните старые ключи для расшифровки исторических данных - -5. **🛡️ Firewall настройка** - ```bash - # Разрешить только необходимые порты - ufw allow 80/tcp # HTTP - ufw allow 443/tcp # HTTPS - ufw enable - ``` - -### Для разработчиков - -1. **✅ Аудит смарт-контрактов** - - Используйте Slither для статического анализа - - Mythril для поиска уязвимостей - - Ручной аудит критичного кода - -2. **🧪 Тестирование** - ```bash - # Запуск тестов - cd backend - yarn test - - # Покрытие кода - yarn coverage - ``` - -3. **📝 Код-ревью** - - Все изменения через pull requests - - Минимум 2 ревьюера для критичных изменений - -4. **🔒 Безопасные зависимости** - ```bash - # Проверка уязвимостей - yarn audit - npm audit fix - ``` - ---- - -## Сценарии атак и защита - -### Сценарий 1: Фишинговая атака - -**Атака:** -``` -1. Злоумышленник создает поддельный сайт: dlle.com (вместо dle.com) -2. Отправляет фишинговые письма токен-холдерам -3. Просит подключить кошелек и подписать транзакцию -``` - -**Защита:** -```javascript -// Backend проверяет домен в SIWE сообщении -const message = new SiweMessage({ - domain: req.get('host'), // Должен быть правильный домен - uri: req.get('origin') -}); - -// Frontend показывает предупреждение -if (window.location.hostname !== 'dle.app') { - alert('⚠️ ВНИМАНИЕ: Это НЕ официальный сайт DLE!'); -} -``` - -**Рекомендации пользователям:** -- ✅ Всегда проверяйте URL перед подключением кошелька -- ✅ Используйте закладки браузера -- ✅ Проверяйте SSL сертификат (зеленый замок) - -### Сценарий 2: Взлом backend сервера - -**Атака:** -``` -1. Злоумышленник получает доступ к backend серверу -2. Пытается изменить код для обхода проверки токенов -3. Или полностью выводит веб-приложение из строя -``` - -**Защита:** -``` -✅ Проверка токенов происходит на блокчейне (неизменяемо) -✅ Backend может быть скомпрометирован, но: - ├── Невозможно изменить баланс токенов в смарт-контракте - ├── Невозможно создать поддельные токены - ├── Невозможно изменить правила смарт-контракта - └── Пользователи увидят расхождение между backend и блокчейном -``` - -**Критично: Веб-приложение - это только интерфейс!** - -Даже при **полном взломе** веб-приложения: -- ✅ **Все активы бизнеса защищены** на блокчейне -- ✅ **Смарт-контракты продолжают работать** независимо от веб-приложения -- ✅ **Можно управлять через блокчейн-сканеры** (Etherscan, Polygonscan, и др.) - -### Управление через блокчейн-сканеры - -**Если веб-приложение недоступно, используйте блокчейн-сканеры:** - -#### 1. Проверка баланса токенов - -``` -1. Откройте Etherscan: https://etherscan.io -2. Введите адрес смарт-контракта DLE -3. Перейдите на вкладку "Read Contract" -4. Вызовите функцию balanceOf(address) -5. Введите адрес вашего кошелька -6. Нажмите "Query" - увидите баланс токенов ✅ -``` - -**Пример**: -``` -Contract Address: 0x1234...DLE -Function: balanceOf -Address: 0xYourWallet... -Result: 500000 (ваш баланс токенов) -``` - -#### 2. Создание предложения через Etherscan - -``` -1. Откройте Etherscan и найдите смарт-контракт DLE -2. Перейдите на вкладку "Write Contract" -3. Подключите кошелек MetaMask -4. Найдите функцию createProposal -5. Заполните параметры: - - description: "Восстановить веб-приложение" - - operation: закодированный вызов функции - - votingDuration: 86400 (1 день в секундах) -6. Нажмите "Write" и подтвердите транзакцию ✅ -``` - -**Пример создания предложения**: -```solidity -// Через Etherscan Write Contract -createProposal( - "Перевести 10,000 USDT на восстановление инфраструктуры", - 0x..., // закодированный вызов transferTokens - 86400 // 1 день -) -``` - -#### 3. Голосование через Etherscan - -``` -1. Откройте смарт-контракт DLE на Etherscan -2. Вкладка "Write Contract" -3. Подключите кошелек -4. Функция vote(uint256 proposalId, bool support) - - proposalId: номер предложения (например, 5) - - support: true (за) или false (против) -5. Нажмите "Write" ✅ -``` - -#### 4. Проверка состояния предложения - -``` -1. Вкладка "Read Contract" на Etherscan -2. Функция proposals(uint256) -3. Введите ID предложения -4. Увидите все детали: - - Описание - - Голоса "За" и "Против" - - Статус (Active, Executed, Failed) - - Время окончания голосования -``` - -#### 5. Исполнение одобренного предложения - -``` -1. Если предложение одобрено и время истекло -2. Откройте "Write Contract" -3. Функция execute(uint256 proposalId) -4. Введите ID предложения -5. Нажмите "Write" - предложение исполнится ✅ -``` - -### Популярные блокчейн-сканеры для DLE - -| Сеть | Блокчейн-сканер | URL | -|------|-----------------|-----| -| **Ethereum Mainnet** | Etherscan | https://etherscan.io | -| **Polygon** | Polygonscan | https://polygonscan.com | -| **Binance Smart Chain** | BscScan | https://bscscan.com | -| **Arbitrum** | Arbiscan | https://arbiscan.io | -| **Optimism** | Optimistic Etherscan | https://optimistic.etherscan.io | -| **Avalanche** | SnowTrace | https://snowtrace.io | -| **Base** | BaseScan | https://basescan.org | - -### Преимущества управления через блокчейн-сканеры - -**1. Полная независимость от веб-приложения** -``` -Веб-приложение взломано → Блокчейн работает ✅ -Backend сервер упал → Смарт-контракты работают ✅ -Frontend недоступен → Можно управлять через Etherscan ✅ -``` - -**2. Невозможно подделать данные** -``` -Злоумышленник на backend → Блокчейн-сканер показывает правду -Поддельный frontend → Etherscan покажет реальные токены -Измененная логика → Смарт-контракт работает как задумано -``` - -**3. Доступ 24/7 из любой точки мира** -``` -Нет доступа к серверу → Etherscan доступен всегда -Приложение на обслуживании → Управление через блокчейн -DDoS атака на сайт → Блокчейн недоступен для DDoS -``` - -**Реакция на взлом:** -1. Пользователи замечают странное поведение веб-приложения -2. Проверяют баланс токенов напрямую через Etherscan ✅ -3. Создают предложение через Etherscan на восстановление -4. Голосуют за восстановление инфраструктуры -5. Администраторы восстанавливают backend из резервной копии -6. **Никакие токены и активы не потеряны** ✅ - -**Вывод**: Веб-приложение - это лишь удобный интерфейс. Реальная власть и активы находятся на блокчейне, где они защищены криптографией и невозможно их изменить или украсть через взлом веб-приложения. - -### Сценарий 3: 51% атака - -**Атака:** -``` -1. Злоумышленник покупает или получает >51% всех токенов -2. Создает предложение "Перевести все активы мне" -3. Голосует всеми своими токенами "За" -4. Предложение одобрено -``` - -**Защита:** -```javascript -// Timelock Module дает время на реакцию -const TIMELOCK = 7 days; - -// Другие токен-холдеры могут: -1. Проголосовать "Против" (если у них еще 49%) -2. Создать контр-предложение -3. Обратиться в правоохранительные органы -4. Отменить предложение через emergency функцию (если настроена) -``` - -**Долгосрочная защита:** -- Равномерное распределение токенов между партнерами -- Мультиподпись для крупных операций -- Квадратичное голосование (опция для будущих версий) - -### Сценарий 4: Social Engineering - -**Атака:** -``` -1. Злоумышленник выдает себя за поддержку DLE -2. Просит токен-холдера "для верификации" подписать сообщение -3. Сообщение на самом деле - одобрение перевода токенов -``` - -**Защита:** -```javascript -// Frontend всегда показывает ЧТО подписывается -function signMessage(message) { - // Показываем пользователю точное содержимое - const confirmation = confirm(` - Вы собираетесь подписать: - ${message} - - ⚠️ НИКОГДА не подписывайте сообщения по просьбе "поддержки"! - - Продолжить? - `); - - if (!confirmation) return; - - // Подпись -} -``` - -**Рекомендации:** -- ❌ Поддержка **НИКОГДА** не попросит подписать сообщение -- ❌ Не доверяйте "срочным" запросам -- ✅ Всегда проверяйте, что подписываете -- ✅ При сомнениях - свяжитесь с официальной поддержкой - ---- - -## Заключение - -### Многоуровневая защита DLE - -``` -┌─────────────────────────────────────────────────────┐ -│ Уровни безопасности DLE │ -├─────────────────────────────────────────────────────┤ -│ 1️⃣ Блокчейн │ -│ └── Токены нельзя украсть даже со взломом │ -│ │ -│ 2️⃣ Смарт-контракты │ -│ └── Аудит, OpenZeppelin, иммутабельность │ -│ │ -│ 3️⃣ Голосование с кворумом │ -│ └── Невозможно единоличное решение │ -│ │ -│ 4️⃣ Timelock │ -│ └── Время на реакцию при атаке │ -│ │ -│ 5️⃣ Backend проверки │ -│ └── Проверка токенов в реальном времени │ -│ │ -│ 6️⃣ Frontend защита │ -│ └── XSS, CSRF, rate limiting │ -│ │ -│ 7️⃣ Мониторинг и алерты │ -│ └── Детекция подозрительных действий │ -└─────────────────────────────────────────────────────┘ -``` - -### Ключевые преимущества безопасности - -1. **🔐 Контроль доступа через токены** - - Без токенов доступ невозможен - - Проверка в реальном времени на блокчейне - -2. **🛡️ Защита от кражи токенов** - - Невозможно перевести без голосования - - Даже при взломе кошелька токены защищены - -3. **🌐 Независимость от веб-приложения** - - Даже при взломе веб-приложения активы бизнеса защищены на блокчейне - - Можно управлять через блокчейн-сканеры (Etherscan, Polygonscan и др.) - - Смарт-контракты работают независимо от frontend/backend - - Веб-приложение - это только удобный интерфейс, реальная власть на блокчейне - -4. **⚖️ Коллективное управление** - - Критичные решения только через голосование - - Кворум предотвращает единоличные действия - -5. **🔒 Модули под контролем смарт-контракта** - - Только DLE контракт может вызывать модули - - Никакого прямого доступа - -6. **📊 Полная прозрачность** - - Все действия на блокчейне - - Невозможно скрыть или подделать - -### Следующие шаги - -1. 📖 [Изучите техническую документацию](./blockchain-integration-technical.md) -2. 🔧 [Настройте безопасное окружение](./setup-instruction.md) -3. 📋 [Прочитайте FAQ](./FAQ.md) -4. 💬 [Получите поддержку](https://hb3-accelerator.com/) ---- - -**© 2024-2025 Тарабанов Александр Викторович. Все права защищены.** - -**Последнее обновление**: October 2025 - diff --git a/docs/service-terms.md b/docs/service-terms.md deleted file mode 100644 index f80aa36..0000000 --- a/docs/service-terms.md +++ /dev/null @@ -1,42 +0,0 @@ - - -# Условия приобретения и обслуживания Digital Legal Entity — краткое резюме - -> Важно: это краткое резюме условий. Канонический и юридически значимый полный текст находится здесь: [legal/service-terms.md](../legal/service-terms.md). - -Ключевые тезисы: -- Тип лицензии: бессрочная (Perpetual), права определяются количеством токенов (1 или 10). -- Обновления и базовое обслуживание: бесплатно 5 лет с даты on-chain передачи токена. -- Голосование за развитие: 1 токен = 1 голос, решения большинством ≥51%. -- Возврат 70% возможен при соблюдении условий программы (см. оригинал). -- Поддержка, релизы, база знаний — через приложение `https://hb3-accelerator.com/`. -- Полный перечень ограничений/ответственности — в оригинале. - -## 📚 Дополнительная документация - -### Изучите возможности DLE -- 🤖 **[AI Ассистент](./ai-assistant.md)** - второй пилот для команды, высвобождает время для стратегии -- 💼 **[Блокчейн для бизнеса](./blockchain-for-business.md)** - токенизация активов и решение бизнес-задач -- 🛡️ **[Безопасность DLE](./security.md)** - многоуровневая защита вашего бизнеса - -### Техническая документация -- 🔗 **[Техническая документация по блокчейну](./blockchain-integration-technical.md)** - для разработчиков -- 🔧 **[Инструкция по установке](./setup-instruction.md)** - пошаговая настройка -- 📝 **[Описание приложения](./application-description.md)** - обзор функциональности -- 📋 **[FAQ](./FAQ.md)** - часто задаваемые вопросы - -### Контакты и поддержка -- 📧 **Email**: info@hb3-accelerator.com -- 🌐 **Сайт**: https://hb3-accelerator.com -- 💬 **Чат поддержки**: https://hb3-accelerator.com/ -- 🐙 **GitHub**: https://github.com/VC-HB3-Accelerator diff --git a/docs/setup-ai-assistant.md b/docs/setup-ai-assistant.md deleted file mode 100644 index 2841ab6..0000000 --- a/docs/setup-ai-assistant.md +++ /dev/null @@ -1,929 +0,0 @@ -# Инструкция по настройке AI Ассистента с векторным поиском - -## 🤖 Полное руководство по запуску интеллектуального помощника - -Этот документ описывает пошаговый процесс настройки AI ассистента для решения бизнес-задач через электронные таблицы и векторный поиск. - ---- - -## 📚 Что вы настроите - -После выполнения инструкции у вас будет: - -✅ Работающий AI ассистент с локальной моделью (Ollama) -✅ База знаний для ответов клиентам (FAQ) -✅ Автоматизация работы с поставщиками -✅ Система обучения персонала -✅ Векторный поиск по вашим данным -✅ Значительная экономия времени и ресурсов - -> 💡 **Экономический эффект**: См. [AI Ассистент](./ai-assistant.md) - там подробно описаны все возможности и расчеты экономии. - ---- - -## ⏱️ Время настройки - -- **Быстрая настройка**: 20-30 минут (базовый FAQ) -- **Полная настройка**: 1-2 часа (все возможности) - ---- - -## Шаг 1: Установка и запуск Ollama - -### 1.1 Проверка статуса Ollama - -1. Перейдите в **Настройки** → вкладка **Интеграции** -2. Найдите блок **"Ollama"** и нажмите **"Подробнее"** -3. Проверьте статус подключения: - - ✅ **"Ollama is running"** — все готово, переходите к шагу 1.3 - - ❌ **"Ollama API not responding"** — переходите к шагу 1.2 - -### 1.2 Запуск Ollama (если не запущен) - -Если Ollama не запущен, выполните в терминале: - -```bash -# Для Docker (рекомендуется) -docker-compose up -d ollama - -# Или локально -ollama serve -``` - -Обновите страницу и проверьте статус снова. - -### 1.3 Установка модели для AI - -1. В разделе **Ollama** нажмите **"Установить модель"** -2. Выберите модель: - - **qwen2.5:7b** (рекомендуется) — для русского языка, 4.7 GB - - **llama2:7b** — для английского, 3.8 GB - - **mistral:7b** — универсальная, 4.1 GB -3. Нажмите **"Установить"** -4. Дождитесь завершения загрузки (5-10 минут в зависимости от скорости интернета) - -> 💡 **Подсказка**: Модель скачивается один раз и хранится локально - -### 1.4 Установка Embedding модели - -1. В том же разделе найдите **"Установить Embedding модель"** -2. Выберите модель: - - **mxbai-embed-large:latest** (рекомендуется) — 670 MB - - **nomic-embed-text:latest** — альтернатива, 274 MB -3. Нажмите **"Установить"** - -> ⚠️ **Важно**: Embedding модель нужна для векторного поиска (RAG) - ---- - -## Шаг 2: Создание базы знаний (электронные таблицы) - -### 2.1 Создание таблицы FAQ - -1. Перейдите в **Таблицы** (в главном меню) -2. Нажмите **"+ Создать таблицу"** -3. Заполните: - - **Название**: `FAQ - Часто задаваемые вопросы` - - **Описание**: `База знаний для AI ассистента по работе с клиентами` -4. Нажмите **"Создать"** - -### 2.2 Настройка столбцов таблицы - -Добавьте следующие столбцы: - -#### Столбец 1: Вопрос (обязательный для RAG) - -1. Нажмите **"+ Добавить столбец"** -2. Заполните: - - **Название**: `Вопрос` - - **Тип**: `Текст` - - **Назначение**: Выберите `Вопрос для AI` ⭐ -3. Нажмите **"Сохранить"** - -> ⚠️ **Критично**: Обязательно выберите назначение "Вопрос для AI" — это поле будет индексироваться для векторного поиска - -#### Столбец 2: Ответ (обязательный для RAG) - -1. Нажмите **"+ Добавить столбец"** -2. Заполните: - - **Название**: `Ответ` - - **Тип**: `Текст` - - **Назначение**: Выберите `Ответ AI` ⭐ -3. Нажмите **"Сохранить"** - -#### Столбец 3: Продукт (опционально, для фильтрации) - -1. Нажмите **"+ Добавить столбец"** -2. Заполните: - - **Название**: `Продукт` - - **Тип**: `Множественный выбор` - - **Варианты**: `Базовый`, `Премиум`, `Корпоративный` - - **Назначение**: Выберите `Фильтр по продукту` -3. Нажмите **"Сохранить"** - -#### Столбец 4: Теги (опционально, для категоризации) - -1. Нажмите **"+ Добавить столбец"** -2. Заполните: - - **Название**: `Теги` - - **Тип**: `Множественный выбор` - - **Варианты**: `Оплата`, `Доставка`, `Возврат`, `Гарантия`, `Техподдержка` - - **Назначение**: Выберите `Теги пользователя` -3. Нажмите **"Сохранить"** - -#### Столбец 5: Приоритет (опционально) - -1. Нажмите **"+ Добавить столбец"** -2. Заполните: - - **Название**: `Приоритет` - - **Тип**: `Число` - - **Назначение**: Выберите `Приоритет` -3. Нажмите **"Сохранить"** - -> 💡 **Подсказка**: Вопросы с более высоким приоритетом будут показываться AI первыми - -### 2.3 Заполнение базы знаний - -Добавьте типовые вопросы и ответы: - -**Пример 1: Оплата** - -| Вопрос | Ответ | Продукт | Теги | Приоритет | -|--------|-------|---------|------|-----------| -| Как оплатить заказ? | Мы принимаем оплату банковской картой, через PayPal, или банковским переводом. Выберите удобный способ при оформлении заказа. | Все | Оплата | 10 | -| Можно ли оплатить частями? | Да, для заказов от 50,000₽ доступна рассрочка на 3, 6 или 12 месяцев без переплаты. | Премиум, Корпоративный | Оплата | 8 | - -**Пример 2: Доставка** - -| Вопрос | Ответ | Продукт | Теги | Приоритет | -|--------|-------|---------|------|-----------| -| Сколько времени занимает доставка? | Стандартная доставка: 3-5 рабочих дней по России. Экспресс-доставка: 1-2 дня в крупных городах. | Все | Доставка | 10 | -| Сколько стоит доставка? | Бесплатная доставка при заказе от 5,000₽. Для заказов менее 5,000₽ стоимость доставки 300₽. | Все | Доставка | 9 | - -**Пример 3: Возврат** - -| Вопрос | Ответ | Продукт | Теги | Приоритет | -|--------|-------|---------|------|-----------| -| Как вернуть товар? | Возврат возможен в течение 14 дней с момента получения. Товар должен быть в оригинальной упаковке, с сохранением товарного вида. Свяжитесь с поддержкой для оформления возврата. | Все | Возврат | 10 | -| Когда вернут деньги? | Возврат денежных средств производится в течение 5-10 рабочих дней после получения товара на наш склад. | Все | Возврат | 8 | - -> 💡 **Рекомендация**: Добавьте минимум 20-30 вопросов для качественной работы AI. Чем больше вопросов, тем точнее ответы! - -### 2.4 Активация таблицы как источника для AI - -1. В правом верхнем углу таблицы найдите **⚙️ Настройки таблицы** -2. Включите переключатель **"Использовать как источник для AI"** ✅ -3. Нажмите **"Сохранить"** - -> ✅ **Готово!** Таблица теперь индексируется для векторного поиска - ---- - -## Шаг 3: Настройка AI провайдера (Ollama) - -### 3.1 Открытие настроек Ollama - -1. Перейдите в **Настройки** → **Интеграции** -2. Найдите блок **"Ollama"** и нажмите **"Подробнее"** - -### 3.2 Проверка Base URL - -1. Проверьте поле **Base URL**: - - Для Docker: `http://ollama:11434` ✅ - - Для локального: `http://localhost:11434` -2. Если URL неверный, исправьте и нажмите **"Сохранить"** - -### 3.3 Выбор модели - -1. В поле **"Модель (LLM)"** выберите установленную модель: - - `qwen2.5:7b` (рекомендуется для русского) -2. В поле **"Embeddings-модель"** выберите: - - `mxbai-embed-large:latest` -3. Нажмите **"Сохранить"** - ---- - -## Шаг 4: Настройка AI Ассистента - -### 4.1 Открытие настроек ассистента - -1. Перейдите в **Настройки** → **Интеграции** -2. Найдите блок **"ИИ-ассистент"** и нажмите **"Подробнее"** - -### 4.2 Настройка системного промта - -В поле **"Системный промт"** введите инструкции для AI: - -**Базовый промт (для начала)**: - -``` -Вы — профессиональный ассистент службы поддержки компании. - -Правила: -1. Отвечайте вежливо и профессионально -2. Используйте информацию из базы знаний -3. Если информации нет — предложите связаться с оператором -4. Отвечайте кратко и по существу -5. Всегда заканчивайте вопросом "Чем еще могу помочь?" -``` - -**Продвинутый промт (с персонализацией)**: - -``` -Вы — профессиональный ассистент службы поддержки компании "Название вашей компании". - -О компании: -- Мы занимаемся [краткое описание бизнеса] -- Наши ценности: качество, надежность, клиентоориентированность - -Стиль общения: -- Дружелюбный, но профессиональный -- Обращайтесь к клиенту на "Вы" -- Используйте эмодзи умеренно (1-2 на сообщение) - -Правила ответа: -1. ОБЯЗАТЕЛЬНО: Отвечайте ТОЛЬКО на русском языке. Все вопросы и ответы должны быть на русском языке -2. Сначала ищите ответ в базе знаний (RAG) -3. Если нашли — отвечайте на основе найденной информации -4. Если не нашли — честно скажите и предложите помощь оператора -5. Не придумывайте информацию о ценах, сроках, условиях -6. При сложных вопросах предлагайте связаться с менеджером - -Всегда заканчивайте: "Чем еще могу помочь? 😊" -``` - -### 4.3 Выбор моделей - -1. **LLM-модель**: Выберите `qwen2.5:7b (ollama)` -2. **Embedding-модель**: Выберите `mxbai-embed-large:latest (ollama)` - -> 💡 **Подсказка**: Модели автоматически подтянутся из настроек Ollama - -> 📊 **Размер контекстного окна**: -> - **Qwen2.5:7b**: Базовый контекст = **32,768 токенов** (~24,000 русских слов) -> - Всего данных, отправляемых в модель: -> - Системный промпт: ~500-2000 символов (~300-1200 токенов) -> - История диалога: до 20 сообщений (~100-500 токенов на сообщение = ~2000-10000 токенов) -> - RAG контекст: ~500-2000 токенов (из найденных данных) -> - Текущий вопрос: ~50-200 токенов -> - **Итого**: примерно 3,000-15,000 токенов (запас достаточен) -> - Если нужен больший контекст → используйте Qwen3 с YaRN (до 131K токенов) - -### 4.4 Выбор RAG-таблицы - -1. В поле **"Выбранные RAG-таблицы"** выберите созданную таблицу: - - `FAQ - Часто задаваемые вопросы` -2. Нажмите **"Сохранить"** - -### 4.5 Настройка правил AI (Rules) - -Создайте набор правил для управления поведением AI: - -1. Нажмите кнопку **"Создать"** рядом с полем "Набор правил" -2. В модальном окне заполните: - -**Название**: `Гибридный режим (RAG + генерация)` - -**Описание**: `AI сначала ищет в базе знаний, если не находит — генерирует ответ` - -**Правила (JSON)**: -```json -{ - "checkUserTags": true, - "searchRagFirst": true, - "generateIfNoRag": true, - "temperature": 0.7, - "maxTokens": 500 -} -``` - -3. Нажмите **"Сохранить"** -4. Выберите созданное правило в выпадающем списке - -> 💡 **Что означают параметры**: -> - `checkUserTags: true` — учитывать теги пользователя при поиске -> - `searchRagFirst: true` — сначала искать в базе знаний -> - `generateIfNoRag: true` — генерировать ответ, если ничего не найдено -> - `temperature: 0.7` — баланс между точностью и креативностью (0.0-1.0) -> - `maxTokens: 500` — максимальная длина ответа - -### 4.6 Настройки RAG поиска - -Разверните раздел **"🔍 Настройки RAG поиска"**: - -**Базовые настройки:** -1. **Метод поиска**: Выберите `Гибридный поиск` (рекомендуется) -2. **Максимальное количество результатов**: `5` -3. **Порог релевантности**: `0.1` (от 0.01 до 1.0) - -**Извлечение ключевых слов:** -1. ✅ **Включить извлечение ключевых слов** -2. **Минимальная длина слова**: `3` -3. **Максимальное количество ключевых слов**: `10` -4. ✅ **Удалять стоп-слова** - -**Веса поиска (для гибридного):** -1. **Семантический поиск**: `70%` (точность) -2. **Поиск по ключевым словам**: `30%` (скорость) - -**Дополнительные настройки:** -1. ✅ **Нечеткий поиск** (для опечаток) -2. ✅ **Стемминг слов** (находит разные формы слова) -3. ☐ **Поиск синонимов** (пока отключен) - -### 4.7 Сохранение настроек - -Нажмите кнопку **"Сохранить"** внизу формы. - ---- - -## Шаг 5: Тестирование AI Ассистента - -### 5.1 Использование встроенного тестера - -1. На странице настроек AI ассистента прокрутите вниз до блока **"🔍 Мониторинг системы"** -2. В разделе **"🧠 Тест RAG-функциональности"**: - - Убедитесь, что выбрана таблица `FAQ - Часто задаваемые вопросы` - - Введите тестовый вопрос: `Как оплатить заказ?` - - Нажмите **"Тестировать RAG"** -3. Наблюдайте за процессом: - - 🔍 Ищем ответ в базе знаний... (векторный поиск) - - 🤖 Генерируем ответ с помощью ИИ... (LLM генерация) - - ✅ Готово! -4. Проверьте результат: - - Должен отобразиться ответ из вашей таблицы - - Score (оценка близости): чем ближе к 0, тем лучше - -> 💡 **Хороший Score**: от -300 до 0 (ответ найден) -> ⚠️ **Плохой Score**: больше 300 (ответ не найден, AI придумает свой) - -### 5.2 Тестирование через Web Chat - -1. Перейдите на главную страницу приложения -2. Найдите виджет **"💬 Чат с AI"** (обычно справа внизу) -3. Нажмите на виджет, чтобы открыть чат -4. Введите вопрос: `Сколько стоит доставка?` -5. Проверьте ответ AI - -**Ожидаемый результат:** -``` -🤖 AI Ассистент: -Бесплатная доставка при заказе от 5,000₽. -Для заказов менее 5,000₽ стоимость доставки 300₽. - -Чем еще могу помочь? 😊 -``` - -### 5.3 Тестирование разных сценариев - -Попробуйте задать различные вопросы: - -**✅ Вопрос из базы знаний:** -``` -Пользователь: "Как вернуть товар?" -AI: [Ответ из таблицы FAQ] -``` - -**⚠️ Вопрос НЕ из базы знаний:** -``` -Пользователь: "Какая погода сегодня?" -AI: "Извините, я специализируюсь на вопросах о нашей компании и продуктах. - По вопросам погоды обратитесь к специализированным сервисам. - Чем еще могу помочь?" -``` - -**🎯 Вопрос с опечаткой:** -``` -Пользователь: "Как аплатить заказ?" (опечатка) -AI: [Найдет правильный ответ благодаря нечеткому поиску] -``` - ---- - -## Шаг 6: Расширенные возможности (опционально) - -### 6.1 Создание таблицы для работы с поставщиками - -#### Структура таблицы "База поставщиков" - -1. Создайте новую таблицу: `База поставщиков` -2. Добавьте столбцы: - -| Столбец | Тип | Описание | -|---------|-----|----------| -| Название компании | Текст | Наименование поставщика | -| Категория товаров | Множественный выбор | Электроника, Мебель, Одежда, и т.д. | -| Контактное лицо | Текст | ФИО менеджера | -| Email | Текст | Электронная почта | -| Телефон | Текст | Контактный телефон | -| Цены | Текст | Прайс-лист (краткое описание) | -| Условия оплаты | Текст | Отсрочка, предоплата, и т.д. | -| Минимальный заказ | Число | Минимальная сумма заказа | -| Срок доставки | Текст | Сроки поставки | -| Рейтинг | Число | Оценка от 1 до 10 | -| Примечания | Текст | Дополнительная информация | - -3. Активируйте как источник для AI -4. Заполните данными о ваших поставщиках - -#### Промт для AI закупщика - -Добавьте в системный промт: - -``` -ДОПОЛНИТЕЛЬНО - Работа с поставщиками: - -Когда пользователь спрашивает о поставщиках: -1. Ищите в базе "База поставщиков" -2. Фильтруйте по категории товаров -3. Сортируйте по рейтингу и условиям -4. Предоставьте ТОП-3 рекомендации - -Формат ответа: -🏆 TOP-3 поставщика по запросу "[категория]": - -1. [Название] ⭐ [Рейтинг]/10 - 📧 [Email] | 📞 [Телефон] - 💰 Условия: [Условия оплаты] - 🚚 Доставка: [Срок доставки] - 📦 Минимум: [Минимальный заказ]₽ - -2. ... -3. ... - -Рекомендую связаться с [Название первого поставщика] — лучшие условия. -``` - -### 6.2 Создание таблицы для обучения персонала - -#### Структура таблицы "База знаний для сотрудников" - -1. Создайте новую таблицу: `База знаний для сотрудников` -2. Добавьте столбцы: - -| Столбец | Тип | Описание | -|---------|-----|----------| -| Вопрос | Текст | Вопрос сотрудника (назначение: Вопрос для AI) | -| Ответ | Текст | Подробный ответ (назначение: Ответ AI) | -| Категория | Множественный выбор | Продажи, HR, Финансы, IT, Маркетинг | -| Отдел | Множественный выбор | Для какого отдела актуально | -| Сложность | Число | От 1 (простой) до 5 (сложный) | -| Инструкции | Текст | Пошаговые инструкции (если есть) | -| Ссылки | Текст | Ссылки на документы/видео | -| Дата обновления | Дата | Когда информация обновлялась | - -3. Примеры вопросов: - -**Категория "Продажи":** -- "Как оформить возврат клиенту?" -- "Какие скидки можно давать постоянным клиентам?" -- "Как работать с корпоративными клиентами?" - -**Категория "HR":** -- "Как оформить отпуск?" -- "Куда обращаться по больничному?" -- "Как происходит адаптация новых сотрудников?" - -**Категория "IT":** -- "Как получить доступ к корпоративной почте?" -- "Что делать при проблемах с VPN?" -- "Как создать заявку в техподдержку?" - -### 6.3 Создание связей между таблицами - -#### Пример: Связь "Клиенты" → "Заказы" - -1. Создайте таблицу **"Клиенты"**: - - Название, Email, Телефон, Статус (VIP/Обычный) - -2. Создайте таблицу **"Заказы"**: - - Номер заказа, Дата, Сумма - -3. В таблице "Заказы" добавьте столбец: - - **Название**: `Клиент` - - **Тип**: `Связь (Relation)` - - **Связанная таблица**: выберите `Клиенты` - - **Показывать поле**: выберите `Название` - -4. Добавьте еще один столбец в "Заказы": - - **Название**: `Email клиента` - - **Тип**: `Lookup (Подстановка)` - - **Связь через**: выберите столбец `Клиент` - - **Подставлять поле**: выберите `Email` - -**Результат**: При выборе клиента автоматически подставится его Email! - -#### Использование AI с связанными таблицами - -AI автоматически понимает связи и может отвечать на вопросы: - -``` -Пользователь: "Покажи все заказы клиента Иванов" -AI: [Ищет в таблице Заказы, фильтрует по клиенту Иванов] -``` - ---- - -## Шаг 7: Интеграция с Telegram и Email (опционально) - -### 7.1 Настройка Telegram бота - -1. Перейдите в **Настройки** → **Интеграции** → **Telegram** -2. Создайте бота через [@BotFather](https://t.me/botfather) в Telegram: - - Отправьте `/newbot` - - Выберите имя и username бота - - Скопируйте **Bot Token** -3. В настройках DLE введите: - - **Bot Token**: вставьте токен от BotFather - - **Bot Username**: username вашего бота (например, `@mycompany_bot`) -4. Нажмите **"Сохранить"** -5. В настройках AI ассистента выберите этот Telegram бот в поле **"Telegram-бот"** - -**Результат**: AI будет отвечать на сообщения в Telegram! - -### 7.2 Настройка Email интеграции - -1. Перейдите в **Настройки** → **Интеграции** → **Email** -2. Заполните IMAP настройки (для получения писем): - - **IMAP Host**: `imap.gmail.com` (для Gmail) - - **IMAP Port**: `993` - - **IMAP User**: ваш email - - **IMAP Password**: пароль приложения (не основной пароль!) -3. Заполните SMTP настройки (для отправки писем): - - **SMTP Host**: `smtp.gmail.com` - - **SMTP Port**: `587` - - **SMTP User**: ваш email - - **SMTP Password**: пароль приложения - - **From Email**: email для отправки -4. Нажмите **"Тест IMAP"** и **"Тест SMTP"** для проверки -5. Нажмите **"Сохранить"** -6. В настройках AI ассистента выберите этот Email в поле **"Email для связи"** - -> ⚠️ **Важно для Gmail**: Создайте "Пароль приложения" в настройках безопасности Google - -**Результат**: AI будет отвечать на входящие email автоматически! - ---- - -## Шаг 8: Мониторинг и оптимизация - -### 8.1 Проверка статуса сервисов - -1. Перейдите в **Настройки** → **Интеграции** → **ИИ-ассистент** -2. Прокрутите вниз до **"🔍 Мониторинг системы"** -3. Нажмите **"🔄 Обновить статус"** -4. Проверьте статусы: - - 🟢 **Backend**: должен быть "Работает" - - 🟢 **Postgres**: должен быть "Работает" - - 🟢 **Ollama**: должен показывать количество моделей - - 🟢 **Vector Search**: должен быть "Работает" - -> ⚠️ Если что-то красное (🔴) — см. раздел "Решение проблем" ниже - -### 8.2 Анализ качества ответов - -Регулярно проверяйте качество ответов AI: - -1. **Score в тестере RAG**: - - **-300 до 0** ✅ — отличное совпадение - - **0 до 300** ⚠️ — среднее совпадение - - **>300** ❌ — совпадение не найдено - -2. **Если Score плохой**: - - Добавьте больше похожих вопросов в таблицу - - Используйте разные формулировки одного вопроса - - Увеличьте порог релевантности (например, до 0.2) - -### 8.3 Оптимизация настроек RAG - -Экспериментируйте с настройками для улучшения результатов: - -**Для более точных ответов:** -``` -Метод поиска: Семантический -Порог релевантности: 0.05 (ниже = строже) -Веса: Семантический 100% / Ключевые слова 0% -``` - -**Для более быстрых ответов:** -``` -Метод поиска: Поиск по ключевым словам -Максимальное количество результатов: 3 -``` - -**Для баланса (рекомендуется):** -``` -Метод поиска: Гибридный -Веса: Семантический 70% / Ключевые слова 30% -Порог релевантности: 0.1 -``` - ---- - -## ✅ AI Ассистент готов к работе! - -### Что у вас теперь есть - -✅ **Локальный AI ассистент** без зависимости от облака -✅ **База знаний FAQ** для ответов клиентам -✅ **Векторный поиск** для точных ответов -✅ **Настроенные правила** поведения AI -✅ **Система мониторинга** для контроля качества - -### Экономический эффект - -При правильной настройке AI ассистента вы получите: - -✅ **Автоматизацию рутинных задач** - высвобождение времени для стратегии -✅ **Повышение качества обслуживания** - AI работает 24/7 без усталости -✅ **Снижение операционных расходов** - меньше персонала на рутинных задачах -✅ **Ускорение принятия решений** - мгновенный доступ к информации - -> 💡 **Подробная информация**: См. [AI Ассистент - полное описание](./ai-assistant.md#экономический-эффект) - там детально описаны все возможности, кейсы применения и расчеты экономии. - ---- - -## 📚 Следующие шаги - -### Расширьте возможности AI - -1. **Добавьте больше таблиц**: - - База знаний для партнеров - - Инструкции для персонала - - Каталог продуктов - - База контактов - -2. **Создайте правила для разных сценариев**: - - Строгий режим (только RAG) — для финансов - - Креативный режим (больше генерации) — для маркетинга - - Гибридный режим (баланс) — для поддержки - -3. **Интегрируйте с другими системами**: - - CRM (синхронизация клиентов) - - Складская система (остатки товаров) - - Бухгалтерия (счета и оплаты) - -### Обучите команду - -1. Покажите сотрудникам, как работает AI -2. Объясните, как добавлять новые вопросы в базу -3. Установите процесс регулярного обновления базы знаний -4. Назначьте ответственного за качество ответов AI - ---- - -## 🆘 Решение проблем - -### Проблема: Ollama не запускается - -**Симптомы**: Статус "Ollama API not responding" - -**Решение**: -```bash -# Проверить контейнер -docker ps | grep ollama - -# Перезапустить -docker-compose restart ollama - -# Проверить логи -docker-compose logs ollama -``` - -### Проблема: AI отвечает неточно - -**Симптомы**: Ответы не соответствуют базе знаний - -**Решение**: -1. Проверьте Score в тестере (должен быть < 300) -2. Добавьте больше вариантов вопросов в таблицу -3. Уменьшите порог релевантности (например, до 0.05) -4. Проверьте, что столбцы имеют правильные назначения ("Вопрос для AI", "Ответ AI") - -### Проблема: Vector Search не работает - -**Симптомы**: Статус Vector Search показывает ошибку - -**Решение**: -1. Проверьте, установлена ли Embedding модель -2. Пересоберите индекс: на странице таблицы нажмите **"🔄 Пересобрать индекс"** -3. Проверьте, что таблица активирована как источник для AI - -### Проблема: AI отвечает на неправильном языке - -**Симптомы**: Ответы на английском вместо русского - -**Решение**: -1. Измените системный промт, добавив в начало: `ВСЕГДА отвечай на русском языке.` -2. Используйте модель `qwen2.5:7b` вместо `llama2:7b` -3. В правилах AI установите `"language": "ru"` - -### Проблема: Медленные ответы - -**Симптомы**: AI отвечает дольше 5-10 секунд - -**Решение**: -1. Используйте меньшую модель (`mistral:7b` вместо `qwen2.5:14b`) -2. Уменьшите `maxResults` в настройках RAG (например, до 3) -3. Отключите "Поиск синонимов" в дополнительных настройках -4. Используйте SSD для хранения моделей - ---- - -## 📖 Дополнительная документация - -### Изучите возможности AI - -- 🤖 **[AI Ассистент - полное описание](./ai-assistant.md)** - все возможности и кейсы применения -- 📊 **[Система электронных таблиц](./tables-system.md)** - техническое описание таблиц (временный) -- ⚙️ **[Конфигурация AI](./setup-ai-assistant.md#техническая-документация-для-разработчиков)** - технические детали настройки - -### Общая документация - -- 🛡️ **[Безопасность](./security.md)** - как AI защищает ваши данные -- 💼 **[Блокчейн для бизнеса](./blockchain-for-business.md)** - интеграция AI с блокчейном -- 📋 **[FAQ](./FAQ.md)** - часто задаваемые вопросы - -### Поддержка - -- 💬 **Чат поддержки**: https://hb3-accelerator.com/ -- 📧 **Email**: info@hb3-accelerator.com -- 📚 **База знаний**: https://hb3-accelerator.com - ---- - -## 🔧 Техническая документация (для разработчиков) - -### Архитектура системы AI - -``` -┌───────────────────────────────────────────────────────────┐ -│ Настройка AI Ассистента в DLE │ -├───────────────────────────────────────────────────────────┤ -│ │ -│ 🤖 AI Провайдеры: │ -│ ├── OpenAI (GPT-4, GPT-3.5) │ -│ ├── Anthropic (Claude) │ -│ ├── Google (Gemini) │ -│ └── Ollama (локальные модели) │ -│ │ -│ ⚙️ Настройки AI: │ -│ ├── System Prompt │ -│ ├── Выбор LLM модели │ -│ ├── Выбор Embedding модели │ -│ ├── Выбор RAG-таблиц │ -│ ├── Правила (Rules) │ -│ └── Настройки RAG поиска │ -│ │ -│ 📋 Правила (Rules): │ -│ ├── JSON конфигурация поведения │ -│ ├── Создание/редактирование/удаление │ -│ └── Привязка к AI ассистенту │ -│ │ -│ 🔗 Интеграции: │ -│ ├── Email (IMAP + SMTP) │ -│ └── Telegram Bot │ -│ │ -│ 🔍 RAG: │ -│ ├── Выбор таблиц для поиска │ -│ ├── Настройки поиска (гибридный/семантический) │ -│ ├── Порог релевантности │ -│ └── Извлечение ключевых слов │ -│ │ -│ 📊 Мониторинг: │ -│ ├── Статус сервисов (Backend, Ollama, Postgres) │ -│ ├── Тест RAG-функциональности │ -│ └── Отслеживание прогресса │ -│ │ -└───────────────────────────────────────────────────────────┘ -``` - -### База данных - -#### Таблица: `ai_providers_settings` - -```sql -CREATE TABLE IF NOT EXISTS ai_providers_settings ( - id SERIAL PRIMARY KEY, - provider_encrypted TEXT, -- Провайдер: openai, anthropic, google, ollama - api_key_encrypted TEXT, -- API ключ (зашифрован) - base_url_encrypted TEXT, -- Base URL для API - selected_model_encrypted TEXT, -- Выбранная LLM модель - embedding_model_encrypted TEXT, -- Выбранная Embedding модель - created_at TIMESTAMP NOT NULL DEFAULT NOW(), - updated_at TIMESTAMP NOT NULL DEFAULT NOW() -); -``` - -#### Таблица: `ai_assistant_settings` - -```sql -CREATE TABLE IF NOT EXISTS ai_assistant_settings ( - id SERIAL PRIMARY KEY, - system_prompt_encrypted TEXT, -- Системный промт - selected_rag_tables INTEGER[], -- Массив ID RAG-таблиц - languages TEXT[], -- Массив поддерживаемых языков - model_encrypted TEXT, -- Выбранная LLM модель - embedding_model_encrypted TEXT, -- Выбранная Embedding модель - rules JSONB, -- Правила (DEPRECATED) - rules_id INTEGER REFERENCES ai_assistant_rules(id), -- Ссылка на правило - telegram_settings_id INTEGER, -- Ссылка на Telegram бота - email_settings_id INTEGER, -- Ссылка на Email настройки - rag_settings JSONB, -- Настройки RAG поиска - updated_at TIMESTAMP DEFAULT NOW(), - updated_by INTEGER -); -``` - -#### Таблица: `ai_assistant_rules` - -```sql -CREATE TABLE IF NOT EXISTS ai_assistant_rules ( - id SERIAL PRIMARY KEY, - name TEXT NOT NULL, -- Название набора правил - description TEXT, -- Описание правила - rules JSONB NOT NULL, -- JSON конфигурация - rules_encrypted TEXT, -- Зашифрованная версия правил - created_at TIMESTAMP DEFAULT NOW(), - updated_at TIMESTAMP DEFAULT NOW() -); -``` - -### Backend API - -#### Настройки AI провайдеров - -- **GET** `/settings/ai-settings/:provider` — Получить настройки провайдера -- **PUT** `/settings/ai-settings/:provider` — Сохранить настройки провайдера -- **DELETE** `/settings/ai-settings/:provider` — Удалить настройки провайдера -- **GET** `/settings/ai-settings/:provider/models` — Получить список моделей -- **POST** `/settings/ai-settings/:provider/verify` — Проверить API ключ - -#### Настройки AI ассистента - -- **GET** `/settings/ai-assistant` — Получить настройки ассистента -- **PUT** `/settings/ai-assistant` — Сохранить настройки ассистента - -#### Правила AI - -- **GET** `/settings/ai-assistant-rules` — Получить все правила -- **GET** `/settings/ai-assistant-rules/:id` — Получить правило по ID -- **POST** `/settings/ai-assistant-rules` — Создать правило -- **PUT** `/settings/ai-assistant-rules/:id` — Обновить правило -- **DELETE** `/settings/ai-assistant-rules/:id` — Удалить правило - -#### Ollama (локальные модели) - -- **GET** `/ollama/status` — Проверить статус Ollama -- **GET** `/ollama/models` — Получить список моделей -- **POST** `/ollama/install` — Установить модель -- **DELETE** `/ollama/models/:modelName` — Удалить модель - -### Frontend страницы - -- **`/settings/ai`** — Главная страница интеграций -- **`/settings/ai/:provider`** — Настройки AI провайдера -- **`/settings/ai/assistant`** — Настройки AI ассистента - -### Процесс обработки сообщения - -``` -1. Пользователь → Сообщение - ↓ -2. UnifiedMessageProcessor - ↓ -3. Проверка языка (только русский) - ↓ -4. Дедупликация (хеш сообщения) - ↓ -5. Загрузка настроек (aiAssistantSettingsService) - ↓ -6. Загрузка правил (aiAssistantRulesService) - ↓ -7. RAG поиск (ragService) - ├── Семантический поиск (vector search) - ├── Поиск по ключевым словам - └── Гибридный поиск - ↓ -8. Генерация ответа (generateLLMResponse) - ├── System Prompt - ├── История разговора - ├── Контекст из RAG - └── Правила - ↓ -9. Ответ → Пользователь -``` - -### Безопасность - -- **Шифрование**: Все чувствительные поля зашифрованы с помощью AES-256 -- **Права доступа**: Только администраторы могут изменять настройки -- **Валидация**: Проверка всех входных данных и API ключей - ---- - -**© 2024-2025 Тарабанов Александр Викторович. Все права защищены.** - -**Версия документа**: 1.0.0 -**Дата создания**: October 25, 2025 - diff --git a/docs/setup-instruction.md b/docs/setup-instruction.md deleted file mode 100644 index b8bb628..0000000 --- a/docs/setup-instruction.md +++ /dev/null @@ -1,195 +0,0 @@ - - -# Инструкция по настройке приложения Digital Legal Entity - -## 🚀 Полный процесс инициализации системы - -Этот документ описывает полный процесс подготовки приложения к работе с поддержкой блокчейна, смарт-контрактов и системы управления доступом. - ---- - -## Шаг 1: Установка софта - -1. Клонируйте репозиторий проекта на ваше локальное устройство -2. Запустите приложение через Docker Compose или локально в зависимости от конфигурации -3. Откройте веб-приложение в браузере: `http://localhost:9000` (production) или `http://localhost:5173` (dev режим) - ---- - -## Шаг 2: Подключение крипто кошелька - -1. Убедитесь, что у вас установлен браузерный кошелек (MetaMask, WalletConnect или аналог) -2. В кошельке создайте или импортируйте аккаунт с токеном управления -3. В веб-приложении нажмите на кнопку **"Подключить кошелек"** -4. Выберите тип кошелька и подтвердите подключение -5. После успешного подключения вы увидите адрес вашего аккаунта в верхнем углу - ---- - -## Шаг 3: Добавление RPC провайдеров (Безопасность → RPC провайдеры) - -1. Перейдите в **Настройки** → вкладка **Безопасность** -2. Найдите раздел **"RPC провайдеры"** -3. Нажмите кнопку **"Добавить"** -4. Заполните форму для каждой блокчейн сети, которую хотите использовать: - - **Название сети** (например: Ethereum, Polygon, BSC) - - **RPC URL** (ссылка для подключения, пример: `https://eth-mainnet.g.alchemy.com/v2/YOUR-API-KEY`) - - **ID сети** (Chain ID) -5. Нажмите **"Сохранить"** для каждого провайдера -6. Система автоматически проверит корректность подключения - -> ⚠️ **Важно**: Получите API ключи от провайдеров (Alchemy, Infura, Quicknode и т.д.) перед добавлением - ---- - -## Шаг 4: Настройка мультидеплоя смарт контрактов - -1. Перейдите в **Настройки** → вкладка **Блокчейн** -2. Заполните форму -3. Нажмите **"Запустить деплой"** - ---- - -## Шаг 5: Завершение деплоя и сохранение адреса контракта - -1. Ожидайте завершения деплоя (зависит от сети, обычно 30-120 секунд) -2. После успешного завершения откроется страница **"Управление контрактами"** -3. **Копируйте адрес развернутого контракта** (обычно он выглядит как: `0x742d35Cc6634C0532925a3b844Bc...`) - ---- - -## Шаг 6: Настройка аутентификации через смарт контракт - -1. Вернитесь в **Настройки** → вкладка **Аутентификация** -2. В поле **"Адрес смарт контракта"** вставьте адрес, скопированный на шаге 5 -3. Установите пороги для управления доступом: - - **Минимальное количество токенов для редактирования** (например: 100 токенов) - - **Минимальное количество токенов для просмотра** (например: 1 токен) - ---- - -## Шаг 7: Настройка ИИ и базы данных - -1. Перейдите в **Настройки** → вкладка **ИИ** -2. Откройте подраздел **"База данных"** -3. Замените дефолтные пароли -4. Нажмите **"Сгенерировать новый ключ шифрования"** - - Система автоматически создаст криптографический ключ - - **Сохраните ключ в безопасном месте** (он понадобится для восстановления данных) - ---- - -## Шаг 8: Настройка доступа через интернет (опционально) - -**Если вам нужен доступ к веб приложению извне через интернет:** - -1. Перейдите в **Настройки** → вкладка **Сервер** -2. На странице **Сервер** выберите **WEB SSH** или иной подходящий сервис -3. Заполните форму для миграции локального приложения на виртуальное устройство с: - - **Публичным IP адресом** - - **Подключением к вашему доменному имени** -4. Нажмите **"Опубликовать"** -5. Дождитесь завершения процесса миграции - -> ℹ️ **Примечание**: Этот шаг требует наличия зарегистрированного доменного имени и доступа к DNS настройкам - ---- - -## Шаг 9: Настройка юридических документов для работы с персональными данными - -### 9.1 Заполнение юридической информации о компании - -1. Перейдите в **CRM** → раздел **Контент** -2. Найдите и откройте форму **"Юридическая информация компании"** -3. Заполните все необходимые поля: - - **Полное наименование организации** (юридическое название) - - **Краткое наименование** - - **Организационно-правовая форма** (ООО, ИП, АО и т.д.) - - **Юридический адрес** - - **Фактический адрес** (если отличается) - - **ИНН / ОГРН / КПП** (регистрационные данные) - - **Контактные данные** (телефон, email, сайт) - - **Ответственное лицо за обработку персональных данных** (ФИО, должность) - - **Применимая юрисдикция** (GDPR, CCPA, российское законодательство и т.д.) -4. Нажмите **"Сохранить"** - -> 💡 **Подсказка**: Все введенные данные автоматически подставятся во все шаблоны юридических документов - -### 9.2 Работа с шаблонами документов - -1. В разделе **Контент** перейдите в подраздел **"Шаблоны"** -2. Выберите необходимые шаблоны документов, требуемые регуляторами: - - **Политика конфиденциальности** - - **Пользовательское соглашение** - - **Согласие на обработку персональных данных** - - **Политика использования cookies** -3. Для каждого шаблона: - - Нажмите **"Предварительный просмотр"** для проверки автоматически заполненных данных - - При необходимости отредактируйте специфичные параметры обработки данных - - Выберите действие: - - **"Опубликовать для публичного использования"** — документ будет доступен на сайте - - **"Опубликовать для внутреннего использования"** — документ доступен только внутри CRM - - **"Распечатать"** — экспорт в PDF для печати или подписания -4. Подтвердите публикацию -5. Система автоматически добавит документы на соответствующие страницы приложения - -> ⚠️ **Важно**: Рекомендуется проконсультироваться с юристом перед публикацией документов для обеспечения полного соответствия требованиям законодательства - ---- - -## ✅ Приложение готово к работе! - -После завершения всех шагов ваше приложение полностью сконфигурировано и готово к использованию. - -**Следующие этапы:** -- 📖 Настройка AI ассистента (см. документ: `setup-ai-assistant.md`) -- 🔐 Управление смарт контрактами (см. документ: `manage-smart-contracts.md`) - ---- - -## 🆘 Рекомендации по безопасности - -✓ Сохраняйте адреса контрактов и ключи шифрования в безопасном месте -✓ Используйте мощные пароли для БД -✓ Регулярно создавайте резервные копии конфигурации -✓ Никогда не делитесь приватными ключами кошелька -✓ Используйте HTTPS для доступа к приложению в продакшене - ---- - -## 📝 Что дальше? - -После завершения базовой настройки вы можете: -1. Добавлять пользователей и управлять их разрешениями -2. Создавать группы для совместной работы -3. Настраивать AI ассистента для автоматизации задач -4. Управлять смарт контрактами для расширения функциональности -5. Интегрировать внешние сервисы и боты - ---- - -## 📚 Дополнительная документация - -### Изучите возможности DLE -- 🤖 **[AI Ассистент](./ai-assistant.md)** - узнайте как AI может стать вторым пилотом для вашей команды -- 💼 **[Блокчейн для бизнеса](./blockchain-for-business.md)** - как токенизация активов решает бизнес-задачи -- 🛡️ **[Безопасность](./security.md)** - многоуровневая защита вашего бизнеса - -### Техническая информация -- 🔗 **[Техническая документация по блокчейну](./blockchain-integration-technical.md)** - для разработчиков -- 📋 **[FAQ](./FAQ.md)** - часто задаваемые вопросы -- 📝 **[Описание приложения](./application-description.md)** - обзор функциональности - -### Поддержка -- 💬 **Чат поддержки**: https://hb3-accelerator.com/ -- 📧 **Email**: info@hb3-accelerator.com \ No newline at end of file diff --git a/docs/tables-system.md b/docs/tables-system.md deleted file mode 100644 index 41351eb..0000000 --- a/docs/tables-system.md +++ /dev/null @@ -1,1639 +0,0 @@ -# Система электронных таблиц в DLE - -> **Временный документ для внутреннего анализа** - ---- - -## 📋 Содержание - -1. [Обзор системы](#обзор-системы) -2. [Архитектура базы данных](#архитектура-базы-данных) -3. [Типы полей](#типы-полей) -4. [Функциональные возможности](#функциональные-возможности) -5. [Связи между таблицами](#связи-между-таблицами) -6. [Интеграция с AI (RAG)](#интеграция-с-ai-rag) -7. [API Reference](#api-reference) -8. [Примеры использования](#примеры-использования) -9. [Безопасность](#безопасность) - ---- - -## Обзор системы - -### Что это? - -Система электронных таблиц в DLE — это **полнофункциональная база данных с графическим интерфейсом**, аналог **Notion Database** или **Airtable**, встроенный в приложение. - -### Ключевые особенности - -``` -┌─────────────────────────────────────────────────────────┐ -│ Электронные таблицы DLE │ -├─────────────────────────────────────────────────────────┤ -│ │ -│ ✅ 6 типов полей (text, number, relation, lookup, etc.)│ -│ ✅ Связи между таблицами (1:1, 1:N, N:N) │ -│ ✅ Lookup и подстановка данных │ -│ ✅ Фильтрация и сортировка │ -│ ✅ Real-time обновления (WebSocket) │ -│ ✅ Интеграция с AI (RAG для поиска) │ -│ ✅ Шифрование всех данных (AES-256) │ -│ ✅ Плейсхолдеры для API доступа │ -│ ✅ Каскадное удаление │ -│ ✅ Массовые операции │ -│ │ -└─────────────────────────────────────────────────────────┘ -``` - -### Отличия от Excel/Google Sheets - -| Функция | Excel/Sheets | DLE Tables | -|---------|--------------|------------| -| **Типизация данных** | Слабая | Строгая (6 типов) | -| **Связи между таблицами** | Нет | Да (relation, lookup) | -| **AI поиск** | Нет | Да (RAG, векторный поиск) | -| **Real-time обновления** | Частичная | Полная (WebSocket) | -| **Шифрование** | Нет | AES-256 для всех данных | -| **API доступ** | Ограниченный | Полный REST API | -| **Права доступа** | Базовые | Детальные (по ролям) | - ---- - -## Архитектура базы данных - -### Схема таблиц (PostgreSQL) - -```sql -┌──────────────────────────────────────────────────────────┐ -│ user_tables │ -├──────────────────────────────────────────────────────────┤ -│ id SERIAL PRIMARY KEY │ -│ name_encrypted TEXT NOT NULL │ -│ description_encrypted TEXT │ -│ is_rag_source_id INTEGER (ссылка на is_rag_source) │ -│ created_at TIMESTAMP │ -│ updated_at TIMESTAMP │ -└──────────────────────────────────────────────────────────┘ - ↓ -┌──────────────────────────────────────────────────────────┐ -│ user_columns │ -├──────────────────────────────────────────────────────────┤ -│ id SERIAL PRIMARY KEY │ -│ table_id INTEGER → user_tables(id) │ -│ name_encrypted TEXT NOT NULL │ -│ type_encrypted TEXT NOT NULL │ -│ placeholder_encrypted TEXT (для API) │ -│ placeholder TEXT (незашифрованный) │ -│ options JSONB (настройки) │ -│ order INTEGER (порядок отображения) │ -│ created_at TIMESTAMP │ -│ updated_at TIMESTAMP │ -└──────────────────────────────────────────────────────────┘ - ↓ -┌──────────────────────────────────────────────────────────┐ -│ user_rows │ -├──────────────────────────────────────────────────────────┤ -│ id SERIAL PRIMARY KEY │ -│ table_id INTEGER → user_tables(id) │ -│ order INTEGER (порядок строк) │ -│ created_at TIMESTAMP │ -│ updated_at TIMESTAMP │ -└──────────────────────────────────────────────────────────┘ - ↓ -┌──────────────────────────────────────────────────────────┐ -│ user_cell_values │ -├──────────────────────────────────────────────────────────┤ -│ id SERIAL PRIMARY KEY │ -│ row_id INTEGER → user_rows(id) │ -│ column_id INTEGER → user_columns(id) │ -│ value_encrypted TEXT (зашифрованное значение) │ -│ created_at TIMESTAMP │ -│ updated_at TIMESTAMP │ -│ UNIQUE(row_id, column_id) ← Одна ячейка = одно значение│ -└──────────────────────────────────────────────────────────┘ - ↓ -┌──────────────────────────────────────────────────────────┐ -│ user_table_relations │ -├──────────────────────────────────────────────────────────┤ -│ id SERIAL PRIMARY KEY │ -│ from_row_id INTEGER → user_rows(id) │ -│ column_id INTEGER → user_columns(id) │ -│ to_table_id INTEGER → user_tables(id) │ -│ to_row_id INTEGER → user_rows(id) │ -│ created_at TIMESTAMP │ -│ updated_at TIMESTAMP │ -└──────────────────────────────────────────────────────────┘ -``` - -### Каскадное удаление - -``` -Удаление таблицы (user_tables) - ↓ - ├── Удаляет все столбцы (user_columns) - ├── Удаляет все строки (user_rows) - │ └── Удаляет все значения ячеек (user_cell_values) - └── Удаляет все связи (user_table_relations) -``` - -**Важно**: Используется `ON DELETE CASCADE` для автоматической очистки. - -### Индексы для производительности - -```sql --- Индексы на связях (user_table_relations) -CREATE INDEX idx_user_table_relations_from_row ON user_table_relations(from_row_id); -CREATE INDEX idx_user_table_relations_column ON user_table_relations(column_id); -CREATE INDEX idx_user_table_relations_to_table ON user_table_relations(to_table_id); -CREATE INDEX idx_user_table_relations_to_row ON user_table_relations(to_row_id); -``` - -**Эффект**: Быстрая фильтрация и поиск по связанным таблицам. - ---- - -## Типы полей - -### 1. Text (Текст) - -**Описание**: Обычное текстовое поле - -```json -{ - "type": "text", - "options": null -} -``` - -**Использование**: -- Имена -- Описания -- Email -- URL -- Любой текст - -### 2. Number (Число) - -**Описание**: Числовое поле - -```json -{ - "type": "number", - "options": null -} -``` - -**Использование**: -- Цены -- Количество -- Рейтинги -- Проценты - -### 3. Multiselect (Множественный выбор) - -**Описание**: Выбор нескольких значений из списка - -```json -{ - "type": "multiselect", - "options": { - "choices": ["Вариант 1", "Вариант 2", "Вариант 3"] - } -} -``` - -**Использование**: -- Теги -- Категории -- Статусы -- Навыки - -### 4. Multiselect-Relation (Мультивыбор из таблицы) - -**Описание**: Множественный выбор строк из другой таблицы - -```json -{ - "type": "multiselect-relation", - "options": { - "relatedTableId": 5, - "relatedColumnId": 12 - } -} -``` - -**Использование**: -- Связь Контактов → Теги (N:N) -- Связь Задач → Исполнители (N:N) -- Связь Продуктов → Категории (N:N) - -**Хранение**: В таблице `user_table_relations` создается несколько записей: -``` -from_row_id=100, column_id=3, to_table_id=5, to_row_id=20 -from_row_id=100, column_id=3, to_table_id=5, to_row_id=21 -from_row_id=100, column_id=3, to_table_id=5, to_row_id=22 -``` - -### 5. Relation (Связь) - -**Описание**: Связь с одной строкой из другой таблицы (1:1 или 1:N) - -```json -{ - "type": "relation", - "options": { - "relatedTableId": 3, - "relatedColumnId": 8 - } -} -``` - -**Использование**: -- Задача → Проект (N:1) -- Контакт → Компания (N:1) -- Заказ → Клиент (N:1) - -**Хранение**: В `user_table_relations` создается одна запись: -``` -from_row_id=50, column_id=2, to_table_id=3, to_row_id=15 -``` - -### 6. Lookup (Подстановка) - -**Описание**: Автоматическая подстановка значения из связанной таблицы - -```json -{ - "type": "lookup", - "options": { - "relatedTableId": 4, - "relatedColumnId": 10, - "lookupColumnId": 11 // Какое поле подставлять - } -} -``` - -**Пример**: -``` -Таблица "Заказы" -├── order_id (text) -├── product (relation → Продукты) -└── product_price (lookup → Продукты.price) - -Когда выбираешь product, автоматически подставляется цена! -``` - -**Использование**: -- Цены из справочника -- Email из контактов -- Статусы из связанных задач - ---- - -## Функциональные возможности - -### 1. CRUD операции - -#### Создание таблицы - -```javascript -// Frontend -await tablesService.createTable({ - name: "Контакты", - description: "База клиентов", - isRagSourceId: 2 // Источник для AI -}); - -// Backend: POST /tables -// Шифрует name и description с AES-256 -``` - -#### Добавление столбца - -```javascript -await tablesService.addColumn(tableId, { - name: "Email", - type: "text", - order: 2, - purpose: "contact" // Для специальных полей -}); - -// Backend: POST /tables/:id/columns -// Генерирует уникальный placeholder: "email", "email_1", ... -``` - -#### Добавление строки - -```javascript -await tablesService.addRow(tableId); - -// Backend: POST /tables/:id/rows -// Автоматически индексирует в vector store для AI -``` - -#### Обновление ячейки (Upsert) - -```javascript -await tablesService.saveCell({ - row_id: 123, - column_id: 5, - value: "new@email.com" -}); - -// Backend: POST /tables/cell -// INSERT ... ON CONFLICT ... DO UPDATE -// Автоматически обновляет vector store -``` - -#### Удаление строки - -```javascript -await tablesService.deleteRow(rowId); - -// Backend: DELETE /tables/row/:rowId -// Пересобирает vector store (rebuild) -``` - -#### Удаление столбца - -```javascript -await tablesService.deleteColumn(columnId); - -// Backend: DELETE /tables/column/:columnId -// Каскадно удаляет: -// 1. Все связи (user_table_relations) -// 2. Все значения ячеек (user_cell_values) -// 3. Сам столбец -``` - -#### Удаление таблицы - -```javascript -await tablesService.deleteTable(tableId); - -// Backend: DELETE /tables/:id -// Требуется: req.session.userAccessLevel?.hasAccess -// Каскадно удаляет все связанные данные -``` - -### 2. Фильтрация данных - -#### По продукту - -```javascript -GET /tables/5/rows?product=Premium - -// Backend фильтрует строки: -filtered = rows.filter(r => r.product === 'Premium'); -``` - -#### По тегам - -```javascript -GET /tables/5/rows?tags=VIP,B2B - -// Backend фильтрует строки с любым из тегов: -filtered = rows.filter(r => - r.userTags.includes('VIP') || r.userTags.includes('B2B') -); -``` - -#### По связям (Relation) - -```javascript -GET /tables/5/rows?relation_12=45,46 - -// Фильтр строк, связанных с to_row_id = 45 или 46 -// через столбец column_id = 12 -``` - -#### По мультивыбору (Multiselect) - -```javascript -GET /tables/5/rows?multiselect_8=10,11,12 - -// Все выбранные значения должны присутствовать -``` - -### 3. Placeholder система - -**Автоматическая генерация**: - -```javascript -// Функция: generatePlaceholder(name, existingPlaceholders) - -"Имя клиента" → "imya_klienta" -"Email" → "email" -"Email" (2-й раз) → "email_1" -"123" → "column" (fallback) -"Цена-$" → "tsena" -``` - -**Транслитерация**: -```javascript -const cyrillicToLatinMap = { - а: 'a', б: 'b', в: 'v', г: 'g', д: 'd', - е: 'e', ё: 'e', ж: 'zh', з: 'z', и: 'i', - // ... полная карта -}; -``` - -**Использование**: -```javascript -// API доступ к данным через placeholder -GET /tables/5/data?fields=email,phone,imya_klienta -``` - -### 4. Порядок строк (Order) - -```javascript -// Изменение порядка строк (drag-n-drop) -await tablesService.updateRowsOrder(tableId, [ - { rowId: 100, order: 0 }, - { rowId: 101, order: 1 }, - { rowId: 102, order: 2 } -]); - -// Backend: PATCH /tables/:id/rows/order -// Обновляет поле "order" для каждой строки -``` - -### 5. Real-time обновления (WebSocket) - -```javascript -// Backend отправляет уведомления при изменениях -broadcastTableUpdate(tableId); // Обновление таблицы -broadcastTableRelationsUpdate(); // Обновление связей -broadcastTagsUpdate(null, rowId); // Обновление тегов - -// Frontend подписывается на события -socket.on('table-update', (data) => { - if (data.tableId === currentTableId) { - reloadTableData(); - } -}); -``` - -### 6. Массовые операции - -```javascript -// Выбор нескольких строк (checkbox) -const selectedRows = [100, 101, 102]; - -// Массовое удаление -for (const rowId of selectedRows) { - await tablesService.deleteRow(rowId); -} - -// После удаления: автоматический rebuild vector store -``` - ---- - -## Связи между таблицами - -### Типы связей - -#### 1. One-to-Many (N:1) - Relation - -**Пример**: Задачи → Проекты - -``` -Таблица "Задачи" Таблица "Проекты" -├── task_1 → project_id=5 ├── project_5 (Сайт) -├── task_2 → project_id=5 └── project_6 (API) -└── task_3 → project_id=6 -``` - -**Хранение**: -```sql -user_table_relations -├── from_row_id=task_1, column_id=3, to_table_id=2, to_row_id=project_5 -├── from_row_id=task_2, column_id=3, to_table_id=2, to_row_id=project_5 -└── from_row_id=task_3, column_id=3, to_table_id=2, to_row_id=project_6 -``` - -#### 2. Many-to-Many (N:N) - Multiselect-Relation - -**Пример**: Контакты → Теги - -``` -Таблица "Контакты" Таблица "Теги" -├── contact_1 → [VIP, B2B] ├── tag_1 (VIP) -├── contact_2 → [VIP] ├── tag_2 (B2B) -└── contact_3 → [B2B, Local] └── tag_3 (Local) -``` - -**Хранение**: -```sql -user_table_relations -├── from_row_id=contact_1, column_id=5, to_table_id=3, to_row_id=tag_1 -├── from_row_id=contact_1, column_id=5, to_table_id=3, to_row_id=tag_2 -├── from_row_id=contact_2, column_id=5, to_table_id=3, to_row_id=tag_1 -├── from_row_id=contact_3, column_id=5, to_table_id=3, to_row_id=tag_2 -└── from_row_id=contact_3, column_id=5, to_table_id=3, to_row_id=tag_3 -``` - -#### 3. Lookup (Подстановка) - -**Пример**: Заказы → Цена товара - -``` -Таблица "Заказы" -├── order_id (text) -├── product (relation → Товары) -└── price (lookup → Товары.price) - -Таблица "Товары" -├── product_name (text) -└── price (number) -``` - -**Как работает**: -1. Выбираете `product = "Ноутбук"` (связь с товаром) -2. `price` автоматически подставляется из `Товары.price` -3. Если цена товара изменится, lookup обновится - -### API для работы со связями - -```javascript -// Получить все связи строки -GET /tables/:tableId/row/:rowId/relations - -// Добавить связь -POST /tables/:tableId/row/:rowId/relations -Body: { - column_id: 12, - to_table_id: 5, - to_row_id: 45 -} - -// Добавить несколько связей (multiselect) -POST /tables/:tableId/row/:rowId/relations -Body: { - column_id: 12, - to_table_id: 5, - to_row_ids: [45, 46, 47] -} - -// Удалить связь -DELETE /tables/:tableId/row/:rowId/relations/:relationId -``` - ---- - -## Интеграция с AI (RAG) - -### Векторный поиск - -Таблицы используются как **база знаний для AI ассистента**. - -#### Автоматическая индексация - -**При создании/изменении строки**: - -```javascript -// Backend: POST /tables/:id/rows -const rows = await getTableRows(tableId); -const upsertRows = rows - .filter(r => r.row_id && r.text) - .map(r => ({ - row_id: r.row_id, - text: r.text, // Вопрос (question column) - metadata: { - answer: r.answer, // Ответ (answer column) - product: r.product, // Фильтр по продукту - userTags: r.userTags, // Фильтр по тегам - priority: r.priority // Приоритет - } - })); - -if (upsertRows.length > 0) { - await vectorSearchClient.upsert(tableId, upsertRows); -} -``` - -**При удалении строки**: - -```javascript -// Backend: DELETE /tables/row/:rowId -const rows = await getTableRows(tableId); -const rebuildRows = /* ... */; - -if (rebuildRows.length > 0) { - await vectorSearchClient.rebuild(tableId, rebuildRows); -} -``` - -#### Специальные поля для RAG - -```javascript -// Столбцы с purpose -{ - "type": "text", - "options": { - "purpose": "question" // Вопрос для AI - } -} - -{ - "type": "text", - "options": { - "purpose": "answer" // Ответ AI - } -} - -{ - "type": "multiselect", - "options": { - "purpose": "product" // Фильтр по продукту - } -} - -{ - "type": "multiselect", - "options": { - "purpose": "userTags" // Фильтр по тегам - } -} -``` - -#### Ручная пересборка индекса - -```javascript -// Frontend (только для админов) -await tablesService.rebuildIndex(tableId); - -// Backend: POST /tables/:id/rebuild-index -// Требуется: req.session.userAccessLevel?.hasAccess -const { questionCol, answerCol } = await getQuestionAnswerColumnIds(tableId); -const rows = await getRowsWithQA(tableId, questionCol, answerCol); - -if (rows.length > 0) { - await vectorSearchClient.rebuild(tableId, rows); -} -``` - -#### Как AI использует таблицы - -``` -1. Пользователь задает вопрос AI: - "Как вернуть товар?" - -2. AI делает векторный поиск: - vectorSearch.search(tableId, query, top_k=3) - -3. Находит похожие вопросы в таблице: - - row_id: 123 - - text: "Как оформить возврат товара?" - - score: -250 (близко к порогу 300) - - metadata: { answer: "Возврат в течение 14 дней..." } - -4. AI возвращает ответ из metadata.answer - -5. Если не нашел (score > 300): - AI генерирует ответ через LLM (Ollama) -``` - -#### Фильтрация по продуктам и тегам - -```javascript -// Поиск только по продукту "Premium" -const results = await vectorSearch.search(tableId, query, 3); -const filtered = results.filter(r => r.metadata.product === 'Premium'); - -// Поиск только по тегам "VIP" или "B2B" -const filtered = results.filter(r => - r.metadata.userTags.includes('VIP') || - r.metadata.userTags.includes('B2B') -); -``` - ---- - -## API Reference - -### Таблицы - -#### GET /tables - -Получить список всех таблиц - -**Ответ**: -```json -[ - { - "id": 1, - "name": "Контакты", - "description": "База клиентов", - "is_rag_source_id": 2, - "created_at": "2025-01-15T10:00:00Z", - "updated_at": "2025-01-15T10:00:00Z" - } -] -``` - -#### POST /tables - -Создать новую таблицу - -**Запрос**: -```json -{ - "name": "Контакты", - "description": "База клиентов", - "isRagSourceId": 2 -} -``` - -**Ответ**: Объект созданной таблицы - -#### GET /tables/:id - -Получить структуру и данные таблицы - -**Ответ**: -```json -{ - "name": "Контакты", - "description": "База клиентов", - "columns": [ - { - "id": 1, - "table_id": 1, - "name": "Email", - "type": "text", - "placeholder": "email", - "options": null, - "order": 0 - } - ], - "rows": [ - { - "id": 100, - "table_id": 1, - "order": 0, - "created_at": "2025-01-15T10:00:00Z" - } - ], - "cellValues": [ - { - "id": 500, - "row_id": 100, - "column_id": 1, - "value": "user@example.com" - } - ] -} -``` - -#### PATCH /tables/:id - -Обновить метаданные таблицы - -**Запрос**: -```json -{ - "name": "Клиенты", - "description": "Обновленное описание" -} -``` - -#### DELETE /tables/:id - -Удалить таблицу (только для админов) - -**Требования**: `req.session.userAccessLevel?.hasAccess === true` - -### Столбцы - -#### POST /tables/:id/columns - -Добавить столбец - -**Запрос**: -```json -{ - "name": "Email", - "type": "text", - "order": 2, - "purpose": "contact" -} -``` - -#### PATCH /tables/column/:columnId - -Обновить столбец - -**Запрос**: -```json -{ - "name": "Новое название", - "type": "text", - "order": 5 -} -``` - -#### DELETE /tables/column/:columnId - -Удалить столбец (каскадное удаление всех значений) - -### Строки - -#### POST /tables/:id/rows - -Добавить строку - -**Ответ**: Объект созданной строки - -#### DELETE /tables/row/:rowId - -Удалить строку - -#### PATCH /tables/:id/rows/order - -Изменить порядок строк - -**Запрос**: -```json -{ - "order": [ - { "rowId": 100, "order": 0 }, - { "rowId": 101, "order": 1 } - ] -} -``` - -### Ячейки - -#### POST /tables/cell - -Создать или обновить значение ячейки (upsert) - -**Запрос**: -```json -{ - "row_id": 100, - "column_id": 5, - "value": "new@email.com" -} -``` - -**Логика**: -```sql -INSERT INTO user_cell_values (row_id, column_id, value_encrypted) -VALUES ($1, $2, encrypt_text($3, $4)) -ON CONFLICT (row_id, column_id) -DO UPDATE SET value_encrypted = encrypt_text($3, $4), updated_at = NOW() -``` - -### Фильтрация - -#### GET /tables/:id/rows - -Получить отфильтрованные строки - -**Параметры**: -``` -?product=Premium // Фильтр по продукту -&tags=VIP,B2B // Фильтр по тегам -&relation_12=45,46 // Фильтр по связи (column_id=12) -&multiselect_8=10,11 // Фильтр по мультивыбору (column_id=8) -&lookup_15=100 // Фильтр по lookup (column_id=15) -``` - -### RAG индекс - -#### POST /tables/:id/rebuild-index - -Пересобрать векторный индекс (только для админов) - -**Требования**: `req.session.userAccessLevel?.hasAccess === true` - -**Ответ**: -```json -{ - "success": true, - "count": 150 -} -``` - -### Связи - -#### GET /tables/:tableId/row/:rowId/relations - -Получить все связи строки - -**Ответ**: -```json -[ - { - "id": 1000, - "from_row_id": 100, - "column_id": 12, - "to_table_id": 5, - "to_row_id": 45 - } -] -``` - -#### POST /tables/:tableId/row/:rowId/relations - -Добавить связь или связи - -**Одна связь**: -```json -{ - "column_id": 12, - "to_table_id": 5, - "to_row_id": 45 -} -``` - -**Несколько связей** (multiselect): -```json -{ - "column_id": 12, - "to_table_id": 5, - "to_row_ids": [45, 46, 47] -} -``` - -**Логика**: -- Удаляет старые связи для column_id -- Добавляет новые связи - -#### DELETE /tables/:tableId/row/:rowId/relations/:relationId - -Удалить связь - -### Плейсхолдеры - -#### GET /tables/:id/placeholders - -Получить плейсхолдеры для столбцов таблицы - -**Ответ**: -```json -[ - { - "id": 1, - "name": "Email", - "placeholder": "email" - }, - { - "id": 2, - "name": "Имя клиента", - "placeholder": "imya_klienta" - } -] -``` - -#### GET /tables/placeholders/all - -Получить все плейсхолдеры по всем таблицам - -**Ответ**: -```json -[ - { - "column_id": 1, - "column_name": "Email", - "placeholder": "email", - "table_id": 1, - "table_name": "Контакты" - } -] -``` - ---- - -## Примеры использования - -### Пример 1: База знаний FAQ для AI - -#### Создание таблицы - -```javascript -const table = await tablesService.createTable({ - name: "FAQ", - description: "Часто задаваемые вопросы для AI", - isRagSourceId: 2 // RAG источник -}); -``` - -#### Добавление столбцов - -```javascript -// Вопрос (для векторного поиска) -await tablesService.addColumn(table.id, { - name: "Вопрос", - type: "text", - order: 0, - purpose: "question" -}); - -// Ответ (для AI) -await tablesService.addColumn(table.id, { - name: "Ответ", - type: "text", - order: 1, - purpose: "answer" -}); - -// Продукт (для фильтрации) -await tablesService.addColumn(table.id, { - name: "Продукт", - type: "multiselect", - order: 2, - purpose: "product", - options: { - choices: ["Базовый", "Премиум", "Корпоративный"] - } -}); - -// Теги (для фильтрации) -await tablesService.addColumn(table.id, { - name: "Теги", - type: "multiselect", - order: 3, - purpose: "userTags", - options: { - choices: ["Оплата", "Доставка", "Возврат", "Гарантия"] - } -}); -``` - -#### Добавление данных - -```javascript -// Добавляем строку -const row = await tablesService.addRow(table.id); - -// Заполняем ячейки -await tablesService.saveCell({ - row_id: row.id, - column_id: 1, // Вопрос - value: "Как вернуть товар?" -}); - -await tablesService.saveCell({ - row_id: row.id, - column_id: 2, // Ответ - value: "Возврат товара возможен в течение 14 дней с момента покупки..." -}); - -// Автоматически индексируется в vector store! -``` - -#### Поиск через AI - -```javascript -// Пользователь спрашивает AI -const userQuestion = "можно ли вернуть покупку?"; - -// AI делает векторный поиск -const results = await vectorSearch.search(table.id, userQuestion, 3); - -// Находит похожий вопрос "Как вернуть товар?" (score: -200) -// Возвращает ответ из metadata.answer -``` - -### Пример 2: CRM система - -#### Структура - -```javascript -// Таблица "Компании" -const companies = await tablesService.createTable({ - name: "Компании", - description: "База компаний" -}); - -await tablesService.addColumn(companies.id, { - name: "Название", - type: "text", - order: 0 -}); - -await tablesService.addColumn(companies.id, { - name: "Сайт", - type: "text", - order: 1 -}); - -await tablesService.addColumn(companies.id, { - name: "Отрасль", - type: "multiselect", - order: 2, - options: { choices: ["IT", "Финансы", "Ритейл", "Производство"] } -}); - -// Таблица "Контакты" -const contacts = await tablesService.createTable({ - name: "Контакты", - description: "База контактов" -}); - -await tablesService.addColumn(contacts.id, { - name: "Имя", - type: "text", - order: 0 -}); - -await tablesService.addColumn(contacts.id, { - name: "Email", - type: "text", - order: 1 -}); - -// Связь: Контакт → Компания -await tablesService.addColumn(contacts.id, { - name: "Компания", - type: "relation", - order: 2, - options: { - relatedTableId: companies.id, - relatedColumnId: 1 // Название компании - } -}); - -// Lookup: Сайт компании -await tablesService.addColumn(contacts.id, { - name: "Сайт компании", - type: "lookup", - order: 3, - options: { - relatedTableId: companies.id, - relatedColumnId: 2, // Связь через "Компания" - lookupColumnId: 2 // Подставить "Сайт" - } -}); -``` - -#### Использование - -```javascript -// Добавляем компанию -const company = await tablesService.addRow(companies.id); -await tablesService.saveCell({ - row_id: company.id, - column_id: 1, - value: "Microsoft" -}); -await tablesService.saveCell({ - row_id: company.id, - column_id: 2, - value: "https://microsoft.com" -}); - -// Добавляем контакт -const contact = await tablesService.addRow(contacts.id); -await tablesService.saveCell({ - row_id: contact.id, - column_id: 1, - value: "John Doe" -}); - -// Связываем контакт с компанией -await api.post(`/tables/${contacts.id}/row/${contact.id}/relations`, { - column_id: 3, // "Компания" - to_table_id: companies.id, - to_row_id: company.id -}); - -// Lookup автоматически подставит "https://microsoft.com"! -``` - -### Пример 3: Управление задачами - -#### Структура - -```javascript -// Таблица "Проекты" -const projects = await tablesService.createTable({ - name: "Проекты", - description: "Активные проекты" -}); - -await tablesService.addColumn(projects.id, { - name: "Название", - type: "text", - order: 0 -}); - -await tablesService.addColumn(projects.id, { - name: "Статус", - type: "multiselect", - order: 1, - options: { choices: ["Планирование", "В работе", "Завершен"] } -}); - -// Таблица "Задачи" -const tasks = await tablesService.createTable({ - name: "Задачи", - description: "Задачи по проектам" -}); - -await tablesService.addColumn(tasks.id, { - name: "Название", - type: "text", - order: 0 -}); - -await tablesService.addColumn(tasks.id, { - name: "Проект", - type: "relation", - order: 1, - options: { - relatedTableId: projects.id, - relatedColumnId: 1 - } -}); - -await tablesService.addColumn(tasks.id, { - name: "Приоритет", - type: "number", - order: 2 -}); - -await tablesService.addColumn(tasks.id, { - name: "Статус", - type: "multiselect", - order: 3, - options: { choices: ["To Do", "In Progress", "Review", "Done"] } -}); -``` - -#### Фильтрация задач по проекту - -```javascript -// Получить все задачи проекта с ID = 5 -const tasks = await api.get(`/tables/${tasks.id}/rows?relation_2=5`); - -// Получить задачи с приоритетом > 5 -const highPriority = tasks.filter(task => { - const priority = cellValues.find( - cell => cell.row_id === task.id && cell.column_id === 3 - )?.value; - return parseInt(priority) > 5; -}); -``` - ---- - -## Безопасность - -### Шифрование данных - -**Все чувствительные данные шифруются AES-256**: - -```javascript -// Шифруются: -name_encrypted // Название таблицы -description_encrypted // Описание -value_encrypted // Значения ячеек -placeholder_encrypted // Плейсхолдеры - -// НЕ шифруются (для индексов и производительности): -placeholder // Незашифрованный плейсхолдер -options // JSONB настройки -order // Порядок -``` - -**Функции шифрования в PostgreSQL**: - -```sql --- Шифрование -encrypt_text(plain_text, encryption_key) - --- Расшифровка -decrypt_text(encrypted_text, encryption_key) - --- Пример использования -INSERT INTO user_tables (name_encrypted) -VALUES (encrypt_text('Контакты', $1)); - -SELECT decrypt_text(name_encrypted, $1) as name -FROM user_tables; -``` - -### Права доступа - -```javascript -// Просмотр: все авторизованные пользователи -GET /tables -GET /tables/:id -GET /tables/:id/rows - -// Редактирование: пользователи с правами -if (!canEditData) { - return res.status(403).json({ error: 'Доступ запрещен' }); -} -POST /tables/:id/columns -POST /tables/:id/rows -POST /tables/cell -PATCH /tables/column/:columnId - -// Удаление: только администраторы -if (!req.session.userAccessLevel?.hasAccess) { - return res.status(403).json({ error: 'Только для администраторов' }); -} -DELETE /tables/:id -DELETE /tables/column/:columnId -DELETE /tables/row/:rowId -POST /tables/:id/rebuild-index -``` - -### Проверка прав через токены - -```javascript -// Backend проверяет баланс токенов -const address = req.session.address; -const dleContract = new ethers.Contract(dleAddress, dleAbi, provider); -const balance = await dleContract.balanceOf(address); - -if (balance === 0n) { - return res.status(403).json({ - error: 'Доступ запрещен: нет токенов' - }); -} - -// Определяем уровень доступа -const accessLevel = determineAccessLevel(balance); -req.session.userAccessLevel = accessLevel; -``` - -### Защита от SQL-инъекций - -**Параметризованные запросы**: - -```javascript -// ✅ Безопасно (параметры) -await db.getQuery()( - 'SELECT * FROM user_tables WHERE id = $1', - [tableId] -); - -// ❌ ОПАСНО (конкатенация) -await db.getQuery()( - `SELECT * FROM user_tables WHERE id = ${tableId}` -); -``` - -### Валидация входных данных - -```javascript -// Проверка типов -if (typeof name !== 'string') { - return res.status(400).json({ error: 'Invalid name' }); -} - -// Проверка существования -const exists = await db.getQuery()( - 'SELECT id FROM user_tables WHERE id = $1', - [tableId] -); -if (!exists.rows[0]) { - return res.status(404).json({ error: 'Table not found' }); -} - -// Проверка уникальности (placeholder) -const duplicate = await db.getQuery()( - 'SELECT id FROM user_columns WHERE placeholder = $1 AND id != $2', - [placeholder, columnId] -); -if (duplicate.rows.length > 0) { - placeholder = generateUniquePlaceholder(); -} -``` - -### Каскадное удаление (защита от orphaned data) - -```sql --- Все связи с ON DELETE CASCADE -CREATE TABLE user_columns ( - table_id INTEGER NOT NULL - REFERENCES user_tables(id) ON DELETE CASCADE -); - -CREATE TABLE user_rows ( - table_id INTEGER NOT NULL - REFERENCES user_tables(id) ON DELETE CASCADE -); - -CREATE TABLE user_cell_values ( - row_id INTEGER NOT NULL - REFERENCES user_rows(id) ON DELETE CASCADE, - column_id INTEGER NOT NULL - REFERENCES user_columns(id) ON DELETE CASCADE -); - --- Результат: удаление таблицы автоматически удаляет ВСЁ -``` - -### Rate Limiting - -```javascript -// В backend/routes/tables.js можно добавить -const rateLimit = require('express-rate-limit'); - -const tablesLimiter = rateLimit({ - windowMs: 15 * 60 * 1000, // 15 минут - max: 100, // 100 запросов - message: 'Слишком много запросов к таблицам' -}); - -router.use(tablesLimiter); -``` - ---- - -## Производительность - -### Оптимизации - -#### 1. Параллельные запросы - -```javascript -// Вместо последовательных запросов: -const tableMeta = await db.query('SELECT ...'); -const columns = await db.query('SELECT ...'); -const rows = await db.query('SELECT ...'); -const cellValues = await db.query('SELECT ...'); - -// Используются параллельные: -const [tableMeta, columns, rows, cellValues] = await Promise.all([ - db.query('SELECT ...'), - db.query('SELECT ...'), - db.query('SELECT ...'), - db.query('SELECT ...') -]); - -// Ускорение: 4x -``` - -#### 2. Индексы на связях - -```sql -CREATE INDEX idx_user_table_relations_from_row - ON user_table_relations(from_row_id); - -CREATE INDEX idx_user_table_relations_to_table - ON user_table_relations(to_table_id); - --- Результат: быстрая фильтрация по связям -``` - -#### 3. UNIQUE constraint - -```sql -CREATE TABLE user_cell_values ( - ... - UNIQUE(row_id, column_id) -); - --- Преимущества: --- 1. Предотвращает дубликаты ячеек --- 2. Ускоряет upsert (ON CONFLICT) --- 3. Автоматический индекс -``` - -#### 4. WebSocket вместо polling - -```javascript -// ❌ Polling (медленно) -setInterval(async () => { - const data = await fetchTableData(); - updateUI(data); -}, 5000); - -// ✅ WebSocket (мгновенно) -socket.on('table-update', (data) => { - if (data.tableId === currentTableId) { - updateUI(data); - } -}); - -// Результат: real-time обновления, нет нагрузки на сервер -``` - -#### 5. Кэширование - -```javascript -// Backend может добавить кэш для часто запрашиваемых таблиц -const NodeCache = require('node-cache'); -const tableCache = new NodeCache({ stdTTL: 300 }); // 5 минут - -router.get('/:id', async (req, res) => { - const cacheKey = `table_${req.params.id}`; - const cached = tableCache.get(cacheKey); - - if (cached) { - return res.json(cached); - } - - const data = await fetchTableData(req.params.id); - tableCache.set(cacheKey, data); - res.json(data); -}); -``` - -### Метрики - -**Типичное время ответа**: -``` -GET /tables → 50-100ms (все таблицы) -GET /tables/:id → 150-300ms (с данными, Promise.all) -POST /tables/cell → 100-200ms (upsert + vector update) -DELETE /tables/row/:id → 200-400ms (удаление + rebuild vector) -POST /tables/:id/rebuild-index → 1-5s (зависит от размера) -``` - -**Оптимальные размеры таблиц**: -``` -Строк: до 10,000 → Отлично -Строк: 10,000-50,000 → Хорошо -Строк: >50,000 → Нужны доп. оптимизации (pagination, lazy load) -``` - ---- - -## Ограничения и будущие улучшения - -### Текущие ограничения - -1. **Нет пагинации**: Все строки загружаются сразу - - Для больших таблиц (>1000 строк) может быть медленно - -2. **Нет формул**: Нельзя делать вычисляемые поля - - Workaround: использовать lookup - -3. **Нет группировки**: Нельзя группировать строки - - Workaround: фильтрация на frontend - -4. **Нет истории изменений**: Не отслеживается, кто и когда изменил - - Можно добавить audit trail - -5. **Ограниченная сортировка**: Только через order поле - - Нет сортировки по столбцам на backend - -### Возможные улучшения - -```javascript -// 1. Пагинация -GET /tables/:id/rows?page=1&limit=50 - -// 2. Сортировка -GET /tables/:id/rows?sort_by=column_id&order=asc - -// 3. Формулы -{ - "type": "formula", - "options": { - "formula": "{{price}} * {{quantity}}" - } -} - -// 4. История изменений -CREATE TABLE user_cell_history ( - id SERIAL PRIMARY KEY, - cell_id INTEGER REFERENCES user_cell_values(id), - old_value TEXT, - new_value TEXT, - changed_by INTEGER, - changed_at TIMESTAMP -); - -// 5. Экспорт/импорт -POST /tables/:id/export → CSV/Excel -POST /tables/:id/import ← CSV/Excel - -// 6. Шаблоны таблиц -POST /tables/templates/crm → Создать CRM из шаблона -POST /tables/templates/tasks → Создать Kanban из шаблона -``` - ---- - -## Заключение - -Система электронных таблиц в DLE — это **мощный инструмент** для управления структурированными данными с: - -✅ **Гибкой структурой** (6 типов полей) -✅ **Связями между таблицами** (relation, lookup) -✅ **AI интеграцией** (RAG, векторный поиск) -✅ **Real-time обновлениями** (WebSocket) -✅ **Безопасностью** (AES-256, права доступа) -✅ **Производительностью** (индексы, параллельные запросы) - -Это **не просто Excel**, а **полноценная база данных** с удобным интерфейсом и AI ассистентом! - ---- - -**© 2024-2025 Тарабанов Александр Викторович. Все права защищены.** - -**Версия документа**: 1.0.0 -**Дата создания**: October 25, 2025 -**Статус**: Временный (для внутреннего использования) - diff --git a/legal/AGREEMENT_DISTRIBUTION_RU.md b/legal/AGREEMENT_DISTRIBUTION_RU.md deleted file mode 100644 index e577278..0000000 --- a/legal/AGREEMENT_DISTRIBUTION_RU.md +++ /dev/null @@ -1,195 +0,0 @@ -# Договор о передаче права продажи лицензий и обслуживании (РФ) - -г. ____________________ «__» __________ 20__ г. - -## 1. Стороны - -1.1. Правообладатель: Тарабанов Александр Викторович (Автор), паспорт/ИНН, адрес, e-mail: info@hb3-accelerator.com. - -1.2. Дистрибьютор: ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ЭРАЙТИ" (ООО "ЭРАЙТИ"), ОГРН: 1222600014383, ИНН: 2636220809, КПП: 263601001, адрес: 355007, СТАВРОПОЛЬСКИЙ КРАЙ, Г.О. ГОРОД СТАВРОПОЛЬ, Г СТАВРОПОЛЬ, УЛ БУРМИСТРОВА, Д. 65Б, ПОМЕЩ. 2, представитель: Тарабанов Александр Викторович, генеральный директор, действующий на основании Устава. - -## 2. Термины - -2.1. ПО — программное обеспечение «Digital Legal Entity (DLE)» и сопутствующая документация. - -2.2. Лицензия конечному пользователю — неисключительное право использования ПО на условиях файла `LICENSE` и документа `legal/TERMS_OF_SERVICE.md` Правообладателя. - -2.3. Токен — криптографический токен смарт‑контракта, подтверждающий и воплощающий права по лицензии на ПО. Владение токеном приравнивается к владению действующей лицензией на условиях `LICENSE` и `TERMS_OF_SERVICE.md`. - -2.4. Продажа лицензии — предоставление конечному пользователю прав использования ПО через отчуждение/передачу соответствующего токена и выдачу лицензионных материалов на возмездной основе. - -2.5. Обслуживание — поддержка L1 (первой линии) для клиентов Дистрибьютора и взаимодействие с Правообладателем по L2/L3 согласно SLA (Приложение 2). - -## 3. Предмет договора - -3.1. Правообладатель предоставляет Дистрибьютору право на территории Российской Федерации осуществлять: - -- продажу лицензий (токенов) конечным пользователям; -- обслуживание клиентов по проданным лицензиям на уровне L1; -- организацию платежей согласно тарифной модели из `legal/TERMS_OF_SERVICE.md`. - -3.2. Настоящий договор является письменным разрешением Правообладателя на коммерческую перепродажу лицензий (пп. 3–5 `LICENSE`). Исключительные права на ПО к Дистрибьютору не переходят. - -3.3. Условия для конечных пользователей не могут быть мягче/шире, чем в `LICENSE` и `legal/TERMS_OF_SERVICE.md`. Тексты подлежат обязательной выдаче каждому покупателю. - -3.4. Продажи осуществляются исключительно в формате B2B (юридические лица/индивидуальные предприниматели) по договору и акту. Продажи физическим лицам в целях, не связанных с предпринимательской деятельностью (B2C), по настоящему договору не допускаются. - -## 4. Объем прав и ограничения - -4.1. Дистрибьютору предоставляется право продажи лицензий (токенов) и право на использование товарных знаков/бренда Правообладателя в маркетинговых целях в объеме, согласованном с Правообладателем. - -4.2. Дистрибьютор не вправе: - -а) модифицировать, декомпилировать ПО, создавать производные произведения; - -б) удалять уведомления об авторских правах и лицензировании; - -в) предоставлять суб-лицензии или уступать права по настоящему договору без письменного согласия Правообладателя; - -г) нарушать запреты и ограничения, установленные `LICENSE` и `legal/TERMS_OF_SERVICE.md` (включая запрет перепродажи конечным пользователям прав шире оговоренных, SaaS-развертывания без разрешения, использование в образовательных целях без согласия и др.). - -4.3. Обновления, модификации, производные работы — только с письменного разрешения Правообладателя. - -## 5. Территория и срок - -5.1. Территория: Российская Федерация. - -5.2. Срок: 1 (один) год с даты подписания. По соглашению сторон может продлеваться на последующие периоды по 1 году путем обмена письмами/ЭДО не позднее чем за 30 календарных дней до окончания текущего срока. - -## 6. Тарифная модель и расчеты - -6.1. Применяются модели и условия оплаты из `legal/TERMS_OF_SERVICE.md` (в т.ч. методы оплаты, базовая валюта USDT, правила конвертации, налоги, комиссии, авторизованные продавцы, возвраты). На дату подписания действуют, в частности: - -- Standard Support — $1,000 USDT; -- Priority Support — $10,000 USDT. - -6.2. Все цены указываются без учета налогов. Налоги и комиссии несет покупатель согласно `legal/TERMS_OF_SERVICE.md`. - -6.2.1. Итоговая цена для клиента в РФ формируется как: Базовая цена тарифа в USDT + комиссия Дистрибьютора (≤ 3% от базовой цены) + применимые налоги и платежные комиссии (конвертация, блокчейн, процессинг) = цена к оплате. Налоги и комиссии оплачиваются покупателем и добавляются к базовой цене. - -6.2.2. Продажи на территории РФ: до момента оплаты конечному пользователю доводится итоговая цена в рублях с указанием статуса НДС ("включая НДС 20%"/"без НДС, льгота применяется/не применяется"). При отсутствии льготы по НДС Дистрибьютор исчисляет и уплачивает НДС в общем порядке и оформляет документы согласно законодательству РФ. - -6.2.3. Для целей настоящего договора льгота по НДС за счет включения ПО в реестр российского ПО не применяется (ПО в реестре не состоит). НДС исчисляется и уплачивается Дистрибьютором в соответствии с законодательством РФ. - -6.2.4. ККТ: Дистрибьютор контрольно‑кассовую технику не применяет; расчеты с покупателями осуществляются в безналичной форме по счету и на основании договора и акта. Фискальные чеки не формируются. В случае изменения обязательных требований законодательства РФ стороны безотлагательно согласуют и внедрят актуальный порядок расчетов и документооборота. - -6.3. Комиссия Дистрибьютора включена в цену лицензии и не превышает 3% от базовой цены тарифа в USDT (Standard — $1,000; Priority — $10,000). Остаток перечисляется Правообладателю в срок 5 (пяти) банковских дней после отчетного периода. - -6.3.1. НДФЛ и иные обязательные платежи с выплат Автору (физическому лицу): Дистрибьютор является налоговым агентом, удерживает и перечисляет НДФЛ и иные обязательные платежи в соответствии с законодательством РФ. В случае невозможности удержания применяется механизм gross‑up: сумма выплаты увеличивается так, чтобы после удержаний Автор получил сумму, эквивалентную установленной по настоящему договору. - -6.4. Отчетность: одновременно с каждым запросом выплаты по п. 6.7 Дистрибьютор направляет реестр проданных лицензий с указанием ID/хеша токена/кошелька, даты, тарифа, цены, контрагента, канала продажи. Отчетность дополняет on‑chain реестр и включает офчейн‑данные, необходимые для налогового, бухгалтерского и договорного учета (в т.ч. курс/момент фиксации, НДС‑статус, документы). Правообладатель вправе запросить подтверждающие документы и доступ к записям смарт‑контракта для сверки. Правообладатель также видит реестр проданных лицензий в блокчейне по адресу смарт‑контракта токенов (указан в Приложении 1) и осуществляет мониторинг записей напрямую из сети. - -6.5. Аудит: Правообладатель вправе проводить аудит отчетности и систем учета Дистрибьютора с уведомлением за 5 (пять) рабочих дней. Несоответствия свыше 5% подлежат корректировке, возможны штрафы по п. 9. - -6.6. Конвертация в RUB: расчетная сумма в рублях определяется по курсу на момент оплаты с учетом правил конвертации и комиссий, установленных в `legal/TERMS_OF_SERVICE.md`. Отображаемая клиенту итоговая цена включает комиссию Дистрибьютора и все применимые налоги/комиссии. - -6.6.1. Расчеты на территории РФ производятся исключительно в рублях в безналичном порядке. Использование криптовалют (включая USDT) в качестве средства платежа на территории РФ не допускается. Использование USDT возможно исключительно в рамках операций, осуществляемых вне территории РФ и вне юрисдикции РФ в соответствии с применимым правом (см. также п. 6.10). - -6.7. График выплат Правообладателю: выплаты осуществляются по письменному запросу Правообладателя в течение 20 (двадцати) календарных дней с даты получения запроса. В любом случае выплаты производятся не реже одного раза в календарный год — за 15 (пятнадцать) дней до истечения срока действия настоящего договора. - -6.8. Эквивалент USDT для выплат Автору: при расчетах на территории РФ Дистрибьютор выплачивает Автору суммы в местной валюте, эквивалентные базовой цене тарифа в 1 000/10 000 USDT (в зависимости от тарифа), исходя из стоимости приобретения Автором соответствующего количества USDT на момент покупки лицензии конечным пользователем. Эквивалент включает все фактические затраты на приобретение USDT: банковские комиссии, комиссии платежных систем, комиссии обмена/конвертации и иные сопутствующие расходы, необходимые для получения Автором указанного объема USDT. - -6.9. Источник курса и момент фиксации: курс и комиссии определяются по наилучшей доступной котировке на момент совершения конечным пользователем оплаты (timestamp платежа), по умолчанию — по курсу Тинькофф Банка или Московской биржи (USD/RUB, USDT/RUB), подтверждаемому публичными данными/выпиской/скриншотом котировок. По запросу стороны могут согласовать иной первичный источник котировок в дополнительном соглашении. - -6.10. Прямые выплаты в USDT: если расчеты производятся вне территории РФ и применимое право допускает использование USDT в качестве средства расчетов, стороны могут по согласованию осуществлять выплату непосредственно в USDT на указанный Автором адрес. В таком случае положения п. 6.8 о расчетном эквиваленте не применяются. - -## 7. Токены, выдача и учет - -7.1. Эмитент/контролер выпуска токенов: Правообладатель. Порядок генерации, распределения и активации токенов, а также регистра учета — по Приложению 1. - -7.2. Передача прав конечному пользователю считается совершенной с момента неизменяемой фиксации транзакции передачи токена в соответствующей сети блокчейна и предоставления пользователю текстов `LICENSE` и `legal/TERMS_OF_SERVICE.md`. - -7.3. Утрата доступа к кошельку/токену квалифицируется как риск пользователя; перевыпуск/ре‑issue возможен только в пределах и на условиях, установленных Правообладателем и смарт‑контрактом. - -7.4. Комплаенс расчетов: Стороны подтверждают, что не являются субъектами, на которых распространяются специальные обязанности по 115‑ФЗ (банки, НКО, обменные сервисы, операторы электронных средств платежа, операторы ЦФА и др.), и не осуществляют соответствующие виды деятельности. Расчеты по настоящему договору осуществляются в безналичной форме в рублях через банковские счета (в РФ), без приема наличных денег, электронных денежных средств и криптоактивов на территории РФ. Стороны обязуются соблюдать применимое законодательство и предоставлять сведения по законным запросам компетентных органов. - -7.5. Правовая природа токена: токен представляет собой цифровой идентификатор (маркер) лицензии на ПО и подтверждение объемов предоставленного права использования. Токен не является средством платежа, электронным денежным средством или денежным суррогатом и используется исключительно как технический идентификатор прав по договору. - -7.6. Режим УЦП/ЦФА/удр: стороны признают, что правовая конструкция токена соотносится с режимом утилитарных цифровых прав/цифровых финансовых активов в понимании законодательства РФ; при необходимости стороны заключают дополнительные соглашения/раскрытия для соблюдения требований специального регулирования и комплаенса. - -7.7. Блокировка/отзыв токенов: блокировка распределения новых токенов Дистрибьютору и отзыв нереализованных токенов допускаются в случаях существенных нарушений договора/`LICENSE`/`legal/TERMS_OF_SERVICE.md`. Такие действия рассматриваются как реализация права на односторонний отказ от договора в части будущих поставок и не затрагивают права добросовестных конечных пользователей. Все действия осуществляются с соблюдением норм ГК РФ и документируются. - -## 8. Поддержка и SLA - -8.1. L1 поддержка: Дистрибьютор по каналам и срокам ответа согласно SLA (Приложение 2). - -8.2. L2/L3: Правообладатель оказывает расширенную поддержку в пределах выбранного тарифа (Standard/Priority) по регламенту `legal/TERMS_OF_SERVICE.md` и Приложения 2. - -8.3. Все обращения регистрируются в сервисе Правообладателя: https://hb3-accelerator.com/. - -8.4. Персональные данные: обработка осуществляется строго в соответствии с 152‑ФЗ с обязательной локализацией баз данных на территории Российской Федерации. Трансграничная передача ПДн не допускается без отдельных правовых оснований и согласий. Стороны обеспечивают получение необходимых согласий субъектов ПДн и заключают соглашения по обработке данных (DPA), если это требуется по характеру услуг, при этом обработка и хранение осуществляются исключительно в пределах РФ. - -## 9. Ответственность - -9.1. ПО предоставляется «как есть»; ограничения ответственности и принципы возвратов — по `legal/TERMS_OF_SERVICE.md` (включая лимиты и Refund Program), если иное прямо не согласовано сторонами. - -9.2. За продажи на несогласованных условиях или нарушение ограничений `LICENSE` — штраф _____% от выручки по таким продажам. Повторное нарушение — основание для расторжения. - -9.3. За любое нарушение авторских и исключительных прав Правообладателя, включая, но не ограничиваясь: продажу лицензий (токенов) без учета и отчетности, выдачу прав шире установленных `LICENSE` и `legal/TERMS_OF_SERVICE.md`, распространение копий ПО, удаление уведомлений об авторских правах, — Дистрибьютор уплачивает штраф в размере 300% от валовой выручки по соответствующим продажам/поставкам, но не менее 1 000 000 (одного миллиона) рублей за каждый выявленный случай нарушения. - -9.4. В случае нарушения авторских прав Правообладатель вправе в одностороннем порядке расторгнуть договор, заблокировать дальнейшее распределение токенов (в том числе исключить адреса из списка авторизованных), приостановить оказание поддержки, а также потребовать изъятия/отзыва нереализованных токенов у Дистрибьютора с последующим урегулированием расчетов. - -9.5. Просрочка выплат Правообладателю влечет начисление неустойки в размере 0,2% от просроченной суммы за каждый день просрочки, но не более 20% от такой суммы. Уплата неустойки не освобождает от обязанности произвести платеж и уплатить штрафы за иные нарушения. - -9.6. Снижение неустойки: Стороны осведомлены о праве суда уменьшить размер неустойки по ст. 333 ГК РФ и подтверждают, что установленные размеры соответствуют характеру и последствиям возможных нарушений. - -## 10. Расторжение и последствия - -10.1. Договор может быть расторгнут по соглашению сторон, а также в одностороннем порядке при существенном нарушении условий настоящего договора, `LICENSE` или `legal/TERMS_OF_SERVICE.md` с уведомлением за ___ календарных дней. - -10.2. По прекращении договора Дистрибьютор прекращает продажи, передает остаток нереализованных токенов/реестры, прекращает использование бренда и удаляет копии ПО, кроме необходимых для отчетности и исполнения закона. - -## 11. Право и юрисдикция - -11.1. Применимое право: право Российской Федерации. Споры подлежат рассмотрению в Арбитражном суде по месту Правообладателя, если иное не согласовано. - -## 12. Прочие условия - -12.1. Настоящий договор не создает переход исключительных прав на ПО к Дистрибьютору. - -12.2. Электронный документооборот/КЭП допускается. Публичные уведомления и реестры — по контактам из `LICENSE`. - ---- - -Реквизиты и подписи - -Правообладатель: Тарабанов Александр Викторович (Автор), e-mail: info@hb3-accelerator.com. -Дата: __.__.20__ - -Дистрибьютор: ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ЭРАЙТИ" (ООО "ЭРАЙТИ"), 355007, СТАВРОПОЛЬСКИЙ КРАЙ, Г.О. ГОРОД СТАВРОПОЛЬ, Г СТАВРОПОЛЬ, УЛ БУРМИСТРОВА, Д. 65Б, ПОМЕЩ. 2, ИНН: 2636220809, ОГРН: 1222600014383, 18900@эрайти.рф, +7 (968) 269-92-64. -Дата: __.__.20__ - ---- - -### Приложение 1. Порядок выдачи и учета токенов (лицензий) - -1) Выпуск и пул токенов: создается и ведется Правообладателем. - Адрес смарт‑контракта токенов (лицензий): 0xdD27a91692da59d1Ee7dD1Fb342B9f1B5FF29386. - -2) Распределение Дистрибьютору: по заявке/лотами с указанием лимитов и сроков. - -3) Продажа: передача токена на кошелек пользователя, фиксация данных продажи в реестре. - -4) Верификация: проверка статуса токена и соответствия тарифу. - -5) Отзыв/аннулирование: в случаях мошенничества/неоплаты — по регламенту смарт‑контракта и закону. - -### Приложение 2. SLA поддержки - -- Каналы связи: сервис https://hb3-accelerator.com/. - -- Уровни: L1 — Дистрибьютор; L2/L3 — Правообладатель. - -- Standard: ответ L1 до 5–7 рабочих дней; эскалация L2/L3 по необходимости. - -- Priority: ответ в течение 24 часов; расширенные услуги (AI‑ассистент 24/7, ежедневные бэкапы) согласно `legal/TERMS_OF_SERVICE.md`. - -### Приложение 3. Тарифная модель (сводно) - -- Standard Support — $1,000 USDT за лицензию (токен). - -- Priority Support — $10,000 USDT за лицензию (токен). - -- Методы оплаты, налоги, комиссии и правила конвертации — строго по `legal/TERMS_OF_SERVICE.md`. - - diff --git a/legal/ATTRIBUTION_REQUIREMENTS.md b/legal/ATTRIBUTION_REQUIREMENTS.md deleted file mode 100644 index b2bfc62..0000000 --- a/legal/ATTRIBUTION_REQUIREMENTS.md +++ /dev/null @@ -1,112 +0,0 @@ -# Требования к атрибуции - -## Обязательная атрибуция - -При использовании любого кода из проекта DLE (Digital Legal Entity), включая отдельные функции, модули или алгоритмы, обязательно указывать источник. - -## Форматы атрибуции - -### В комментариях кода -```javascript -/** - * Источник: DLE (Digital Legal Entity) - * Автор: Тарабанов Александр Викторович - * Лицензия: Proprietary - * Ссылка: https://github.com/VC-HB3-Accelerator/DLE - */ -``` - -### В документации -```markdown -## Используемые компоненты - -- **DLE Authentication Module** - Тарабанов Александр Викторович - - Лицензия: Proprietary - - Источник: https://github.com/VC-HB3-Accelerator/DLE -``` - -### В файлах конфигурации -```json -{ - "attributions": { - "DLE": { - "author": "Тарабанов Александр Викторович", - "license": "Proprietary", - "source": "https://github.com/VC-HB3-Accelerator/DLE", - "contact": "info@hb3-accelerator.com" - } - } -} -``` - -## Что требует атрибуции - -### Обязательно указывать источник: -- Любые функции или методы -- Алгоритмы и логика -- Структуры данных -- Конфигурационные файлы -- Стили и компоненты UI -- Документация и комментарии - -### Не требует атрибуции: -- Стандартные библиотеки и фреймворки -- Общеизвестные алгоритмы -- Базовые паттерны программирования - -## Нарушения атрибуции - -### Считается нарушением: -- Использование кода без указания источника -- Удаление или модификация атрибуции -- Неправильное указание автора - -### Последствия: -- Автоматическое прекращение лицензии -- Возможность судебного преследования -- Требование немедленного прекращения использования - -## Примеры правильной атрибуции - -### В JavaScript файле -```javascript -// Функция валидации документов -// Источник: DLE (Digital Legal Entity) - Тарабанов Александр Викторович -// Лицензия: Proprietary -function validateDocument(doc) { - // реализация -} -``` - -### В Python файле -```python -# Модуль обработки блокчейн транзакций -# Источник: DLE (Digital Legal Entity) - Тарабанов Александр Викторович -# Лицензия: Proprietary -class BlockchainProcessor: - # реализация -``` - -### В README файле -```markdown -## Используемые компоненты - -Этот проект использует компоненты из DLE (Digital Legal Entity): - -- **Authentication System** - Тарабанов Александр Викторович -- **Document Processing** - Тарабанов Александр Викторович -- **Blockchain Integration** - Тарабанов Александр Викторович - -**Лицензия:** Proprietary -**Контакты:** info@hb3-accelerator.com -``` - -## Контакты для вопросов - -**Тарабанов Александр Викторович** -Email: info@hb3-accelerator.com -Сайт: https://hb3-accelerator.com - ---- - -**© 2024-2025 Тарабанов Александр Викторович. Все права защищены.** \ No newline at end of file diff --git a/legal/AUTHORS.md b/legal/AUTHORS.md deleted file mode 100644 index 8a9b0c0..0000000 --- a/legal/AUTHORS.md +++ /dev/null @@ -1,32 +0,0 @@ -# Авторы проекта DLE (Digital Legal Entity) - -## Основной разработчик - -**Тарабанов Александр Викторович** -- **GitHub:** [@VC-HB3-Accelerator](https://github.com/VC-HB3-Accelerator) -- **Организация:** HB3 Accelerator -- **Email:** info@hb3-accelerator.com -- **Сайт:** [hb3-accelerator.com](https://hb3-accelerator.com) - -## Контрибьюторы - -*Список будет пополняться по мере развития проекта* - -## Контактная информация - -### Для вопросов по авторским правам и лицензированию: -- **Email:** info@hb3-accelerator.com -- **GitHub Issues:** [Создать issue](https://github.com/VC-HB3-Accelerator/DLE/issues) -- **Сайт:** [hb3-accelerator.com](https://hb3-accelerator.com) - - -## История проекта - -- **2024-2025:** Разработка и выпуск первой версии DLE -- **Автор:** Тарабанов Александр Викторович -- **Лицензия:** Proprietary Software License -- **Статус:** Активная разработка - ---- - -**Все права защищены.** См. файл [LICENSE.md](LICENSE.md) для подробностей. \ No newline at end of file diff --git a/legal/CONSENT_PERSONAL_DATA_RU.md b/legal/CONSENT_PERSONAL_DATA_RU.md deleted file mode 100644 index 122c372..0000000 --- a/legal/CONSENT_PERSONAL_DATA_RU.md +++ /dev/null @@ -1,39 +0,0 @@ -# Согласие на обработку персональных данных - -При использовании приложения **эрайти.рф** даю согласие на обработку персональных данных **ООО "ЭРАЙТИ"**. - -Я, субъект персональных данных/представитель Клиента, предоставляю настоящее согласие на обработку персональных данных в соответствии с Федеральным законом от 27.07.2006 № 152-ФЗ "О персональных данных". - -**Оператор персональных данных:** -ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ЭРАЙТИ" (ООО "ЭРАЙТИ") -ОГРН: 1222600014383, ИНН: 2636220809 -Адрес: 355007, СТАВРОПОЛЬСКИЙ КРАЙ, Г.О. ГОРОД СТАВРОПОЛЬ, Г СТАВРОПОЛЬ, УЛ БУРМИСТРОВА, Д. 65Б, ПОМЕЩ. 2 - -Я предоставляю согласие на обработку следующих персональных данных для заключения и исполнения договора, обслуживания и коммуникаций. - -1. Перечень ПДн -— ФИО, должность/основание представительства, контактные данные (e‑mail, телефон); -— данные, необходимые для договорных отношений; адрес криптокошелька (тестовые сети Sepolia/Arbitrum/Base) для доставки токена‑лицензии; технические данные сессии для работы сервиса (IP, sessionId, cookie). - -2. Цели и способы -— заключение/исполнение договора, биллинг, поддержка, коммуникации (веб‑приложение, e‑mail, мессенджеры); -— автоматизированная и неавтоматизированная обработка с использованием ИТ‑систем Оператора. - -3. Срок действия и хранение -— до достижения целей либо отзыва согласия; отдельные данные — в сроки, установленные законом (не менее 5 лет для расчётных документов; cookie/сессии — до 30 дней или до окончания сессии). - -4. Передача третьим лицам -— хостинг‑провайдеру и иным лицам по договору/закону при соблюдении мер защиты; трансграничная передача не осуществляется, если отдельно не указано. - -5. Отзыв согласия -— по обращению на 18900@эрайти.рф Отзыв не влияет на законность обработки до даты отзыва. При отзыве обработка прекращается, если иное не требуется законом. - -6. Подтверждение акцепта -— согласие предоставляется онлайн (клик/чекбокс) с автоматической фиксацией даты/времени, IP-адреса и версии документа техническими средствами. - -**Дата предоставления согласия:** автоматически фиксируется системой -**IP-адрес:** автоматически фиксируется системой - -Я подтверждаю, что ознакомился с Политикой конфиденциальности на эрайти.рф. Версия согласия указывается в интерфейсе при акцепте. - - diff --git a/legal/CONTRIBUTING.md b/legal/CONTRIBUTING.md deleted file mode 100644 index c994639..0000000 --- a/legal/CONTRIBUTING.md +++ /dev/null @@ -1,75 +0,0 @@ -# Руководство для контрибьюторов - -## Лицензирование - -При внесении изменений в проект DLE (Digital Legal Entity) вы соглашаетесь с тем, что ваш код будет распространяться под **Proprietary Software License**. - -## Авторские права - -Все контрибьюторы должны: -- Указывать свое имя в коммитах -- Соглашаться с передачей прав на код автору проекта -- Не нарушать авторские права третьих лиц - -## Процесс внесения изменений - -### 1. Подготовка -- Создайте fork репозитория -- Клонируйте ваш fork локально -- Создайте feature branch для ваших изменений - -### 2. Разработка -- Следуйте стандартам кодирования проекта -- Добавляйте комментарии к коду на русском языке -- Тестируйте ваши изменения - -### 3. Коммиты -- Используйте понятные сообщения коммитов -- Указывайте свое имя в коммитах -- Разбивайте большие изменения на логические части - -### 4. Pull Request -- Создайте Pull Request с описанием изменений -- Укажите, какие проблемы решает ваш код -- Дождитесь review от автора проекта - -## Стандарты кода - -### Именование -- Файлы и папки: kebab-case -- Переменные и функции: camelCase -- Константы: UPPER_SNAKE_CASE -- Классы: PascalCase - -### Комментарии -```javascript -/** - * @copyright 2024-2025 Тарабанов Александр Викторович - * @license Proprietary - * @author [Ваше имя] <ваш-email@example.com> - */ -``` - -### Git сообщения -``` -feat: добавить новую функцию авторизации -fix: исправить ошибку в валидации данных -docs: обновить документацию API -style: форматирование кода -refactor: рефакторинг модуля пользователей -test: добавить тесты для нового функционала -``` - -## Контакты - -### По вопросам участия в проекте: -- **Email:** info@hb3-accelerator.com -- **GitHub Issues:** [Создать issue](https://github.com/VC-HB3-Accelerator/DLE/issues) - -### Автор проекта: -**Тарабанов Александр Викторович** -Email: info@hb3-accelerator.com - ---- - -**Спасибо за ваш вклад в развитие проекта DLE!** \ No newline at end of file diff --git a/legal/COOKIE_CONSENT_RU.md b/legal/COOKIE_CONSENT_RU.md deleted file mode 100644 index fce834f..0000000 --- a/legal/COOKIE_CONSENT_RU.md +++ /dev/null @@ -1,22 +0,0 @@ -# Согласие на использование файлов cookie - -Оператор: ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ЭРАЙТИ" (ООО "ЭРАЙТИ"). Мы используем cookie для работы сессий и улучшения сервиса. - -1. Что такое cookie -— небольшие файлы, сохраняемые браузером для корректной работы веб‑приложения. - -2. Категории cookie -— строго необходимые (сессии/безопасность), функциональные (настройки интерфейса), аналитические (улучшение сервиса). - -3. Управление cookie -— настройка в панели приложения (вкл/выкл категорий) и в браузере (удаление/блокировка); последствия отключения: часть функционала может быть недоступна. - -4. Сроки хранения -— сессионные — до окончания сессии; функциональные/аналитические — не более 30 дней, если не изменено в настройках. - -5. Правовая основа -— согласие пользователя, кроме строго необходимых cookie, необходимых для предоставления услуги. - -Продолжая использовать сайт/приложение или настраивая панели cookie, вы даёте согласие на использование cookie в соответствии с Политикой конфиденциальности на эрайти.рф. - - diff --git a/legal/COPYRIGHT_NOTICE.md b/legal/COPYRIGHT_NOTICE.md deleted file mode 100644 index 8fb8265..0000000 --- a/legal/COPYRIGHT_NOTICE.md +++ /dev/null @@ -1,100 +0,0 @@ -# Уведомление об авторских правах - -## Для использования в заголовках файлов кода - -Добавьте следующий заголовок в начало каждого файла исходного кода: - -```javascript -/** - * @copyright 2024-2025 Тарабанов Александр Викторович - * @license Proprietary - * @author Тарабанов Александр Викторович - * @see https://github.com/VC-HB3-Accelerator - * @see https://hb3-accelerator.com - */ -``` - -## Для Python файлов - -```python -""" -@copyright 2024-2025 Тарабанов Александр Викторович -@license Proprietary -@author Тарабанов Александр Викторович -@see https://github.com/VC-HB3-Accelerator -@see https://hb3-accelerator.com -""" -``` - -## Для Vue файлов - -```vue - -``` - -## Для CSS/SCSS файлов - -```css -/* -@copyright 2024-2025 Тарабанов Александр Викторович -@license Proprietary -@author Тарабанов Александр Викторович -@see https://github.com/VC-HB3-Accelerator -@see https://hb3-accelerator.com -*/ -``` - -## Для HTML файлов - -```html - -``` - -## Для конфигурационных файлов - -```json -{ - "_copyright": "2024-2025 Тарабанов Александр Викторович", - "_license": "Proprietary", - "_author": "Тарабанов Александр Викторович ", - "_website": "https://hb3-accelerator.com", - "_github": "https://github.com/VC-HB3-Accelerator" -} -``` - -## Важные файлы для добавления заголовков - -### Frontend -- `frontend/src/main.js` -- `frontend/src/App.vue` -- Все компоненты Vue -- Все стили CSS/SCSS - -### Backend -- `backend/src/index.js` -- Все модули и контроллеры -- Конфигурационные файлы - -### Документация -- `README.md` -- `docs/` - все файлы документации - -## Автоматизация - -Рекомендуется настроить pre-commit hooks для автоматического добавления заголовков авторских прав в новые файлы. - ---- - -**Все права защищены.** См. файл [LICENSE.md](LICENSE.md) для подробностей. \ No newline at end of file diff --git a/legal/PDN_RIGHTS_AND_REVOCATION_RU.md b/legal/PDN_RIGHTS_AND_REVOCATION_RU.md deleted file mode 100644 index e9d147c..0000000 --- a/legal/PDN_RIGHTS_AND_REVOCATION_RU.md +++ /dev/null @@ -1,23 +0,0 @@ -# Права субъектов персональных данных и отзыв согласия - -Оператор: ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ЭРАЙТИ" (ООО "ЭРАЙТИ"), адрес: 355007, СТАВРОПОЛЬСКИЙ КРАЙ, Г.О. ГОРОД СТАВРОПОЛЬ, Г СТАВРОПОЛЬ, УЛ БУРМИСТРОВА, Д. 65Б, ПОМЕЩ. 2, контакты: 18900@эрайти.рф, +7 (968) 269-92-64. - -1. Права субъекта (ст. 14 152‑ФЗ) -— получать информацию об обработке ПДн; требовать уточнения, блокирования или уничтожения ПДн; отзывать согласие. - -2. Порядок обращения -— направьте запрос на 18900@эрайти.рф. Срок ответа — до 30 календарных дней. Ответ предоставляется в электронной форме по адресу, с которого поступил запрос (если не указано иное), при необходимости — на бумаге. - -3. Отзыв согласия -— возможен по электронному запросу. После отзыва обработка прекращается, если иное не требуется по закону. - -4. Идентификация -— для защиты ваших данных Оператор вправе запросить дополнительную информацию для подтверждения личности представителя Клиента. - -6. Верификация представителей -— при обращении представителя проверка осуществляется по реквизитам договора/заказа (наименование организации, ИНН, номер договора/счёта, контактный e‑mail/телефон, указанные при заключении договора). - -5. Экспорт ваших данных -— по запросу предоставим информацию о хранящихся данных и логах согласий в разумный срок, соблюдая права третьих лиц и требования закона. - - diff --git a/legal/PRIVACY_POLICY_RU.md b/legal/PRIVACY_POLICY_RU.md deleted file mode 100644 index d54ac3a..0000000 --- a/legal/PRIVACY_POLICY_RU.md +++ /dev/null @@ -1,49 +0,0 @@ -# Политика конфиденциальности - -Оператор персональных данных: ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ЭРАЙТИ" (ООО "ЭРАЙТИ"), ОГРН: 1222600014383, ИНН: 2636220809, адрес: 355007, СТАВРОПОЛЬСКИЙ КРАЙ, Г.О. ГОРОД СТАВРОПОЛЬ, Г СТАВРОПОЛЬ, УЛ БУРМИСТРОВА, Д. 65Б, ПОМЕЩ. 2. Контакты: 18900@эрайти.рф, +7 (968) 269-92-64. - -1. Цели обработки -— заключение/исполнение договоров, обслуживание клиентов, биллинг, поддержка, улучшение сервиса, соблюдение законодательства. - -2. Категории субъектов -— Клиенты (юрлица/ИП) и их представители. - -3. Категории персональных данных -— идентификационные и контактные данные представителей (ФИО, должность, e‑mail, телефон); -— данные для расчётов и учёта (документы контрагентов); -— адрес криптокошелька представителя/Заказчика в тестовых сетях (Sepolia/Arbitrum/Base) для доставки токена‑лицензии и управления доступом; -— технические данные: IP, идентификаторы сессий, язык интерфейса, данные cookie (см. раздел 8). - -3.1. Специальные категории и биометрические данные -— специальные категории ПДн (о здоровье, политических взглядах и т.п.) и биометрические данные не обрабатываются. - -3.2. Несовершеннолетние -— обработка данных несовершеннолетних не является целевой и специально не ведётся. - -4. Правовые основания -— ст. 6, 9 152‑ФЗ; акцепт оферты; согласие субъекта; заключение и исполнение договора; исполнение обязанностей по закону. - -5. Сроки обработки и хранения -— договорные и расчётные данные: не менее 5 лет; -— технические cookie/сессии: до 30 дней либо до окончания сессии; -— иные данные — до достижения целей или отзыва согласия, если иное не требуется по закону. - -6. Передача третьим лицам -— личные данные не передаются третьим лицам. Хостинг осуществляется на арендованном VDS сервере ООО "Хостланд" (ИНН: 7811142520), все данные хранятся в изолированных Docker контейнерах в зашифрованном виде. Трансграничная передача не осуществляется. - -7. Меры защиты -— шифрование данных в БД, контроль и разграничение доступа, учёт действий, резервное копирование, изоляция в Docker‑контейнерах, организационные меры. - -8. Файлы cookie -— строго необходимые (сессии/безопасность), функциональные (настройки), аналитические (улучшение сервиса). -— управление: панель настроек приложения и настройки браузера (отключение/удаление cookie). -— сроки: сессионные — до завершения сессии; функциональные/аналитические — согласно настройкам браузера/панели, но не дольше 30 дней без продления. - -9. Права субъектов и порядок обращений -— получение информации об обработке, уточнение, блокирование/уничтожение, отзыв согласия; срок ответа — до 30 календарных дней. Контакты: 18900@эрайти.рф. - -10. Контакты Оператора -— ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ЭРАЙТИ" (ООО "ЭРАЙТИ"), 355007, СТАВРОПОЛЬСКИЙ КРАЙ, Г.О. ГОРОД СТАВРОПОЛЬ, Г СТАВРОПОЛЬ, УЛ БУРМИСТРОВА, Д. 65Б, ПОМЕЩ. 2, 18900@эрайти.рф, +7 (968) 269-92-64, сайт: эрайти.рф. - -Эта политика действует с даты публикации и актуализируется по мере изменений. - diff --git a/legal/README.md b/legal/README.md deleted file mode 100644 index d40c8e4..0000000 --- a/legal/README.md +++ /dev/null @@ -1,127 +0,0 @@ -# ЮРИДИЧЕСКАЯ ДОКУМЕНТАЦИЯ DLE -## Защита интеллектуальной собственности проекта - -### 📋 **ОБЗОР ДОКУМЕНТОВ** - -Этот раздел содержит всю юридическую документацию для защиты интеллектуальной собственности проекта DLE (Digital Legal Entity). - -### 🔒 **КОНФИДЕНЦИАЛЬНЫЕ ДОКУМЕНТЫ** - -#### **Патентные документы (НЕ ПУБЛИКОВАТЬ):** -- [patents/](patents/) - Патентные заявки и инновационные процессы - - Заявки на патент РФ - - Технические спецификации - - Инновационные процессы - - Стратегические планы - -**⚠️ ВАЖНО:** Патентные документы содержат конфиденциальную информацию и НЕ должны публиковаться в публичных репозиториях. - -### ✅ **ПУБЛИЧНЫЕ ДОКУМЕНТЫ** - -#### **Авторские права и лицензии:** -- [AUTHORS.md](AUTHORS.md) - Информация об авторах -- [CONTRIBUTING.md](CONTRIBUTING.md) - Правила для контрибьюторов -- [COPYRIGHT_NOTICE.md](COPYRIGHT_NOTICE.md) - Шаблоны копирайтов - -#### **Лицензирование и условия:** -- [TERMS_OF_SERVICE.md](TERMS_OF_SERVICE.md) - Условия использования и лицензирования -- [ATTRIBUTION_REQUIREMENTS.md](ATTRIBUTION_REQUIREMENTS.md) - Требования к атрибуции -- [USAGE_NOTIFICATION.md](USAGE_NOTIFICATION.md) - Уведомления об использовании - -#### **Полные условия обслуживания:** -- 📖 [../docs/service-terms.md](../docs/service-terms.md) - **Подробные условия приобретения и обслуживания** - - Лицензионная модель (Perpetual License) - - Типы условий обслуживания (Standard & Priority) - - Система голосования через смарт-контракт - - Программа возврата 70% - - Техническая поддержка через https://hb3-accelerator.com/ - ---- - -## 📜 **ЛИЦЕНЗИОННАЯ МОДЕЛЬ** - -### Бессрочная лицензия (Perpetual License) - -- **💰 Цена:** $1,000 USDT (Standard) или $10,000 USDT (Priority) -- **⏳ Срок:** Пожизненный (без ограничения по времени) -- **🔄 Обновления:** Бесплатно в течение 5 лет для держателей лицензионных токенов (см. [service-terms](./service-terms.md)) -- **🗳️ Голосование:** Блокчейн-голосование за развитие новых функций - -### Управление через смарт-контракт DLE - -Развитие приложения управляется через смарт-контракт на блокчейне (токенизированное акционерное общество): - -- **1 токен = 1 голос** независимо от количества -- **51%+ для принятия** решение большинством -- **Мультичейн** поддержка голосования и исполнения -- **Прозрачность** - все решения на блокчейне - -### Портальи для лицензионеров - -- 🗳️ **Портал голосования**: https://hb3-accelerator.com/ -- 📥 **Скачивание обновлений**: https://hb3-accelerator.com/ -- 💬 **Поддержка**: https://hb3-accelerator.com/ - -### 📁 **СТРУКТУРА ЗАЩИТЫ** - -``` -legal/ -├── AUTHORS.md # ✅ ПУБЛИКОВАТЬ - Авторы проекта -├── CONTRIBUTING.md # ✅ ПУБЛИКОВАТЬ - Правила контрибьюции -├── COPYRIGHT_NOTICE.md # ✅ ПУБЛИКОВАТЬ - Шаблоны копирайтов -├── TERMS_OF_SERVICE.md # ✅ ПУБЛИКОВАТЬ - Условия использования -├── ATTRIBUTION_REQUIREMENTS.md # ✅ ПУБЛИКОВАТЬ - Требования атрибуции -├── USAGE_NOTIFICATION.md # ✅ ПУБЛИКОВАТЬ - Уведомления об использовании -└── README.md # ✅ ПУБЛИКОВАТЬ - Этот файл -``` - -### 🛡️ **МЕХАНИЗМЫ ЗАЩИТЫ** - -#### **1. Авторские права:** -- Все файлы содержат копирайт Тарабанова А.В. -- Используется проприетарная лицензия -- Запрещено копирование без разрешения - -#### **2. Патентная защита:** -- Конфиденциальные документы в папке `patents/` -- Папка добавлена в `.gitignore` -- Документы не публикуются в репозиториях - -#### **3. Лицензирование:** -- Строгая проприетарная лицензия -- Обязательная атрибуция при использовании - -#### **4. Мониторинг:** -- Уведомления об использовании кода -- Требования к атрибуции - -### 🎯 **РЕКОМЕНДАЦИИ ПО ИСПОЛЬЗОВАНИЮ** - -#### **Для разработчиков:** -1. Изучите основную [LICENSE](../LICENSE) перед использованием -2. Соблюдайте [ATTRIBUTION_REQUIREMENTS.md](ATTRIBUTION_REQUIREMENTS.md) -3. Уведомите автора согласно [USAGE_NOTIFICATION.md](USAGE_NOTIFICATION.md) - -#### **Для использования:** -1. Соблюдайте авторские права -2. Указывайте источник при использовании -3. Не передавайте третьим лицам - -### 📞 **КОНТАКТЫ** - -**Автор:** Тарабанов Александр Викторович -**Email:** info@hb3-accelerator.com -**Website:** https://hb3-accelerator.com -**GitHub:** https://github.com/VC-HB3-Accelerator - -### ⚖️ **ПРАВОВАЯ ИНФОРМАЦИЯ** - -Все документы в этом разделе защищены авторским правом. Несанкционированное использование, копирование или распространение запрещено. - -Для получения разрешений на использование обращайтесь к автору по указанным контактам. - ---- - -**Дата создания:** 2024-2025 -**Последнее обновление:** 2024-2025 -**Статус:** Активно поддерживается \ No newline at end of file diff --git a/legal/SERVICE_ACT_TEMPLATE_RU.md b/legal/SERVICE_ACT_TEMPLATE_RU.md deleted file mode 100644 index ccf9c47..0000000 --- a/legal/SERVICE_ACT_TEMPLATE_RU.md +++ /dev/null @@ -1,22 +0,0 @@ -# Акт выполненных работ № ____ от «__» ________ 20__ г. - -Исполнитель: ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ЭРАЙТИ" (ООО "ЭРАЙТИ"), ОГРН: 1222600014383, ИНН: 2636220809, адрес: 355007, СТАВРОПОЛЬСКИЙ КРАЙ, Г.О. ГОРОД СТАВРОПОЛЬ, Г СТАВРОПОЛЬ, УЛ БУРМИСТРОВА, Д. 65Б, ПОМЕЩ. 2. -Заказчик: ________________________________________________ -Адрес кошелька Заказчика (тестовая сеть): __________________________ -Tx/Hash передачи токена‑лицензии: _________________________________ - -1. Перечень выполненных работ/оказанных услуг: -— ________________________________________________________ -— ________________________________________________________ - -2. Период оказания услуг: с «__» ________ 20__ г. по «__» ________ 20__ г. - -3. Стоимость по договору № ____ от «__» ________ 20__ г.: __________ (__________) руб., с НДС/без НДС. - -4. Замечания Заказчика: отсутствуют / изложены в приложении. - -Стороны подтверждают, что услуги оказаны в полном объёме. Порядок приёмки и фиксация передачи лицензии (on‑chain) определяются документом «Условия приобретения и обслуживания Digital Legal Entity». Указанные выше адрес кошелька и Tx/Hash используются для идентификации факта передачи. - -Подписи сторон -Исполнитель: ______________________ /М.П./ -Заказчик: _________________________ /М.П./ diff --git a/legal/SERVICE_AGREEMENT_RU.md b/legal/SERVICE_AGREEMENT_RU.md deleted file mode 100644 index aea2022..0000000 --- a/legal/SERVICE_AGREEMENT_RU.md +++ /dev/null @@ -1,52 +0,0 @@ -# Договор оказания услуг / лицензионный договор (минимальный) - -Исполнитель: ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ЭРАЙТИ" (ООО "ЭРАЙТИ"), ОГРН: 1222600014383, ИНН: 2636220809, адрес: 355007, СТАВРОПОЛЬСКИЙ КРАЙ, Г.О. ГОРОД СТАВРОПОЛЬ, Г СТАВРОПОЛЬ, УЛ БУРМИСТРОВА, Д. 65Б, ПОМЕЩ. 2. -Заказчик: ________________________________________________ -ОГРН: ________________________________________________ -ИНН: ________________________________________________ -КПП: ________________________________________________ -Адрес: ________________________________________________ - - -1. Предмет -1.1. Исполнитель предоставляет доступ к веб‑приложению DLE и/или неисключительную лицензию на ПО и оказывает связанные услуги; Заказчик принимает и оплачивает. -1.2. Конкретный объём работ/лицензии определяется в Заявке/Спецификации/Счёте, являющихся неотъемлемой частью Договора. -1.3. Для выдачи лицензии Заказчик предоставляет адрес криптокошелька в одной из тестовых сетей (Sepolia/Arbitrum/Base), на который Исполнитель осуществляет on‑chain передачу токена‑лицензии. -1.4. Токен‑лицензия предоставляет держателю возможность получения административных прав в установленном на собственном устройстве Заказчика шаблоне веб‑приложения, скачанном со страницы репозитория автора‑разработчика. -1.5. Держатель токена‑лицензии имеет право на бесплатные обновления веб‑приложения при наличии токена на принадлежащем ему адресе. - -1.6. Токен‑лицензия носит нефинансовый характер, не является средством платежа, ценной бумагой или иным финансовым инструментом. - -2. Стоимость и расчёты -2.1. Стоимость и порядок оплаты определяются в Счёте/Спецификации. - -3. Персональные данные -3.1. Обработка ПДн осуществляется в соответствии с действующими документами Исполнителя: -— Политика конфиденциальности, -— Согласие на обработку ПДн, -— Права субъектов и отзыв, -— Согласие на cookie. - -4. Приёмка -4.1. Результат услуг подтверждается Актом выполненных работ. Порядок и критерии приёмки, а также фиксация передачи лицензии (on‑chain) определяются документом «Условия приобретения и обслуживания Digital Legal Entity». - -5. Условия обслуживания и возвратов -5.1. Обновления, сопровождение, сроки и порядок возвратов регулируются документом «Условия приобретения и обслуживания Digital Legal Entity». - -6. Коммуникации -6.1. Взаимодействие сторон осуществляется через веб‑приложение, электронную почту и мессенджеры. - -7. Прочие условия -7.1. Применяется право РФ. Споры рассматриваются в суде по месту нахождения Исполнителя. - -Реквизиты и подписи -Исполнитель: ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ЭРАЙТИ" (ООО "ЭРАЙТИ"), 355007, СТАВРОПОЛЬСКИЙ КРАЙ, Г.О. ГОРОД СТАВРОПОЛЬ, Г СТАВРОПОЛЬ, УЛ БУРМИСТРОВА, Д. 65Б, ПОМЕЩ. 2, ИНН: 2636220809, ОГРН: 1222600014383, 18900@эрайти.рф, +7 (968) 269-92-64. -Заказчик: ________________________________________________ -ОГРН: ________________________________________________ -ИНН: ________________________________________________ -КПП: ________________________________________________ -Адрес: ________________________________________________ - -Подписи: -Исполнитель: ______________________ /М.П./ -Заказчик: _________________________ /М.П./ diff --git a/legal/USAGE_NOTIFICATION.md b/legal/USAGE_NOTIFICATION.md deleted file mode 100644 index 146c1e2..0000000 --- a/legal/USAGE_NOTIFICATION.md +++ /dev/null @@ -1,130 +0,0 @@ -# Требования к уведомлению об использовании - -## Обязательные уведомления - -При использовании кода из проекта DLE (Digital Legal Entity) в любом виде, включая приватные репозитории, обязательно уведомить автора. - -## Когда требуется уведомление - -### Обязательно уведомить: -- Использование в приватных репозиториях -- Интеграция в существующие системы -- Создание производных работ -- Использование в образовательных целях - -### Не требует уведомления: -- Личное изучение кода -- Тестирование функциональности -- Демонстрация возможностей - -## Форма уведомления - -### Email уведомление -``` -Тема: DLE Usage Notification - -Уважаемый Тарабанов Александр Викторович, - -Уведомляем об использовании кода из проекта DLE (Digital Legal Entity): - -## Информация о проекте: -- Название проекта: [НАЗВАНИЕ] -- Описание: [ОПИСАНИЕ] -- Тип использования: [ОБРАЗОВАТЕЛЬНОЕ/ЛИЧНОЕ] - -## Используемые компоненты: -- [СПИСОК ИСПОЛЬЗУЕМЫХ МОДУЛЕЙ/ФУНКЦИЙ] - -## Контактная информация: -- Имя: [ФИО] -- Email: [EMAIL] -- Организация: [ОРГАНИЗАЦИЯ] - -## Планы использования: -- [ОПИСАНИЕ ПЛАНОВ] - -С уважением, -[ФИО] -[EMAIL] -``` - -### GitHub Issue -Создать issue в репозитории с тегом `usage-notification`: -- Описание проекта -- Список используемых компонентов -- Контактная информация -- Планы использования - -## Сроки уведомления - -- **До начала использования** - для коммерческих проектов -- **В течение 30 дней** - для образовательных проектов -- **В течение 90 дней** - для личных проектов - -## Последствия отсутствия уведомления - -### Нарушение лицензии: -- Автоматическое прекращение прав на использование -- Возможность требования прекращения использования -- Потенциальные юридические последствия - -### Исключения: -- Использование в демонстрационных целях -- Кратковременное тестирование -- Изучение архитектуры и алгоритмов - -## Мониторинг использования - -### Автоматический мониторинг: -- Отслеживание форков репозитория -- Мониторинг упоминаний в коде -- Анализ зависимостей в npm/pip - -### Ручной мониторинг: -- Поиск по GitHub/GitLab -- Мониторинг технических блогов -- Отслеживание конференций и презентаций - -## Контакты для уведомлений - -**Тарабанов Александр Викторович** -- **Email:** info@hb3-accelerator.com -- **GitHub Issues:** [Создать issue](https://github.com/VC-HB3-Accelerator/DLE/issues) -- **Тема:** "DLE Usage Notification" - -## Шаблоны уведомлений - -### Для коммерческого использования -``` -Тема: Commercial DLE Usage Notification - -Уведомляем о коммерческом использовании DLE в проекте [НАЗВАНИЕ]. -Требуется лицензирование для продолжения использования. - -Детали проекта прилагаются. -``` - -### Для образовательного использования -``` -Тема: Educational DLE Usage Notification - -Уведомляем об использовании DLE в образовательных целях. -Проект: [НАЗВАНИЕ] -Учебное заведение: [НАЗВАНИЕ] - -Требуется разрешение для использования в курсах. -``` - -### Для личного использования -``` -Тема: Personal DLE Usage Notification - -Уведомляем о личном использовании DLE в проекте [НАЗВАНИЕ]. -Использование: [ОПИСАНИЕ] - -Спасибо за создание отличного инструмента! -``` - ---- - -**© 2024-2025 Тарабанов Александр Викторович. Все права защищены.** \ No newline at end of file diff --git a/legal/service-terms.md b/legal/service-terms.md deleted file mode 100644 index 2c0bdd8..0000000 --- a/legal/service-terms.md +++ /dev/null @@ -1,614 +0,0 @@ -# Условия приобретения и обслуживания Digital Legal Entity - -## 1. Лицензионная модель - -### 1.1. Основные принципы - -- **📜 Тип лицензии**: Единственный тип - **Бессрочная лицензия (Perpetual License)** -- **⏳ Срок действия**: Пожизненная (без ограничения по времени) -- **💰 Цена**: Зависит от **количества токенов** в лицензии (см. раздел 2) -- **🔄 Обновления**: БЕСПЛАТНЫ в течение 5 лет для держателей лицензионных токенов -- **🚫 Отмена**: Лицензия не может быть отменена компанией -- **⚖️ Условия обслуживания**: Одинаковые для всех лицензий (различие только в количестве голосов) - -### 1.2. Связь: Токены ↔ Лицензии - -Каждая лицензия Digital Legal Entity связана с **токеном управления на блокчейне**. - -#### 📊 Соотношение токенов и прав - -| Параметр | На 1 токен | На 10 токенов | -|----------|-----------|--------------| -| **Количество лицензий** | 1 | 1 | -| **Виды деятельности** | 1 | 1 | -| **Голосов в голосовании** | 1 | 10 | -| **Условия обслуживания** | Одинаковые | Одинаковые | -| **Влияние на развитие** | 1 голос | 10 голосов | - -#### 🗳️ Голосование в сообществе - -- **Голос = 1 токен** (независимо от количества токенов у одного владельца) -- Голосование происходит на **блокчейне** (смарт-контракт управления) -- Токены дают право голоса за **новые функции и приоритеты развития** -- **Демократия**: Решения принимаются большинством голосов (51%+) - -### 1.3. Вид деятельности и использование - -- Каждая лицензия привязана к **одному виду деятельности/бизнеса** -- Владелец может переопределить вид деятельности, но одновременно поддерживать только один -- Для нескольких видов деятельности нужны отдельные лицензии и токены - ---- - -## 2. Типы лицензий - -### 2.1. Лицензия с 1 токеном - -- **💰 Цена за лицензию**: **$1,000 USDT** (один раз, бессрочно, без учета налогов) -- **🪙 Количество токенов**: **1 токен** = **1 голос** в голосовании -- **🗳️ Влияние на развитие**: Базовое (1 голос за новые функции) - -### 2.2. Лицензия с 10 токенами - -- **💰 Цена за лицензию**: **$10,000 USDT** (один раз, бессрочно, без учета налогов) -- **🪙 Количество токенов**: **10 токенов** = **10 голосов** в голосовании -- **🗳️ Влияние на развитие**: Усиленное (10 голосов за новые функции) - -### 2.3. Условия обслуживания (одинаковые для всех лицензий) - -**📧 Все держатели лицензионных токенов получают (в течение 5 лет с даты on-chain передачи):** - -- ✅ Все обновления веб-приложения (бесплатно, 5 лет) -- ✅ Доступ к документации и базе знаний -- ✅ Техническая поддержка через приложение: https://hb3-accelerator.com/ -- ✅ Время отклика: в соответствии с приоритетом проблемы (см. раздел 6.3) -- ✅ 🤖 **AI ассистент 24/7** - встроенный помощник для консультаций -- ✅ Все интеграции и возможности развертывания -- ✅ Участие в голосовании за новые фичи (по количеству токенов) -- ✅ Ранний доступ к beta функциям (при желании) -- ✅ SLA 99% uptime гарантия -- ✅ 🎓 **Онлайн-сессии обучения и внедрения**: - - Групповые онлайн-сессии (ежеквартально - 4 раза в год) - - Индивидуальные онлайн-сессии (по запросу) - - Обучение настройке приложения - - Стратегии внедрения в бизнес - - Консультации по максимизации выгоды - - Доступ к библиотеке записей всех сессий - -**⚖️ Единственная разница между лицензиями:** -- Количество токенов управления (1 vs 10) -- Количество голосов в голосовании (1 vs 10) -- Влияние на приоритизацию разработки новых функций - ---- - -## 3. Система голосования и развитие продукта - -### 3.1. Как работает голосование - -1. **Предложение фичи**: Сообщество предлагает новые функции -2. **Регистрация на блокчейне**: Голосование создается в смарт-контракте -3. **Голосование токен-холдеров**: Каждый токен = 1 голос -4. **Реализация**: Если проголосовало 51%+ токенов - фича берется в разработку - -### 3.2. Периодичность голосований - -- **Окно голосования**: Открыто постоянно (асинхронное голосование) -- **Квартальный анализ**: Каждый квартал суммируются голоса, анализируются решения -- **Приоритизация**: Разработка ведется по приоритету (количество голосов) - -### 3.3. Механизм "Жалоб на невыполнение" - -⚠️ **Механизм возврата денег (см. раздел 4.2)** - -### 3.4. 🌐 Веб приложение для голосования - -**Адрес**: https://hb3-accelerator.com/ - -Токен-холдеры могут: -- 📋 Создавать предложения (proposals) для новых функций и приоритизации -- 🗳️ Голосовать за или против предложений -- 📊 Просматривать результаты голосований -- 📈 Отслеживать статус разработки одобренных фич -- ⏱️ Видеть историю всех голосований на блокчейне - -**Требования:** -- Подключение кошелька с токенами (MetaMask, WalletConnect и т.д.) -- Ваше количество токенов = количество голосов - ---- - -## 4. Возврат средств и гарантии - -### 4.1. Общие условия - -- **🔒 Принцип**: Лицензия бессрочна - возврата нет (кроме исключительных случаев) -- **📋 Исключение**: Специальная программа возврата (см. раздел 4.2) - -### 4.2. Программа возврата 70% (Refund Program) - -**Условия возврата:** - -Вы можете потребовать возврат **70% от стоимости лицензии** в течение **5 лет** с момента покупки, если: - -1. ✋ **Порог жалоб**: Накопилось свыше **51% отрицательных голосов** -2. 📋 **Причина**: Жалобы касаются **отсутствия выпусков обновлений** -3. 🗳️ **Голосование**: Жалобы были **приняты через механизм голосования токен-холдеров на блокчейне** -4. ⏱️ **Сроки**: Запрос подан в течение **5 лет** с момента лицензирования - -**Процесс возврата:** - -1. Запрос подается на hb3-accelerator.com с приложением блокчейн-доказательства -2. Подтверждение условий на смарт-контракте (51%+ голосов за возврат) -3. Возврат **70% от суммы покупки** в течение 30 дней - -**Пример:** -- Куплена лицензия с 10 токенами за $10,000 USDT -- Возврат: $10,000 × 70% = $7,000 USDT -- Действителен до: 5 лет с даты покупки - -### 4.3. Ограничения ответственности - -✅ **Что гарантируется:** -- Лицензия бессрочная (право использования не ограничено сроком) -- Обновления и базовое обслуживание предоставляются бесплатно в течение 5 лет -- Базовая функциональность остается доступной -- Возможность голоса за развитие продукта - -❌ **НЕ гарантируется:** -- Специфические новые фичи (зависит от голосования) -- Определенный график выпусков (зависит от голосов) -- Поддержка при модификации исходного кода -- Производительность при превышении лимитов - -### 4.4. Что автор НЕ несет ответственность за - -❌ **Автор освобождается от ответственности за:** - -- **Упущенная прибыль** - потери доходов из-за сбоев приложения -- **Косвенные убытки** - вторичные последствия использования -- **Потеря данных** - пользователь сам отвечает за резервные копии -- **Прерывание деятельности** - простои и перебои в обслуживании -- **Потеря репутации** - репутационный ущерб бизнеса -- **Специальные убытки** - штрафы, пени, санкции, штрафные платежи -- **Использование в образовательных целях** - без разрешения -- **Использование в соответствии с условиями** - если нарушены условия - -### 4.5. Максимальная ответственность - -- **Лимит ответственности:** Размер оплаченной лицензии (не более) -- **Пример:** Если лицензия стоила $1,000 USDT, максимум возврат $1,000 USDT -- **Прямые убытки:** Только при прямом нарушении контракта -- **Исключения:** Не покрываются косвенные, специальные или штрафные убытки - -### 4.6. Ответственность пользователя - -✅ **Пользователь отвечает за:** -- Резервное копирование собственных данных (еженедельно минимум) -- Использование в соответствии с условиями лицензии -- Защиту приватных ключей кошелька и доступа -- Соблюдение всех применимых законов и нормативов -- Обновление приложения в разумные сроки -- Проверку совместимости с окружением перед обновлением - ---- - -## 5. Обновления и обслуживание - -### 5.1. Бесплатные обновления и базовое обслуживание (5 лет) - -🎁 **Обновления и базовое обслуживание БЕСПЛАТНЫ в течение 5 лет для держателей лицензионных токенов (с даты on-chain передачи токена):** -- Исправления ошибок (Bug Fixes) -- Улучшения производительности -- Новые функции (одобренные голосованием) -- Обновления безопасности - -**Частота:** -- Security Patches: Немедленно (при обнаружении) -- Regular Updates: Еженедельно (по средам) в пределах срока 5 лет -- Major Features: По результатам голосования - -### 5.2. 📥 Платформа скачивания обновлений - -**Адрес**: https://hb3-accelerator.com/ - -Все держатели лицензий могут: -- ✅ Скачивать все выпущенные версии приложения -- 📝 Читать подробные заметки о релизах (Release Notes) -- 📅 Просматривать календарь запланированных обновлений -- 🔄 Получать автоматические уведомления о новых версиях -- 📚 Изучать документацию по миграции между версиями -- 🪵 Видеть логи изменений (Changelog) - -**Требования для доступа:** -- Подключение кошелька с лицензионным токеном на адресе -- Лицензионный токен должен находиться на адресе на момент запроса обновления - -## 6. Техническая поддержка - -### 6.1. Единый портал поддержки - -**Все виды поддержки доступны ТОЛЬКО через приложение:** - -🌐 **https://hb3-accelerator.com/** - -- 📝 Создание и отслеживание тикетов поддержки -- 💬 Прямой чат с support team -- 📊 История всех обращений -- 📅 Отслеживание времени ответа - -### 6.2. Доступные каналы поддержки - -**Все держатели лицензий имеют доступ к:** - -| Функция | Доступность | -|--------|-------------| -| 🌐 Портал поддержки | ✅ Все лицензии | -| 💬 Чат с support team | ✅ Все лицензии | -| 🤖 AI ассистент 24/7 | ✅ Все лицензии | -| 🎓 Онлайн-сессии обучения | ✅ Групповые + индивидуальные (все лицензии) | -| 📚 Библиотека записей | ✅ Все лицензии | -| 📧 Email поддержка | ✅ Все лицензии | - -### 6.3. Классификация проблем и SLA - -**Время отклика зависит от приоритета проблемы, а не от типа лицензии:** - -| Приоритет | Описание | SLA (время первого ответа) | -|-----------|---------|-----| -| 🔴 Критическая | Сервис полностью недоступен | 4 часа | -| 🟠 Высокая | Потеря основной функции | 8 часов | -| 🟡 Средняя | Деградация производительности | 24 часа | -| 🟢 Низкая | Вопросы, документация | 48 часов | - -### 6.4. Процесс обращения в поддержку - -1. Войти в приложение: https://hb3-accelerator.com/ -2. Перейти в раздел "Предложения" -3. Создать новый тикет с описанием проблемы -4. Указать приоритет (система автоматически классифицирует) -5. Приложить логи, скриншоты и шаги воспроизведения -6. Получить номер тикета для отслеживания -7. Дождаться ответа в соответствии с SLA (по приоритету проблемы) - -### 6.5. 🎓 Онлайн-сессии обучения и внедрения - -**Все держатели лицензий** (независимо от типа) получают доступ к **онлайн-сессиям обучения**, где эксперты помогают максимально эффективно использовать Digital Legal Entity. - -#### Групповые онлайн-сессии - -**📅 Периодичность**: Ежеквартально (4 раза в год) - -**📚 Темы обучения:** -- 🔧 **Настройка приложения** - пошаговое руководство по первоначальной конфигурации -- 🏢 **Внедрение в бизнес** - как интегрировать DLE в существующие бизнес-процессы -- 💰 **Максимизация выгоды** - лучшие практики использования функций -- 📊 **Аналитика и отчетность** - как использовать данные для принятия решений -- 🔐 **Безопасность и комплаенс** - настройка безопасности и соответствие нормам -- 🗳️ **Голосование и governance** - как эффективно использовать свои токены - -**⏱️ Формат:** -- Длительность: 1-2 часа -- Вебинар с презентацией и демонстрацией -- Q&A сессия в конце (30-40 минут) -- Запись доступна после сессии - -**👥 Формат участия:** -- Онлайн встречи -- Чат для вопросов во время сессии -- Возможность задать вопросы заранее - -#### Индивидуальные онлайн-сессии - -**Доступно для всех лицензий** - -**📅 Периодичность**: (по запросу) - -**🎯 Персонализированные темы:** -- 🏗️ **Индивидуальная архитектура** - настройка под специфику вашего бизнеса -- 📈 **Стратегия внедрения** - пошаговый план интеграции DLE -- 💡 **Оптимизация ROI** - как получить максимальную отдачу от инвестиций -- 🔄 **Миграция данных** - перенос из существующих систем -- 🛠️ **Кастомизация и интеграции** - настройка под ваши требования -- 📊 **Анализ эффективности** - обзор метрик и улучшений -- 🗳️ **Стратегия голосования** - как использовать ваши токены для влияния на развитие - -**⏱️ Формат:** -- Длительность: 1-2 часа (по потребности) -- Индивидуальная видео-встреча -- Персональный эксперт, знакомый с вашим кейсом -- Запись сессии для вашей команды -- Материалы и документация после сессии -- Возможность пригласить вашу команду (до 10 человек) - -#### Запись на онлайн-сессии - -**Как записаться:** -1. Войти в приложение: https://hb3-accelerator.com/ -2. Перейти в группу -3. Выбрать доступную сессию из календаря (групповая или индивидуальная) -4. Нажать "Записаться" и получить ссылку на подключение - -#### Библиотека записей - -Все прошедшие онлайн-сессии доступны в библиотеке для всех держателей лицензий: - -**📚 Адрес**: https://hb3-accelerator.com/ - -- 🎥 Видеозаписи всех групповых сессий -- 📄 Презентации и материалы -- 💬 Стенограммы Q&A сессий -- 🔍 Поиск по темам и ключевым словам -- 📥 Скачивание материалов для offline просмотра - ---- - -## 7. Условия использования - -### 7.1. Допустимое использование - -✅ **Разрешено:** -- Использование для управления собственным бизнесом -- Развертывание на собственной инфраструктуре -- Использование выбранного вида деятельности (1 вид на лицензию) -- Резервное копирование данных -- Локальная модификация конфигурации -- Голосование за развитие новых функций -- Передача лицензии наследникам (для бессрочной лицензии) - -❌ **Запрещено:** -- Перепродажа или сублицензирование -- Использование более одного вида деятельности одной лицензией -- Reverse engineering и модификация исходного кода -- Удаление авторских прав и лицензионных уведомлений -- Совместное использование между независимыми организациями -- Использование в образовательных целях без разрешения -- Развертывание SaaS на основе приложения ---- - -## 8. Безопасность и конфиденциальность - -### 8.1. Шифрование данных - -- **TLS 1.3**: Для всех соединений -- **AES-256**: Для критичных данных в хранилище -- **Управление ключами**: Пользователь контролирует ключи шифрования - -### 8.2. Соответствие стандартам - -- **GDPR**: Соответствие (с DPA) -- **SOC 2 Type II**: Сертификация получена -- **ISO 27001**: В планах ---- - -## 9. Смарт-контракт управления лицензиями - -### 9.1. Архитектура системы управления - -DLE использует **смарт-контракт** на блокчейне для управления лицензиями и голосованием: - -- **ERC20 токены**: Каждая лицензия представлена токенами управления (1 или 10) -- **ERC20Votes**: Встроенная система голосования через смарт-контракт -- **ERC20Permit**: Подписи для переводов токенов без gas-комиссий (meta-transactions) -- **Мультичейн архитектура**: Поддержка голосования и исполнения в нескольких сетях одновременно - -### 9.2. Система предложений и голосования - -**Создание предложения:** -- Только держатели токенов (лицензий) могут создавать предложения -- Описание: Текст предложения о новой функции -- Длительность голосования: От 1 часа до 30 дней -- Целевые сети: Может быть исполнено в одной или нескольких сетях одновременно - -**Процесс голосования:** -1. Предложение создается и получает уникальный ID -2. Токен-холдеры голосуют "За" или "Против" -3. Каждый токен = 1 голос (независимо от держателя) -4. Кворум проверяется при дедлайне или при достижении 51%+ - -**Исполнение предложения:** -- Если "За" > "Против" И кворум достигнут → предложение принято -- Исполнение может быть через: - - Прямой вызов (в цепочке голосования) - - Через подписи (в других сетях) - - -### 9.3. Безопасность и ограничения - -✅ **Защита от реентерабельности** - ReentrancyGuard во всех критичных операциях -✅ **Блокировка прямых переводов** - токены передаются только через governance -✅ **Снапшоты голосов** - используются прошлые значения для защиты от flash-loans -✅ **Подписи EIP-712** - поддержка контрактных кошельков и meta-transactions -✅ **Валидация операций** - все параметры проверяются перед исполнением - -### 9.4. Передача лицензии - -- Лицензия = токены управления, привязанные к адресу кошелька -- Передача: Просто перевод токенов на новый адрес (возможен через governance) -- Права: Новый владелец автоматически получает право голоса - ---- - -## 10. Контактная информация и поддержка - -### 📞 Служба поддержки - -🌐 **ТОЛЬКО через приложение**: https://hb3-accelerator.com/ -- **GitHub**: https://github.com/VC-HB3-Accelerator/DLE - -### ⚖️ Юридическая информация -- **Юридический статус**: Проприетарное ПО (см. [LICENSE](../LICENSE)) -- **Полная документация**: [legal/README.md](../legal/README.md) - ---- - -## 11. Политика изменения условий - -### 11.1. Изменения для новых лицензий - -- Мы можем изменять условия обслуживания **для новых покупок** -- Уведомление: За 60 дней до вступления в силу -- Применение: Только для новых лицензий, купленных после даты изменения - -### 11.2. Защита существующих лицензий - -- **Гарантия**: Условия вашей лицензии **НЕ меняются** после покупки -- **Фиксированные права**: Останавливаются вечно с текущими условиями -- **Обратная совместимость**: Старые условия поддерживаются ---- - -**© 2024-2025 Тарабанов Александр Викторович. Все права защищены.** - -**Последнее обновление**: October 2025 - -### 🔐 Примечание о блокчейне - -Эта модель управления лицензиями использует блокчейн для обеспечения **прозрачности**, **демократичности** и **неизменяемости** процесса голосования за развитие продукта. Все токен-холдеры имеют равные голоса и контроль над будущим развитием Digital Legal Entity. - -## 5. Тарифы и условия оплаты - -### 5.1. Методы оплаты - -- 💵 **Криптовалюта (USDT)**: Директно на адреса авторизованных компаний-партнеров -- 💳 **Перевод в местной валюте**: Эквивалент в местной валюте страны покупателя -- 🏦 **Банковский перевод**: Через авторизованных дилеров -- 💳 **Кредитные карты**: Через платежные системы партнеров - -### 5.2. Цены и налоги - -#### ⚠️ ВАЖНО: Все цены указаны БЕЗ УЧЕТА НАЛОГОВ - -**Указанные цены в USDT:** -- **Лицензия с 1 токеном**: $1,000 USDT (без налогов) -- **Лицензия с 10 токенами**: $10,000 USDT (без налогов) - -**Эквивалент в других валютах (примеры, зависит от курса):** -- EUR: €899 (1 токен) или €8,991 (10 токенов) -- RUB: ₽99,000 (1 токен) или ₽990,000 (10 токенов) -- Другие валюты по актуальному курсу на момент платежа - -#### Налоги - ответственность покупателя - -Покупатель самостоятельно несет ответственность за уплату всех применимых налогов: -- **НДС (VAT)** - в странах ЕС и других (обычно 15-25%) -- **Налог на продажу (Sales Tax)** - в США и других странах -- **Налог на доход (Income Tax)** - зависит от налогового статуса -- **Таможенные пошлины** - при импорте в определенные страны -- **Любые другие налоги** - в зависимости от местной юрисдикции - -**Налоговая ставка определяется:** -- Юрисдикцией покупателя (страна, город, регион) -- Налоговым статусом (физ. лицо, ИП, ООО, АО и т.д.) -- Особенностями международной торговли - -#### 💸 Комиссии за платежи - ПОЛНОСТЬЮ НА ПОКУПАТЕЛЯ - -Все комиссии за переводы, конвертацию и обработку платежей несет **ПОКУПАТЕЛЬ**: - -**🌍 Комиссии за конвертацию валют:** -- Комиссия банка/платежной системы: 1-5% от суммы -- Комиссия за внутримаркетный спред (курс): +1-2% сверху рыночного -- Скрытые комиссии при конвертации: часто 2-3% - -**🏦 Комиссии за банковские переводы:** -- **SWIFT переводы** (международные): $10-50+ за операцию -- **SEPA переводы** (внутри ЕС): €0-3 или бесплатно -- **Другие системы** (Wise, Payoneer): 1-2.5% + фиксированная комиссия -- **Комиссия получающей стороны**: дополнительно 0-50$ (может быть) - -**⛓️ Комиссии блокчейна (криптовалюта - USDT):** -- **Gas fees (комиссия сети)**: - - Ethereum: $1-50+ в зависимости от нагрузки - - Polygon: $0.01-1 - - BSC: $0.10-5 - - Другие сети: варьируется -- **Комиссия кошелька**: 0-2% (если используется платежный провайдер) -- **Комиссия биржи/платформы**: 1-3% за обмен фиата на USDT - -**💳 Комиссии платежных систем (кредитные карты):** -- **Комиссия процессинга**: 2-5% от суммы -- **Комиссия за конвертацию валют**: 1-3% (если платеж в другой валюте) -- **Комиссия банка-эмитента**: 0-2% (редко, но может быть) -- **Комиссия динамической конвертации (DCC)**: 2-4% (если доступна) - -**Реальные примеры итоговых затрат:** - -| Вариант | Заявленная цена | Комиссии | Итого к оплате | -|---------|-----------------|----------|-----------------| -| USDT напрямую | $1,000 | $15-80 (gas + комиссии) | $1,015-1,080 | -| SWIFT перевод USD | $1,000 | $25-80 (комиссии банков) | $1,025-1,080 | -| Карта в EUR | €899 | €30-45 (конвертация + комиссии) | €929-944 | -| Крипто биржа | $1,000 | $30-150 (все комиссии) | $1,030-1,150 | - -**💡 Совет:** Выбери способ оплаты с минимальными комиссиями! - -**⚠️ Итоговая сумма = Цена лицензии + Налоги + Все комиссии за переводы и конвертацию** - -### 5.3. Авторизованные продавцы и дилеры - -#### Официальные условия продажи - -Лицензии могут продаваться **ТОЛЬКО через компании**, имеющие **официальное письменное разрешение от автора**: - -**Требования для авторизованного продавца:** -- ✅ Юридическое лицо (ООО, АО, ИП, корпорация и т.д.) -- ✅ Подписанный контракт/соглашение о дилерстве с автором -- ✅ Включение в официальный список на https://hb3-accelerator.com/ -- ✅ Соблюдение всех условий лицензирования -- ✅ Ведение учета всех продаж -- ✅ Своевременная передача средств автору - -**Структура платежей через дилера:** -- 💰 Покупатель платит → Авторизованный продавец -- 🤝 Продавец получает комиссию (% определяется договором) -- 📤 Остаток передается автору в установленные сроки -- 📋 Все платежи документируются официально и отслеживаются - -#### Прямая покупка у автора - -Можно приобрести напрямую у автора без посредников: - -- 📧 **Email**: info@hb3-accelerator.com -- 🌐 **Сайт**: https://hb3-accelerator.com -- 🐙 **GitHub**: https://github.com/VC-HB3-Accelerator - - -### 5.4. Процесс оплаты и подтверждение - -1. **Выбор продавца**: Авторизованный дилер или прямо у автора -2. **Согласование цены**: В USDT или эквиваленте местной валюты -3. **Получение реквизитов**: От продавца или автора -4. **Отправка платежа**: Криптовалютой, банковским переводом или другим методом -5. **Подтверждение**: Получение номера платежа и документа об оплате -6. **Активация лицензии**: Получение NFT токена или доступа к портальу - -### 5.5. Возврат и рекламация - -- **Сроки рекламации**: 30 дней с момента платежа -- **Процесс**: Контакт с продавцом или автором с подтверждением платежа -- **Возврат средств**: Максимум 70% от суммы в соответствии с программой возврата -- **Причины возврата**: - - Ошибка при расчете - - Двойная оплата - - Другие обоснованные причины - ---- - -## 📚 Дополнительная документация - -### Изучите возможности DLE -- 🤖 **[AI Ассистент](../docs/ai-assistant.md)** - второй пилот для команды, высвобождает время для стратегии -- 💼 **[Блокчейн для бизнеса](../docs/blockchain-for-business.md)** - токенизация активов и решение бизнес-задач -- 🛡️ **[Безопасность DLE](../docs/security.md)** - многоуровневая защита вашего бизнеса - -### Техническая документация -- 🔗 **[Техническая документация по блокчейну](../docs/blockchain-integration-technical.md)** - для разработчиков -- 🔧 **[Инструкция по установке](../docs/setup-instruction.md)** - пошаговая настройка -- 📝 **[Описание приложения](../docs/application-description.md)** - обзор функциональности -- 📋 **[FAQ](../docs/FAQ.md)** - часто задаваемые вопросы - -### Контакты и поддержка -- 📧 **Email**: info@hb3-accelerator.com -- 🌐 **Сайт**: https://hb3-accelerator.com -- 💬 **Чат поддержки**: https://hb3-accelerator.com/ -- 🐙 **GitHub**: https://github.com/VC-HB3-Accelerator diff --git a/legal/ПРАВОВЫЕ_ДОКУМЕНТЫ_ЗАДАЧА.md b/legal/ПРАВОВЫЕ_ДОКУМЕНТЫ_ЗАДАЧА.md deleted file mode 100644 index 09f7253..0000000 --- a/legal/ПРАВОВЫЕ_ДОКУМЕНТЫ_ЗАДАЧА.md +++ /dev/null @@ -1,398 +0,0 @@ -# 📋 ЗАДАЧА: Создание правовых документов для DLE - -## 🎯 Цель -Создать полный комплект правовых документов для приложения Digital Legal Entity (DLE) в соответствии с российским законодательством 2025 года. - -Примечание: на текущем этапе задача — создать документы на основании кода приложения; уведомление в Роскомнадзор будет направлено после подготовки и публикации документов в приложении. - -## 📊 Анализ приложения DLE - -### 🏢 Информация о компании-операторе - -#### **ООО "ЭРАЙТИ"** -- **Полное наименование:** ОБЩЕСТВО С ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТЬЮ "ЭРАЙТИ" -- **Сокращенное наименование:** ООО "ЭРАЙТИ" -- **ОГРН:** 1222600014383 -- **ИНН:** 2636220809 -- **КПП:** 263601001 -- **Дата регистрации:** 24.11.2022 -- **Юридический адрес:** 355007, СТАВРОПОЛЬСКИЙ КРАЙ, Г.О. ГОРОД СТАВРОПОЛЬ, Г СТАВРОПОЛЬ, УЛ БУРМИСТРОВА, Д. 65Б, ПОМЕЩ. 2 -- **Веб-приложение:** эрайти.рф -- **Род деятельности:** Продавец лицензированного программного обеспечения -- **Статус:** ООО "ЭРАЙТИ" является продавцом лицензий на ПО, автором которого является генеральный директор ООО "ЭРАЙТИ" (Тарабанов Александр Викторович) - -### 🔍 Собранные данные о приложении: - -#### **Тип приложения:** -- Веб-приложение для автоматизированого управления продажами -- AI-ассистент для автоматизации -- веб приложение деплоится на рф сервере - -#### **Собираемые персональные данные:** - -**Оператор персональных данных:** ООО "ЭРАЙТИ" -**Ответственное лицо:** Тарабанов Александр Викторович (генеральный директор) -**Контактный телефон:** +7 (968) 269-92-64 -**Email для обращений:** 18900@эрайти.рф -**Хостинг:** ООО "Хостланд" (ИНН: 7811142520/781401001) - арендованный VDS сервер -**Сроки хранения персональных данных:** -- **Идентификационные данные:** До отзыва согласия субъектом ПДн -- **Технические данные (cookies, IP):** 30 дней с момента последнего посещения -- **Мультимедийные данные:** До отзыва согласия или 3 года (в зависимости от типа) -- **Данные онлайн-звонков:** До отзыва согласия (используются для обучения ИИ-ассистента) -- **Обучающие материалы на основе звонков:** До отзыва согласия (для обучения новых пользователей) -- **Бизнес-данные (сделки, консультации):** 5 лет (требования налогового законодательства) -- **Данные для маркетинга:** До отзыва согласия - -**Категории субъектов ПДн:** -1. **Клиенты компании** - физичеюридические лица или ИП представителеи компаний обратившихся за: - - Консультацией - - Покупкой лицензии на веб-приложение - -**Цели обработки персональных данных:** -1. **Предоставление консультационных услуг** по лицензированному ПО -2. **Обработка заявок на покупку лицензий** на программное обеспечение -3. **Ведение клиентской базы** для оказания услуг -4. **Связь с клиентами** по вопросам консультаций и продаж лицензий -5. **Техническая поддержка** пользователей лицензированного ПО -6. **Проведение онлайн-обучения** работе с программным обеспечением -7. **Обучение ИИ-ассистента** на основе записей звонков и консультаций -8. **Создание обучающих материалов** для новых пользователей -9. **Обработка мультимедийных материалов** (аудио, видео, документы) -10. **Ведение учета** обращений и продаж лицензий -11. **Соблюдение требований законодательства** РФ - -**Важно:** ООО "ЭРАЙТИ" является **продавцом лицензий** на программное обеспечение. Авторские права на ПО принадлежат генеральному директору ООО "ЭРАЙТИ" (Тарабанов Александр Викторович) как физическому лицу. - -**Правовые основания обработки:** -- Согласие субъекта персональных данных (ст. 9 152-ФЗ) -- Исполнение договора (ст. 6 152-ФЗ) - -**Собираемые персональные данные (МИНИМАЛЬНЫЙ НАБОР):** -1. **Идентификационные данные:** - - Email адреса (для связи) - **зашифрованы** - - Telegram идентификаторы (для связи) - **зашифрованы** - - Адреса криптокошельков (для отправки токенов) - **зашифрованы** - -2. **Технические данные:** - - IP-адреса (автоматически) - - Данные сессий (sessionId) - - Предпочтительный язык интерфейса - - Роли пользователей в системе - -3. **Бизнес-данные:** - - Данные о покупке лицензий - - История консультаций (если обращались) - - Данные о юридических лицах (только если указали при консультации) - -4. **Мультимедийные данные (только при консультациях):** - - Аудиофайлы (голосовые сообщения в Telegram) - - Видеофайлы (видеосообщения от клиентов) - - Документы (файлы, отправленные клиентами) - - Скриншоты и изображения - -5. **Данные онлайн-коммуникаций (только при консультациях):** - - Записи онлайн-звонков для обучения - - Записи звонков технической поддержки - - Данные видеоконференций - - Логи чатов и переписок - - -#### **Технологии обработки:** -- **Архитектура:** Docker-контейнеры на VDS сервере -- **Шифрование:** Все персональные данные шифруются в БД -- **Cookies:** Используются для сессий (30 дней, httpOnly, secure) -- **Хранение:** PostgreSQL в Docker-контейнере с шифрованием -- **Файловое хранилище:** Мультимедийные файлы хранятся в зашифрованном виде -- **ИИ-ассистент:** Ollama LLM модель (встроена в Docker-контейнер) -- **Векторный поиск:** Отдельный Docker-контейнер для семантического поиска -- **Хостинг-провайдер:** ООО "Хостланд" (ИНН: 7811142520/781401001) -- **Аутентификация:** Мультипровайдерная (email, telegram, wallet) -- **Онлайн-коммуникации:** Видеозвонки и конференции -- **Контакты:** эрайти.рф - -## 📝 Требуемые документы - -### 1. **Права субъектов ПДн и отзыв согласия** ✅ СООТВЕТСТВУЕТ 152-ФЗ -- ✅ Описание прав пользователей согласно 152-ФЗ (ст. 14) -- ✅ Процедуры отзыва согласия (ст. 9) -- ✅ Формы заявлений (обязательно) -- ✅ Сроки обработки запросов (30 дней, ст. 14) -- ✅ **ДОПОЛНИТЬ:** Контактные данные для обращений -- ✅ **ДОПОЛНИТЬ:** Порядок верификации личности при отзыве - -### 2. **Согласие на использование файлов cookie** ✅ СООТВЕТСТВУЕТ 149-ФЗ -- ✅ Описание используемых cookies (ст. 15.1 149-ФЗ) -- ✅ Цели использования (обязательно) -- ✅ Управление настройками (обязательно) -- ✅ Согласие на аналитику (обязательно) -- ✅ **ДОПОЛНИТЬ:** Сроки хранения cookies -- ✅ **ДОПОЛНИТЬ:** Способы отключения cookies - -### 3. **Согласие на обработку персональных данных** ⚠️ НЕПОЛНОЕ СООТВЕТСТВИЕ -- ✅ Детальное описание обработки -- ✅ Цели и основания (ст. 9) -- ✅ Сроки хранения (ст. 9) -- ✅ Третьи лица (ст. 9) -- ❌ **ОТСУТСТВУЕТ:** ФИО субъекта (обязательно) -- ❌ **ОТСУТСТВУЕТ:** Перечень ПДн на обработку (обязательно) -- ❌ **ОТСУТСТВУЕТ:** Способы обработки (обязательно) -- ❌ **ОТСУТСТВУЕТ:** Подпись субъекта (обязательно) -- ❌ **ОТСУТСТВУЕТ:** Дата получения согласия (обязательно) - -### 4. **Политика конфиденциальности** ⚠️ НЕПОЛНОЕ СООТВЕТСТВИЕ -- ✅ Общие принципы -- ✅ Сбор и использование данных -- ✅ Защита информации -- ✅ Права пользователей -- ❌ **ОТСУТСТВУЕТ:** Наименование и адрес оператора (обязательно) -- ❌ **ОТСУТСТВУЕТ:** Правовые основания обработки (обязательно) -- ❌ **ОТСУТСТВУЕТ:** Категории обрабатываемых ПДн (обязательно) -- ❌ **ОТСУТСТВУЕТ:** Сроки обработки ПДн (обязательно) - -### 5. **Политика в отношении обработки персональных данных** ✅ СООТВЕТСТВУЕТ 152-ФЗ -- ✅ Детальная политика согласно 152-ФЗ (ст. 18.1) -- ✅ Оператор обработки (обязательно) -- ✅ Категории данных (обязательно) -- ✅ Меры защиты (обязательно) -- ✅ **ДОПОЛНИТЬ:** Порядок осуществления прав субъектов -- ✅ **ДОПОЛНИТЬ:** Информация о реализуемых требованиях к защите - -### 6. **Политика обработки данных ИИ-ассистентом** ✅ СООТВЕТСТВУЕТ 152-ФЗ -- ✅ Использование локальной LLM модели -- ✅ Обработка данных для обучения ИИ -- ✅ Анонимизация данных при обучении -- ✅ Права субъектов в отношении ИИ-обработки -- ✅ Технические меры защиты ИИ-системы -- ✅ **ДОПОЛНИТЬ:** Согласие на использование для ИИ-обучения - - -## 📊 ИТОГОВАЯ ОЦЕНКА СООТВЕТСТВИЯ 152-ФЗ (ОБНОВЛЕНО): - -### ✅ **ПОЛНОЕ СООТВЕТСТВИЕ (5 из 7 документов):** -1. **Права субъектов ПДн и отзыв согласия** - требует дополнений -2. **Согласие на использование файлов cookie** - требует дополнений -3. **Политика в отношении обработки персональных данных** - требует дополнений -4. **Политика обработки данных ИИ-ассистентом** - требует дополнений -5. **Публичная оферта** - новый документ, требует создания - -### ⚠️ **НЕПОЛНОЕ СООТВЕТСТВИЕ (2 из 7 документов):** -1. **Согласие на обработку персональных данных** - УПРОЩЕНО для онлайн-обслуживания -2. **Политика конфиденциальности** - УПРОЩЕНО для онлайн-обслуживания - -### 🎯 **УПРОЩЕНИЯ ДЛЯ ОНЛАЙН-ОБСЛУЖИВАНИЯ:** -- ✅ **НЕ ТРЕБУЕТСЯ ФИО** покупателей (только адрес кошелька) -- ✅ **НЕ ТРЕБУЕТСЯ подпись** (согласие через интернет) -- ✅ **НЕ ТРЕБУЕТСЯ паспортные данные** -- ✅ **Минимальный набор ПДн** (email, telegram, адрес кошелька) -- ✅ **Договор через интернет-оферту** (публичная оферта) - -### 🚨 **КРИТИЧЕСКИЕ НЕДОСТАТКИ:** -- **Отсутствует уведомление Роскомнадзора** (обязательно до начала обработки) -- **Отсутствует публичная оферта** (обязательно для онлайн-продаж) -- **Нужно упростить согласие** под онлайн-формат - -### 📋 **ПЛАН ДОРАБОТКИ (УПРОЩЕННЫЙ):** -1. **Создать публичную оферту** с согласием на обработку ПДн -2. **Упростить согласие** под онлайн-формат (без ФИО, подписи) -3. **Дополнить** остальные документы недостающими элементами -4. **Подготовить и направить** уведомление Роскомнадзора после подготовки и публикации документов в приложении -5. **Добавить** формы заявлений для онлайн-обращений - -## 🎯 Особенности DLE для документов - -### **AI-аспекты:** -- **Ollama LLM модель** (встроена в Docker-контейнер) -- **Векторный поиск** (отдельный Docker-контейнер) -- **Обработка данных AI-ассистентом** для консультаций и поддержки -- **Обучение ИИ на записях звонков** и консультаций -- **Автоматизация процессов** управления продажами -- **Машинное обучение** на основе пользовательских данных -- **Анонимизация данных** при обучении ИИ-модели -- **Полная изоляция** (данные не покидают Docker-контейнеры) - -### **Бизнес-аспекты:** -- Автоматизированное управление продажами -- Управление клиентской базой -- Обработка заявок на консультации -- Продажа лицензий на веб-приложение - -## 📋 План реализации - -### **Этап 1: Анализ требований** -- [x] Изучение структуры приложения -- [x] Определение типов данных -- [x] Анализ технологий обработки - -### **Этап 2: Создание документов** -- [ ] Права субъектов ПДн и отзыв согласия -- [ ] Согласие на cookies -- [ ] Согласие на обработку ПДн -- [ ] Политика конфиденциальности -- [ ] Политика обработки ПДн -- [ ] Политика обработки данных ИИ-ассистентом - -### **Этап 3: Интеграция в приложение** -- [ ] Создание компонентов Vue для отображения -- [ ] Модальные окна согласий -- [ ] Управление настройками cookies -- [ ] Формы отзыва согласий - -### **Этап 4: Тестирование и валидация** -- [ ] Проверка соответствия 152-ФЗ -- [ ] Тестирование UI/UX -- [ ] Валидация правовых формулировок - -## ✅ Что исправить и добавить в задание (обязательные правки) - -### 1) Документы и их обязательные реквизиты -- [ ] Согласие на обработку ПДн: добавить перечень конкретных ПДн, способы обработки, цели, срок действия/хранения, механизм и срок отзыва, дата и способ акцепта (онлайн), ссылка на актуальную версию политики. -- [ ] Политика конфиденциальности: явно указать оператора и адрес (ООО "ЭРАЙТИ"), правовые основания, категории ПДн и субъектов, сроки обработки/хранения, контакты для обращений. -- [ ] Согласие на cookies: сроки хранения по категориям cookie, способы отключения (настройки браузера и внутренняя панель), цели использования, классификация (строго необходимые/функциональные/аналитические/маркетинг), granular-управление. -- [ ] Права субъектов и отзыв согласия: порядок верификации личности, сроки ответа (30 дней), формы онлайн-заявлений. -- [ ] Политика обработки ПДн: дописать порядок осуществления прав и реализуемые требования к защите. -- [ ] Политика обработки данных ИИ-ассистентом: явное согласие/opt-out на использование данных для обучения, перечень данных, анонимизация, технические меры защиты, границы использования. -- [ ] Публичная оферта: предмет (лицензии на ПО), порядок акцепта, цена/тарифы, порядок оплаты/возврата, ответственность, ссылки на все политики/согласия, реквизиты оператора. - -### 2) Протоколирование согласий и версионирование -- [ ] Вести логи согласий: userId/идентификатор кошелька или Telegram, IP, User-Agent, дата/время, версия документа, вид согласия, канал (веб/моб), результат (принято/отозвано). -- [ ] Версии документов: хранить версию/slug, дату публикации, changelog; при изменении — повторный акцепт, запись в лог. -- [ ] Таблица журнала согласий (`consent_logs`) и привязка к пользователю/сессии; экспорт по запросу субъекта ПДн. - -### 3) UI/UX требования -- [ ] Cookie-баннер с granular-настройками, возможностью изменить выбор в настройках. -- [ ] Модальные окна согласий с ссылками на полные тексты, чекбокс/кнопка для акцепта, прокрутка/подтверждение прочтения при необходимости. -- [ ] Страницы документов доступны из футера: политика конфиденциальности, политика ПДн, cookies, оферта, ИИ-политика, права субъектов. -- [ ] Локализация RU/EN; стили — локальные scoped-стили в Vue-компонентах. - -### 4) Шаблоны и сидинг контента -- [ ] Создать шаблоны в `admin_pages_simple` со slug: `privacy_policy`, `personal_data_policy`, `cookie_consent`, `ai_data_policy`, `public_offer`, `pdn_rights_and_revocation`. -- [ ] Использовать переменные `{{company_name}}`, `{{company_address}}`, `{{privacy_email}}`, `{{privacy_phone}}`, `{{website}}`, `{{hosting_provider}}`, `{{hosting_type}}`. -- [ ] Обновить `backend/scripts/seed/legalTemplatesSeed.js` для первичного наполнения и версий. - -### 5) Backend/API требования -- [ ] Эндпоинт для получения актуальной версии документа по `slug` и архив версий. -- [ ] Эндпоинт для записи/отзыва согласия (создаёт запись в `consent_logs`). -- [ ] Генерация HTML/PDF для скачивания пользователем. - -### 6) Уведомление Роскомнадзора -- [ ] Направить после публикации документов в приложении. -- [ ] Подготовить данные: оператор, цели обработки, категории ПДн/субъектов, сроки обработки/хранения, меры защиты, место хранения (VDS, провайдер), трансграничная передача (при наличии). - -### 7) Тестирование и критерии приёмки -- [ ] Юр.проверка соответствия 152-ФЗ/149-ФЗ чеклисту из раздела «ОБЯЗАТЕЛЬНЫЕ ТРЕБОВАНИЯ РЕГУЛЯТОРОВ». -- [ ] UX-тесты баннера cookies и модалей согласий (доступность, локализация, повторный доступ к настройкам). -- [ ] Проверка логов согласий: корректность записи, версия, отзыв, экспорт по запросу субъекта. - -## 🔧 Готовые компоненты системы - -### **Система шаблонов:** -- `backend/scripts/seed/legalTemplatesSeed.js` - скрипт для создания системных шаблонов -- Таблица `admin_pages_simple` для хранения шаблонов -- Поддержка переменных подстановки: - - `{{company_name}}` - ООО "ЭРАЙТИ" - - `{{company_address}}` - 355007, СТАВРОПОЛЬСКИЙ КРАЙ, Г.О. ГОРОД СТАВРОПОЛЬ, Г СТАВРОПОЛЬ, УЛ БУРМИСТРОВА, Д. 65Б, ПОМЕЩ. 2 - - `{{company_inn}}` - 2636220809 - - `{{company_ogrn}}` - 1222600014383 - - `{{responsible_person}}` - Тарабанов Александр Викторович - - `{{privacy_email}}` - 100@эрайти.рф - - `{{privacy_phone}}` - +7 (968) 269-92-64 - - `{{website}}` - эрайти.рф - - `{{hosting_provider}}` - ООО "Хостланд" (ИНН: 7811142520/781401001) - - `{{hosting_type}}` - арендованный VDS сервер - -### **Vue компоненты для отображения:** -- `frontend/src/views/content/TemplatesListView.vue` - список шаблонов -- `frontend/src/views/content/PageView.vue` - просмотр и редактирование документов -- `frontend/src/views/content/ContentPageView.vue` - создание новых документов -- `frontend/src/views/content/ContentSettingsView.vue` - настройки контента - -### **API для работы с документами:** -- `backend/routes/pages.js` - REST API для CRUD операций -- `frontend/src/services/pagesService.js` - клиентский сервис -- Поддержка HTML и файловых форматов -- Система прав доступа и видимости документов - -## 🔧 Технические требования - -### **Формат документов:** -- Markdown для версионирования -- HTML для отображения в приложении -- PDF для печати/скачивания - -### **Интеграция:** -- Vue.js компоненты -- Локализация (русский/английский) -- Адаптивный дизайн -- Доступность (a11y) - -### **Соответствие:** -- 152-ФЗ "О персональных данных" -- 149-ФЗ "Об информации" (включая требования к cookies) -- GDPR (для международных пользователей) -- Роскомнадзор требования - -## ⚖️ ОБЯЗАТЕЛЬНЫЕ ТРЕБОВАНИЯ РЕГУЛЯТОРОВ - -### **152-ФЗ "О персональных данных" - обязательные элементы:** - -#### **1. Согласие на обработку ПДн (ст. 9 152-ФЗ):** -- ✅ **ФИО субъекта** персональных данных -- ✅ **Наименование оператора** (ООО "ЭРАЙТИ") -- ✅ **Цели обработки** персональных данных -- ✅ **Перечень персональных данных** на обработку которых дается согласие -- ✅ **Способы обработки** персональных данных -- ✅ **Срок действия согласия** и способ его отзыва -- ✅ **Подпись субъекта** персональных данных -- ✅ **Дата получения согласия** - -#### **2. Политика обработки ПДн (ст. 18.1 152-ФЗ):** -- ✅ **Наименование и адрес оператора** (ООО "ЭРАЙТИ") -- ✅ **Цели обработки** персональных данных -- ✅ **Правовые основания** обработки персональных данных -- ✅ **Категории обрабатываемых** персональных данных -- ✅ **Категории субъектов** персональных данных -- ✅ **Сроки обработки** персональных данных -- ✅ **Сроки хранения** персональных данных -- ✅ **Порядок осуществления** субъектом ПДн своих прав -- ✅ **Информация о реализуемых** требованиях к защите ПДн - -#### **3. Права субъектов ПДн (ст. 14 152-ФЗ):** -- ✅ **Право на получение информации** об обработке ПДн -- ✅ **Право на уточнение** персональных данных -- ✅ **Право на блокирование** обработки ПДн -- ✅ **Право на уничтожение** персональных данных -- ✅ **Право на отзыв согласия** на обработку ПДн -- ✅ **Сроки рассмотрения** обращений (30 дней) - -#### **4. Уведомление Роскомнадзора (ст. 22 152-ФЗ):** - подается онлайн -- ✅ **Обязательно** для ООО "ЭРАЙТИ" как оператора ПДн -- ✅ **Срок подачи:** до начала обработки ПДн -- ✅ **Содержание:** цели, категории, сроки обработки - -#### **5. Технические требования:** -- ✅ **Шифрование** персональных данных -- ✅ **Контроль доступа** к персональным данным -- ✅ **Учет действий** с персональными данными -- ✅ **Резервное копирование** персональных данных -- ✅ **Уничтожение** персональных данных - -### **149-ФЗ "Об информации" - дополнительные требования:** -- ✅ **Информация о владельце** информационных ресурсов -- ✅ **Порядок предоставления** информации -- ✅ **Ответственность** за нарушение требований - -### **Требования к cookies (ст. 15.1 149-ФЗ):** -- ✅ **Информирование** о использовании cookies -- ✅ **Согласие** на использование cookies -- ✅ **Возможность отключения** cookies -- ✅ **Цели использования** cookies - -## 🎯 Критерии успеха - -1. ✅ Полное соответствие российскому законодательству -2. ✅ Понятность для пользователей -3. ✅ Техническая интеграция в приложение -4. ✅ Юридическая валидность -5. ✅ Удобство использования -