XPowerАкадемия / Золотой ваттТокенизация энергии ↗
ГЛАВА 16 / 18

Оракул, журнал и расчётное событие

Как связать показание, право и платёж без потери происхождения.

Оракул в этой архитектуре проверяет событие и переводит его в расчётное утверждение. Счётчик сообщил объём; система установила источник, интервал, качество, методику и применимое право. После этого появляется сумма, которую можно предъявить к оплате. Каждая ступень должна оставлять проверяемый след.

Четыре согласованных журнала

Как связать показание, право и платёж без потери происхождения.
Как связать показание, право и платёж без потери происхождения. Нажмите на схему, чтобы открыть крупно.
ЖурналМинимальная запись
ФизикаТочка, счётчик, время, объём, единица, качество
РезультатБаза, фактическое значение, методика, неопределённость
ПраваВладелец, должник, тип, остаток, ограничения, версия
ДеньгиНачислено, оплачено, удержано, исправлено, валюта

Идентификатор события связывает эти записи. Время хранится с часовым поясом, а интервал определяется однозначно. В системах с переходом часов особенно важно различать два внешне одинаковых местных времени. Исправление источника создаёт новую версию и корректировку, сохраняя предыдущее состояние.

Проверки до начисления

Начисление разрешено = source ∧ freshness ∧ uniqueness ∧ quality ∧ method ∧ right

Логическая связка иллюстрирует условия нашего учебного оракула. Промышленная реализация должна проверять сами доказательства, а не доверять переданным флагам.

Что делать с плохими данными

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

Защита от повторной выплаты

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

Интерактивный стенд демонстрирует переключение между готовностью к расчёту и удержанием. Он не подключён к прибору, кошельку или платёжной системе. Результат показывает, какое основание отсутствует.

Исправление создаёт разницу

Первое принятое начисление по событию составило 10 000 руб. Исправленный источник даёт 9 200. Корректировка равна минус 800 руб.; её связывают с исходным событием. Повторная доставка исправления не меняет итог. Если 10 000 уже оплачены, минус 800 становится возвратом или зачётом по договору.

ΔAccrual = новый принятый итог − ранее принятый итог

Ключ включает сделку, компонент, интервал и версию события. Обработка смены версии и запись расчётной дельты выполняются согласованно.

Пример цепочки состояний: received, validated, accrued, partially_paid, corrected, settled. Спор о качестве переводит соответствующую строку в disputed. Суммы начисленного и оплаченного сохраняются раздельно. Признак unique = true в стенде только иллюстрирует результат реальной проверки журнала.

ИНТЕРАКТИВНЫЙ СТЕНД · УЧЕБНЫЕ ДАННЫЕ

Проверьте событие для начисления

Снимите любое основание и посмотрите причину удержания. Это логический стенд; флаги не являются криптографической проверкой.

СостояниеГотово к расчёту
Непройденных условий0
Исходная схема: Проверьте событие для начисления

Начальные значения показаны выше. Измените параметры для пересчёта.

Оракул готовит расчёт в пределах полномочий. Автоматическая выплата и физическое управление требуют отдельных разрешений.

Самопроверка

1. Чем отличается ноль от пропуска?

Ноль является значением измерения. Пропуск означает отсутствие подтверждённого значения; его нельзя интерпретировать как экономию.

2. Что делать после исправления уже оплаченного показания?

Сохранить предыдущую версию, рассчитать разницу и провести корректировку по договорной процедуре.

3. Начислено 10 000, исправленный итог 9 200, исправление пришло дважды. Каковы итог и суммарная корректировка?

Итог 9 200, корректировка −800. Повтор не создаёт второй корректирующий платёж.

Расчётная задача. Одно событие даёт право на 5 000 руб. Оно доставлено трижды. Сколько начислений должно быть?

Одно начисление 5 000 руб. Повторные доставки должны ссылаться на уже обработанный идентификатор.

Задание агенту

Реализовать проверку происхождения, версии и уникальности. Отдельно протестировать дубликат, пропуск, устаревший индекс, пересечение интервалов и частичный спор.

Источники: Measurement and Verification for Federal ESPCs · Renewable Energy Certificates (RECs) · Цифровые финансовые активы и их операторы