分割输出: 每个部分的目录结构显示整个仓库树,而不是部分的文件
□ 说明
在拆分输出模式(`output.splitOutput')中,每个生成的部分都在其目录结构部分中使完整寄存树,尽管每个部分只包含文件的一个子集. 树和文件部分在每一部分内部都不一致,但最后组装组除外.
核查内容为:重制版1.18.0(已公布npm CLI)和 " main " (`72807df')。
** 为何重要:** 分裂输出存在,因此每个部分都可以独立地被输入到LLM. 当部分N's树列出不属于部分N的文件时,模型会看到"目录结构中列出但文件中缺失"——它要么会报告文件为缺失,要么(软)幻觉中的内容为它被告知的路径所存在. 这无声地贬低了该特性的核心用例.
□再现.
固定文件——a/'、b/'、`c/'等9个小文件,加上配置本身:
mkdir - p a b c 图像
a b c; do for i in 1 2 3; do printf'content-%s-%s padding dadding\n' "$d" "$i" >$d/file$i.txt; 完成; 完成`repomix.config.json':
贾森 { "输出":{ "filePath":"出.txt","出. "风格":"平","平". "散文":"三千,"put"作. "档案摘要":是的, "目录":真, "档案":真实 {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢? {\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?
运行 “repomix -- -- quiet” -- 生成“out.1.txt”和“out.2txt”。
** 实际(v1.18.0):**
`out.2.txt' 目录结构:
(单位:千美元) 文件 1. txt 文件2.txt 类型 文件 3. txt (单位:千美元) 文件 1. txt 文件2.txt 类型 文件 3. txt (单位:千美元) 文件 1. txt 文件2.txt 类型 文件 3. txt 重塑.config.json (英语).
.其文件部分仅包含`c/file1.txt'.`c/file3.txt'和`repomix.config.json'。 `out.1.txt'的倒数相同(树木列表`c/',文件不包括它)。
** 预计:** 每一部分的目录结构准确地涵盖该部分(第一部分:`a/'、`b/';第二部分:`c/'、`repomix.config.json')。
□ 根源
- `src/core/packager.ts:288'从****所有**寄存器文件中建立`filePathsByRoot'(默认为`filePathStyle:`目标-相对''、`ussRootLabels ()'都是真实的,因此,这种绘图总是构建的——包括单一根)。
- " 弧/核/输出/输出Splits.ts " ( " respect Groups " )将整发 " file-repo " PathsByRoot " 改为 " generate Output " ,用于**个**块。
- " src/core/outs/outputGenerate.ts:428 " 在生成树时,倾向于 " filePathsByRoot " 而不是块状 " filePathsForTree " :
让树串:字符串;
如果( 文件 PathsByRoot) {
treeString = 生成 TreeStringWithroots(文件PathsByRoot,目录PathsForTree);
否则
treeString = 生成 TreeString(文件PathsForTree,目录PathsForTree);
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?因此,每当“filePathsByRoot”出现时,都会绕过“BuildingOutputGeneratorContext”中计算出的每平方英寸范围,这总是在默认配置下。
□ 修补
范围“ filePathsByRoot”在调用 `generateOutput' 之前使用“ relands Groups” 中“ filePathsByRoot” 到块的自有文件 :
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你来干什么? a/弧/核心/产出/产出Split.ts b/弧/核心/产出/产出 @@ - 152,6 + 152,18 @@ Const 渲染组 = aync( 整块所有文件 . . . . . . .
内容来源: yamadashy/repomix