Результаты деятельности ГолосКор за период 13.05.2019 г.- 24.05.2019 г.
Уважаемые делегаты и члены комьюнити. Наша команда рада представить вам следующие результаты за последние две недели:
Продолжена работа по подготовке к транзиту
Доработана утилита генерации генезиса в части:
- генерации имен аккаунтов;
- сохранения произвольных записей;
- конфигурирования dApp Golos с помощью файла настроек;
- переноса сведений о закрытых постах
- обновления шаблона для создания генезиса.
Проведена работа по адаптированию клиентского приложения Cleos к логике CyberWay в части:
- голосования за блок-продюсеров;
- делегирования bandwidth.
Проведена работа по повышению быстродействия системы, в том числе:
- доработана процедура формирования запроса в СУБД MongoDB;
- отключен подсчет использования ресурсов при импорте генезиса Golos;
- адаптирована процедура подсчета использования RAM для загрузки генезиса Голоса.
Завершена работа, начатая в предыдущем спринте, по оптимизации структуры кода. Написаны соответствующие тесты.
Генезис с данными Голоса
Завершенные задачи:
Улучшена генерация имён аккаунтов (переносимый алгоритм + в именах аккаунтов не должно быть точек)
https://github.com/GolosChain/cyberway/issues/527Добавлен код для переноса рекавери-аккаунта (аккаунт для восстановления) в утилиту генерации генезиса. Данные добавляются в реестр владельца в аккаунты генезиса.
https://github.com/GolosChain/cyberway/issues/471
https://github.com/GolosChain/cyberway/issues/470Добавлена возможность указывать в файле настроек генезиса:
- произвольные разрешения (permission) для аккаунтов (включая родительское разрешение, несколько ключей, разрешения сторонних аккаунтов)
- связи разрешений со смарт-контрактами и их действий (actions)
https://github.com/GolosChain/cyberway/issues/647
Добавлена возможность сохранения произвольных записей в таблицы бд в файле настроек генезиса (с сериализацией согласно abi)
https://github.com/GolosChain/cyberway/issues/650Бо́льшая часть настроек dApp Golos перенесена в файл настроек генезиса, которые ранее были жестко прописанные в коде утилиты генерации генезиса.
https://github.com/GolosChain/cyberway/issues/633В утилиту генерации генезиса добавлен код, задающий поле ram_payer для всех записей бд
https://github.com/GolosChain/cyberway/issues/562Улучшен процесс импорта генезиса: добавлена возможность не только вставлять новые записи, но и редактировать записи бд, заданные на уровне ядра до начала импорта генезиса
https://github.com/GolosChain/cyberway/issues/656В генератор генезиса добавлена возможность указывать область видимости (scope) для таблиц не только как имя аккаунта, но и как символ (symbol) токена и код символа (symbol_code)
https://github.com/GolosChain/cyberway/issues/710Устранена ошибка, возникающая при переносе пула наград rshares в генезис
https://github.com/GolosChain/cyberway/issues/703В генератор генезиса добавлен перенос сведений о закрытых постах (автор/постоянная ссылка/родительский пост, т.п.)
https://github.com/GolosChain/cyberway/issues/702Обновлён шаблон для создания генезиса (genesis-info.json). Таким образом, сейчас:
- аккаунт gls.issuer переименован в gls
- устанавливаются abi/code для всех системных аккаунтов
- задаются дополнительные разрешения
- задаются связи дополнительных разрешений с действиями в контрактах
- задаются начальные параметры контрактов
https://github.com/GolosChain/golos.contracts/issues/655
https://github.com/GolosChain/golos.contracts/issues/656
https://github.com/GolosChain/golos.contracts/issues/668
- Ликвидирована проверка блок-продюсера при генерации первого блока БЧ, в котором загружается его генезис.
https://github.com/GolosChain/cyberway.contracts/pull/158
Быстродействие (performance)
Завершенные задачи:
Переработана процедура формирования запроса в СУБД MongoDB. Позиционирование в коллекции по индексу более не использует функцию фильтрации по SCOPE первичного ключа. Фильтрация происходит на стороне ноды БЧ, что позволяет получить результат запроса мгновенно, без проведения фильтрации многочисленных объектов в СУБД
https://github.com/GolosChain/cyberway/issues/659
https://github.com/GolosChain/cyberway.fc/issues/32Отключен подсчет использования ресурсов при импорте генезиса Golos. Это дает двойной эффект - ускорение загрузки данных при запуске нового БЧ, и пользователи Голос стартуют с чистого листа без потребленного бендвича
https://github.com/GolosChain/cyberway/issues/688Процедура подсчета использования RAM адаптирована для загрузки генезиса Голоса.
https://github.com/GolosChain/cyberway/issues/688
https://github.com/GolosChain/cyberway/issues/691
Восстановление работы API-функций chain-api-plugin
Завершенные задачи:
Реализована api-функция get_producers. Данная функция возвращает список блок-продюсеров с информацией о них (ключ, сейк и т.д.)
https://github.com/GolosChain/cyberway/pull/663Изменены параметры вызова команды cleos system newacсount, так как внесение стейка за отдельные виды ресурсов более не поддерживается. При вызове данной функции будет возвращена ошибка так как пока не реализовано делегирование ресурса ‘bandwith’.
https://github.com/GolosChain/cyberway/issues/665Изменены параметры вызова команды cleos system delegatebw, так как внесение стейка за отдельные виды ресурсов более не поддерживается. При вызове данной функции будет возвращена ошибка, т.к. делегирование ресурса ‘bandwith’ на данный момент еще не реализовано.
https://github.com/GolosChain/cyberway/issues/669Изменены параметры вызова команды cleos system undelegatebw, так как больше не поддерживается внесение стейка за отдельные виды ресурсов. При вызове данной функции будет возвращена ошибка, т.к. делегирование ресурса ‘bandwith’ пока не реализовано.
https://github.com/GolosChain/cyberway/issues/670Объявлено, что команда cleos system buyram устарела.Так как больше не поддерживается покупа памяти отдельно от покупки ресурсов bandwith, то при вызове команды cleos system buyram возвращается ошибка.
https://github.com/GolosChain/cyberway/issues/674Объявлено, что команда cleos system sellram устарела.
Так как больше не поддерживается покупа памяти отдельно от покупки ресурсов bandwith, то при вызове команды cleos system sellram возвращается ошибка. https://github.com/GolosChain/cyberway/issues/675Объявлено, что команда cleos system claimrewards устарела.
Так как вознаграждение блок-продюсера больше не нужно дополнительно получать отдельной операцией, при вызове команды cleos system claimrewards возвращается ошибка, что команда больше не поддерживается.
https://github.com/GolosChain/cyberway/issues/676При вызове команды cleos system listbw возвращается ошибка, что операция делегирования bandwith пока не реализована.
https://github.com/GolosChain/cyberway/issues/671Проверена корректная работа команды cleos system canceldelay
https://github.com/GolosChain/cyberway/issues/679Реализована возможность выдачи активов (asset - например, “1000.000 GOLOS”) и тикеров (symbol - например “3,GOLOS”) в виде форматированных значений в API-ответах.
https://github.com/GolosChain/cyberway/issues/130
Задачи In Progress:
Объявлено, что команда cleos system regproxy устарела.
Из-за изменения модели работы с делегирование права голосования за блок-продюсеров при вызове команды cleos system regproxy возвращается ошибка.
https://github.com/GolosChain/cyberway/issues/677Объявлено, что команда cleos system unregproxy устарела.
Из-за изменения модели работы с делегирование права голосования за блок-продюсеров при вызове команды cleos system unregproxy возвращается ошибка.
https://github.com/GolosChain/cyberway/issues/678Для поддержки новой модели работы с делегированием права голосования за блок-продюсеров добавлена команда cleos system setproxylvl
https://github.com/GolosChain/cyberway/issues/715Для поддержки новой модели формирования списка блок-продюсеров внесены изменения в реализацию команды cleos system regproducer
https://github.com/GolosChain/cyberway/issues/666Для поддержки новой модели формирования списка блок-продюсеров внесены изменения в реализацию команды cleos system unregprod
https://github.com/GolosChain/cyberway/issues/667Реализована api-функция get_proxy_status для нужд реализации команд cleos system regproducer и unregprod, а также удобства работы с делегированием права голосования за блок-продюсеров. Данная функция возвращает текущий proxylevel указанного аккаунта и количество его прокси-аккаунтов.
https://github.com/GolosChain/cyberway/issues/721Реализована api-функция get_proxylevels для нужд реализации команд cleos system regproducer и unregprod, а также удобства работы с делегированием права голосования за блок-продюсеров. Данная функция возвращает максимальное количество уровней проксирования, а также максимальное количество прокси-аккаунтов на каждом уровне.
https://github.com/GolosChain/cyberway/issues/721
Транзит
Завершенные работы:
Добавлены rshares в голосование в EE генезис
https://github.com/GolosChain/cyberway/issues/625Добавлена репутация в EE генезис (отменено).
https://github.com/GolosChain/cyberway/issues/646В EE-плагин добавлено событие об окончании данных из генезиса, который отправляется после всех событий с этими данными.
https://github.com/GolosChain/cyberway/issues/649Исправлена проблема, из-за которой ветка develop в CyberWay перестала собираться.
https://github.com/GolosChain/cyberway/issues/682Добавлена дата создания, последнего редактирования и состояние баланса в аккаунты EE-генезиса
https://github.com/GolosChain/cyberway/issues/709Добавлена дата последнего редактирования в посты EE-генезиса
https://github.com/GolosChain/cyberway/issues/708Утилита создания EE-генезиса объединена с утилитой создания основного генезиса
https://github.com/GolosChain/cyberway/issues/704Добавлена метадата аккаунтов в EE-генезис
https://github.com/GolosChain/cyberway/issues/645Добавлено сохранение rshares в дампе операций
https://github.com/GolosChain/golos/issues/1290В дамп операций добавлены метаданные (данные профилей) аккаунтов
https://github.com/GolosChain/golos/issues/1292Хранение репутации перенесено из плагина в стейт (отменено)
https://github.com/GolosChain/golos/issues/1293Добавлена дата в посты и трансферы в дампе операций
https://github.com/GolosChain/golos/issues/1297У операций трансферов и метадаты аккаунтов в дампе операций убран хеш с целью изменения размера дампа
https://github.com/GolosChain/golos/issues/1296
Расширение функциональных возможностей и доработки смарт-контрактов Голоса
Завершенные задачи:
Завершена работа, начатая в предыдущем спринте, по оптимизации структуры кода. Написаны соответствующие тесты.
https://github.com/GolosChain/golos.contracts/issues/572
https://github.com/GolosChain/golos.contracts/issues/573Ликвидирован подсчет репутаций в смарт-контрактах ( сейчас ее подсчетом занимается приложение Golos.io)
https://github.com/GolosChain/golos.contracts/issues/666Добавлен bulk transfer в контракт cyber.token
https://github.com/GolosChain/cyberway.contracts/issues/130Добавлены стандартный и настраиваемый обработчики bulk transfer в golos.contracts
https://github.com/GolosChain/golos.contracts/issues/649Добавлен стандартный и настраиваемый обработчики bulk transfer в cyberway.contracts
https://github.com/GolosChain/cyberway.contracts/issues/154Добавлен метод обработки bulk transfer в контракте golos.vesting
https://github.com/GolosChain/golos.contracts/issues/639Добавлены проверки в bulk transfer в контракте cyber.token
https://github.com/GolosChain/cyberway.contracts/issues/161Перенос аукциона имён из cyber.system в cyber.bios
https://github.com/GolosChain/cyberway.contracts/issues/146Исправлен баг с unregistration witness
https://github.com/GolosChain/golos.contracts/issues/663
Задачи In Progress:
Написаны тесты для проверки корректности выплат пользователям, делегировавшим силу голоса
https://github.com/GolosChain/golos.contracts/issues/449Замена функции штрафа при постинге (posting bw penalty) с линейной на квадратичную
https://github.com/GolosChain/golos.contracts/issues/633Установка корректных авторити для контрактов Голоса
https://github.com/GolosChain/golos.contracts/issues/665Добавление bulk payment в контракт cyber.token
https://github.com/GolosChain/cyberway.contracts/issues/160Расчёт rsahres с использование заряда батарейки
https://github.com/GolosChain/golos.contracts/issues/632
Расширение функциональных возможностей CyberWay
Завершенные задачи:
Реализована возможность использования тикеров токенов в качестве первичного ключа в таблицах.
https://github.com/GolosChain/cyberway/issues/130Реализована возможность задавания типа для хранения scope (области видимости) объектов в таблицах
https://github.com/GolosChain/cyberway/issues/114В заголовки транзакций добавлены ограничения на максимальное потребление RAM и STORAGE.
https://github.com/GolosChain/cyberway.cdt/issues/93В квитанции выполненных транзакций добавлена информация о потребленном RAM и STORAGE
https://github.com/GolosChain/cyberway/issues/706Процедура вычисления потребления STORAGE переработана и оптимизирована для увеличения мотивации на удаление записей из стейта, а также на уменьшение размера сохраняемых записей
https://github.com/GolosChain/cyberway/issues/720
Каналы коммуникации с 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: @andreypf, @korpusenko, @maslenitsa, @muhazokotuha, @zxcat, @annaeq, @anazarov79, @kaynarov, @s-medvedev, @eugin, @dedbaraded, @jimak.