На главную

Пофиксить MevBlocker Bundle Merging Tracker

Цель:<br>В проекте возникли многочисленные проблемы, связанные с симуляцией транзакций, проверкой включения и обработкой данных блокчейна. Данный перечень задач направлен на устранение этих проблем, оптимизацию производительности и повышение надежности системы. Описание включает необходимые исправления, оптимизации и улучшения.<br><br>Задачи:<br>1. Отслеживание и исключение пользовательских транзакций:<br><br>Добавить параметр user_transaction_hash для идентификации пользовательской транзакции.<br>Разрешение пользовательской транзакции в симуляциях:<br><br>Включать бандлы с транзакцией пользователя в симуляцию, но явно отслеживать её присутствие.<br>Гарантировать, что пользовательская транзакция обрабатывается одинаково во всех симуляциях для предотвращения искажений.<br>Избежание повторной обработки:<br><br>Вести учёт обработанных бандлов и транзакций, чтобы исключить повторную симуляцию одной и той же транзакции в одном контексте.<br>Симуляция вокруг пользовательской транзакции:<br><br>Если пользовательская транзакция включена в несколько бандлов:<br>Выполнять симуляцию этих бандлов для определения оптимального возврата или комбинации бандлов, принимая пользовательскую транзакцию как фиксированную часть.<br>Сравнивать результаты этих симуляций для выявления нарушений или неэффективности.<br>Отметка транзакций как обработанных:<br><br>Поддерживать набор обработанных транзакций для исключения дублирования симуляций.<br><br><br>2. Оптимизация simulate_optimal_bundle_combinations<br>Проблема:<br>Текущая реализация перебирает все возможные комбинации бандлов, что приводит к сложности O(2^n). Это слишком ресурсоёмко.<br><br>Задачи:<br>Замена полного перебора жадным подходом:<br><br>Симулировать каждый бандл по отдельности, сортировать их по значению возврата и добавлять бандлы инкрементально.<br>Учёт обработанных транзакций:<br><br>Вести набор обработанных транзакций для исключения дублирования.<br>Избежание симуляции всех комбинаций (O(2^n)):<br><br>Симулировать каждый бандл отдельно и добавлять бандлы инкрементально.<br>Бандлы должны обрабатываться изолированно или совместно с уже выбранными.<br>Реализация жадного алгоритма (O(2n)):<br><br>Бандлы сортируются по значению возврата (O(n log n)).<br>Итерация по отсортированным бандлам выполняется линейно (O(n)).<br>Транзакции отслеживаются для предотвращения дублирования.<br>Пошаговое добавление бандлов:<br><br>Бандлы добавляются по одному, если их транзакции совместимы с уже обработанным набором.<br><br><br>Обязательно найти все функции, которые необходимо скорректировать в соответствии с задачами (включая те, которые не были явно упомянуты, но находятся в предоставленном коде и требуют изменений).<br><span>Так же, требуется пересмотреть calculate_refund и детект нарушений и в случае необходимости - пофиксить.<br></span>Большая часть перечисленного выполнена больше чем наполовину, так что понимающему человеку будет проще.<br><br>Репа на гитхаб: <a href="https://github.com/rylaix/MEVGuard-Open-Source-MEV-Blocker-Verification-Tool/tree/tests">rylaix/MEVGuard-Open-Source-MEV-Blocker-Verification-Tool at tests</a> (важно, ветка tests)

Изменить или сделать 5 фотографий в ИИ

Задача найти ИИ , который из двух разных людей на фото делает, делает похожих друг на друга... В общем мне надо...

Нужно создать сайт по продаже игровых мониторов

Здравствуйте, нужен сайт первоочередно для тестирования спроса, бизнес только планируется! Желательно на wordpress. --- Задача: Создать сайт на котором будут продаваться...

Верстка адаптивного лендинга по макету из Figma

Добрый день! Требуется сверстать лендинг из подготовленного в Figma макета для десктопной и мобильной версии. Чистый код без использования CMS. Сайт...