/**
 * @defgroup public_capital_voting_start_process Открыть голосование
 * @ingroup public_capital_processes
 * 
 * Начало голосования обеспечивает переход от генерации к оценке результата, инициализацию 
 * процедуры голосования по методу Водянова, расчет сумм для справедливого распределения и 
 * установку временных рамок для оценки вклада участников в проект.
 * 
 * \htmlonly
 * <div class="mermaid">
 * sequenceDiagram
 *     participant К as Кооператив
 *     participant ПК as Контракт Capital
 *     participant П as Проект
 *     
 *     К->>ПК: 1. Инициация голосования
 *     Note over ПК: Проверка готовности проекта
 *     ПК->>П: 2. Проверка статуса проекта
 *     alt Проект в статусе ACTIVE
 *         П->>ПК: 3. Подтверждение статуса
 *         ПК->>П: 4. Перевод в статус VOTING
 *         ПК->>П: 5. Инициализация голосования
 *         П->>К: 6. Голосование начато
 *     else Проект не в статусе ACTIVE
 *         ПК->>К: Ошибка: проект не в статусе active
 *     end
 * </div>
 * \endhtmlonly
 * 
 * ## Пошаговое описание процесса
 * 
 * ### Шаг 1: Инициация голосования
 * <b>Действие:</b> @ref capital::startvoting "Начало голосования"
 * 
 * Кооператив инициирует начало голосования после завершения всех запланированных работ 
 * проекта и готовности результата к взносу в кооператив.
 * 
 * @post Проверка авторизации кооператива
 * 
 * ### Шаг 2: Проверка готовности проекта
 * <b>Действие:</b> Валидация активного статуса
 * 
 * Система проверяет, что проект находится в статусе ACTIVE, что означает завершение 
 * основных работ и готовность к переходу в фазу оценки результата.
 * 
 * @post Подтвержден статус ACTIVE проекта
 * 
 * ### Шаг 3: Перевод в статус голосования
 * <b>Действие:</b> Активация фазы оценки
 * 
 * Система переводит проект в статус VOTING, что прекращает прием новых коммитов, 
 * активирует процедуры голосования и переводит проект в фазу оценки результата.
 * 
 * @post Статус проекта изменен на VOTING
 * 
 * ### Шаг 4: Инициализация голосования по методу Водянова
 * <b>Действие:</b> Подготовка процедуры оценки
 * 
 * Система инициализирует все параметры голосования, рассчитывает суммы для распределения 
 * по методу Водянова, устанавливает дедлайн голосования, определяет участников голосования 
 * и подготавливает структуры данных для голосов.
 * 
 * @post Голосование по методу Водянова инициализировано
 * @post Установлен дедлайн голосования
 * @post Рассчитаны суммы для распределения
 * 
 * ## Расчет сумм по методу Водянова
 * 
 * При инициализации голосования формируется общий пул средств для распределения по методу Водянова. 
 * Эти средства поступают из части премий авторов и создателей проекта, которые направляются в пул 
 * для голосования согласно процентным конфигурациям контракта, установленным через @ref capital::setconfig "настройку конфигурации кооператива".
 * 
 * Из общих премий участников выделяются две части:
 * - Часть авторских премий, которая направляется на голосование (по умолчанию 38.2%)
 * - Часть премий создателей, которая направляется на голосование (по умолчанию 38.2%)
 * 
 * Эти выделенные суммы формируют общий пул для голосования, из которого участники проекта 
 * распределяют средства между собой в процессе взаимной оценки.
 * 
 * @note Процентные значения для распределения премий в пул голосования настраиваются 
 * кооперативом через конфигурацию контракта и могут быть изменены в соответствии с 
 * внутренними правилами кооператива.
 * 
 * При инициализации рассчитываются следующие суммы:
 * - <b>authors_equal_spread</b> - равное распределение для авторов
 * - <b>authors_bonuses_on_voting</b> - авторские премии на голосование
 * - <b>creators_direct_spread</b> - прямое распределение создателям
 * - <b>creators_bonuses_on_voting</b> - премии создателей на голосование
 * - <b>total_voting_pool</b> - общий пул для голосования
 * 
 * ## Параметры голосования
 * 
 * <b>Временные рамки:</b>
 * - Период голосования устанавливается из конфигурации кооператива
 * - По умолчанию 7 дней, может изменяться кооперативом
 * - Дедлайн фиксируется при инициализации
 * 
 * <b>Участники голосования:</b>
 * - Авторы проекта
 * - Создатели с коммитами
 * 
 * ## Условия для начала голосования
 * 
 * <b>Обязательные требования:</b>
 * - Проект в статусе ACTIVE
 * - Все запланированные работы выполнены
 * - Результат готов к взносу в кооператив
 * - Команда готова к взаимной оценке
 * 
 * <b>Последствия инициализации:</b>
 * - Прекращается прием новых коммитов
 * - Запрещаются изменения в составе команды
 * - Фиксируются окончательные данные для расчетов
 * 
 * ## Результат процесса
 * 
 * @post
 * 1. Проект переведен в фазу голосования
 * 2. Рассчитаны все суммы для распределения
 * 3. Установлены временные рамки голосования
 * 4. Участники могут приступать к взаимной оценке
 * 
 * ## Связанные процессы
 * 
 * - @ref public_capital_project_start_process "Запуск проекта" - предшествующий этап
 * - @ref public_capital_voting_process "Голосование по результату" - основная деятельность
 * - @ref public_capital_voting_completion_process "Завершение голосования" - следующий этап
 
 */