batch3 T4 review polish: drop Stats hack, document cache race + total counting
- Drop unused Stats type import and its no-op suppression expression - Comment getProjectFiles concurrent-miss race (benign, accepted) - Comment findFiles deliberate post-limit counting (differs from grep) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
import { readFile, readdir, stat } from 'node:fs/promises';
|
||||
import { resolve, relative } from 'node:path';
|
||||
import { spawn } from 'node:child_process';
|
||||
import type { Stats } from 'node:fs';
|
||||
import { pathGuard, PathScopeError } from './path_guard.js';
|
||||
|
||||
const MAX_FILE_BYTES = 5 * 1024 * 1024;
|
||||
@@ -48,9 +47,6 @@ export interface FindFilesResult {
|
||||
truncated: boolean;
|
||||
}
|
||||
|
||||
// Suppress unused import warning — Stats is part of the public API surface
|
||||
void (undefined as unknown as Stats);
|
||||
|
||||
export async function listDir(projectRoot: string, relPath: string): Promise<ListDirResult> {
|
||||
const real = await pathGuard(projectRoot, relPath);
|
||||
const s = await stat(real);
|
||||
@@ -224,6 +220,8 @@ export async function findFiles(
|
||||
const line = buf.slice(0, idx);
|
||||
buf = buf.slice(idx + 1);
|
||||
if (!line) continue;
|
||||
// Keep counting after limit to report accurate `total` to the caller.
|
||||
// grep kills early since the LLM doesn't need a total; this differs intentionally.
|
||||
total++;
|
||||
if (files.length < limit) {
|
||||
files.push(relative(projectRoot, line) || line);
|
||||
|
||||
Reference in New Issue
Block a user