sync-worktrees 1.7.4 → 1.8.0

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.
Files changed (34) hide show
  1. package/README.md +6 -1
  2. package/dist/constants.d.ts +54 -0
  3. package/dist/constants.d.ts.map +1 -0
  4. package/dist/constants.js +66 -0
  5. package/dist/constants.js.map +1 -0
  6. package/dist/errors/index.d.ts +51 -0
  7. package/dist/errors/index.d.ts.map +1 -0
  8. package/dist/errors/index.js +119 -0
  9. package/dist/errors/index.js.map +1 -0
  10. package/dist/services/git.service.d.ts +2 -0
  11. package/dist/services/git.service.d.ts.map +1 -1
  12. package/dist/services/git.service.js +52 -40
  13. package/dist/services/git.service.js.map +1 -1
  14. package/dist/services/path-resolution.service.d.ts +7 -0
  15. package/dist/services/path-resolution.service.d.ts.map +1 -0
  16. package/dist/services/path-resolution.service.js +58 -0
  17. package/dist/services/path-resolution.service.js.map +1 -0
  18. package/dist/services/worktree-metadata.service.d.ts +12 -0
  19. package/dist/services/worktree-metadata.service.d.ts.map +1 -1
  20. package/dist/services/worktree-metadata.service.js +162 -3
  21. package/dist/services/worktree-metadata.service.js.map +1 -1
  22. package/dist/services/worktree-status.service.d.ts +28 -0
  23. package/dist/services/worktree-status.service.d.ts.map +1 -0
  24. package/dist/services/worktree-status.service.js +229 -0
  25. package/dist/services/worktree-status.service.js.map +1 -0
  26. package/dist/services/worktree-sync.service.d.ts +1 -0
  27. package/dist/services/worktree-sync.service.d.ts.map +1 -1
  28. package/dist/services/worktree-sync.service.js +37 -21
  29. package/dist/services/worktree-sync.service.js.map +1 -1
  30. package/dist/utils/lfs-error.d.ts +6 -0
  31. package/dist/utils/lfs-error.d.ts.map +1 -1
  32. package/dist/utils/lfs-error.js +16 -14
  33. package/dist/utils/lfs-error.js.map +1 -1
  34. package/package.json +1 -1
@@ -0,0 +1,229 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.WorktreeStatusService = void 0;
40
+ const fs = __importStar(require("fs/promises"));
41
+ const path = __importStar(require("path"));
42
+ const simple_git_1 = __importDefault(require("simple-git"));
43
+ const constants_1 = require("../constants");
44
+ const errors_1 = require("../errors");
45
+ const lfs_error_1 = require("../utils/lfs-error");
46
+ class WorktreeStatusService {
47
+ config;
48
+ constructor(config = {}) {
49
+ this.config = config;
50
+ }
51
+ async checkWorktreeStatus(worktreePath) {
52
+ const worktreeGit = this.createGitInstance(worktreePath);
53
+ const status = await worktreeGit.status();
54
+ return status.isClean();
55
+ }
56
+ async getFullWorktreeStatus(worktreePath) {
57
+ const isClean = await this.checkWorktreeStatus(worktreePath);
58
+ const hasUnpushedCommits = await this.hasUnpushedCommits(worktreePath);
59
+ const hasStashedChanges = await this.hasStashedChanges(worktreePath);
60
+ const hasOperationInProgress = await this.hasOperationInProgress(worktreePath);
61
+ const hasModifiedSubmodules = await this.hasModifiedSubmodules(worktreePath);
62
+ const upstreamGone = await this.hasUpstreamGone(worktreePath);
63
+ const reasons = [];
64
+ if (!isClean)
65
+ reasons.push("uncommitted changes");
66
+ if (hasUnpushedCommits)
67
+ reasons.push("unpushed commits");
68
+ if (hasStashedChanges)
69
+ reasons.push("stashed changes");
70
+ if (hasOperationInProgress)
71
+ reasons.push("operation in progress");
72
+ if (hasModifiedSubmodules)
73
+ reasons.push("modified submodules");
74
+ const canRemove = isClean && !hasUnpushedCommits && !hasStashedChanges && !hasOperationInProgress && !hasModifiedSubmodules;
75
+ return {
76
+ isClean,
77
+ hasUnpushedCommits,
78
+ hasStashedChanges,
79
+ hasOperationInProgress,
80
+ hasModifiedSubmodules,
81
+ upstreamGone,
82
+ canRemove,
83
+ reasons,
84
+ };
85
+ }
86
+ async hasUnpushedCommits(worktreePath, lastSyncCommit) {
87
+ const worktreeGit = this.createGitInstance(worktreePath);
88
+ try {
89
+ if (await this.isDetachedHead(worktreeGit)) {
90
+ return false;
91
+ }
92
+ const branchSummary = await worktreeGit.branch();
93
+ const currentBranch = branchSummary.current;
94
+ if (lastSyncCommit) {
95
+ try {
96
+ const newCommitsResult = await worktreeGit.raw(["rev-list", "--count", `${lastSyncCommit}..HEAD`]);
97
+ const newCommitsCount = parseInt(newCommitsResult.trim(), 10);
98
+ return newCommitsCount > 0;
99
+ }
100
+ catch {
101
+ // Fall through to regular check
102
+ }
103
+ }
104
+ const result = await worktreeGit.raw(["rev-list", "--count", currentBranch, "--not", "--remotes"]);
105
+ const unpushedCount = parseInt(result.trim(), 10);
106
+ return unpushedCount > 0;
107
+ }
108
+ catch (error) {
109
+ console.error(`Error checking unpushed commits: ${error}`);
110
+ return false;
111
+ }
112
+ }
113
+ async hasUpstreamGone(worktreePath) {
114
+ const worktreeGit = this.createGitInstance(worktreePath);
115
+ try {
116
+ if (await this.isDetachedHead(worktreeGit)) {
117
+ return false;
118
+ }
119
+ const branchSummary = await worktreeGit.branch();
120
+ const currentBranch = branchSummary.current;
121
+ const upstream = await worktreeGit.raw(["rev-parse", "--abbrev-ref", `${currentBranch}@{upstream}`]);
122
+ const remoteBranches = await worktreeGit.branch(["-r"]);
123
+ return !remoteBranches.all.includes(upstream.trim());
124
+ }
125
+ catch (error) {
126
+ const errorMessage = (0, lfs_error_1.getErrorMessage)(error);
127
+ if (errorMessage.includes("fatal: no upstream configured") ||
128
+ errorMessage.includes("no upstream configured for branch") ||
129
+ errorMessage.includes("fatal: ambiguous argument") ||
130
+ errorMessage.includes("unknown revision or path")) {
131
+ return false;
132
+ }
133
+ console.error(`Unexpected error checking upstream status for ${worktreePath}: ${errorMessage}`);
134
+ return false;
135
+ }
136
+ }
137
+ async hasStashedChanges(worktreePath) {
138
+ const worktreeGit = this.createGitInstance(worktreePath);
139
+ try {
140
+ const stashList = await worktreeGit.stashList();
141
+ return stashList.total > 0;
142
+ }
143
+ catch (error) {
144
+ console.error(`Error checking stash: ${error}`);
145
+ return true; // Conservative: assume unsafe to delete
146
+ }
147
+ }
148
+ async hasModifiedSubmodules(worktreePath) {
149
+ const worktreeGit = this.createGitInstance(worktreePath);
150
+ try {
151
+ const result = await worktreeGit.raw(["submodule", "status"]);
152
+ const lines = result.split("\n").filter((line) => line.trim());
153
+ for (const line of lines) {
154
+ const firstChar = line.charAt(0);
155
+ if (firstChar === "+" || firstChar === "-") {
156
+ return true;
157
+ }
158
+ }
159
+ return false;
160
+ }
161
+ catch {
162
+ return false;
163
+ }
164
+ }
165
+ async hasOperationInProgress(worktreePath) {
166
+ try {
167
+ const gitDir = await this.resolveGitDir(worktreePath);
168
+ const operationFiles = [
169
+ constants_1.GIT_OPERATIONS.MERGE_HEAD,
170
+ constants_1.GIT_OPERATIONS.CHERRY_PICK_HEAD,
171
+ constants_1.GIT_OPERATIONS.REVERT_HEAD,
172
+ constants_1.GIT_OPERATIONS.BISECT_LOG,
173
+ constants_1.GIT_OPERATIONS.REBASE_MERGE,
174
+ constants_1.GIT_OPERATIONS.REBASE_APPLY,
175
+ ];
176
+ for (const file of operationFiles) {
177
+ try {
178
+ await fs.access(path.join(gitDir, file));
179
+ return true;
180
+ }
181
+ catch {
182
+ continue;
183
+ }
184
+ }
185
+ return false;
186
+ }
187
+ catch {
188
+ return false;
189
+ }
190
+ }
191
+ async validateWorktreeForRemoval(worktreePath) {
192
+ const status = await this.getFullWorktreeStatus(worktreePath);
193
+ if (!status.canRemove) {
194
+ throw new errors_1.WorktreeNotCleanError(worktreePath, status.reasons);
195
+ }
196
+ }
197
+ async isDetachedHead(worktreeGit) {
198
+ try {
199
+ const branchSummary = await worktreeGit.branch();
200
+ return !branchSummary.current || branchSummary.detached;
201
+ }
202
+ catch {
203
+ return true;
204
+ }
205
+ }
206
+ async resolveGitDir(worktreePath) {
207
+ const gitPath = path.join(worktreePath, constants_1.PATH_CONSTANTS.GIT_DIR);
208
+ try {
209
+ const stat = await fs.stat(gitPath);
210
+ if (stat.isFile()) {
211
+ const content = await fs.readFile(gitPath, "utf-8");
212
+ const gitdirMatch = content.match(/^gitdir:\s*(.+)$/m);
213
+ if (gitdirMatch) {
214
+ return path.resolve(worktreePath, gitdirMatch[1].trim());
215
+ }
216
+ }
217
+ return gitPath;
218
+ }
219
+ catch (error) {
220
+ throw new errors_1.GitOperationError("resolve-git-dir", `Failed to resolve .git directory for ${worktreePath}`, error instanceof Error ? error : undefined);
221
+ }
222
+ }
223
+ createGitInstance(worktreePath) {
224
+ const git = (0, simple_git_1.default)(worktreePath);
225
+ return this.config.skipLfs ? git.env({ GIT_LFS_SKIP_SMUDGE: "1" }) : git;
226
+ }
227
+ }
228
+ exports.WorktreeStatusService = WorktreeStatusService;
229
+ //# sourceMappingURL=worktree-status.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worktree-status.service.js","sourceRoot":"","sources":["../../src/services/worktree-status.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAkC;AAClC,2CAA6B;AAE7B,4DAAmC;AAEnC,4CAA8D;AAC9D,sCAAqE;AACrE,kDAAqD;AAerD,MAAa,qBAAqB;IACH;IAA7B,YAA6B,SAAgC,EAAE;QAAlC,WAAM,GAAN,MAAM,CAA4B;IAAG,CAAC;IAEnE,KAAK,CAAC,mBAAmB,CAAC,YAAoB;QAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,CAAC;QAC1C,OAAO,MAAM,CAAC,OAAO,EAAE,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,YAAoB;QAC9C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;QAC7D,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QACvE,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QACrE,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;QAC/E,MAAM,qBAAqB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;QAC7E,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAE9D,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,IAAI,CAAC,OAAO;YAAE,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAClD,IAAI,kBAAkB;YAAE,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACzD,IAAI,iBAAiB;YAAE,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACvD,IAAI,sBAAsB;YAAE,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAClE,IAAI,qBAAqB;YAAE,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAE/D,MAAM,SAAS,GACb,OAAO,IAAI,CAAC,kBAAkB,IAAI,CAAC,iBAAiB,IAAI,CAAC,sBAAsB,IAAI,CAAC,qBAAqB,CAAC;QAE5G,OAAO;YACL,OAAO;YACP,kBAAkB;YAClB,iBAAiB;YACjB,sBAAsB;YACtB,qBAAqB;YACrB,YAAY;YACZ,SAAS;YACT,OAAO;SACR,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,YAAoB,EAAE,cAAuB;QACpE,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QAEzD,IAAI,CAAC;YACH,IAAI,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC3C,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,CAAC;YACjD,MAAM,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC;YAE5C,IAAI,cAAc,EAAE,CAAC;gBACnB,IAAI,CAAC;oBACH,MAAM,gBAAgB,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,cAAc,QAAQ,CAAC,CAAC,CAAC;oBACnG,MAAM,eAAe,GAAG,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;oBAC9D,OAAO,eAAe,GAAG,CAAC,CAAC;gBAC7B,CAAC;gBAAC,MAAM,CAAC;oBACP,gCAAgC;gBAClC,CAAC;YACH,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC;YACnG,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YAClD,OAAO,aAAa,GAAG,CAAC,CAAC;QAC3B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,oCAAoC,KAAK,EAAE,CAAC,CAAC;YAC3D,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,YAAoB;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QAEzD,IAAI,CAAC;YACH,IAAI,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC3C,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,CAAC;YACjD,MAAM,aAAa,GAAG,aAAa,CAAC,OAAO,CAAC;YAE5C,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,cAAc,EAAE,GAAG,aAAa,aAAa,CAAC,CAAC,CAAC;YACrG,MAAM,cAAc,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YAExD,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,IAAA,2BAAe,EAAC,KAAK,CAAC,CAAC;YAE5C,IACE,YAAY,CAAC,QAAQ,CAAC,+BAA+B,CAAC;gBACtD,YAAY,CAAC,QAAQ,CAAC,mCAAmC,CAAC;gBAC1D,YAAY,CAAC,QAAQ,CAAC,2BAA2B,CAAC;gBAClD,YAAY,CAAC,QAAQ,CAAC,0BAA0B,CAAC,EACjD,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;YAED,OAAO,CAAC,KAAK,CAAC,iDAAiD,YAAY,KAAK,YAAY,EAAE,CAAC,CAAC;YAChG,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,YAAoB;QAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QAEzD,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,SAAS,EAAE,CAAC;YAChD,OAAO,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;YAChD,OAAO,IAAI,CAAC,CAAC,wCAAwC;QACvD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,YAAoB;QAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;QAEzD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC9D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAE/D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBACjC,IAAI,SAAS,KAAK,GAAG,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;oBAC3C,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,YAAoB;QAC/C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;YAEtD,MAAM,cAAc,GAAG;gBACrB,0BAAc,CAAC,UAAU;gBACzB,0BAAc,CAAC,gBAAgB;gBAC/B,0BAAc,CAAC,WAAW;gBAC1B,0BAAc,CAAC,UAAU;gBACzB,0BAAc,CAAC,YAAY;gBAC3B,0BAAc,CAAC,YAAY;aAC5B,CAAC;YAEF,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;gBAClC,IAAI,CAAC;oBACH,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;oBACzC,OAAO,IAAI,CAAC;gBACd,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS;gBACX,CAAC;YACH,CAAC;YAED,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,0BAA0B,CAAC,YAAoB;QACnD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;QAE9D,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACtB,MAAM,IAAI,8BAAqB,CAAC,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,WAAsB;QACjD,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,CAAC;YACjD,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,aAAa,CAAC,QAAQ,CAAC;QAC1D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,YAAoB;QAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,0BAAc,CAAC,OAAO,CAAC,CAAC;QAEhE,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAEpC,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;gBAClB,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACpD,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBACvD,IAAI,WAAW,EAAE,CAAC;oBAChB,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,0BAAiB,CACzB,iBAAiB,EACjB,wCAAwC,YAAY,EAAE,EACtD,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAC3C,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,iBAAiB,CAAC,YAAoB;QAC5C,MAAM,GAAG,GAAG,IAAA,oBAAS,EAAC,YAAY,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,mBAAmB,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAC3E,CAAC;CACF;AA7MD,sDA6MC"}
@@ -11,6 +11,7 @@ export declare class WorktreeSyncService {
11
11
  private updateExistingWorktrees;
12
12
  private cleanupOrphanedDirectories;
13
13
  private handleDivergedBranch;
14
+ private hasLocalChangesSinceLastSync;
14
15
  private divergeWorktree;
15
16
  }
16
17
  //# sourceMappingURL=worktree-sync.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"worktree-sync.service.d.ts","sourceRoot":"","sources":["../../src/services/worktree-sync.service.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGvC,qBAAa,mBAAmB;IAGlB,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,UAAU,CAAa;gBAEX,MAAM,EAAE,MAAM;IAI5B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YA2Hb,kBAAkB;YAoBlB,iBAAiB;YAmDjB,mBAAmB;YA6BnB,uBAAuB;YAiGvB,0BAA0B;YA2C1B,oBAAoB;YA2BpB,eAAe;CA+C9B"}
1
+ {"version":3,"file":"worktree-sync.service.d.ts","sourceRoot":"","sources":["../../src/services/worktree-sync.service.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGvC,qBAAa,mBAAmB;IAGlB,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,UAAU,CAAa;gBAEX,MAAM,EAAE,MAAM;IAI5B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAmHb,kBAAkB;YAoBlB,iBAAiB;YAmDjB,mBAAmB;YA6BnB,uBAAuB;YAiGvB,0BAA0B;YA2C1B,oBAAoB;YAoCpB,4BAA4B;YAc5B,eAAe;CA+C9B"}
@@ -60,7 +60,7 @@ class WorktreeSyncService {
60
60
  maxDelayMs: this.config.retry?.maxDelayMs ?? 30000,
61
61
  backoffMultiplier: this.config.retry?.backoffMultiplier ?? 2,
62
62
  onRetry: (error, attempt, context) => {
63
- const errorMessage = error instanceof Error ? error.message : String(error);
63
+ const errorMessage = (0, lfs_error_1.getErrorMessage)(error);
64
64
  console.log(`\n⚠️ Sync attempt ${attempt} failed: ${errorMessage}`);
65
65
  if (context?.isLfsError && !this.config.skipLfs) {
66
66
  console.log(`🔄 LFS error detected. Will retry with LFS skipped...`);
@@ -85,8 +85,7 @@ class WorktreeSyncService {
85
85
  await this.gitService.fetchAll();
86
86
  }
87
87
  catch (fetchError) {
88
- const errorMessage = fetchError instanceof Error ? fetchError.message : String(fetchError);
89
- // If it's an LFS error and we haven't already enabled skip, try branch-by-branch
88
+ const errorMessage = (0, lfs_error_1.getErrorMessage)(fetchError);
90
89
  if ((0, lfs_error_1.isLfsError)(errorMessage) && !lfsSkipEnabled && !this.config.skipLfs) {
91
90
  console.log("⚠️ Fetch all failed due to LFS error. Attempting branch-by-branch fetch...");
92
91
  console.log("⚠️ Temporarily disabling LFS downloads for branch-by-branch fetch...");
@@ -100,10 +99,7 @@ class WorktreeSyncService {
100
99
  }
101
100
  let remoteBranches;
102
101
  if (this.config.branchMaxAge) {
103
- const getWithActivity = this.gitService.getRemoteBranchesWithActivity?.bind(this.gitService);
104
- const branchesWithActivity = getWithActivity
105
- ? await getWithActivity()
106
- : (await this.gitService.getRemoteBranches()).map((b) => ({ branch: b, lastActivity: new Date(0) }));
102
+ const branchesWithActivity = await this.gitService.getRemoteBranchesWithActivity();
107
103
  const filteredBranches = (0, date_filter_1.filterBranchesByAge)(branchesWithActivity, this.config.branchMaxAge);
108
104
  remoteBranches = filteredBranches.map((b) => b.branch);
109
105
  console.log(`Found ${branchesWithActivity.length} remote branches.`);
@@ -231,7 +227,7 @@ class WorktreeSyncService {
231
227
  successCount++;
232
228
  }
233
229
  catch (error) {
234
- const errorMessage = error instanceof Error ? error.message : String(error);
230
+ const errorMessage = (0, lfs_error_1.getErrorMessage)(error);
235
231
  console.log(` ⚠️ Failed to fetch branch '${branch}': ${errorMessage}`);
236
232
  failedBranches.push(branch);
237
233
  }
@@ -304,7 +300,7 @@ class WorktreeSyncService {
304
300
  }
305
301
  catch (error) {
306
302
  // Check if this is specifically a fast-forward error indicating diverged history
307
- const errorMessage = error instanceof Error ? error.message : String(error);
303
+ const errorMessage = (0, lfs_error_1.getErrorMessage)(error);
308
304
  // Only treat as diverged if it's specifically a fast-forward failure
309
305
  // Other errors (network issues, permission problems, etc.) should not trigger divergence handling
310
306
  if (errorMessage.includes("Not possible to fast-forward") ||
@@ -377,17 +373,37 @@ class WorktreeSyncService {
377
373
  console.log(` Successfully updated '${worktree.branch}' to match upstream.`);
378
374
  }
379
375
  else {
380
- console.log(`🔒 Branch '${worktree.branch}' has diverged with different content. Moving to diverged...`);
381
- const divergedPath = await this.divergeWorktree(worktree.path, worktree.branch);
382
- const relativePath = path.relative(process.cwd(), divergedPath);
383
- console.log(` Moved to: ${relativePath}`);
384
- console.log(` Your local changes are preserved. To review:`);
385
- console.log(` cd ${relativePath}`);
386
- console.log(` git diff origin/${worktree.branch}`);
387
- // Create fresh worktree from upstream
388
- await this.gitService.removeWorktree(worktree.path);
389
- await this.gitService.addWorktree(worktree.branch, worktree.path);
390
- console.log(` Created fresh worktree from upstream at: ${worktree.path}`);
376
+ const hasLocalChanges = await this.hasLocalChangesSinceLastSync(worktree.path);
377
+ if (!hasLocalChanges) {
378
+ console.log(`✅ Branch '${worktree.branch}' has diverged but you made no local changes. Resetting to upstream...`);
379
+ await this.gitService.resetToUpstream(worktree.path, worktree.branch);
380
+ console.log(` Successfully updated '${worktree.branch}' to match upstream.`);
381
+ }
382
+ else {
383
+ console.log(`🔒 Branch '${worktree.branch}' has diverged with local changes. Moving to diverged...`);
384
+ const divergedPath = await this.divergeWorktree(worktree.path, worktree.branch);
385
+ const relativePath = path.relative(process.cwd(), divergedPath);
386
+ console.log(` Moved to: ${relativePath}`);
387
+ console.log(` Your local changes are preserved. To review:`);
388
+ console.log(` cd ${relativePath}`);
389
+ console.log(` git diff origin/${worktree.branch}`);
390
+ await this.gitService.removeWorktree(worktree.path);
391
+ await this.gitService.addWorktree(worktree.branch, worktree.path);
392
+ console.log(` Created fresh worktree from upstream at: ${worktree.path}`);
393
+ }
394
+ }
395
+ }
396
+ async hasLocalChangesSinceLastSync(worktreePath) {
397
+ try {
398
+ const metadata = await this.gitService.getWorktreeMetadata(worktreePath);
399
+ if (!metadata || !metadata.lastSyncCommit) {
400
+ return true;
401
+ }
402
+ const currentCommit = await this.gitService.getCurrentCommit(worktreePath);
403
+ return currentCommit !== metadata.lastSyncCommit;
404
+ }
405
+ catch {
406
+ return true;
391
407
  }
392
408
  }
393
409
  async divergeWorktree(worktreePath, branchName) {
@@ -427,7 +443,7 @@ class WorktreeSyncService {
427
443
  1. Review: git diff origin/${branchName}
428
444
  2. Keep changes: git push --force-with-lease origin ${branchName}
429
445
  3. Discard changes: rm -rf this directory
430
-
446
+
431
447
  Original worktree location: ${worktreePath}`,
432
448
  };
433
449
  await fs.writeFile(path.join(divergedPath, ".diverged-info.json"), JSON.stringify(metadata, null, 2));
@@ -1 +1 @@
1
- {"version":3,"file":"worktree-sync.service.js","sourceRoot":"","sources":["../../src/services/worktree-sync.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAkC;AAClC,2CAA6B;AAE7B,sDAA2E;AAC3E,kDAAgD;AAChD,0CAAuC;AAEvC,+CAA2C;AAK3C,MAAa,mBAAmB;IAGV;IAFZ,UAAU,CAAa;IAE/B,YAAoB,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;QAChC,IAAI,CAAC,UAAU,GAAG,IAAI,wBAAU,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,IAAI;QACR,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,wCAAwC,CAAC,CAAC;QAElF,IAAI,cAAc,GAAG,KAAK,CAAC;QAE3B,MAAM,YAAY,GAAiB;YACjC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,IAAI,CAAC;YAChD,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,IAAI,CAAC;YACpD,cAAc,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,cAAc,IAAI,IAAI;YACzD,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,IAAI,KAAK;YAClD,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,iBAAiB,IAAI,CAAC;YAC5D,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;gBACnC,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC5E,OAAO,CAAC,GAAG,CAAC,sBAAsB,OAAO,YAAY,YAAY,EAAE,CAAC,CAAC;gBAErE,IAAI,OAAO,EAAE,UAAU,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBAChD,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;gBACvE,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC;YACD,eAAe,EAAE,GAAG,EAAE;gBACpB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;oBAC5C,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;oBACxE,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,GAAG,CAAC;oBACtC,cAAc,GAAG,IAAI,CAAC;gBACxB,CAAC;YACH,CAAC;SACF,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,IAAA,aAAK,EAAC,KAAK,IAAI,EAAE;gBACrB,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;gBAEvC,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;gBAE3D,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;gBACnC,CAAC;gBAAC,OAAO,UAAU,EAAE,CAAC;oBACpB,MAAM,YAAY,GAAG,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBAE3F,iFAAiF;oBACjF,IAAI,IAAA,sBAAU,EAAC,YAAY,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACxE,OAAO,CAAC,GAAG,CAAC,6EAA6E,CAAC,CAAC;wBAC3F,OAAO,CAAC,GAAG,CAAC,uEAAuE,CAAC,CAAC;wBACrF,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,GAAG,CAAC;wBACtC,cAAc,GAAG,IAAI,CAAC;wBACtB,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;oBACnC,CAAC;yBAAM,CAAC;wBACN,MAAM,UAAU,CAAC;oBACnB,CAAC;gBACH,CAAC;gBAED,IAAI,cAAwB,CAAC;gBAE7B,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;oBAG7B,MAAM,eAAe,GACnB,IAAI,CAAC,UACN,CAAC,6BAA6B,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACvD,MAAM,oBAAoB,GAAG,eAAe;wBAC1C,CAAC,CAAC,MAAM,eAAe,EAAE;wBACzB,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,YAAY,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBACvG,MAAM,gBAAgB,GAAG,IAAA,iCAAmB,EAAC,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;oBAC7F,cAAc,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;oBAEvD,OAAO,CAAC,GAAG,CAAC,SAAS,oBAAoB,CAAC,MAAM,mBAAmB,CAAC,CAAC;oBACrE,OAAO,CAAC,GAAG,CACT,2BAA2B,IAAA,4BAAc,EAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,cAAc,CAAC,MAAM,YAAY,CAC3G,CAAC;oBAEF,IAAI,oBAAoB,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC;wBACxD,MAAM,aAAa,GAAG,oBAAoB,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;wBAC1E,OAAO,CAAC,GAAG,CAAC,gBAAgB,aAAa,kBAAkB,CAAC,CAAC;oBAC/D,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,0CAA0C;oBAC1C,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;oBAC3D,OAAO,CAAC,GAAG,CAAC,SAAS,cAAc,CAAC,MAAM,mBAAmB,CAAC,CAAC;gBACjE,CAAC;gBAED,oEAAoE;gBACpE,MAAM,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;gBACzD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;oBAC5C,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBACnC,OAAO,CAAC,GAAG,CAAC,4BAA4B,aAAa,gBAAgB,CAAC,CAAC;gBACzE,CAAC;gBAED,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAE7D,uDAAuD;gBACvD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;gBACvD,MAAM,gBAAgB,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBACxD,OAAO,CAAC,GAAG,CAAC,SAAS,SAAS,CAAC,MAAM,0BAA0B,CAAC,CAAC;gBAEjE,gCAAgC;gBAChC,MAAM,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC;gBAEjD,MAAM,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;gBAE/E,MAAM,IAAI,CAAC,iBAAiB,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;gBAE/D,uCAAuC;gBACvC,IAAI,IAAI,CAAC,MAAM,CAAC,uBAAuB,KAAK,KAAK,EAAE,CAAC;oBAClD,MAAM,IAAI,CAAC,uBAAuB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;gBAChE,CAAC;gBAED,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;gBACvC,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;YACnD,CAAC,EAAE,YAAY,CAAC,CAAC;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,qEAAqE,EAAE,KAAK,CAAC,CAAC;YAC5F,MAAM,KAAK,CAAC;QACd,CAAC;gBAAS,CAAC;YACT,gDAAgD;YAChD,IAAI,cAAc,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAC3C,OAAO,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;YACzC,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,+BAA+B,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,cAAwB,EACxB,wBAAkC,EAClC,aAAqB;QAErB,MAAM,WAAW,GAAG,cAAc;aAC/B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;aACpD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC;QAEtC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,uCAAuC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7E,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;gBACrC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;gBACpE,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,cAAwB,EAAE,wBAAkC;QAC1F,MAAM,eAAe,GAAG,wBAAwB,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAEtG,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,kDAAkD,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAE5F,KAAK,MAAM,UAAU,IAAI,eAAe,EAAE,CAAC;gBACzC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;gBAEpE,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;oBACxE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;oBAC3E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;oBACvE,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;oBAChF,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;oBAErF,MAAM,SAAS,GAAG,OAAO,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,IAAI,CAAC,YAAY,IAAI,CAAC,kBAAkB,CAAC;oBAE/F,IAAI,SAAS,EAAE,CAAC;wBACd,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;oBACrD,CAAC;yBAAM,CAAC;wBACN,iDAAiD;wBACjD,MAAM,YAAY,GAAG,WAAW,IAAI,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC;wBAE1F,IAAI,YAAY,EAAE,CAAC;4BACjB,OAAO,CAAC,IAAI,CAAC,uCAAuC,UAAU,kCAAkC,CAAC,CAAC;4BAClG,OAAO,CAAC,GAAG,CAAC,mCAAmC,YAAY,aAAa,CAAC,CAAC;4BAC1E,OAAO,CAAC,GAAG,CACT,uFAAuF,YAAY,EAAE,CACtG,CAAC;wBACJ,CAAC;6BAAM,CAAC;4BACN,oCAAoC;4BACpC,MAAM,OAAO,GAAa,EAAE,CAAC;4BAC7B,IAAI,CAAC,OAAO;gCAAE,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;4BAClD,IAAI,WAAW;gCAAE,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;4BAClD,IAAI,QAAQ;gCAAE,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;4BAC9C,IAAI,YAAY;gCAAE,OAAO,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;4BACxD,IAAI,kBAAkB;gCAAE,OAAO,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;4BAE5D,OAAO,CAAC,GAAG,CAAC,+BAA+B,UAAU,aAAa,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;wBAC3F,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,gCAAgC,UAAU,IAAI,EAAE,KAAK,CAAC,CAAC;gBACvE,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB;QAC/B,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QAEvE,0EAA0E;QAC1E,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,SAAS,cAAc,CAAC,MAAM,4BAA4B,CAAC,CAAC;QAExE,MAAM,cAAc,GAAa,EAAE,CAAC;QACpC,IAAI,YAAY,GAAG,CAAC,CAAC;QAErB,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;YACpC,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBAC1C,YAAY,EAAE,CAAC;YACjB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC5E,OAAO,CAAC,GAAG,CAAC,iCAAiC,MAAM,MAAM,YAAY,EAAE,CAAC,CAAC;gBACzE,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,qCAAqC,YAAY,IAAI,cAAc,CAAC,MAAM,aAAa,CAAC,CAAC;QAErG,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,uBAAuB,cAAc,CAAC,MAAM,0BAA0B,CAAC,CAAC;YACpF,OAAO,CAAC,GAAG,CAAC,sCAAsC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,uBAAuB,CACnC,SAA6C,EAC7C,cAAwB;QAExB,MAAM,iBAAiB,GAAuC,EAAE,CAAC;QAEjE,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;QAEnE,+BAA+B;QAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACpE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAC/C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,YAAY,QAAQ,CAAC,MAAM,4BAA4B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;YAClH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,qCAAqC;QACvC,CAAC;QAED,2DAA2D;QAC3D,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAEnF,6DAA6D;QAC7D,KAAK,MAAM,QAAQ,IAAI,eAAe,EAAE,CAAC;YACvC,IAAI,CAAC;gBACH,wDAAwD;gBACxD,IAAI,CAAC;oBACH,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACjC,CAAC;gBAAC,MAAM,CAAC;oBACP,mCAAmC;oBACnC,SAAS;gBACX,CAAC;gBAED,0DAA0D;gBAC1D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC1E,IAAI,KAAK,EAAE,CAAC;oBACV,SAAS;gBACX,CAAC;gBAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACzE,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,SAAS,CAAC,oCAAoC;gBAChD,CAAC;gBAED,wDAAwD;gBACxD,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC5F,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,yBAAyB;oBACzB,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;oBAC1C,SAAS;gBACX,CAAC;gBAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACvE,IAAI,QAAQ,EAAE,CAAC;oBACb,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,gCAAgC,QAAQ,CAAC,MAAM,IAAI,EAAE,KAAK,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;QAED,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,aAAa,iBAAiB,CAAC,MAAM,4CAA4C,CAAC,CAAC;YAE/F,KAAK,MAAM,QAAQ,IAAI,iBAAiB,EAAE,CAAC;gBACzC,IAAI,CAAC;oBACH,OAAO,CAAC,GAAG,CAAC,0BAA0B,QAAQ,CAAC,MAAM,MAAM,CAAC,CAAC;oBAC7D,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACpD,OAAO,CAAC,GAAG,CAAC,+BAA+B,QAAQ,CAAC,MAAM,IAAI,CAAC,CAAC;gBAClE,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,iFAAiF;oBACjF,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAE5E,qEAAqE;oBACrE,kGAAkG;oBAClG,IACE,YAAY,CAAC,QAAQ,CAAC,8BAA8B,CAAC;wBACrD,YAAY,CAAC,QAAQ,CAAC,+CAA+C,CAAC;wBACtE,YAAY,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAC5C,CAAC;wBACD,OAAO,CAAC,GAAG,CAAC,kBAAkB,QAAQ,CAAC,MAAM,wDAAwD,CAAC,CAAC;wBACvG,IAAI,CAAC;4BACH,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;wBAC5C,CAAC;wBAAC,OAAO,aAAa,EAAE,CAAC;4BACvB,OAAO,CAAC,KAAK,CAAC,2CAA2C,QAAQ,CAAC,MAAM,IAAI,EAAE,aAAa,CAAC,CAAC;wBAC/F,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,sEAAsE;wBACtE,OAAO,CAAC,KAAK,CAAC,2BAA2B,QAAQ,CAAC,MAAM,IAAI,EAAE,KAAK,CAAC,CAAC;oBACvE,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,0BAA0B,CAAC,SAA6C;QACpF,IAAI,CAAC;YACH,MAAM,qBAAqB,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;YACnG,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAE1D,gDAAgD;YAChD,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;YAElE,8DAA8D;YAC9D,MAAM,YAAY,GAAa,EAAE,CAAC;YAClC,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;gBAC9B,uDAAuD;gBACvD,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE;oBACnE,oEAAoE;oBACpE,OAAO,YAAY,KAAK,GAAG,IAAI,YAAY,CAAC,UAAU,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;gBACzE,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACtB,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,OAAO,CAAC,GAAG,CAAC,SAAS,YAAY,CAAC,MAAM,0BAA0B,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAE7F,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;oBAC/B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;oBACxD,IAAI,CAAC;wBACH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wBACpC,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;4BACvB,MAAM,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;4BACvD,OAAO,CAAC,GAAG,CAAC,mCAAmC,GAAG,EAAE,CAAC,CAAC;wBACxD,CAAC;oBACH,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,OAAO,CAAC,KAAK,CAAC,2CAA2C,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC;oBAC1E,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,KAAK,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,QAA0C;QAC3E,OAAO,CAAC,GAAG,CAAC,eAAe,QAAQ,CAAC,MAAM,4CAA4C,CAAC,CAAC;QAExF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAEhG,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,aAAa,QAAQ,CAAC,MAAM,iEAAiE,CAAC,CAAC;YAC3G,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;YACtE,OAAO,CAAC,GAAG,CAAC,4BAA4B,QAAQ,CAAC,MAAM,sBAAsB,CAAC,CAAC;QACjF,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,cAAc,QAAQ,CAAC,MAAM,8DAA8D,CAAC,CAAC;YAEzG,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;YAChF,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;YAEhE,OAAO,CAAC,GAAG,CAAC,gBAAgB,YAAY,EAAE,CAAC,CAAC;YAC5C,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,WAAW,YAAY,EAAE,CAAC,CAAC;YACvC,OAAO,CAAC,GAAG,CAAC,wBAAwB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YAEvD,sCAAsC;YACtC,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpD,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;YAClE,OAAO,CAAC,GAAG,CAAC,+CAA+C,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,YAAoB,EAAE,UAAkB;QACpE,gDAAgD;QAChD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAExE,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACvF,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACtD,MAAM,YAAY,GAAG,GAAG,SAAS,IAAI,cAAc,IAAI,YAAY,EAAE,CAAC;QACtE,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QAE9D,mCAAmC;QACnC,MAAM,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAErD,gFAAgF;QAChF,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7D,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC1B,oDAAoD;gBACpD,MAAM,EAAE,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC7D,MAAM,EAAE,CAAC,EAAE,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;QAED,uCAAuC;QACvC,MAAM,QAAQ,GAAG;YACf,cAAc,EAAE,UAAU;YAC1B,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACpC,MAAM,EAAE,+BAA+B;YACvC,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,YAAY,CAAC;YACjE,YAAY,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,UAAU,UAAU,EAAE,CAAC;YAC3E,WAAW,EAAE;+BACY,UAAU;wDACe,UAAU;;;gCAGlC,YAAY,EAAE;SACzC,CAAC;QAEF,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,qBAAqB,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAEtG,OAAO,YAAY,CAAC;IACtB,CAAC;CACF;AAhcD,kDAgcC"}
1
+ {"version":3,"file":"worktree-sync.service.js","sourceRoot":"","sources":["../../src/services/worktree-sync.service.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Extracts error message from unknown error type
3
+ * @param error The error to extract message from
4
+ * @returns The error message string
5
+ */
6
+ export declare function getErrorMessage(error: unknown): string;
1
7
  /**
2
8
  * Common LFS error patterns that indicate Git LFS-related failures
3
9
  */
@@ -1 +1 @@
1
- {"version":3,"file":"lfs-error.d.ts","sourceRoot":"","sources":["../../src/utils/lfs-error.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,kBAAkB,iIAIpB,CAAC;AAEZ;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAc3D"}
1
+ {"version":3,"file":"lfs-error.d.ts","sourceRoot":"","sources":["../../src/utils/lfs-error.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQtD;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,iIAIpB,CAAC;AAEZ;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE3D"}
@@ -1,8 +1,23 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LFS_ERROR_PATTERNS = void 0;
4
+ exports.getErrorMessage = getErrorMessage;
4
5
  exports.isLfsError = isLfsError;
5
6
  exports.isLfsErrorFromError = isLfsErrorFromError;
7
+ /**
8
+ * Extracts error message from unknown error type
9
+ * @param error The error to extract message from
10
+ * @returns The error message string
11
+ */
12
+ function getErrorMessage(error) {
13
+ if (error instanceof Error) {
14
+ return error.message;
15
+ }
16
+ if (error && typeof error === "object" && "message" in error) {
17
+ return String(error.message);
18
+ }
19
+ return String(error);
20
+ }
6
21
  /**
7
22
  * Common LFS error patterns that indicate Git LFS-related failures
8
23
  */
@@ -25,19 +40,6 @@ function isLfsError(errorMessage) {
25
40
  * @returns true if the error is related to Git LFS
26
41
  */
27
42
  function isLfsErrorFromError(error) {
28
- let errorMessage = "";
29
- if (error instanceof Error) {
30
- errorMessage = error.message;
31
- }
32
- else if (typeof error === "string") {
33
- errorMessage = error;
34
- }
35
- else if (error && typeof error === "object" && "message" in error) {
36
- errorMessage = String(error.message);
37
- }
38
- else {
39
- errorMessage = String(error);
40
- }
41
- return isLfsError(errorMessage);
43
+ return isLfsError(getErrorMessage(error));
42
44
  }
43
45
  //# sourceMappingURL=lfs-error.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lfs-error.js","sourceRoot":"","sources":["../../src/utils/lfs-error.ts"],"names":[],"mappings":";;;AAcA,gCAEC;AAOD,kDAcC;AArCD;;GAEG;AACU,QAAA,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9C,0BAA0B;IAC1B,qCAAqC;IACrC,iDAAiD;CACzC,CAAC,CAAC;AAEZ;;;;GAIG;AACH,SAAgB,UAAU,CAAC,YAAoB;IAC7C,OAAO,0BAAkB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,KAAc;IAChD,IAAI,YAAY,GAAG,EAAE,CAAC;IAEtB,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC;IAC/B,CAAC;SAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,YAAY,GAAG,KAAK,CAAC;IACvB,CAAC;SAAM,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QACpE,YAAY,GAAG,MAAM,CAAE,KAA8B,CAAC,OAAO,CAAC,CAAC;IACjE,CAAC;SAAM,CAAC;QACN,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,UAAU,CAAC,YAAY,CAAC,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"lfs-error.js","sourceRoot":"","sources":["../../src/utils/lfs-error.ts"],"names":[],"mappings":";;;AAKA,0CAQC;AAgBD,gCAEC;AAOD,kDAEC;AAxCD;;;;GAIG;AACH,SAAgB,eAAe,CAAC,KAAc;IAC5C,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC,OAAO,CAAC;IACvB,CAAC;IACD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QAC7D,OAAO,MAAM,CAAE,KAA8B,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAED;;GAEG;AACU,QAAA,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9C,0BAA0B;IAC1B,qCAAqC;IACrC,iDAAiD;CACzC,CAAC,CAAC;AAEZ;;;;GAIG;AACH,SAAgB,UAAU,CAAC,YAAoB;IAC7C,OAAO,0BAAkB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;AAC9E,CAAC;AAED;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,KAAc;IAChD,OAAO,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;AAC5C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sync-worktrees",
3
- "version": "1.7.4",
3
+ "version": "1.8.0",
4
4
  "description": "Automatically synchronize Git worktrees with remote branches - perfect for multi-branch development workflows",
5
5
  "main": "dist/index.js",
6
6
  "bin": {