Diseño del sistema · AREX-CONF
Configuration
Keep secrets in a local .env (see .env.example) or a secret manager. Never commit keys.
- ID del documento
- AREX-CONF
- Versión
- 2.0
- Fecha
- 2026-09-21
- Fuente
- docs/CONFIGURATION.md
| Field | Value |
|---|---|
| Document ID | AREX-CONF |
| Version | 2.0 |
| Date | 2026-09-21 |
Hardhat
hardhat.config.js defines:
- Solidity
0.8.22,viaIR: true, EVM targetparis; - optimizer
runs = 200for all contracts, with a per-file overrideruns = 1forcontracts/reference/core/ARexToken.solso that the reference token stays under the EIP-170 size limit (24,136 bytes deployed); - networks
hardhat/localhost(chain id 31337),sepolia,polygon,arbitrum; - Ignition (
requiredConfirmations: 1), gas reporter (REPORT_GAS=true), Etherscan-style verification keys.
Environment variables
| Variable | Purpose |
|---|---|
PRIVATE_KEY | deployment account for remote networks |
SEPOLIA_RPC_URL, POLYGON_RPC_URL, ARBITRUM_RPC_URL | RPC endpoints |
ETHERSCAN_API_KEY, POLYGONSCAN_API_KEY, ARBISCAN_API_KEY | verification |
AREX_BASE_URI | ERC-1155 base URI for scripts/deploy-standard.js and deploy-full-standard.js |
AREX_PAYOUT_TOKEN | ERC-20 used by ParametricInsurance in deploy-full-standard.js (skipped if unset) |
AREX_INVARIANT_STEPS, AREX_INVARIANT_SEED | invariant test length and seed |
REPORT_GAS | Hardhat gas reporter |
Keep secrets in a local .env (see .env.example) or a secret manager. Never commit keys.
Package manager
npm with the committed package-lock.json (npm ci). The repository does not declare a packageManager field for pnpm or yarn: the lockfile and CI are npm-based, and a second lockfile would create version drift.
Network compatibility
A network entry means a deployment path is configured, not that the system was validated there. Before deploying: confirm EVM version support (paris is intentionally conservative), gas limits, finality assumptions, explorer verification and upgrade governance (see SYSTEM-DESIGN.md §8).