Как продолжить подписанную загрузку Arweave с исходными байтами

Загрузчик arweave-js сохраняет прогресс отдельно от полезной нагрузки. Для возобновления нужны сериализованное состояние и точные исходные байты.

Сохраните неизменные входные данные

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

checkpoint = serialized uploader for signed transaction T
resume input = original bytes D
verify recalculated data_root against T before continuing

Возобновите передачу и сверьте результат

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

Источники