Title: Error classifier misclassifies HTTP 404 "Not Found" as "CLI_NOT_FOUND"

Ouverte Adaptée aux débutants
#651 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
75/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Calme
Stack technique
typescript
Domaine
api

Piste de recherche

Commencez par localiser classifyError et lire ses motifs d’erreur ainsi que les tests associés. Reproduisez l’échec de connexion du fournisseur OpenAI-Compatible avec une URL de base à laquelle il manque /v1, puis vérifiez qu’un HTTP 404 est classé comme ENDPOINT_NOT_FOUND sans modifier les classifications authentiques de CLI-not-found.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

bug
CodePilot 版本 / Version

0.57.0

操作系统与架构 / OS & arch

Macos 26.5

Runtime

Codex

Provider / Model

自定义第三方本地模型

是否可复现 / Reproducible?

每次都能复现 / always

复现步骤 / Steps to reproduce

问题: classifyError 中 CLI_NOT_FOUND 的 patterns 包含 "not found",且排在数组第一位。当 OpenAI-Compatible provider 的 base_url 配错(少了 /v1),服务端返回 HTTP 404 "Not Found" 时,被误分类成 "Claude Code CLI not found",而不是 ENDPOINT_NOT_FOUND。

复现: 添加 OpenAI-Compatible provider,base_url 填 http://localhost:18818(不带 /v1),点测试连接 → 报 "Claude Code CLI not found"。

建议修复: 把 CLI_NOT_FOUND 的 "not found" 模式收窄,比如改成 "command not found" 或 "binary not found",避免吃掉 HTTP 404 的 "Not Found"。或者调整匹配顺序,让 ENDPOINT_NOT_FOUND 排在 CLI_NOT_FOUND 前面。

期望 vs 实际 / Expected vs actual

问题: classifyError 中 CLI_NOT_FOUND 的 patterns 包含 "not found",且排在数组第一位。当 OpenAI-Compatible provider 的 base_url 配错(少了 /v1),服务端返回 HTTP 404 "Not Found" 时,被误分类成 "Claude Code CLI not found",而不是 ENDPOINT_NOT_FOUND。

复现: 添加 OpenAI-Compatible provider,base_url 填 http://localhost:18818(不带 /v1),点测试连接 → 报 "Claude Code CLI not found"。

建议修复: 把 CLI_NOT_FOUND 的 "not found" 模式收窄,比如改成 "command not found" 或 "binary not found",避免吃掉 HTTP 404 的 "Not Found"。或者调整匹配顺序,让 ENDPOINT_NOT_FOUND 排在 CLI_NOT_FOUND 前面。

日志 / 截图 / session id

No response

影响面 / Impact
  • 涉及文件写入或可能误改/丢失数据 / involves file write or possible data loss
  • 导致崩溃、闪退或对话被自动中断 / causes crash / quit / auto-interrupt
Langage dominant
TypeScript
Étoiles
6.5k
Forks
697
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

  • Aucun Dockerfile ni fichier Docker Compose
  • Propose un modèle de pull request
  • Aucun guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de op7418/CodePilot

Toutes les issues de op7418/CodePilot

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.