feat: 智能错误检测与 retryable 传播
ChatGPT 适配器:
- 解析 conversation SSE 响应,提取文本内容判断图片生成是否开始
- 早期检测速率限制(RateLimitException)和内容拒绝(policy violation)
- 动态超时:未检测到图片生成迹象时使用 30s 短超时,避免无谓等待
- 超时后尝试正则提取文本作为错误信息
LMArena 适配器:
- 新增 extractError 函数,解析 SSE 中的 a3(模型提供方错误)和 ae(平台错误)
- 支持嵌套 JSON 错误提取(如 OpenAI moderation_blocked)
- 无图片时返回 error 而非 text
Worker:
- enrichedMeta: 自动在 meta 中添加 adapter 和 model 信息
- 故障转移中传播 retryable 标志,不可重试错误立即停止
Failover:
- 优先使用 result.retryable 而非仅依赖 normalizeError 推断
- 不可重试错误直接返回,不再尝试其他候选 worker