Open
Description
We request gas prices from the API for every single request, making no attempt to cache which chains are supported or not. This makes gas estimates for unsupported chains slower, and unnecessarily increases network traffic.
We should instead cache the chains that we know to be unsupported by the API. We don't add support for new chains so often that we need to check every minute. Checking every day or week should suffice.
Acceptance criteria:
- If we find that a chain is not supported by our gas API, we cache that information locally so that no reattempts are made
- The cache expires periodically, so that clients can discover automatically when support has been added for new chains
- Minimum expiry of 1 day, though it might make sense to make it longer, e.g. 1 week.
- We use a console warning when we discover that a chain is not supported, rather than throwing an error.
- Today we throw an error, but this is incorrect semantically because this scenario is expected and not indicative of any problem, and it's useless because the error is silently caught and ignored.