# Portability: UNIVERSAL
# Last validated: 2026-05-17
# Next review: 2027-05-17

ОБРАТНЫЙ СЧЕТ — Обратный отсчет с триггером
==================================

Таймер обратного отсчета, который при необходимости выполняет команду по истечении срока его действия.

КОМАНДЫ CLI
-----------

  bach countdown start <name> HH:MM:SS              Начать обратный отсчет
  bach countdown start <name> HH:MM:SS --after "cmd" Mit Trigger-Befehl
  bach countdown stop <name>                         Отменить обратный отсчет
  bach countdown list                                Активный обратный отсчет
  bach countdown pause <name>                        Пауза
  bach countdown resume <name>                       Возобновить

ФОРМАТ ВЫХОДА
--------------

  Обычный: сеанс [ОБРАТНЫЙ СЧЕТ]: осталось 45:12.
  Предупреждение: [!] сеанс: осталось всего 04:58!

Предупреждение появляется, когда остается < 5 минут.

PERSISTENCY
----------

  Файл: data/.countdown_state

  Содержание:
  {
    "обратный отсчет": {
      "сессия": {
        "end_time": "2026-01-30T15:00:00",
        "after_command": "выключение 'Time at'",
        «приостановлено»: ложь,
        «remaining_on_pause»: ноль
      }
    }
  }

ПРИМЕРЫ
---------

  # Обратный отсчет сеанса на 1 час 
  bach countdown start session 01:00:00
  -> Начался «сеанс» обратного отсчета: 01:00:00

  # С автоматическим выключением
  bach countdown start session 01:00:00 --after "shutdown 'Session beendet'"
  -> По истечении срока его действия выполняется «bach --shutdown 'Сессия завершена'» 

  # Таймер Помидора (25 минут)
  bach countdown start focus 00:25:00
  -> Начался обратный отсчет «фокуса»: 00:25:00

  # Пауза и возобновление
  bach countdown pause focus
  bach countdown resume focus

  # Проверить статус
  bach countdown list
  -> сеанс: осталось 45:12
  -> фокус: осталось 19:45 (ПАУЗА)

TRIGGER (--after)
-----------------

Команда --after выполняется по истечении срока ее действия:

  --after «shutdown 'Time at'» Завершить сеанс
  --after "msg send user 'Break!" Отправить сообщение
  --after «задача выполнена 123» Отметить задачу как выполненную

При выполнении команда записывается в очередь.
Следующий вызов CLI выполнит его (или демон).

USECASES
--------

  1. ЛИМИТ СЕССИИ
     bach countdown start session 02:00:00 --after "shutdown 'Limit erreicht'"
     -> Автоматическое завершение сеанса через 2 часа

  2. ТЕХНИКА ПОМОДОРО
     bach countdown start focus 00:25:00 --after "msg send user 'Pause machen!'"
     -> Напоминание о паузе через 25 минут

  3. НАПОМИНАНИЕ О СРОКОМ СРОКА 
     bach countdown start deadline 04:00:00
     -> Предупреждение через < 5 минут, затем действуйте вручную

INTERPLAY
-------------

Обратный отсчет является частью системы времени:
  --help clock Отображение времени
  --help таймер секундомер
  --help между проверками
  --help победить Единое отображение времени

---
Версия: 1.0 | Статус: Реализовано (v1.1.83)
См.: документы/CONCEPT_time_system.md.
