codex-orchestrator 0.1.3 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -45,6 +45,7 @@ export declare class GitWorktreeManager {
|
|
|
45
45
|
abortMerge(worktreePath: string): Promise<void>;
|
|
46
46
|
removeWorktree(input: RemoveWorktreeInput): Promise<void>;
|
|
47
47
|
private git;
|
|
48
|
+
private removeMergedStaleBranchWorktree;
|
|
48
49
|
}
|
|
49
50
|
export declare function renderBranchTemplate(template: string, values: BranchTemplateValues): string;
|
|
50
51
|
//# sourceMappingURL=worktree.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree.d.ts","sourceRoot":"","sources":["../../../src/git/worktree.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG7D,MAAM,WAAW,oBAAoB;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,qBAAsB,SAAQ,KAAK;aAE5B,YAAY,EAAE,MAAM;aACpB,UAAU,EAAE,MAAM;aAClB,MAAM,EAAE,MAAM;aACd,MAAM,EAAE,MAAM;gBAHd,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM;CAKjC;AAED,qBAAa,kBAAkB;IACV,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,GAAE,eAAwC;IAEzE,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK9C,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"worktree.d.ts","sourceRoot":"","sources":["../../../src/git/worktree.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAG7D,MAAM,WAAW,oBAAoB;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,wBAAwB;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,qBAAsB,SAAQ,KAAK;aAE5B,YAAY,EAAE,MAAM;aACpB,UAAU,EAAE,MAAM;aAClB,MAAM,EAAE,MAAM;aACd,MAAM,EAAE,MAAM;gBAHd,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM;CAKjC;AAED,qBAAa,kBAAkB;IACV,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,GAAE,eAAwC;IAEzE,OAAO,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAK9C,mBAAmB,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBnE,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAKzD,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB/C,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAcjD,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBnD,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI/C,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;YAIxD,GAAG;YAQH,+BAA+B;CA6B9C;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAI3F"}
|
package/dist/src/git/worktree.js
CHANGED
|
@@ -26,7 +26,7 @@ export class GitWorktreeManager {
|
|
|
26
26
|
}
|
|
27
27
|
async createIssueWorktree(input) {
|
|
28
28
|
await mkdir(dirname(input.workspacePath), { recursive: true });
|
|
29
|
-
|
|
29
|
+
const args = [
|
|
30
30
|
'-C',
|
|
31
31
|
input.targetRoot,
|
|
32
32
|
'worktree',
|
|
@@ -35,7 +35,16 @@ export class GitWorktreeManager {
|
|
|
35
35
|
input.branchName,
|
|
36
36
|
input.workspacePath,
|
|
37
37
|
input.baseBranch,
|
|
38
|
-
]
|
|
38
|
+
];
|
|
39
|
+
const result = await this.executor('git', args);
|
|
40
|
+
if (result.exitCode === 0) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
if (!/a branch named .+ already exists/i.test(result.stderr)) {
|
|
44
|
+
throw new Error(`git command failed: git ${args.join(' ')}\n${result.stderr}`);
|
|
45
|
+
}
|
|
46
|
+
await this.removeMergedStaleBranchWorktree(input);
|
|
47
|
+
await this.git(args);
|
|
39
48
|
}
|
|
40
49
|
async listChangedFiles(worktreePath) {
|
|
41
50
|
const result = await this.git(['-C', worktreePath, 'status', '--porcelain=v1', '-z']);
|
|
@@ -104,6 +113,29 @@ export class GitWorktreeManager {
|
|
|
104
113
|
}
|
|
105
114
|
return result;
|
|
106
115
|
}
|
|
116
|
+
async removeMergedStaleBranchWorktree(input) {
|
|
117
|
+
const ancestor = await this.executor('git', [
|
|
118
|
+
'-C',
|
|
119
|
+
input.targetRoot,
|
|
120
|
+
'merge-base',
|
|
121
|
+
'--is-ancestor',
|
|
122
|
+
input.branchName,
|
|
123
|
+
input.baseBranch,
|
|
124
|
+
]);
|
|
125
|
+
if (ancestor.exitCode !== 0) {
|
|
126
|
+
throw new Error(`Existing branch ${input.branchName} is not merged into ${input.baseBranch}; refusing to remove it automatically.`);
|
|
127
|
+
}
|
|
128
|
+
const worktrees = parseWorktreeList((await this.git(['-C', input.targetRoot, 'worktree', 'list', '--porcelain'])).stdout);
|
|
129
|
+
const staleWorktree = worktrees.find((worktree) => worktree.branch === `refs/heads/${input.branchName}`);
|
|
130
|
+
if (staleWorktree) {
|
|
131
|
+
const status = await this.git(['-C', staleWorktree.path, 'status', '--porcelain=v1']);
|
|
132
|
+
if (status.stdout.trim().length > 0) {
|
|
133
|
+
throw new Error(`Existing worktree for ${input.branchName} has uncommitted changes at ${staleWorktree.path}; refusing to remove it automatically.`);
|
|
134
|
+
}
|
|
135
|
+
await this.removeWorktree({ targetRoot: input.targetRoot, worktreePath: staleWorktree.path });
|
|
136
|
+
}
|
|
137
|
+
await this.git(['-C', input.targetRoot, 'branch', '-d', input.branchName]);
|
|
138
|
+
}
|
|
107
139
|
}
|
|
108
140
|
export function renderBranchTemplate(template, values) {
|
|
109
141
|
return template
|
|
@@ -136,4 +168,19 @@ function parsePorcelainChangedFiles(output) {
|
|
|
136
168
|
function normalizePath(path) {
|
|
137
169
|
return path.replaceAll('\\', '/');
|
|
138
170
|
}
|
|
171
|
+
function parseWorktreeList(output) {
|
|
172
|
+
const worktrees = [];
|
|
173
|
+
let current;
|
|
174
|
+
for (const line of output.split('\n')) {
|
|
175
|
+
if (line.startsWith('worktree ')) {
|
|
176
|
+
current = { path: line.slice('worktree '.length) };
|
|
177
|
+
worktrees.push(current);
|
|
178
|
+
continue;
|
|
179
|
+
}
|
|
180
|
+
if (current && line.startsWith('branch ')) {
|
|
181
|
+
current.branch = line.slice('branch '.length);
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
return worktrees;
|
|
185
|
+
}
|
|
139
186
|
//# sourceMappingURL=worktree.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worktree.js","sourceRoot":"","sources":["../../../src/git/worktree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAmC/D,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAE5B;IACA;IACA;IACA;IAJlB,YACkB,YAAoB,EACpB,UAAkB,EAClB,MAAc,EACd,MAAc;QAE9B,KAAK,CAAC,wBAAwB,UAAU,OAAO,YAAY,EAAE,CAAC,CAAC;QAL/C,iBAAY,GAAZ,YAAY,CAAQ;QACpB,eAAU,GAAV,UAAU,CAAQ;QAClB,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAAQ;QAG9B,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AAED,MAAM,OAAO,kBAAkB;IACO;IAApC,YAAoC,WAA4B,sBAAsB;QAAlD,aAAQ,GAAR,QAAQ,CAA0C;IAAG,CAAC;IAEnF,KAAK,CAAC,OAAO,CAAC,YAAoB;QACvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;QACzE,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC9B,CAAC;IAEM,KAAK,CAAC,mBAAmB,CAAC,KAA+B;QAC9D,MAAM,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/D,MAAM,IAAI,
|
|
1
|
+
{"version":3,"file":"worktree.js","sourceRoot":"","sources":["../../../src/git/worktree.ts"],"names":[],"mappings":"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"}
|