11d942f3a2
When Gemini returns a quota exhausted error, OpenCode auto-retries and fires session.status with type='retry'. The extractAutoRetrySignal function requires BOTH 'retrying in' text AND a quota pattern to match, but some providers (like Gemini) include only the error text in the retry message without the 'retrying in' phrase. Since status.type='retry' already confirms this is a retry event, the fix adds a fallback check: if extractAutoRetrySignal fails, check the message directly against RETRYABLE_ERROR_PATTERNS. This ensures quota errors like 'exhausted your capacity' trigger the fallback chain even when the retry message format differs from expected. Fixes #2454