Skip to content

feat(core): Handle special characters in file search paths#6680

Merged
jacob314 merged 1 commit intomainfrom
st/fix_fs
Aug 20, 2025
Merged

feat(core): Handle special characters in file search paths#6680
jacob314 merged 1 commit intomainfrom
st/fix_fs

Conversation

@SandyTao520
Copy link
Contributor

TLDR

This pull request fixes a bug in the file search functionality that prevented it from finding files with special characters (like parentheses) in their paths. The search pattern is now unescaped before being used, ensuring that paths with special characters are resolved correctly.

Dive Deeper

The RecursiveFileSearch implementation was passing the user-provided search pattern directly to the fzf engine. This caused issues when a path contained special characters that are typically escaped in a shell environment (e.g., src/file (special).txt). A user trying to find this file might provide an escaped pattern like src/file \\(special\\).txt.

This change introduces a call to a new unescapePath utility function, which normalizes the search pattern by removing shell escapes. This ensures that the search engine looks for the literal file path, allowing it to find files with special characters correctly.

A new unit test has been added to verify this specific scenario, ensuring that a file with a path containing (special) can be found using an escaped search pattern.

Reviewer Test Plan

  1. Create a new file in your test project with special characters in its name, for example:
    touch "my-file-(1).log"
  2. Use the Gemini CLI to search for this file using the escaped path:
    look at @my-file-\(
  3. Verify that the CLI correctly shows my-file-(1).log as a suggestion.

Testing Matrix

🍏 🪟 🐧
npm run
npx
Docker
Podman - -
Seatbelt - -

@SandyTao520 SandyTao520 marked this pull request as ready for review August 20, 2025 20:38
@SandyTao520 SandyTao520 requested a review from a team as a code owner August 20, 2025 20:38
@github-actions
Copy link

Code Coverage Summary

Package Lines Statements Functions Branches
CLI 73.37% 73.37% 79.31% 80.84%
Core 74.93% 74.93% 75.96% 83.39%
CLI Package - Full Text Report
-------------------|---------|----------|---------|---------|-------------------
File               | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s 
-------------------|---------|----------|---------|---------|-------------------
All files          |   73.37 |    80.84 |   79.31 |   73.37 |                   
 src               |   53.82 |    77.55 |   66.66 |   53.82 |                   
  gemini.tsx       |   31.18 |    66.66 |      50 |   31.18 | ...59-325,335-354 
  ...ractiveCli.ts |   93.85 |    72.72 |     100 |   93.85 | 34-37,68-70,116   
  ...ActiveAuth.ts |     100 |      100 |     100 |     100 |                   
 src/commands      |   94.11 |      100 |      50 |   94.11 |                   
  mcp.ts           |   94.11 |      100 |      50 |   94.11 | 26                
 src/commands/mcp  |   95.62 |       80 |    90.9 |   95.62 |                   
  add.ts           |    97.4 |    83.33 |     100 |    97.4 | 109-112,119       
  list.ts          |   90.56 |    80.76 |      80 |   90.56 | ...10-112,137-138 
  remove.ts        |     100 |    66.66 |     100 |     100 | 19-23             
 src/config        |   92.18 |    82.35 |    87.5 |   92.18 |                   
  auth.ts          |     100 |      100 |     100 |     100 |                   
  config.ts        |   97.38 |    89.47 |      70 |   97.38 | ...48,428,585-589 
  extension.ts     |   82.67 |    84.37 |     100 |   82.67 | ...03-107,116-117 
  keyBindings.ts   |     100 |      100 |     100 |     100 |                   
  sandboxConfig.ts |   51.35 |    16.66 |   66.66 |   51.35 | ...43,53-69,74-91 
  settings.ts      |   84.33 |    79.77 |   93.33 |   84.33 | ...95-396,469-470 
  ...ingsSchema.ts |     100 |      100 |     100 |     100 |                   
  ...tedFolders.ts |   90.67 |    76.92 |     100 |   90.67 | ...20,125-130,148 
 src/generated     |     100 |      100 |     100 |     100 |                   
  git-commit.ts    |     100 |      100 |     100 |     100 |                   
 src/patches       |       0 |        0 |       0 |       0 |                   
  is-in-ci.ts      |       0 |        0 |       0 |       0 | 1-17              
 src/services      |   61.67 |    88.33 |   72.22 |   61.67 |                   
  ...mandLoader.ts |     100 |      100 |     100 |     100 |                   
  ...andService.ts |     100 |      100 |     100 |     100 |                   
  ...mandLoader.ts |   92.22 |     92.1 |     100 |   92.22 | 171-176,250-257   
  ...omptLoader.ts |    9.39 |    57.14 |   33.33 |    9.39 | ...44-167,173-230 
  types.ts         |       0 |        0 |       0 |       0 | 1                 
 ...mpt-processors |   97.56 |    94.11 |     100 |   97.56 |                   
  ...tProcessor.ts |     100 |      100 |     100 |     100 |                   
  ...lProcessor.ts |   97.36 |    93.61 |     100 |   97.36 | 77-78,202-203     
  types.ts         |     100 |      100 |     100 |     100 |                   
 src/test-utils    |   91.22 |    83.33 |      80 |   91.22 |                   
  ...omMatchers.ts |   69.69 |       50 |      50 |   69.69 | 31-34,36-38,44-46 
  ...andContext.ts |     100 |      100 |     100 |     100 |                   
  render.tsx       |     100 |      100 |     100 |     100 |                   
 src/ui            |   58.56 |    72.22 |   63.15 |   58.56 |                   
  App.tsx          |   57.25 |    61.76 |   38.46 |   57.25 | ...1195,1221-1250 
  ...tionNudge.tsx |    8.33 |      100 |       0 |    8.33 | 26-98             
  colors.ts        |   79.59 |      100 |   66.66 |   79.59 | ...43,45-46,48-49 
  constants.ts     |     100 |      100 |     100 |     100 |                   
  keyMatchers.ts   |   95.65 |    95.65 |     100 |   95.65 | 29-30             
  ...tic-colors.ts |     100 |      100 |     100 |     100 |                   
  types.ts         |     100 |      100 |     100 |     100 |                   
 src/ui/commands   |   85.31 |    82.99 |    87.5 |   85.31 |                   
  aboutCommand.ts  |     100 |       60 |     100 |     100 | 23-30             
  authCommand.ts   |     100 |      100 |     100 |     100 |                   
  bugCommand.ts    |   79.72 |     37.5 |     100 |   79.72 | 33-36,43,81-90    
  chatCommand.ts   |   94.23 |    83.33 |     100 |   94.23 | ...10-211,213-214 
  clearCommand.ts  |     100 |      100 |     100 |     100 |                   
  ...essCommand.ts |     100 |    88.88 |     100 |     100 | 69                
  copyCommand.ts   |     100 |      100 |     100 |     100 |                   
  corgiCommand.ts  |     100 |      100 |     100 |     100 |                   
  ...ryCommand.tsx |   70.12 |    73.07 |     100 |   70.12 | ...22-123,158-166 
  docsCommand.ts   |     100 |      100 |     100 |     100 |                   
  editorCommand.ts |     100 |      100 |     100 |     100 |                   
  ...onsCommand.ts |     100 |      100 |     100 |     100 |                   
  helpCommand.ts   |     100 |      100 |     100 |     100 |                   
  ideCommand.ts    |   54.97 |    77.27 |   44.44 |   54.97 | ...09-219,227-237 
  initCommand.ts   |     100 |      100 |     100 |     100 |                   
  mcpCommand.ts    |   82.29 |    82.95 |   83.33 |   82.29 | ...83-384,437-444 
  memoryCommand.ts |   99.09 |    92.85 |     100 |   99.09 | 93                
  ...acyCommand.ts |     100 |      100 |     100 |     100 |                   
  quitCommand.ts   |     100 |      100 |     100 |     100 |                   
  ...oreCommand.ts |      92 |    87.09 |     100 |      92 | ...,82-87,128-129 
  ...ngsCommand.ts |     100 |      100 |     100 |     100 |                   
  ...hubCommand.ts |   83.55 |    66.66 |     100 |   83.55 | ...56-159,162-165 
  statsCommand.ts  |   84.48 |       75 |     100 |   84.48 | 24-32             
  ...tupCommand.ts |     100 |      100 |     100 |     100 |                   
  themeCommand.ts  |     100 |      100 |     100 |     100 |                   
  toolsCommand.ts  |     100 |      100 |     100 |     100 |                   
  types.ts         |     100 |      100 |     100 |     100 |                   
  vimCommand.ts    |   44.44 |      100 |       0 |   44.44 | 14-24             
 src/ui/components |   62.56 |    83.09 |   62.96 |   62.56 |                   
  AboutBox.tsx     |     100 |       50 |     100 |     100 | 104               
  AsciiArt.ts      |     100 |      100 |     100 |     100 |                   
  AuthDialog.tsx   |      90 |    96.42 |      75 |      90 | 69-74,103-110     
  ...nProgress.tsx |   16.66 |      100 |       0 |   16.66 | 18-62             
  ...Indicator.tsx |   15.15 |      100 |       0 |   15.15 | 17-47             
  ...ryDisplay.tsx |   89.47 |    33.33 |     100 |   89.47 | 20-21             
  ...ryDisplay.tsx |   92.04 |    94.44 |     100 |   92.04 | 79-84,89          
  ...geDisplay.tsx |     100 |      100 |     100 |     100 |                   
  ...gProfiler.tsx |      24 |      100 |       0 |      24 | 13-36             
  ...esDisplay.tsx |   10.52 |      100 |       0 |   10.52 | 24-82             
  ...ngsDialog.tsx |    7.29 |      100 |       0 |    7.29 | 27-172            
  ...ustDialog.tsx |     100 |      100 |     100 |     100 |                   
  Footer.tsx       |   84.82 |    82.35 |     100 |   84.82 | ...,89-91,136-143 
  ...ngSpinner.tsx |   86.66 |       75 |     100 |   86.66 | 31-32             
  Header.tsx       |   87.23 |    57.14 |     100 |   87.23 | 36-39,55,64       
  Help.tsx         |    3.27 |      100 |       0 |    3.27 | 17-173            
  ...emDisplay.tsx |   70.42 |    56.25 |     100 |   70.42 | ...59-64,85-92,95 
  InputPrompt.tsx  |   88.84 |    82.19 |     100 |   88.84 | ...98-500,601-605 
  ...Indicator.tsx |     100 |      100 |     100 |     100 |                   
  ...geDisplay.tsx |   25.92 |      100 |       0 |   25.92 | 14-36             
  ...tsDisplay.tsx |     100 |      100 |     100 |     100 |                   
  PrepareLabel.tsx |      60 |       80 |     100 |      60 | 35-48             
  ...ryDisplay.tsx |     100 |      100 |     100 |     100 |                   
  ...ngsDialog.tsx |   31.75 |     62.5 |      25 |   31.75 | ...66-667,745-748 
  ...ionDialog.tsx |    85.5 |      100 |   33.33 |    85.5 | 37-40,45-52       
  ...Indicator.tsx |   44.44 |      100 |       0 |   44.44 | 12-17             
  ...MoreLines.tsx |      60 |       25 |     100 |      60 | 24-27,33-40       
  StatsDisplay.tsx |    98.5 |    93.33 |     100 |    98.5 | 177-179           
  ...nsDisplay.tsx |   88.05 |    71.42 |     100 |   88.05 | 36-41,96-98       
  ThemeDialog.tsx  |    5.33 |      100 |       0 |    5.33 | 34-310            
  Tips.tsx         |      16 |      100 |       0 |      16 | 17-45             
  ...tsDisplay.tsx |     100 |     87.5 |     100 |     100 | 30-31             
  ...ification.tsx |   36.36 |      100 |       0 |   36.36 | 15-22             
 ...nents/messages |   64.14 |    82.17 |   57.14 |   64.14 |                   
  ...onMessage.tsx |   18.51 |      100 |       0 |   18.51 | 22-49             
  DiffRenderer.tsx |   96.41 |    83.14 |     100 |   96.41 | ...17-218,222,284 
  ErrorMessage.tsx |     100 |      100 |     100 |     100 |                   
  ...niMessage.tsx |   18.51 |      100 |       0 |   18.51 | 20-43             
  ...geContent.tsx |   19.04 |      100 |       0 |   19.04 | 25-43             
  InfoMessage.tsx  |     100 |      100 |     100 |     100 |                   
  ...onMessage.tsx |   37.55 |     62.5 |      20 |   37.55 | ...65-200,244-272 
  ...upMessage.tsx |   10.11 |      100 |       0 |   10.11 | 27-126            
  ToolMessage.tsx  |   87.76 |       80 |     100 |   87.76 | ...,91-95,169-171 
  UserMessage.tsx  |     100 |      100 |     100 |     100 |                   
  ...llMessage.tsx |   36.36 |      100 |       0 |   36.36 | 17-25             
 ...ponents/shared |   80.42 |    76.56 |   95.45 |   80.42 |                   
  MaxSizedBox.tsx  |   81.14 |     82.2 |   88.88 |   81.14 | ...08-509,614-615 
  ...tonSelect.tsx |   75.65 |    70.27 |     100 |   75.65 | ...98,121-157,226 
  text-buffer.ts   |   78.02 |    78.08 |   96.77 |   78.02 | ...1841,1868,1918 
  ...er-actions.ts |   86.71 |    67.79 |     100 |   86.71 | ...08-609,810-812 
 src/ui/contexts   |   80.76 |    82.64 |     100 |   80.76 |                   
  ...ssContext.tsx |   77.13 |    84.61 |     100 |   77.13 | ...90-297,390-392 
  ...owContext.tsx |   91.07 |    81.81 |     100 |   91.07 | 46-47,59-61       
  ...onContext.tsx |    94.2 |      100 |     100 |    94.2 | 106-109           
  ...gsContext.tsx |   83.33 |       50 |     100 |   83.33 | 17-18             
  ...ngContext.tsx |   71.42 |       50 |     100 |   71.42 | 17-20             
  ...deContext.tsx |   76.08 |       50 |     100 |   76.08 | 46-47,51-58,76-77 
 src/ui/editors    |   93.18 |    85.71 |   66.66 |   93.18 |                   
  ...ngsManager.ts |   93.18 |    85.71 |   66.66 |   93.18 | 48,62-63          
 src/ui/hooks      |   82.25 |    81.96 |   88.73 |   82.25 |                   
  ...dProcessor.ts |   78.28 |       79 |     100 |   78.28 | ...52-455,466-484 
  ...dProcessor.ts |   96.32 |    76.31 |     100 |   96.32 | ...13-214,219-220 
  ...dProcessor.ts |   81.68 |    71.59 |   71.42 |   81.68 | ...89-393,459-487 
  ...Completion.ts |   92.69 |    89.09 |     100 |   92.69 | ...89-190,223-226 
  ...uthCommand.ts |    7.46 |      100 |       0 |    7.46 | 18-92             
  ...tIndicator.ts |     100 |      100 |     100 |     100 |                   
  ...ketedPaste.ts |     100 |      100 |     100 |     100 |                   
  ...ompletion.tsx |   94.73 |    81.81 |     100 |   94.73 | ...98-199,201-202 
  useCompletion.ts |    92.4 |     87.5 |     100 |    92.4 | ...,95-96,100-101 
  ...leMessages.ts |   98.68 |       95 |     100 |   98.68 | 55                
  ...orSettings.ts |     100 |      100 |     100 |     100 |                   
  useFocus.ts      |     100 |      100 |     100 |     100 |                   
  ...olderTrust.ts |     100 |      100 |     100 |     100 |                   
  ...miniStream.ts |   75.33 |    71.52 |     100 |   75.33 | ...49-850,880-968 
  ...BranchName.ts |   91.66 |    84.61 |     100 |   91.66 | 57-63             
  ...oryManager.ts |   98.41 |    93.33 |     100 |   98.41 | 43                
  ...putHistory.ts |    92.5 |    85.71 |     100 |    92.5 | 62-63,71,93-95    
  useKeypress.ts   |     100 |      100 |     100 |     100 |                   
  ...rdProtocol.ts |     100 |      100 |     100 |     100 |                   
  ...gIndicator.ts |     100 |      100 |     100 |     100 |                   
  useLogger.ts     |      25 |      100 |       0 |      25 | 14-32             
  ...ssageQueue.ts |     100 |      100 |     100 |     100 |                   
  ...raseCycler.ts |   95.45 |       75 |     100 |   95.45 | ...64-165,183-185 
  ...cySettings.ts |   85.08 |       75 |     100 |   85.08 | ...15-116,127-138 
  ...lScheduler.ts |   78.92 |    94.44 |     100 |   78.92 | ...01-204,290-300 
  ...oryCommand.ts |       0 |        0 |       0 |       0 | 1-7               
  ...ompletion.tsx |     100 |     92.3 |     100 |     100 | 78                
  ...ngsCommand.ts |    87.5 |      100 |     100 |    87.5 | 13,17             
  ...ellHistory.ts |   91.66 |       80 |     100 |   91.66 | ...69,117-118,128 
  ...oryCommand.ts |       0 |        0 |       0 |       0 | 1-75              
  ...Completion.ts |      94 |    92.53 |     100 |      94 | 58-61,69-72,93    
  ...tateAndRef.ts |   13.63 |      100 |       0 |   13.63 | 16-36             
  ...rminalSize.ts |   18.18 |      100 |       0 |   18.18 | 12-32             
  ...emeCommand.ts |   46.98 |       75 |     100 |   46.98 | ...4,70-71,77-100 
  useTimer.ts      |   88.09 |    85.71 |     100 |   88.09 | 44-45,51-53       
  vim.ts           |   83.57 |     79.5 |     100 |   83.57 | ...38,742-750,759 
 src/ui/privacy    |   14.52 |      100 |       0 |   14.52 |                   
  ...acyNotice.tsx |   10.38 |      100 |       0 |   10.38 | 21-117            
  ...acyNotice.tsx |   14.28 |      100 |       0 |   14.28 | 16-59             
  ...acyNotice.tsx |   12.19 |      100 |       0 |   12.19 | 16-62             
  ...acyNotice.tsx |   30.76 |      100 |       0 |   30.76 | 19-36,39-41       
 src/ui/themes     |   99.48 |    65.04 |     100 |   99.48 |                   
  ansi-light.ts    |     100 |      100 |     100 |     100 |                   
  ansi.ts          |     100 |      100 |     100 |     100 |                   
  atom-one-dark.ts |     100 |      100 |     100 |     100 |                   
  ayu-light.ts     |     100 |      100 |     100 |     100 |                   
  ayu.ts           |     100 |      100 |     100 |     100 |                   
  color-utils.ts   |     100 |      100 |     100 |     100 |                   
  default-light.ts |     100 |      100 |     100 |     100 |                   
  default.ts       |     100 |      100 |     100 |     100 |                   
  dracula.ts       |     100 |      100 |     100 |     100 |                   
  github-dark.ts   |     100 |      100 |     100 |     100 |                   
  github-light.ts  |     100 |      100 |     100 |     100 |                   
  googlecode.ts    |     100 |      100 |     100 |     100 |                   
  no-color.ts      |     100 |      100 |     100 |     100 |                   
  ...tic-tokens.ts |     100 |      100 |     100 |     100 |                   
  ...-of-purple.ts |     100 |      100 |     100 |     100 |                   
  theme-manager.ts |   91.08 |     77.5 |     100 |   91.08 | ...91,195,220-221 
  theme.ts         |     100 |     41.3 |     100 |     100 | 225-240           
  xcode.ts         |     100 |      100 |     100 |     100 |                   
 src/ui/utils      |   65.13 |    79.12 |   81.96 |   65.13 |                   
  ...Colorizer.tsx |   79.31 |    80.64 |     100 |   79.31 | ...51-154,190-216 
  ...olePatcher.ts |      96 |       75 |     100 |      96 | 59-60             
  ...nRenderer.tsx |   52.85 |    27.27 |     100 |   52.85 | ...26-132,142-144 
  ...wnDisplay.tsx |   85.84 |    87.69 |     100 |   85.84 | ...72-280,313-336 
  ...eRenderer.tsx |   78.09 |    76.19 |     100 |   78.09 | 55-83             
  ...boardUtils.ts |   32.25 |     37.5 |     100 |   32.25 | ...55-114,129-145 
  commandUtils.ts  |   95.18 |    89.65 |     100 |   95.18 | 54-55,80,84       
  computeStats.ts  |     100 |      100 |     100 |     100 |                   
  displayUtils.ts  |     100 |      100 |     100 |     100 |                   
  formatters.ts    |   90.47 |    95.83 |     100 |   90.47 | 57-60             
  isNarrowWidth.ts |     100 |      100 |     100 |     100 |                   
  ...olDetector.ts |   13.88 |      100 |      50 |   13.88 | 16-97             
  ...nUtilities.ts |   69.84 |    85.71 |     100 |   69.84 | 75-91,100-101     
  ...mConstants.ts |     100 |      100 |     100 |     100 |                   
  terminalSetup.ts |       4 |      100 |       0 |       4 | 40-342            
  textUtils.ts     |   88.88 |    83.33 |     100 |   88.88 | 14-15             
  updateCheck.ts   |     100 |    80.95 |     100 |     100 | 26-38             
 src/utils         |   45.03 |    90.99 |   84.21 |   45.03 |                   
  checks.ts        |   33.33 |      100 |       0 |   33.33 | 23-28             
  cleanup.ts       |   96.15 |    85.71 |     100 |   96.15 | 36                
  ...ScopeUtils.ts |   97.67 |     87.5 |     100 |   97.67 | 62                
  events.ts        |     100 |      100 |     100 |     100 |                   
  gitUtils.ts      |   94.66 |    82.35 |     100 |   94.66 | 75-78             
  ...AutoUpdate.ts |   81.14 |    95.23 |   66.66 |   81.14 | 85-99,125-132     
  ...lationInfo.ts |     100 |      100 |     100 |     100 |                   
  package.ts       |   88.88 |       80 |     100 |   88.88 | 33-34             
  readStdin.ts     |    2.43 |      100 |       0 |    2.43 | 7-51              
  resolvePath.ts   |   66.66 |       25 |     100 |   66.66 | 12-13,16,18-19    
  sandbox.ts       |       0 |        0 |       0 |       0 | 1-947             
  settingsUtils.ts |   80.52 |     92.3 |   93.33 |   80.52 | ...74-416,455-456 
  spawnWrapper.ts  |     100 |      100 |     100 |     100 |                   
  ...upWarnings.ts |   23.07 |      100 |       0 |   23.07 | 14-40             
  ...entEmitter.ts |     100 |      100 |     100 |     100 |                   
  ...upWarnings.ts |     100 |      100 |     100 |     100 |                   
  version.ts       |     100 |       50 |     100 |     100 | 11                
 ...ed-integration |   25.58 |        0 |       0 |   25.58 |                   
  acp.ts           |    2.89 |        0 |       0 |    2.89 | ...52-288,291-338 
  ...temService.ts |   19.35 |      100 |       0 |   19.35 | 15-19,22-34,37-46 
  schema.ts        |     100 |      100 |     100 |     100 |                   
  ...ntegration.ts |    3.34 |        0 |       0 |    3.34 | ...02-805,820-870 
-------------------|---------|----------|---------|---------|-------------------
Core Package - Full Text Report
-------------------|---------|----------|---------|---------|-------------------
File               | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s 
-------------------|---------|----------|---------|---------|-------------------
All files          |   74.93 |    83.39 |   75.96 |   74.93 |                   
 src               |     100 |      100 |     100 |     100 |                   
  index.ts         |     100 |      100 |     100 |     100 |                   
 src/__mocks__/fs  |     100 |      100 |     100 |     100 |                   
  promises.ts      |     100 |      100 |     100 |     100 |                   
 src/code_assist   |   73.33 |    76.99 |      75 |   73.33 |                   
  codeAssist.ts    |   18.51 |      100 |       0 |   18.51 | 13-35             
  converter.ts     |   89.31 |    96.15 |   81.81 |   89.31 | 179-183,202-212   
  oauth2.ts        |   77.94 |    65.45 |   91.66 |   77.94 | ...18-424,429-430 
  server.ts        |   50.29 |       80 |   53.84 |   50.29 | ...73-214,217-220 
  setup.ts         |   86.66 |    78.94 |     100 |   86.66 | ...,92-94,118-124 
  types.ts         |     100 |      100 |     100 |     100 |                   
 src/config        |   76.41 |    88.78 |   52.83 |   76.41 |                   
  config.ts        |   75.04 |    87.64 |   46.98 |   75.04 | ...57-764,770-771 
  models.ts        |     100 |      100 |     100 |     100 |                   
  storage.ts       |   83.52 |    94.44 |   73.91 |   83.52 | ...08-109,112-113 
 src/core          |   75.73 |       80 |   74.61 |   75.73 |                   
  client.ts        |   81.81 |    80.98 |   77.77 |   81.81 | ...04,906-907,910 
  ...tGenerator.ts |    92.7 |    79.16 |     100 |    92.7 | 83-84,135,155-158 
  ...lScheduler.ts |   70.25 |    75.89 |    82.6 |   70.25 | ...72-882,959-963 
  geminiChat.ts    |   59.36 |    70.83 |   53.57 |   59.36 | ...06-607,610-611 
  geminiRequest.ts |     100 |      100 |     100 |     100 |                   
  logger.ts        |   82.94 |    81.81 |     100 |   82.94 | ...44-348,388-399 
  ...tGenerator.ts |   17.02 |      100 |      20 |   17.02 | ...47-175,178-179 
  ...olExecutor.ts |      90 |    70.83 |     100 |      90 | ...,87-96,114,150 
  prompts.ts       |   95.76 |    96.96 |      50 |   95.76 | 37-38,304-361     
  subagent.ts      |   92.09 |    83.75 |     100 |   92.09 | ...00-608,651-652 
  tokenLimits.ts   |   14.28 |      100 |       0 |   14.28 | 15-32             
  turn.ts          |   83.57 |    83.33 |     100 |   83.57 | ...55-258,271-272 
 src/generated     |     100 |      100 |     100 |     100 |                   
  git-commit.ts    |     100 |      100 |     100 |     100 |                   
 src/ide           |   39.45 |     87.3 |   41.46 |   39.45 |                   
  constants.ts     |     100 |      100 |     100 |     100 |                   
  detect-ide.ts    |   49.35 |      100 |      50 |   49.35 | 23-62             
  ide-client.ts    |   27.52 |    92.85 |   20.83 |   27.52 | ...07-434,437-441 
  ide-installer.ts |   55.76 |    53.33 |     100 |   55.76 | ...91,113-125,134 
  ideContext.ts    |   83.65 |      100 |     100 |   83.65 | 74-90             
  process-utils.ts |     7.6 |      100 |       0 |     7.6 | 22-157            
 src/mcp           |   73.91 |    66.87 |   81.08 |   73.91 |                   
  ...h-provider.ts |   86.36 |      100 |   33.33 |   86.36 | ...85,89,93,97-98 
  ...h-provider.ts |   74.19 |    51.64 |     100 |   74.19 | ...04-808,815-817 
  ...en-storage.ts |     100 |      100 |     100 |     100 |                   
  oauth-utils.ts   |   54.72 |    69.23 |      90 |   54.72 | ...16-240,265-314 
 src/mocks         |     100 |      100 |     100 |     100 |                   
  msw.ts           |     100 |      100 |     100 |     100 |                   
 src/prompts       |   26.41 |      100 |      25 |   26.41 |                   
  mcp-prompts.ts   |   18.18 |      100 |       0 |   18.18 | 11-19             
  ...t-registry.ts |   28.57 |      100 |   28.57 |   28.57 | ...42,48-55,68-73 
 src/services      |   89.18 |    86.89 |   91.52 |   89.18 |                   
  ...ingService.ts |   76.73 |     61.9 |     100 |   76.73 | ...06-408,435-437 
  ...eryService.ts |   93.33 |    88.46 |   85.71 |   93.33 | 31,39,84,109-110  
  ...temService.ts |     100 |      100 |     100 |     100 |                   
  gitService.ts    |   77.27 |      100 |      60 |   77.27 | ...08-112,115-119 
  ...ionService.ts |   99.23 |    97.05 |     100 |   99.23 | 287-288           
  ...ionService.ts |   92.19 |    88.15 |     100 |   92.19 | ...67-368,444-458 
 src/telemetry     |   65.41 |    80.12 |   69.01 |   65.41 |                   
  constants.ts     |     100 |      100 |     100 |     100 |                   
  ...-exporters.ts |   26.47 |        0 |       0 |   26.47 | ...80,83-84,87-88 
  index.ts         |     100 |      100 |     100 |     100 |                   
  ...t.circular.ts |       0 |        0 |       0 |       0 | 1-63              
  ...t.circular.ts |       0 |        0 |       0 |       0 | 1-125             
  loggers.ts       |   67.14 |    76.92 |   66.66 |   67.14 | ...70-388,416-431 
  metrics.ts       |   64.36 |    96.66 |   66.66 |   64.36 | ...56-178,181-204 
  sdk.ts           |   78.37 |    44.44 |     100 |   78.37 | ...83,188-189,191 
  ...l-decision.ts |     100 |      100 |     100 |     100 |                   
  types.ts         |   71.95 |    77.27 |   73.91 |   71.95 | ...79-388,391-402 
  uiTelemetry.ts   |    99.3 |       96 |     100 |    99.3 | 126               
 ...learcut-logger |   76.03 |    76.38 |   67.85 |   76.03 |                   
  ...cut-logger.ts |   73.52 |    76.05 |   67.85 |   73.52 | ...93-794,797-800 
  ...tadata-key.ts |     100 |      100 |     100 |     100 |                   
 src/test-utils    |   88.75 |    95.45 |   80.95 |   88.75 |                   
  config.ts        |     100 |      100 |     100 |     100 |                   
  ...aceContext.ts |     100 |      100 |     100 |     100 |                   
  tools.ts         |   85.12 |    94.44 |   78.94 |   85.12 | ...59,127,131-132 
 src/tools         |   69.38 |    82.29 |   78.97 |   69.38 |                   
  diffOptions.ts   |     100 |      100 |     100 |     100 |                   
  edit.ts          |   81.18 |    84.81 |   85.71 |   81.18 | ...13-414,504-547 
  glob.ts          |   85.77 |    78.26 |    87.5 |   85.77 | ...34-241,312-313 
  grep.ts          |   58.33 |     78.2 |   78.57 |   58.33 | ...87-591,601-602 
  ls.ts            |   97.66 |    91.66 |     100 |   97.66 | 135-139           
  ...nt-manager.ts |   79.74 |    83.33 |      80 |   79.74 | ...98-105,113-114 
  mcp-client.ts    |   30.93 |    77.77 |   48.38 |   30.93 | ...1341,1345-1348 
  mcp-tool.ts      |   94.67 |    92.85 |   94.11 |   94.67 | 186-196,258-259   
  memoryTool.ts    |    84.3 |    83.67 |   88.88 |    84.3 | ...28-243,381-399 
  ...iable-tool.ts |     100 |    84.61 |     100 |     100 | 94,101            
  read-file.ts     |      97 |       95 |    87.5 |      97 | 69-70,110-112     
  ...many-files.ts |   79.44 |    72.13 |   83.33 |   79.44 | ...14-515,522-523 
  shell.ts         |    84.9 |    76.38 |    90.9 |    84.9 | ...80-381,392-393 
  tool-error.ts    |     100 |      100 |     100 |     100 |                   
  tool-registry.ts |   53.01 |    69.04 |   71.42 |   53.01 | ...02-404,427-435 
  tools.ts         |   85.78 |     87.8 |   73.33 |   85.78 | ...58-359,375-381 
  web-fetch.ts     |   35.79 |    77.77 |   72.72 |   35.79 | ...45-346,351-352 
  web-search.ts    |     100 |    92.59 |     100 |     100 | 108-109           
  write-file.ts    |   82.27 |    79.68 |      75 |   82.27 | ...48-451,463-499 
 src/utils         |   85.76 |    87.65 |   91.01 |   85.76 |                   
  LruCache.ts      |   70.96 |     62.5 |     100 |   70.96 | 20-22,28,30-34    
  bfsFileSearch.ts |   89.02 |    90.47 |     100 |   89.02 | 86-94             
  browser.ts       |    7.69 |      100 |       0 |    7.69 | 17-56             
  editCorrector.ts |    77.3 |    61.11 |   91.66 |    77.3 | ...65-677,711,725 
  editor.ts        |   97.63 |    94.54 |     100 |   97.63 | 154,224,227-228   
  ...entContext.ts |     100 |      100 |     100 |     100 |                   
  errorParsing.ts  |     100 |     92.3 |     100 |     100 | 76,80,86          
  ...rReporting.ts |   83.72 |    84.61 |     100 |   83.72 | 82-86,107-115     
  errors.ts        |   39.02 |       60 |      75 |   39.02 | 21-25,41-57,61-67 
  fetch.ts         |   34.04 |      100 |       0 |   34.04 | 22-27,31-57       
  fileUtils.ts     |   95.27 |       90 |     100 |   95.27 | ...06-111,359-365 
  formatters.ts    |   54.54 |       50 |     100 |   54.54 | 12-16             
  ...eUtilities.ts |   96.03 |    95.83 |     100 |   96.03 | 28-29,57-58       
  ...rStructure.ts |   95.96 |    94.93 |     100 |   95.96 | ...14-117,345-347 
  getPty.ts        |    12.5 |      100 |       0 |    12.5 | 21-34             
  ...noreParser.ts |     100 |    89.47 |     100 |     100 | 27,47             
  gitUtils.ts      |   51.21 |     90.9 |      50 |   51.21 | 40-41,50-73       
  ...ionManager.ts |     100 |       90 |     100 |     100 | 23                
  ...yDiscovery.ts |   87.05 |    76.92 |   77.77 |   87.05 | ...35-336,339-340 
  ...tProcessor.ts |   93.63 |    88.75 |   84.61 |   93.63 | ...81-282,385-386 
  ...Inspectors.ts |     100 |      100 |     100 |     100 |                   
  ...kerChecker.ts |   83.33 |    83.33 |     100 |   83.33 | 64-65,75-80,88-94 
  partUtils.ts     |     100 |      100 |     100 |     100 |                   
  paths.ts         |   86.13 |    87.87 |     100 |   86.13 | ...,89-90,101-102 
  ...rDetection.ts |    64.4 |    76.19 |     100 |    64.4 | ...4,88-89,99-100 
  retry.ts         |   62.55 |    73.21 |     100 |   62.55 | ...58-278,323-338 
  ...nStringify.ts |     100 |      100 |     100 |     100 |                   
  ...aValidator.ts |      80 |    57.14 |     100 |      80 | 23-24,26-27       
  ...r-launcher.ts |   76.52 |     87.5 |   66.66 |   76.52 | ...33,135,153-191 
  session.ts       |     100 |      100 |     100 |     100 |                   
  shell-utils.ts   |   95.94 |     94.4 |     100 |   95.94 | ...90-191,238-240 
  summarizer.ts    |     100 |    88.88 |     100 |     100 | 91                
  ...emEncoding.ts |      98 |    94.11 |     100 |      98 | 106-107           
  testUtils.ts     |   84.44 |    72.72 |   83.33 |   84.44 | 27-28,34-35,70-72 
  textUtils.ts     |    12.5 |      100 |       0 |    12.5 | 15-34             
  ...untManager.ts |   97.14 |    94.44 |     100 |   97.14 | 36-38             
  ...aceContext.ts |   96.63 |     97.5 |    92.3 |   96.63 | 88-89,103-104     
 ...ils/filesearch |   96.11 |     91.2 |     100 |   96.11 |                   
  crawlCache.ts    |     100 |      100 |     100 |     100 |                   
  crawler.ts       |   96.22 |     92.3 |     100 |   96.22 | 66-67             
  fileSearch.ts    |   92.98 |    86.56 |     100 |   92.98 | ...18-219,221-222 
  ignore.ts        |     100 |      100 |     100 |     100 |                   
  result-cache.ts  |     100 |     92.3 |     100 |     100 | 46                
-------------------|---------|----------|---------|---------|-------------------

For detailed HTML reports, please see the 'coverage-reports-22.x-ubuntu-latest' artifact from the main CI run.

Copy link
Contributor

@jacob314 jacob314 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@jacob314 jacob314 added this pull request to the merge queue Aug 20, 2025
Merged via the queue into main with commit 6aff66f Aug 20, 2025
18 checks passed
@jacob314 jacob314 deleted the st/fix_fs branch August 20, 2025 21:04
thacio added a commit to thacio/auditaria that referenced this pull request Aug 21, 2025
involvex pushed a commit to involvex/gemini-cli that referenced this pull request Sep 11, 2025
reconsumeralization pushed a commit to reconsumeralization/gemini-cli that referenced this pull request Sep 19, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants