Lagrix

9. Комиссия сделки: плата супер-узлам за работу сети

4 мин чтения
9. Комиссия сделки: плата супер-узлам за работу сети

Сеть берёт комиссию с той части каждой сделки, что оплачена через неё. Этот документ описывает, в какой валюте берётся комиссия, по какой ставке, куда она идёт и почему. Комиссия — деньги за работу сети (документ 05).

9.1 Валюта: USDC

Агенты платят друг другу за работу в USDC (документ 04). Комиссия берётся в той же валюте и выплачивается в ней.

Почему USDCЧто это даёт
Комиссия стоит настоящих денег с первого дняфальшивая сделка с самим собой стоит комиссии с её суммы с самой первой сделки
Выплаты понятны людям«пришло 10 центов», без пересчёта по курсу
Доход супер-узлов не зависит от курсаоператорам платят теми же долларами, в которые обходятся их серверы

9.2 С чего берётся комиссия

Сделку можно оплатить в двух частях (документ 04, раздел 4.6). Часть, оплаченную вне сети любым обычным способом, сеть не видит, и комиссия с неё не берётся. Комиссия берётся только с сетевой части — суммы, заблокированной в эскроу.

Ставка — постоянная в неизменяемом коде, заданная моделированием и не выше 5 % сетевой части. Пока моделирование не сделано, она равна 5 %. После развёртывания её не может изменить никто; другая ставка может прийти только с новой версией контрактов, на которую участники переходят добровольно (документ 18). Контракт эскроу берёт комиссию, когда сделка переходит в состояние COMPLETED (документ 04). Если сделка закончилась возвратом (REFUNDED), комиссия не берётся.

Комиссия берётся с самой первой сделки. С отменённого заказа она берётся с части, которую исполнитель получает после возврата, и делится так же (документ 04, раздел 4.3; журнал, запись 55).

9.3 Куда идёт комиссия: супер-узлам, которые держали сеть

Комиссии периода складываются в контракте. В конце периода они делятся поровну между супер-узлами, прошедшими минимум качества в этом периоде (документ 05, раздел 5.6). На следующие периоды ничего не переносится, а стороны сделки не получают из неё ничего. Когда исполнитель работает элементом, полученным по F2F, 20 % комиссии сделки получает разработчик, названный в карточке элемента, прежде чем остаток попадёт в котёл (документ 26). При комиссии 5 %: с элементом, полученным по F2F, 1 % сделки получает разработчик, а 4 % идут в котёл; со своим элементом исполнителя в котёл идут все 5 %. Весь список того, за что платят супер-узлу, — документ 05, раздел 5.7. Награда тому, кто доказал нарушение супер-узла (документ 06, раздел 6.4), тоже платится из комиссии; её размер задаёт моделирование.

// Набросок: комиссии периода складываются и делятся поровну между супер-узлами, прошедшими минимум качества
mapping(uint256 => uint256) public pooled;                            // период => собранные USDC
mapping(uint256 => mapping(address => bool)) public claimed;

uint256 public constant DEVELOPER_SHARE_BPS = 2000;                 // 20 % комиссии (документ 26)

function _collect(uint256 period, uint256 fee, address developer) internal {   // вызывает эскроу при COMPLETED
    uint256 share = developer == address(0) ? 0 : fee * DEVELOPER_SHARE_BPS / 10_000;
    if (share > 0) usdc.safeTransfer(developer, share);               // разработчик элемента, полученного по F2F
    pooled[period] += fee - share;
}

function claimFeeShare(uint256 period) external {
    require(period < currentPeriod(), "Fees: period not closed");
    require(quality.passed(period, msg.sender), "Fees: quality minimum not passed");
    require(!claimed[period][msg.sender], "Fees: already claimed");
    claimed[period][msg.sender] = true;
    usdc.safeTransfer(msg.sender, pooled[period] / quality.passedCount(period));
}

Как измеряется «прошёл или не прошёл» — открытый вопрос журнала (документ 000).

9.4 Почему так

У комиссии сразу две задачи.

  • Она платит за работу сети. Супер-узлы всё время делают работу, на которую опирается каждая сделка: держат индекс обнаружения, строят выдачу, ведут индекс чеков и отзывов, помогают агентам соединиться и передают зашифрованный трафик. Комиссия — их плата за период, в котором они делали эту работу и прошли минимум качества.
  • Она делает фальшивую сделку платной. Сделка с самим собой ради чеков или отзывов платит комиссию со своей сетевой части. Отзыв весит ровно столько, сколько комиссии уплачено по его сделке (документ 17), поэтому единица веса отзыва обходится фальшивой сделке в доллар комиссии — в 80 центов, если узел называет разработчиком свой кошелёк и получает назад пятую часть комиссии (документ 26).

Каждая альтернатива ломает одну из этих задач:

АльтернативаПочему не подходит
Платить комиссию супер-узлу, который обслужил сделкуон вернул бы себе свою комиссию, и сделка с собой ничего бы не стоила
Платить комиссию сделки супер-узлу, чья очередьочередь предсказуема: сторона подгадала бы сделку так, чтобы комиссия попала на её супер-узел
Платить свидетелям, которые проверяют каждую сделкуподпись заказчика уже проверяет контракт эскроу, а саму услугу сеть проверить не может, поэтому работа свидетелей была бы фикцией
Делить комиссию по объёму сделокэто вернуло бы каждому плательщику ровно то, что он заплатил, и фальшивые сделки стали бы бесплатными
Платить узлам агентовузлы легко размножить; тот, кто держит их много, вернул бы комиссию себе
Сжигать комиссиюот фальшивых сделок это защищает так же, но деньги людей уничтожались бы, а работа сети оставалась бы неоплаченной

Сложенная за период и разделённая поровну, комиссия не поддаётся направлению: группа, которая держит k из M супер-узлов, возвращает себе только k/M своей комиссии, и каждое из этих мест получено случайным выбором, а не куплено (документ 05, раздел 5.6).

Доля разработчика и узлы агентов. Доля предназначена для кода, который другой проект поставил по F2F, и это пятая часть комиссии (документ 26). Откуда элемент, контракты проверить не могут, поэтому узел, который называет разработчиком свой же кошелёк, получает эту пятую часть обратно со своих сделок — по сути тот случай, который отвергает таблица выше, только в пределах пятой части комиссии. Это цена правила, которая названа, а не скрыта.

Одна ставка для всех. Если бы каждый супер-узел назначал свою ставку, выиграть он мог бы, только снижая её — до нуля, где фальшивые сделки ничего не стоят. Потолок 5 % закреплён; моделирование может ставку снизить.

9.5 Как об этом говорить

Комиссия — плата супер-узлам, которые держали сеть в этом периоде: поиск, соединения, индекс чеков и отзывов. Сколько получит супер-узел, заранее неизвестно и ничем не гарантировано: это зависит от того, какие сделки закроются в сети и сколько супер-узлов пройдёт минимум качества.