Новые голосуемые параметры от GolosCore вызывают недоумение


Вчера была встреча делегатов с представителями ядра, обсуждались изменения ядра после проведения 18го ХФ. Но, почему-то сам 18ХФ не обсуждался, хотя на днях ядро внесло в ХФ изменения, которые, на мой взгляд, требуют обсуждения.

Интересно, что до начала работы над 18тым ХФ я предлагал встретиться и обсудить алгоритм делегирования, брать его один в один как стиме, или что-то поменять.  Обсуждения не было, потому что было озвучено, что всё будет как в стиме – времени на допилы нет.

И тут появляется пост ядра с информацией о вводимых голосуемых параметров делегирования, которых на стиме нет: /ru--golos/@goloscore/novosti-golos-core-pro-golosuemye-parametry-v-khf-18

Что меня смущает в этом решении. Меня смущает излишнее усложнение системы нетривиальными мультипликаторами, попробую пояснить.

У нас уже есть три базовых параметра account_creation_fee, maximum_block_size, sbd_interest_rate. Первые два простые и абсолютное, а третий параметр связан на экономику GBG.

Что нам предлагает добавить @goloscore:

1) min_delegation_multiplier — задаёт минимальное количество СГ, которое можно делегировать аккаунту.

Ну, наверно, это полезный параметр если делегаты его задавать в абсолютном значении, так же как и account_creation_fee. Но нет, @goloscore делает этот параметр мультипликатором, т.е. минимальное количество делегированной СГ будет = account_creation_fee * min_delegation_multiplier.

Как это работает.  Допустим, я хочу поставить , чтобы можно было делегировать не менее 5СГ. Я смотрю значение account_creation_fee = 1, ставлю min_delegation_multiplier = 5. Но, если потому другие делегаты изменят fee на 2, то и моё значение минимально делегированной СГ станет не 5, а 10.

 Получается, что я должен оглядываться постоянно на то, что делают остальные?

 

2) Берем следующий параметр. create_account_delegation_time — задаёт минимальный срок заморозки делегированной СГ при создании аккаунта с делегированием. Параметр простой, абсолютный, но не нужный. Минимальное значение 15 дней. В стиме было поначалу 30, но все пришли к выводу, что это долго и поменяли на 15. Какой смысл в смене 15 на 30, или на 45 я не понимаю. 15 дней достаточно, зачем менять этот параметр я не понимаю, а значит мне он не нужен. Нужен ли он оcтальным?

2) create_account_with_golos_modifier - во сколько увеличивается стоимость создания аккаунта с делегированием по сравнению с Это опять мультипликатор. Зачем опять привязка к fee, почему нельзя сделать просто цифру? И почему вообще fee при создании аккаунта с делегированием должно отличаться от создания аккаунта без делегирования? Делегаты устанавливают минимум, а уже регистратор пусть дает столько, сколько считает нужным.

 Вполне допускаю, что fee с делегированием и без может быть разным, с делегированием можно давать меньше, но в чем проблема параметр сделать абсолютным? Интересно, что по умолчанию этот коэффициент = 1.

 3) И последний параметр, я не понимаю зачем он нужен вообще. Я даже больше скажу, без пол литра я так и не понял, что это. create_account_delegation_ratio - во сколько раз больше весит оплачиваемая часть относительно делегируемой.

Во-первых, меня смущает формулировка «во сколько раз оплачиваемая часть больше делегируемой». Мне как-то казалось, что делегируемая часть должна быть больше оплачиваемой.

Во-вторых, меня убивает формула, по которой я должен вычислять минимумы последних двух мультипликаторов, которые ещё и завязаны друг на друга:

create_account_delegation_ratio * fee + delegation >= create_account_delegation_ratio * create_account_with_golos_modifier * account_creation_fee

 Резюмируя, у нас есть минимальная fee регистрацию, если минимально делегированная СГ, т.е. регистратор может дать по минимуму, может дать больше, если захочет. Зачем нужен этот create_account_delegation_ratio, чтобы задать ограничения по отношению fee к минимально делегируемой СГ, а зачем?

 

Что мы имеем по факту. Команда @goloscore уже давно говорит о том, что код стима плохой и активно от него уходит, а тут вводя делегирование предлагает голосуемые параметры, которые были введены в стиме. Зачем они там введены, почему это мультипликаторы, нужны ли они голосуемые – такого анализа проведено не было.

 

Моё предложение такое оставить min_delegation как абсолютный параметр и create_account_delegation_fee как абсолютный параметр, остальное – к чертям!


Comments 20


привет. все внимательно прочитала. суть, как мне кажется, поняла. не поняла вот что - как я (или другие гуманитарии) сможем это использовать?
можешь ли ты рассказать коротенька, как эти настраиваемые параметры сможет применять обычный пользователь? не технарь? какая юзеру польза от этих фич?

08.06.2018 11:48
0

Ну видишь же, он сам не все понял )

Обычным пользователям все равно. Речь идет о новорегах. Сколько СГ они получат при регистрации и на какой срок.

08.06.2018 12:16
0

вот спасибо. а то я уже озадачилась, Георгий. что еще надо изучать и что делать с изученным )))

08.06.2018 12:17
0

Берем следующий параметр. create_account_delegation_time

пускай будет,минусов не вижу.

все параметры касательно create_account свести к двум

  • account_creation_min_value (account_creation_fee так и есть)
  • create_account_delegation_min_value - минимальная сила для делегирвоания при создании аккаунта

все ммультипликаторы вырезать нафиг!

тоже самое для параметра min_delegation_value, нафиг мультипликаторы. min_delegation_value игнорируется при создании акка и вместо него используется create_account_delegation_min_value

08.06.2018 11:49
0

create_account_delegation_time я бы оставил. Все же это служит для отпугивания спаммеров и одновременно служит для регуляции срока, за который аккаунт заживет соей жизнью, прежде чем регистратор заберет СГ взад.

С остальным в принципе согласен. create_account_delegation_ratio вообще бессмыслен. Должны быть абсолютные значения. Относительные - ад.

08.06.2018 12:10
0

✅🤙 🚀

08.06.2018 12:12
0

Многовато мультипликаторов.

09.06.2018 06:20
0

Почему min_delegation_multiplier — мультипликатор. Ограничение минимума делегирования СГ не позволяет ботнетам, состоящим из аккаунтов с малой СГ, делегировать её на 1 аккаунт. («слиться в кита»). СГ, которую аккаунт получает при регистрации — это account_creation_fee (иногда больше, но к ботнетам это не относится). Поэтому параметр изначально не абсолютный, а завязан на account_fee. То есть делегаты могут задать ограничение минимума СГ просто: задаём 5 — минимум делегирования = в 5 раз больше комиссии создания аккаунта.

Можно поменять на абсолютное значение, например делегат сможет вместо "10" выставить "10.000 GOLOS". При этом всё равно остаётся необходимость учитывать стоимость создания аккаунта, чтоб вновь созданные аккаунты не могли злоупотреблять СГ, полученной при регистрации.

09.06.2018 08:09
0

Ну так делегат сам устанавливает фии для регистрации и сам исходя из этого устанавливает минимальное делегированное СГ. Его параметры могут сильно отличатся от других делегатов. Но в их установлении он не зависим, а с мультипликатором его второй параметр уже зависит от решения всех стальных делегатов.

09.06.2018 08:41
0

Да, всё верно.

Мультипликатор задаёт принцип: «хочу, чтоб можно было делегировать не менее 10*fee». И не важно, сколько выставится fee, защита от слияния ботнета имеет 10-кратный запас.

Абсолютное значение — это как «хочу, чтоб можно было делегировать не менее 10.000 GOLOS». При этом текушую fee можем не учитывать, но если медианная комиссия окажется выше, чем значение параметра, то он частично потеряет смысл.

В обоих случаях надо всё-таки следить за медианной комиссией. В первом есть опасность, что fee уедет вниз, и 10x запаса станет мало. Во втором — fee может уехать вверх, и новореги смогут без проблем делегировать всю СГ.

Как удобнее — решать делегатам

09.06.2018 09:08
0

Почему create_account_delegation_time — голосуемый параметр. В стиме сперва он был = 30, потом поменяли на 15. То есть сразу не сумели всё предусмотреть и выставили не оптимальное значение. Либо изменилась ситуация, и старое значение параметра стало неактуальным.
Если будет принято решение поменять параметр снова, это возможно будет сделать только через ХФ.
Голосуемость параметра позволяет реагировать на ситуации, происходящие в блокчейне, без ХФ.

09.06.2018 08:09
0

Всё что вы написали в этом коммете, уже написано в моём посте. Я не вижу аргументов в пользу того, что этот параметр нужно как-то менять. Но к нему меньше всего вопросов.

09.06.2018 08:42
0

этот параметр нужно как-то менять

В теории может пригодиться.
Например если менять величину окна выплат, имеет смысл иметь голосуемый create_account_delegation_time

Чтобы после перехода на новое окно сменить новый delegation_time пропорционально новому окну.

09.06.2018 12:29
0

но окно выплат у нас не голосуется, а если делать ХФ, то и этот параметр можно поменять.

09.06.2018 12:30
0

Почему create_account_with_golos_modifier — мультипликатор, и почему нужен create_account_delegation_ratio.

Тут немного сложнее, расскажу по шагам.

1

В ХФ появляется операция создание аккаунта с делегированием. Эта операция должна решать свою задачу — дать возможность регистраторам создавать новые аккаунты. При этом должно:

  1. уменьшиться оплата за регистрацию
  2. при этом настоящие активные пользователи не страдают
  3. ботнеты страдают

2

Чтобы уменьшить стоимость создания аккаунта, появляется возможность часть комиссии оплатить, а часть — делегировать и потом вернуть обратно регистратору.
Но такая схема без ограничений и мультипликаторов даёт возможность просто создавать бесплатные аккаунты, делать что-то с их помощью, и затем возвращать делегированную СГ. Ну или застолбить все имена.

То есть раньше за создание аккаунта надо было заплатить, а с новой операцией можно просто делегировать СГ. Поэтому вводится первое ограничение: account_creation_fee оплачивается в любом случае. То есть этот параметр немного меняет свой изначальный смысл, и теперь это минимум, который надо оплатить при создании аккаунта с делегированием.

3

Чтобы создание аккаунта с делегированием имело смысл, полная стоимость создания должна стать больше. Поэтому account_creation_fee умножается на create_account_with_golos_modifier. Этот же множитель добавляется и в операцию создания аккаунта без делегирования.

4

То есть на этом этапе имеем следующую ситуацию:

  1. Есть операция создания аккаунта, стоит например 30×fee
  2. Есть операция создания аккаунта с делегированием, мы можем оплатить не менее 1×fee, а ещё 29×fee делегировать.

Вопрос: какой смысл в первой операции? Смысла нет — зачем платить, если можно делегировать и потом вернуть. Причём, заплатить можно мало, как и раньше, ботнеты не сильно страдают.

Поэтому вводится create_account_delegation_ratio. Этот параметр задаёт, во сколько раз «вес» оплаченной части выше веса делегированной. То есть во сколько оплаченная часть ценнее делегированной.

Иными словами, если регистратор оплачивает создание аккаунта в GOLOS, то это стоит допустим fee×30.
А если хочешь заплатить меньше, а часть делегировать (и потом вернуть), то дай плюшку создаваемому аккаунту в виде повышенной СГ: fee×1 + 29×delegation×5 (или fee×2 + 28×delegation×5 итд)

Возможности ботнетов резко падают — ботнет получится намного меньше. Возможности регистраторов с большой СГ увеличиваются, можно зарегистрировать больше пользователей дешевле, при этом возможности новых пользователей не режутся, они получают достаточно СГ для старта.

Способа, как этого достичь с одним параметром я не знаю.

На счёт того, что create_account_with_golos_modifier — мультипликатор — это проще, чем абсолютное значение. Потому что для выставления адекватного абсолютного значения всё равно придётся смотреть на account_creation_fee

09.06.2018 08:10
0

@zxcat
А вот тут я не понял:

  1. Есть операция создания аккаунта, стоит например 30×fee
  2. Есть операция создания аккаунта с делегированием, мы можем оплатить не менее 1×fee, а ещё 29×fee делегировать.

У нас уже есть account_creation_fee, это минимальная стоимость создания аккаунта как с делегированием, так и без делегирования. О каком 30×fee и 1×fee идет речь? Вводится какой-то ещё параметр, который удорожает обычную операцию регистрации без делегирования?

09.06.2018 09:05
0

create_account_with_golos_modifier влияет и на обычную регистрацию (создание аккаунта)

09.06.2018 09:09
0

10.06.2018 11:48
0