Заявление опроса одним из делегатов используя трансляцию custom_json операции с названием witness_poll, содержащей: url (название голосования в латинице), name (название голосования в кириллице), descr (описание вопроса поднятого для голосования), options (список возможных ответов, разделенных символом "|"), days (количество дней для голосования, не может быть меньше 14 дней).
Любая система (или плагин ноды), который получит операцию данного формата должен фиксировать: start_block (номер блока в котором появился этот опрос), start_time (время подписи блока, содержится в его заголовке), end_time (с смещением по количеству days) и end_block, когда текущее время достигнет end_time.
Делегаты голосуют использую трансляцию custom_json операции с названием witness_vote, содержащей: url, option (номер варианта из options, начинающиеся с 1).
Система записывает голоса делегатов и предоставляет интерфейс с просмотром каждого голоса, номер блока, в котором хранится данная операция. Когда подходит время end_time - система фиксирует силу votes каждого проголосвавшего делегата и выводит результат голосования.
Результат голосования ОТМЕНЯЕТСЯ, если голосование набрало менее 10% от суммарной доли всех делегатов.
Таким образом мы добьемся прозрачности, аудируемости принятых решений через блокчейн и работающую репутационную модель делегатов (которым пользователи доверяют управление Голосом).
Я предлагаю следующий алгоритм:
Таким образом мы добьемся прозрачности, аудируемости принятых решений через блокчейн и работающую репутационную модель делегатов (которым пользователи доверяют управление Голосом).
Полный пост: https://goldvoice.club/@on1x/witness-polls-discussion/