grep tool silently returns empty results when the search path does not exist

Aperta Adatta ai principianti
#45,293 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
76/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
typescript
Ambito
cli, tooling

Direzione di ricerca

Inizia esaminando la gestione di FSUtil.find da parte dello strumento grep e la chiamata a realpath per il percorso configurato. Confronta il modo in cui read e glob segnalano le destinazioni mancanti, quindi fai in modo che un file o una directory mancanti producano un ToolFailure chiaro invece di un insieme di risultati vuoto e verifica il comportamento dell'errore e del risultato restituiti.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Summary

The grep tool silently returns an empty result set when the configured path (directory or file) does not exist, instead of reporting an error. This masks typos and misconfigured working directories: a user searching path: "src/utlis" (sic) gets zero matches with no indication that the path is wrong, and may conclude the codebase has no hits.

Expected

When the search path cannot be resolved, grep should fail with a clear ToolFailure (e.g. "path does not exist: ") so the agent can correct the argument, matching the behavior of read/glob when their targets are missing.

Actual

Grep tool returns { content: { files: [], numFiles: 0, content: "" } } for a non-existent path. The underlying FSUtil.find/realpath call degrades to an empty result, and the error is swallowed.

Environment

  • opencode version: dev
  • grep invoked with pattern + path pointing at a missing directory/file
Lingua principale
TypeScript
Stelle
209k
Fork
27.5k
Merge medio
7h 20m
PR unite (30g)
358

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di anomalyco/opencode

Tutte le issue di anomalyco/opencode

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.