# Заметки по сессии — 15.05.2026 ## 1. Geo-поле (Адрес с координатами) - **Статус:** ✅ Реализовано и задеплоено - **Компонент:** `client/src/components/GeoField.tsx` - **API:** `/api/dadata/suggest/address`, `/api/dadata/geolocate` - **Формат данных:** `{ address: string, lat: number | string, lng: number | string }` - **Особенности:** совмещённое поле координат ("55.707339, 52.315169"), подсказки DaData, обратное геокодирование ## 2. Исправление ошибки создания задач (bad_request) - **Причина:** `drizzle-zod@0.7.0` создаёт `strict()` схемы. `insertTaskSchema` не ожидал `customFields`, и zod отклонял запрос. - **Фикс:** добавлено `customFields: z.record(z.any()).optional()` в `shared/schema.ts` - **Файл:** `shared/schema.ts`, `insertTaskSchema` ## 3. UI поля "Связь с формой" (task) - **Проблема:** непонятные подписи "Родительская/дочерняя задача" - **Решение:** переименовано в "Роль связанной задачи" + добавлены поясняющие описания под каждым вариантом - **Файл:** `client/src/pages/FormEditor.tsx` ## 4. Очистка Docker - **Освобождено:** ~4 GB - **До:** 49 GB, 42 GB использовано (86%) - **После:** 49 GB, 24 GB использовано (50%) - **Удалено:** dangling образы iistwin (crm-app-builder, crm-app старые), postgres:16-alpine, build cache ## 5. Удаление заглушек из блока "Финансы" - **Удалены файлы:** - `client/src/pages/finance/profitability.tsx` - `client/src/pages/finance/debt.tsx` - `client/src/pages/finance/calculations.tsx` - `client/src/pages/finance/planning.tsx` - `client/src/pages/finance/audit.tsx` - `client/src/pages/finance/heatmap.tsx` - **Убраны:** импорты из `App.tsx`, роуты, экспорты из `index.ts` - **FinanceSidebar:** оставлены только реальные страницы (Дашборд, Доходы, Расходы, Зарплата, Настройки) - **FinanceNav:** убраны дубли (Доходы, Расходы, Зарплата, Настройки), оставлены Обзор + Категории доходов/расходов ## 6. Настройка SSH для git на сервере - **Сгенерирован ключ:** `/root/.ssh/id_ed25519` (ed25519) - **Добавлен в GitHub:** Settings → SSH keys - **Git remote:** `git@github.com:iisultanov/iistwin.git` - **Результат:** `git pull` работает автоматически без пароля ## Кастомизации сервера (НЕ коммитить в GitHub) | Файл | Изменения | |------|-----------| | `docker-compose.yml` | Traefik-метки, `APP_HTTPS_PROXY=true`, сеть `n8n_proxy` | | `server/index.ts` | `contentSecurityPolicy: false`, `hsts: false`, conditional HSTS | | `docker-entrypoint.sh` | `echo "y" \| npx drizzle-kit push` + `CREATE EXTENSION vector` | | `.env` | Секреты, `ALLOW_PRIVATE_RAG_URLS=true`, `API_KEY_HMAC_SECRET` | ## Команды деплоя ```bash ssh root@82.202.130.22 cd /opt/crm git pull origin main docker compose up -d --build ``` ## Проверка статуса ```bash curl -s https://iistwin.ru/api/health ``` ## Доступы - **SSH:** `root@82.202.130.22` (ключ: `C:\Users\User\Yandex.Disk\1kimi\срм\.ssh_id_ed25519_crm`) - **iistwin:** https://iistwin.ru - **GitHub:** https://github.com/iisultanov/iistwin - **MinIO:** http://82.202.130.22:9001