Files
orca/src/main/ipc/markdown-documents.ts
T
Kyle PandNeil 9ff0b53ec6 fix(markdown): keep readable documents after traversal errors (#27774)
* Keep readable Markdown documents after traversal errors

* Document partial Markdown listing behavior

---------

Co-authored-by: Neil <neil@stably.ai>
2026-10-23 19:20:42 -07:00

30 lines
1.1 KiB
TypeScript

import { spawnBundledRipgrep } from '../ripgrep/bundled-ripgrep-spawn'
import { stopBundledRipgrep } from '../ripgrep/bundled-ripgrep-stop'
import { resolveBundledRipgrepWslRouting } from '../ripgrep/bundled-ripgrep-wsl-routing'
import {
collectMarkdownDocuments,
MARKDOWN_DOCUMENT_LISTING_ARGS
} from '../../shared/node-markdown-document-listing'
import type { MarkdownDocument } from '../../shared/filesystem-entry-types'
export async function listMarkdownDocuments(
rootPath: string,
options: { wslDistro?: string; signal?: AbortSignal } = {}
): Promise<MarkdownDocument[]> {
options.signal?.throwIfAborted()
const { wslDistro, wslDistroForOutput: distro } = resolveBundledRipgrepWslRouting(
rootPath,
options.wslDistro
)
const child = spawnBundledRipgrep(MARKDOWN_DOCUMENT_LISTING_ARGS, {
cwd: rootPath,
wslDistro,
wslDistroForOutput: distro,
stdio: ['ignore', 'pipe', 'pipe']
})
return collectMarkdownDocuments(child, rootPath, Boolean(distro), options.signal, {
allowPartialListing: true,
stopProcess: () => stopBundledRipgrep(child, Boolean(distro))
})
}