Новости Golos•Core. Отчет по работе команды с 17 по 28 сентября 2018г.
Добрый вечер!
Команда Golos•Core рада поделиться отчетом за последние пару недель, а точнее, итогами своей работы за промежуток 17-28 сентября 2018 года.
Все три группы разработки были активно погружены в свои задачи, нами проводились встречи, нацеленные на улучшение организации всех процессов; происходит уточнение/перемещение задач на канбан-досках, т.к. большой пласт реализации базовой функциональности выполнен; скорость разработки также увеличена.
В очередной раз просим обратить ваше внимание: для более наглядной демонстрации процессов мы начали использовать Zenhub, поэтому наблюдать за нашей работой и за всеми досками можно, скачав соответствующее расширение для браузера.
ХФ 0.19
Ответственные разработчики: @korpusenko и @maslenitsa. Список утвержденных фич на ХФ 19 можно найти здесь.
- 898 ишью: задача о возможности уменьшения («срезания») кураторской награды в пользу автора в штрафном окне. Первая часть изменений по этой ишью уже была вмержена. В указанный промежуток добавлена возможность голосования за размер аукционного окна, чтобы срезанные токены шли в пул вознаграждений.
Делегатами было выдвинуто предложение добавить возможность выбирать путь срезанных токенов (кураторам или же в пул вознаграждений), а также добавить виртуальную операцию в случае, если срезанные токены уходят в пул. - 756 ишью. Проработан расчет и уже проводится тестирование.
Предполагается оптимизировать начисление кураторского вознаграждения при делегировании Силы Голоса (СГ) делегирующему пользователю, то есть:
- Добавить процент на кураторские делегирующему;
- Процент назначается делегирующим;
- Верхняя планка процента устанавливается делегатами;
- Возврат процента осуществляется в момент возврата делегированной СГ.
Дополнительно: добавить функцию отказа от СГ
- Ишью 924 находится на этапе тестирования. Разрабатывалась реализация хранения любой личной информации любыми пользователями через формат key_value. В результате чего было принято решение реализовать данный функционал через плагин для обработки и хранения key-value. Полное завершение работ с учетом тестов в рамках данного ишью займет еще пару дней.
Прототип
Разработка ядра
Ответственные разработчики: @andreypf и @s-medvedev.
- В рамках работ по issue https://github.com/GolosChain/golos-smart/issues/21 проработаны тонкости реализации автоматического изменения списка требуемых подписей (authority) для контракта управления на основании результатов голосования за делегатов сообщества. Данная возможность позволяет создать список делегатов с наибольшим количеством голосов, используя стандартный механизм authority. Таким образом, смарт-контракт может проверять, одобрено ли выполнение действие со стороны большинства делегатов сообщества, используя данные голосования пользователями сообщества и стандартные механизмы БЧ для проверки авторизации.
- В рамках issue https://github.com/GolosChain/cyberway/issues/2 реализован интерфейс multi_index полностью совместимый с реализацией хранения данных EOS внутри смарт-контрактов. Для данного интерфейса была реализована драйвер-библиотека для сохранения и загрузки данных из MongoDB. Следующим этапом будет осуществляться интеграция разработок внутрь БЧ CyberWay, в результате чего смарт-контракты смогут сохранять и загружать свои данные из внешней БД MongoDB.
- Проведены работы по использованию внешней базы данных во внутренних таблицах блокчейна. Эти работы ведутся в рамках https://github.com/GolosChain/cyberway/issues/6. Разработан механизм передачи имени вторичных ключей из кода в функции по работе с базой данных в виде строки, а также выделены требования к интерфейсу, которому должна удовлетворять реализация контейнера хранения данных (shared_multi_index_container) для использования с cуществующим кодом без его модификации.
- В данный момент ведется интеграция работы с внешней базой данных для внутренних таблиц блокчейна.
Смарт-контракты для прототипа
Ответственные разработчики: @zxcat, @jimak, @dedbaraded, @kaynarov (экономическая часть).
Работы, выполненные за 2 недели:
- Произведена интеграция вестинг смарт-контракта с системным контрактом токенов (в Eosio.token, который будет переименован к моменту релиза);
- Смарт-контракт адаптирован к последним изменениям в БЧ EOS с учетом потребления памяти на уровне смарт-контрактов;
- Текущая версия вестинг-контракта готова к мерджу в основную ветку кода. Дальнейшие доработки будут происходить по мере интеграции с другими смарт-контрактами приложения Golos https://github.com/GolosChain/golos-smart/pull/9;
- Совершен перенос батарейки из вестинг-контракта в постинг-контракт, а также разработка батареек ограничений для постинг-контракта;
- Совершен рефакторинг кода по созданию/редактированию и удалению постов/комментов
- Завершена работа по upvote/downvote (кроме экономической части);
- Сейчас исправляются некоторые замечания по коду, после чего @dedbaraded переходит к юнит-тестам по смарт-контрактам публикаций;
- Программирование смарт-контракта управления сообществами начнется после разработки ТЗ https://github.com/GolosChain/golos-smart/issues/21.
Экономическая часть
Выполняемая задача - реализация логики, связанной с вознаграждением авторов и кураторов в смарт-контракте публикаций.
В отчетный период реализована следующая функциональность смарт-контракта:
- Добавление нового набора правил и создание для него отдельного пула;
- Направление эмиссии в нужный пул;
- Создание комментария;
- Реализована функция голосования за комментарий;
- Расчет награды за пост (частично);
- Выполнены простые unit-тесты.
В процессе:
- Некоторые доработки в части расчета наград;
- Более серьезное тестирование и, возможно, отладка;
- Интеграция.
Готовность: ~70%.
Воркеры
Ответственный разработчик: @denis4inet
В работе находится функционал из предложенного ТЗ :
- Добавления, изменения, удаления заявок на разработку. (реализация пункта 1.a из Сценарий №1);
- Добавления, изменения, удаления комментариев к предложению по разработке. (реализация пункта 1.b из Сценарий №1);
- Голосования за предложение о разработке. (реализация пункта 3.b из Сценарий №1 и 1.b из Сценарий №2);
- Создания, изменения, удаления заявки на составление технического задания. (реализация пункта 3.a из Сценарий №1, пункт 1.с Сценарий №2);
- Описаны функциональные тесты работы заявок на разработку, комментариев и голосования.
Также, добавлены:
GOLOS_WORKER_ABI https://github.com/denis4net/golos.woker/blob/master/contracts/golos.worker/app_dispatcher.hpp
и
Eosio.test
https://github.com/denis4net/golos.woker/blob/master/tests/golos.worker.test.js
С учетом запроса от разработчиков Голоса (как из команды, так и из комьюнити) мы решили попробовать со следующей недели проводить встречи, посвященные разбору одной технической темы ( обсуждаться будут только технические аспекты реализации), связанной с прототипом.
Предлагаемая тема на следующую неделю: улучшение подсистемы bandwidth при транзите на CyberWay.
При транзите на CyberWay появляются гибкие возможности по распределению ресурсов CPU и NET для каждого отдельного пользователя, внесшего вклад в развитие инфраструктуры блокчейна. Привлекая новых пользователей, сообщество Golos вносит значительный вклад в развитие инфраструктуры блокчейна. Модификация схемы обеспечивает эффективный расход ресурсов сообщества при привлечении новых пользователей.
Приглашаем разработчиков (очень просим обратить внимание на эту просьбу, вопросы, не связанные с технической реализацией bandwidth, обсуждаться не будут) на встречу в специальной группе на Discord в четверг в 16:00 по МСК (смещение обусловлено тем, что исполнители находятся в Сибири).
Каналы коммуникации с Golos•Core
- https://t.me/goloscoretc (решение технических вопросов, связанных с работой блокчейн, нод, api и др.)
- https://t.me/joinchat/BLwf_A118xQ57nsM1Q4MPA (канал для вноса предложений от комьюнити, обсуждение перехода на кодовую базу EOS)
- https://t.me/golos_tools (решение вопросов по различным интерфейсам и дополнительным инструментам, создаваемым Golos•Core)
- https://t.me/goloscore_analytics (решение вопросов по работе экономики блокчейн, статистическим экономическим данным, аналитике данных)
- https://t.me/goloscoretech (новостной канал, с актуальной информацией от Golos•Core)
Мы будем очень рады, если вы поддержите делегата @goloscore. Заходите на страничку https://golos.io/~witnesses и проголосуйте за делегата Golos•Core
Спасибо за внимание и хорошего дня!
С уважением,
Команда Golos•Core: @korpusenko, @andreypf, @maslenitsa, @muhazokotuha, @zxcat, @mariadia, @annaeq, @anazarov79, @kaynarov, @s-medvedev