04 / CONSTRUIR5 MIN DE LECTURA

Ejecutar el proyecto en local

Los directorios tienen sus propias dependencias. Utiliza los lockfiles del repositorio y mantén alineadas las versiones de contratos, ABI, manifiestos y clientes.

Los siguientes comandos construyen o verifican los componentes localmente. No constituyen un procedimiento de puesta en producción.

Requisitos previos

El proyecto utiliza Node.js reciente, pnpm para el dapp y los servicios, Foundry para Solidity y npm para este GitBook. Los servicios requieren Node 22 o superior; el GitBook se preparó con Node 24.

Los contratos fijan Solidity 0.8.26, la EVM Cancun, compilación via IR, optimizador con 10 runs y sin metadatos CBOR. Estos parámetros forman parte de la identidad de los bytecodes que deben verificarse.

Tras clonar, las dependencias Solidity del repositorio deben estar presentes:

git submodule update --init --recursive

Compilar y probar los contratos

Desde contracts/:

forge build --sizes
forge test

La configuración contiene varios niveles de fuzzing e invariantes:

FOUNDRY_PROFILE=ci forge test
FOUNDRY_PROFILE=gate forge test

El perfil gate es intencionadamente largo. Un resultado de pruebas debe vincularse a la revisión exacta, los parámetros y las fuentes compiladas. La nueva implementación de múltiples muros sigue en validación; un log antiguo no es un resultado de estos comandos sobre esta versión.

Iniciar el dapp

Desde dapp/:

pnpm install --frozen-lockfile
pnpm typecheck
pnpm test
pnpm build
pnpm dev

Vite muestra la URL de desarrollo. La configuración distingue un modo de simulación y los datos del despliegue configurado. Utiliza los ejemplos e instrucciones del repositorio para configurar un RPC localmente, sin copiar credenciales de acceso en las fuentes ni en el bundle público.

Que el frontend compile no prueba que su manifiesto corresponda al contrato presente en la red.

Mantener las ABI

Desde contracts/, la exportación sigue a la compilación:

bash scripts/export-abi.sh
python3 scripts/check-abi.py

El dapp dispone de pnpm gen-abi y los servicios de pnpm gen:abi. Inspecciona los cambios generados para las interfaces, eventos y tipos afectados. La nueva biblioteca de muros y las vistas por ID deben incluirse en la sincronización de la versión.

El comando pnpm sync-deployment del dapp vuelve a leer un manifiesto de despliegue: solo debe ejecutarse con los metadatos de la versión realmente verificada.

Verificar los servicios

Desde services/:

pnpm install --frozen-lockfile
pnpm gen:abi
pnpm typecheck
pnpm test

El modo dry-run del keeper se configura con los parámetros locales documentados en su README. La operación y la recuperación de transacciones tienen su página dedicada.

Iniciar este GitBook

Desde gitbook/:

npm ci
npm run dev

El sitio se sirve en http://localhost:4000 con reconstrucción de páginas. Para producir el directorio estático _book/ y verificar los enlaces:

npm run build
npm run preview

La previsualización local utiliza http://localhost:4001. Las fuentes están incluidas; la búsqueda se ejecuta en el navegador sobre el índice del libro.

Para verificar los recorridos de navegador de la documentación:

npm run test:install
npm run test:browser

El README de gitbook/ describe la elección de HonKit, la estructura, los controles y el mantenimiento editorial.

Fuentes: contracts/foundry.toml, scripts del repositorio, dapp/package.json, services/package.json y gitbook/package.json. El build de esta documentación no requiere claves ni URL RPC autenticadas.

CUBIT / 10 de septiembre de 2026 Fuentes y método