Executar o projeto localmente
Os diretórios têm suas próprias dependências. Use os lockfiles do repositório e mantenha alinhadas as versões dos contratos, ABI, manifestos e clientes.
Os comandos a seguir constroem ou verificam os componentes localmente. Eles não constituem um procedimento de implantação em produção.
Pré-requisitos
O projeto usa Node.js recente, pnpm para o dapp e os serviços, Foundry para Solidity e npm para este GitBook. Os serviços exigem Node 22 ou superior; o GitBook foi preparado com Node 24.
Os contratos fixam Solidity 0.8.26, a EVM Cancun, compilação via IR, otimizador com 10 runs, sem metadados CBOR. Esses parâmetros fazem parte da identidade dos bytecodes a verificar.
Após clonar, as dependências Solidity do repositório devem estar presentes:
git submodule update --init --recursive
Compilar e testar os contratos
Em contracts/:
forge build --sizes
forge test
A configuração contém vários níveis de fuzzing e invariantes:
FOUNDRY_PROFILE=ci forge test
FOUNDRY_PROFILE=gate forge test
O perfil gate é intencionalmente demorado. Um resultado de testes deve ser vinculado à revisão exata, aos parâmetros e às fontes compiladas. A nova implementação de múltiplos muros ainda está em validação; um log antigo não é resultado desses comandos nessa versão.
Iniciar o dapp
Em dapp/:
pnpm install --frozen-lockfile
pnpm typecheck
pnpm test
pnpm build
pnpm dev
Vite exibe a URL de desenvolvimento. A configuração distingue um modo de simulação dos dados da implantação configurada. Use os exemplos e instruções do repositório para configurar um RPC localmente, sem copiar credenciais de acesso para as fontes ou o bundle público.
O frontend compilar não prova que seu manifesto corresponde ao contrato presente na rede.
Manter as ABI
Em contracts/, a exportação vem após a compilação:
bash scripts/export-abi.sh
python3 scripts/check-abi.py
O dapp possui pnpm gen-abi e os serviços, pnpm gen:abi. Inspecione as alterações geradas para as interfaces, eventos e tipos envolvidos. A nova biblioteca de muros e as visualizações por ID devem ser incluídas na sincronização do lançamento.
O comando pnpm sync-deployment do dapp relê um manifesto de implantação: ele só deve ser executado com os metadados da versão realmente verificada.
Verificar os serviços
Em services/:
pnpm install --frozen-lockfile
pnpm gen:abi
pnpm typecheck
pnpm test
O modo dry-run do keeper é configurado pelos parâmetros locais documentados em seu README. A operação e a recuperação de transações têm uma página dedicada.
Iniciar este GitBook
Em gitbook/:
npm ci
npm run dev
O site é servido em http://localhost:4000 com reconstrução das páginas. Para gerar o diretório estático _book/ e verificar os links:
npm run build
npm run preview
A prévia local usa http://localhost:4001. As fontes estão incluídas; a busca é executada no navegador sobre o índice do livro.
Para verificar os percursos de navegador da documentação:
npm run test:install
npm run test:browser
O README de gitbook/ descreve a escolha do HonKit, a estrutura de diretórios, as verificações e a manutenção editorial.
Fontes: contracts/foundry.toml, scripts do repositório, dapp/package.json, services/package.json e gitbook/package.json. Nenhuma chave ou URL RPC autenticada é necessária para o build desta documentação.