( items: T[], concurrency: number, processor: (item: T) => Promise<void>, )
| 2216 | // slow server only occupies one slot instead of blocking an entire batch |
| 2217 | // boundary. Same concurrency ceiling, same results, better scheduling. |
| 2218 | async function processBatched<T>( |
| 2219 | items: T[], |
| 2220 | concurrency: number, |
| 2221 | processor: (item: T) => Promise<void>, |
| 2222 | ): Promise<void> { |
| 2223 | await pMap(items, processor, { concurrency }) |
| 2224 | } |
| 2225 | |
| 2226 | export async function getMcpToolsCommandsAndResources( |
| 2227 | onConnectionAttempt: (params: { |
no outgoing calls
no test coverage detected