{"version":"2.1.317","anchor":"grep-output-gains-timedout","canonical_anchor":"grep-output-gains-timedout","heading":"Grep and Glob searches report when they hit their time limit","tier":"notice","area":"Search","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.317\/e\/grep-output-gains-timedout","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.317","markdown":"### Grep and Glob searches report when they hit their time limit\n\nGrep returns partial matches instead of failing on a timeout, and Grep and Glob results now carry a timedOut flag\n\n**What**\n\nGrep and Glob are the tools Claude uses to search inside files and to find files by name. These searches have a time limit, and their results now say when that limit cut them short:\n\n- When ripgrep, the search program behind Grep, times out, Grep now returns the partial matches it had collected and sets `timedOut`, instead of failing. In that case `countIsComplete` is false.\n\n- Grep results, including the files_with_matches mode alongside `appliedLimit` and `appliedOffset`, gain an optional `timedOut` field.\n\n- The Glob output also gains an optional `timedOut` field. It is true when the time limit stopped the search after the listed paths were read, so more matches may exist, and absent otherwise.\n\n- When Glob's `timedOut` is set, the result text starts with a notice, including on a 'No files found' result.\n\n- ripgrep can now be started with a directory handle (`spawnDirFd`), and when it cannot be started it raises errors beginning 'The search did not run: \u2026'.\n\nBefore, a Grep timeout was an error, and neither tool's result said whether it had been cut short.\n\n**Why**\n\nA search that ran out of time is no longer mistaken for one that found nothing. In a large project, a slow search now gives usable partial results, and Claude can tell they may be incomplete.\n\n- Area: Search\n- Names: `timedOut`\n- Tier: You'll notice\n- Useful: 3\/5\n- Signal: 1\/5\n- Scope: individual\n- Heads-up: no"}