Все значимые изменения в Session Manager.
Баг: Восстановление текущей сессии создавало дубликат контекста
cmd_resume() теперь определяет ID текущей сессии⚠️ ОШИБКА: Эта сессия уже активнаФайлы изменены:
- library/services/session/cli.py:
- Добавлена функция _get_current_session_id() — определение текущей сессии
- Изменена функция cmd_resume() — проверка перед восстановлением
Тестирование:
- Создан тест test_resume_fix.py для проверки защиты
- Тесты успешно пройдены:
- ✓ Определение текущей сессии
- ✓ Блокировка восстановления текущей сессии
- ✓ Восстановление других сессий работает
Как работает:
1. При session resume ID проверяется:
- Получить ID текущей сессии (переменная окружения или самый свежий .jsonl)
- Сравнить с ID восстанавливаемой сессии
2. Если совпадают → показать предупреждение, exit
3. Если разные → продолжить восстановление
Пример:
# Попытка восстановить текущую сессию
session resume 9be23b58
# Вывод:
# ⚠️ ОШИБКА: Эта сессия уже активна
# Текущая сессия: 9be23b58-e00e-46...
# Проект: lider
# Что делаем: Проектор работаем с проектом lideravto
#
# Вы уже находитесь в этой сессии. Восстановление не требуется.