Files
site_aegisone/max_bot/CHANGELOG.md
T
angel 72b6879f4b v1.7.0: refactor max_bot to flat structure, add VCF+UserModel+NLP history context, portal pages and proxy fixes
- Refactored max_bot from nested packages to flat module structure
- Q2: Extended BotUser model (patronymic, email, org, address, vcf_raw, contact_hash, phone_verified, email_verified, last_interaction, total_conversations, total_tickets)
- Q2: VCF parser (FN, N, TEL, EMAIL, ORG, ADR), upsert on re-contact, NLP history context (_get_user_history_context -> YandexGPT)
- Q1: Broadcast preview modal with 10s confirmation timer
- Q3: CSS var(--white)->var(--bg-card), var(--text)->var(--text-primary)
- Q4: bot_settings showNotification(), editable max_bot_id
- Q5: Webhook secret passthrough via X-Max-Bot-Api-Secret
- Masking sensitive keys, dialog_cleared handler, migrate via _add_column_if_not_exists()
- Rate limit (asyncio.sleep 0.5 per 10), dead code removed, conv.intent context in contact.py
- Portal pages: bot_consent, bot_kb (edit), bot_settings, bot_test, bot_tickets, portal_settings
- Tests: 21/21 passing, added test_yandex_gpt.py, test_email_sender.py
- Deploy: deploy_full.sh, schema.sql, seed_knowledge_base.sql
2026-05-29 02:30:30 +03:00

1.8 KiB
Raw Blame History

Changelog — AegisOne MAX Bot

1.7.0 (29.05.2026)

Новые функции

  • Рефакторинг архитектуры: плоская структура модулей (models.py, yandex_gpt.py, keyboards.py, email_sender.py, config_reader.py) вместо вложенных пакетов
  • VCF + User Model (Q2):
    • BotUser расширен: patronymic, email, organization, address, vcf_raw, contact_hash, phone_verified, email_verified
    • VCF-парсер: FN, N, TEL, EMAIL, ORG, ADR — все поля сохраняются
    • Upsert пользователя при повторном контакте (greeting.py)
    • total_conversations инкремент, last_interaction обновление
    • handle_contact_share сохраняет все VCF-поля (handoff.py)
    • total_tickets инкремент в _finalize_ticket (inquiry.py)
  • NLP history context: _get_user_history_context() — последние 10 сообщений + открытые заявки → YandexGPT
  • Broadcast с превью и таймером (Q1): модалка подтверждения с таймером 10 секунд
  • CSS-переменные (Q3): var(--white)→var(--bg-card), var(--text)→var(--text-primary)
  • bot_settings (Q4): showNotification(), max_bot_id редактируемый
  • Webhook secret (Q5): проброс X-Max-Bot-Api-Secret через прокси
  • Маскировка sensitive API-ключей в /api/bot/settings
  • dialog_cleared handler — сброс состояния диалога
  • Миграции через _add_column_if_not_exists() — новые колонки BotUser
  • Rate limit в broadcast: asyncio.sleep(0.5) после каждых 10
  • Уточнение сообщения (contact.py) с учётом conv.intent
  • Тесты: test_yandex_gpt.py, test_email_sender.py