The contracts helper reads MEMBERSHIP_NFT_ADDRESS and CHAIN_ID directly from environment variables. Add validation so invalid or missing contract configuration fails clearly when on-chain features are used.
Suggested tasks
- Validate that
MEMBERSHIP_NFT_ADDRESS is a valid EVM address when required
- Validate that
CHAIN_ID is a valid number
- Add a helper such as
getContractAddresses()
- Avoid silently returning an empty contract address in production
- Add tests for valid and invalid environment values
- Document the expected contract environment variables
Acceptance criteria
- Invalid contract configuration returns a clear error
- Production usage cannot silently proceed with an empty contract address
- Contract configuration validation is tested
The contracts helper reads
MEMBERSHIP_NFT_ADDRESSandCHAIN_IDdirectly from environment variables. Add validation so invalid or missing contract configuration fails clearly when on-chain features are used.Suggested tasks
MEMBERSHIP_NFT_ADDRESSis a valid EVM address when requiredCHAIN_IDis a valid numbergetContractAddresses()Acceptance criteria