March 25, 2023

Taiko Alpha-2 Askja

Вы можете воспользоваться официальной инструкцией проекта

Подготовка к тестнету

  • explorer Taiko
  • добавляем сети Sepolia (11155111) и Taiko (Alpha-2 Testnet 167004) в ММ
  • импортируем токены в кошелек

0x6048e5ca54c021D39Cd33b63A44980132bcFA66d  (BLL, 18)

0xCea5BFE9542eDf828Ebc2ed054CA688f0224796f (HORSE, 18)

  • запрашиваем тестовые токены ETH в сети Sepolia (тут или тут)
  • запрашиваем тестовые токены BLL и HORSE через bridge

Bridge

Используем мост токенов BLL, HORSE и ETH сначала из сети Sepolia в Taiko А2, затем наоборот.

После совершения транзакции в разделе transactions статус пройдет три стадии: penging, claim и сlaimed.

Retry - Повторить: ретранслятору не удалось обработать это сообщение, и вы должны повторить обработку самостоятельно.

Swap/Provide liquidity

Обмениваем токены друг на друга, создаем ликвидность пар.

P.S.Мне удалось создать только пару BLL/HORSE.

Обмен

Переводим тестовые токены BLL, HORSE и ETH в сетях между различными кошельками ММ

Node

Обращаю внимание: рекомендованный сервер на 50GB не подойдет, так как блок добывает только первый доказывающий (самый быстрый прувер). Если у вас есть только минимальное оборудование, маловероятно, что вы сможете доказать какие-либо блоки, если есть много других высокопроизводительных пруверов.

Решение в установке ноды на мощный сервер принимаете самостоятельно, напоминаю, что данный тестнет неоплачиваемый.

  • создаем endpoint в Alchemy : создаем проект CREATE APP, придумываем имя NAME, Chain - Ethereum, Network - Sepolia. После создания в разделе VIEW KEY сохраняем HTTPS и WEBSOCKETS (они необходимы при конфигурации узла).
  • также вам понадобиться Private key от вашего кошелька Metamask (раздел реквизиты счета)
  • на арендованный сервер устанавливаем докер
. <(wget -qO- https://raw.githubusercontent.com/SecorD0/utils/main/installers/docker.sh)
apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
  • клонируем репозиторий
git clone https://github.com/taikoxyz/simple-taiko-node.git
cd simple-taiko-node
  • настраиваем узел
cp .env.sample .env
nano .env
  • вносим данные в файл

L1_ENDPOINT_HTTP=ваша ссылка из Alchemy (https://...)

L1_ENDPOINT_WS=ваша ссылка из Alchemy (wss://...)

ENABLE_PROPOSER=заменяем false на true

L1_PROVER_PRIVATE_KEY=ваш PRIVATE_KEY кошелька ММ

Для сохранения данных: CTRL+X, затем Y и Enter.

  • запускаем докер
docker-compose up -d
  • просмотр логов
docker compose logs -f
  • просмотр панели состояния узла (localhost заменяем на IP вашего сервера)

http://localhost:3000/d/L2ExecutionEngine/l2-execution-engine-overview?orgId=1&refresh=10s

  • не забываем следить за балансом тестового ETH вашего кошелька в сети Sepolia
  • explorer Sepolia

Разворачиваем и верифицируем Smart Contract

Используем Remix

  • в папке contracts создаем новый файл "create new file" c окончанием .sol
  • пример текста смарт контракта (name заменяем)
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
contract NAME {
address public owner;
mapping (address => uint) public payments;
constructor() {
owner = msg.sender;
}
function Donate() public payable {
payments[msg.sender] = msg.value;
}
function MoneyBack() public {
address payable _to = payable(owner);
address _thisContract = address(this);
_to.transfer(_thisContract.balance);}}
  • в разделе SOLIDITY COMPILER выбираем 0.8.19+commit.7dd6d40
  • в разделе DEPLOY & RUN TRANSACTIONS в колонке Environment выбираем Injected provider (таким образом в разделе account подтянется ваш кошелек ММ)
  • контракт создаем DEPLOY, транзакция может идти очень долго
  • затем с другого кошелька донатим DONATE (для этого переключаем кошелек ММ, в разделе value указываем сумму доната (например 100 finney это 0,1 эфира)
  • затем переключаемся на кошелек, с которого деплоили проект и возвращаем все средства кнопкой MONEYBACK

Верификация смарт контракта

В кошельке ММ в разделе "Активность" находим транзакцию "Развертывание контракт", нажимаем на нее

Далее выбираем "Смотреть в проводнике блоков"

Нажимаем на адрес контракта

Заходим в раздел Code и нажимаем Verify & Publish, затем Next

Возле Contract Name вводим название нашего контракта (на фото пример Lock)

Возле Compiler выбираем компилятор версии 0.8.19+commit.7dd6d40

Возле Optimization выбираем No

В разделе Enter the Solidity Contract Code вставляем код контракта и нажимаем Verify & publish

В случае если всё прошло успешно возле Code появится галочка

Готово! Не забываем оставить feedback по тестнету https://docs.google.com/forms/d/e/1FAIpQLSdD9J8_dl2spOg7kHPAyzRSrfityz80WKtZ0APCNjq-dO8PTg/viewform