mirror of
https://gitverse.ru/kpa39l/email-assistant.git
synced 2026-09-29 09:15:09 +00:00
7550aff102
- mail_archive.py: фикс вложений himalaya --dir → --downloads-dir; attachments/ только при has_attachment; идемпотентно - email_classifier.py: Qwen3:8b (Ollama) → теги info/urgent/task/meeting в frontmatter email.md - email_handlers.py: urgent→Telegram (Bot API+SOCKS5), task→Radicale VTODO, meeting→Radicale VEVENT; handled_* идемпотентность; --dry-run - .gitignore: игнор *.env.bak* - openspec: чейндж email-classification-handlers (в работе) - STATUS/TODO/WALKTHROUGH: прогресс сессии, подводные камни Radicale (http.client, Depth:1, формат дат)
4.1 KiB
4.1 KiB
Proposal: Убрать Vikunja, задачи через Radicale (VTODO)
Why
В проекте email-assistant были развёрнуты два сервиса для календаря/задач:
- Radicale (CalDAV/CardDAV) — календари Личный/Рабочий/Задачи
- Vikunja (трекер задач) — отдельная сущность на :3456, tasks.nixg.ru
Это лишняя сложность: Radicale из коробки поддерживает VTODO (задачи через CalDAV), а календарь «Задачи» в Radicale уже создан. На Android задачи из CalDAV-VTODO прекрасно синхронизирует jtx board (и DAVx5), не требуя отдельного трекера.
Vikunja добавляет:
- лишний docker-контейнер + PostgreSQL
- отдельный API, токен, админа (не созданы — блокер)
- отдельный домен tasks.nixg.ru (reverse proxy, сертификат)
- дублирование логики «создать задачу» (Vikunja API вместо простого VTODO)
- усложнение чейнджа классификации (обработчик
taskзависел от несуществующего токена)
Убираем Vikunja из проекта. Задачи — через Radicale (VTODO в календаре «Задачи»). Это упрощает архитектуру, убирает лишнюю сущность, не теряя функциональности.
What Changes
- Обработчик задач переключается на Radicale VTODO — в чейндже
email-classification-handlersобработчикtaskсоздаёт не задачу в Vikunja, а VTODO в календаре «Задачи» Radicale (CalDAV PUT). Тема письма → SUMMARY, ссылка на письмо → DESCRIPTION. - Vikunja выводится из эксплуатации — остановить и удалить контейнеры
vikunjaиvikunja-db, убрать docker-compose.yml, .env (или пометить deprecated), освободить порт 3456. - tasks.nixg.ru — если reverse proxy уже настроен, убрать/закомментировать; если нет — не настраивать. Radicale остаётся единственным CalDAV-сервером.
- Обновить документацию — STATUS.md, TODO.md, design чейнджей убрать Vikunja, зафиксировать «задачи = Radicale VTODO, jtx board».
- TODO/общий список — задача «Vikunja» закрыта как «не нужна», «Caddy tasks.nixg.ru» — отменена.
Capabilities
New Capabilities
radicale-tasks: создание задач (VTODO) в Radicale через CalDAV — заменяет Vikunja для обработчикаtaskв email-classification-handlers.
Modified Capabilities
- (нет) — Vikunja не является capability проекта; это внешний сервис, который выводится из эксплуатации. Radicale-tasks — новое поведение.
Impact
- Docker: остановить/удалить
vikunja,vikunja-db(compose в/opt/hermes/email-assistant/vikunja/) - Скрипты:
email_handlers.py(в чейндже classification) — обработчикtask→ Radicale VTODO вместо Vikunja API - Радикал: календарь «Задачи» уже существует, туда пишутся VTODO
- Документация: STATUS.md, TODO.md, design.md (local-calendar-tasks, email-classification-handlers) — убрать Vikunja, зафиксировать Radicale VTODO
- Caddy (если настроен): убрать/закомментировать tasks.nixg.ru
- TODO.md: закрыть задачи Vikunja (2, 3, 6 — «создать задачу» теперь Radicale)