Run when chain starts running.
on_chain_start runs multiple times during a chain execution. To make
sure that it's only called once, we keep a bool state _checked. If
not self._checked, we call limit with request_ratelimit and raise
UpstashRatelimitError if the identifier is rate limited.