@fern-api/replay 0.2.0 → 0.4.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.
- package/README.md +30 -0
- package/dist/FernignoreMigrator.d.ts +1 -7
- package/dist/FernignoreMigrator.d.ts.map +1 -1
- package/dist/FernignoreMigrator.js +1 -7
- package/dist/FernignoreMigrator.js.map +1 -1
- package/dist/LockfileManager.d.ts +3 -0
- package/dist/LockfileManager.d.ts.map +1 -1
- package/dist/LockfileManager.js +12 -0
- package/dist/LockfileManager.js.map +1 -1
- package/dist/ReplayApplicator.d.ts +9 -15
- package/dist/ReplayApplicator.d.ts.map +1 -1
- package/dist/ReplayApplicator.js +71 -30
- package/dist/ReplayApplicator.js.map +1 -1
- package/dist/ReplayDetector.d.ts +1 -5
- package/dist/ReplayDetector.d.ts.map +1 -1
- package/dist/ReplayDetector.js +8 -8
- package/dist/ReplayDetector.js.map +1 -1
- package/dist/ReplayService.d.ts +24 -16
- package/dist/ReplayService.d.ts.map +1 -1
- package/dist/ReplayService.js +206 -39
- package/dist/ReplayService.js.map +1 -1
- package/dist/cli.js +46 -23
- package/dist/cli.js.map +1 -1
- package/dist/commands/bootstrap.d.ts +2 -0
- package/dist/commands/bootstrap.d.ts.map +1 -1
- package/dist/commands/bootstrap.js +8 -20
- package/dist/commands/bootstrap.js.map +1 -1
- package/dist/git/CommitDetection.d.ts +1 -7
- package/dist/git/CommitDetection.d.ts.map +1 -1
- package/dist/git/CommitDetection.js +2 -10
- package/dist/git/CommitDetection.js.map +1 -1
- package/dist/types.d.ts +3 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -28,6 +28,36 @@ npm run build
|
|
|
28
28
|
npm test
|
|
29
29
|
```
|
|
30
30
|
|
|
31
|
+
## Local Development with Fern CLI
|
|
32
|
+
|
|
33
|
+
To use a local version of `@fern-api/replay` with the Fern CLI monorepo:
|
|
34
|
+
|
|
35
|
+
```bash
|
|
36
|
+
# From the fern-replay directory
|
|
37
|
+
cd /path/to/fern-replay
|
|
38
|
+
pnpm link --global
|
|
39
|
+
|
|
40
|
+
# From the fern monorepo root
|
|
41
|
+
cd /path/to/fern
|
|
42
|
+
pnpm link --global @fern-api/replay
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Verify the link is working:
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
ls -la node_modules/@fern-api/replay
|
|
49
|
+
# Should show a symlink pointing to your local fern-replay directory
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Any changes you make in `fern-replay` will be picked up immediately without reinstalling.
|
|
53
|
+
|
|
54
|
+
To unlink and restore the published npm version:
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
pnpm unlink @fern-api/replay
|
|
58
|
+
pnpm install
|
|
59
|
+
```
|
|
60
|
+
|
|
31
61
|
## License
|
|
32
62
|
|
|
33
63
|
MIT
|
|
@@ -33,13 +33,7 @@ export declare class FernignoreMigrator {
|
|
|
33
33
|
* Filters out comments and empty lines.
|
|
34
34
|
*/
|
|
35
35
|
readFernignorePatterns(): string[];
|
|
36
|
-
/**
|
|
37
|
-
* Analyze correlation between .fernignore patterns and git history.
|
|
38
|
-
*
|
|
39
|
-
* For patterns without recent commits (committed before last generation),
|
|
40
|
-
* creates synthetic patches by diffing the current file state against
|
|
41
|
-
* the pristine generated state at the generation's tree hash.
|
|
42
|
-
*/
|
|
36
|
+
/** Analyze .fernignore patterns vs git history. Creates synthetic patches for files differing from pristine generation. */
|
|
43
37
|
analyzeMigration(): Promise<MigrationAnalysis>;
|
|
44
38
|
/**
|
|
45
39
|
* Resolve glob patterns to actual file paths on disk.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FernignoreMigrator.d.ts","sourceRoot":"","sources":["../src/FernignoreMigrator.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,KAAK,EAAE,WAAW,EAAwB,MAAM,YAAY,CAAC;AAEpE,MAAM,WAAW,iBAAiB;IAC9B,mFAAmF;IACnF,aAAa,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,oFAAoF;IACpF,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,iFAAiF;IACjF,WAAW,EAAE,WAAW,EAAE,CAAC;IAC3B,2FAA2F;IAC3F,gBAAgB,EAAE,WAAW,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,eAAe;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,SAAS,CAAS;gBAEd,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM;IAM3E;;OAEG;IACH,gBAAgB,IAAI,OAAO;IAI3B;;;OAGG;IACH,sBAAsB,IAAI,MAAM,EAAE;IAYlC
|
|
1
|
+
{"version":3,"file":"FernignoreMigrator.d.ts","sourceRoot":"","sources":["../src/FernignoreMigrator.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,KAAK,EAAE,WAAW,EAAwB,MAAM,YAAY,CAAC;AAEpE,MAAM,WAAW,iBAAiB;IAC9B,mFAAmF;IACnF,aAAa,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,oFAAoF;IACpF,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,iFAAiF;IACjF,WAAW,EAAE,WAAW,EAAE,CAAC;IAC3B,2FAA2F;IAC3F,gBAAgB,EAAE,WAAW,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,eAAe;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,qBAAa,kBAAkB;IAC3B,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,SAAS,CAAS;gBAEd,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM;IAM3E;;OAEG;IACH,gBAAgB,IAAI,OAAO;IAI3B;;;OAGG;IACH,sBAAsB,IAAI,MAAM,EAAE;IAYlC,2HAA2H;IACrH,gBAAgB,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAwGpD;;OAEG;YACW,eAAe;IAgB7B;;OAEG;IACH,OAAO,CAAC,eAAe;IAgBvB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAazB;;OAEG;IACH,OAAO,CAAC,cAAc;IAgBtB;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,eAAe,CAAC;IA8BzC;;;OAGG;IACH,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;CAmBpD"}
|
|
@@ -34,13 +34,7 @@ export class FernignoreMigrator {
|
|
|
34
34
|
.map((line) => line.trim())
|
|
35
35
|
.filter((line) => line && !line.startsWith("#"));
|
|
36
36
|
}
|
|
37
|
-
/**
|
|
38
|
-
* Analyze correlation between .fernignore patterns and git history.
|
|
39
|
-
*
|
|
40
|
-
* For patterns without recent commits (committed before last generation),
|
|
41
|
-
* creates synthetic patches by diffing the current file state against
|
|
42
|
-
* the pristine generated state at the generation's tree hash.
|
|
43
|
-
*/
|
|
37
|
+
/** Analyze .fernignore patterns vs git history. Creates synthetic patches for files differing from pristine generation. */
|
|
44
38
|
async analyzeMigration() {
|
|
45
39
|
const patterns = this.readFernignorePatterns();
|
|
46
40
|
const detector = new ReplayDetector(this.git, this.lockManager, this.outputDir);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FernignoreMigrator.js","sourceRoot":"","sources":["../src/FernignoreMigrator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACvF,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,MAAM,CAAC;AAGxC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAoBrD,MAAM,OAAO,kBAAkB;IACnB,GAAG,CAAY;IACf,WAAW,CAAkB;IAC7B,SAAS,CAAS;IAE1B,YAAY,GAAc,EAAE,WAA4B,EAAE,SAAiB;QACvE,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,gBAAgB;QACZ,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED;;;OAGG;IACH,sBAAsB;QAClB,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QAC3D,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YAC9B,OAAO,EAAE,CAAC;QACd,CAAC;QACD,MAAM,OAAO,GAAG,YAAY,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QACtD,OAAO,OAAO;aACT,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;aAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;IACzD,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"FernignoreMigrator.js","sourceRoot":"","sources":["../src/FernignoreMigrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,9 @@ export declare class LockfileManager {
|
|
|
21
21
|
removePatch(patchId: string): void;
|
|
22
22
|
clearPatches(): void;
|
|
23
23
|
getPatches(): StoredPatch[];
|
|
24
|
+
setReplaySkippedAt(timestamp: string): void;
|
|
25
|
+
clearReplaySkippedAt(): void;
|
|
26
|
+
isReplaySkipped(): boolean;
|
|
24
27
|
getGeneration(commitSha: string): GenerationRecord | undefined;
|
|
25
28
|
getCustomizationsConfig(): CustomizationsConfig;
|
|
26
29
|
private ensureLoaded;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LockfileManager.d.ts","sourceRoot":"","sources":["../src/LockfileManager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACR,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,oBAAoB,EACvB,MAAM,YAAY,CAAC;AAIpB,qBAAa,eAAe;IACxB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,IAAI,CAA+B;gBAE/B,SAAS,EAAE,MAAM;IAI7B,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,IAAI,kBAAkB,IAAI,MAAM,CAE/B;IAED,MAAM,IAAI,OAAO;IAIjB,IAAI,IAAI,cAAc;IAYtB,UAAU,CAAC,eAAe,EAAE,gBAAgB,GAAG,IAAI;IAKnD;;;;OAIG;IACH,kBAAkB,CAAC,eAAe,EAAE,gBAAgB,GAAG,IAAI;IAS3D,IAAI,IAAI,IAAI;IAmBZ,aAAa,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAM7C,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAKlC,WAAW,CACP,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,GAAG,eAAe,GAAG,cAAc,GAAG,OAAO,CAAC,CAAC,GACpG,IAAI;IASP,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKlC,YAAY,IAAI,IAAI;IAKpB,UAAU,IAAI,WAAW,EAAE;IAK3B,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAK9D,uBAAuB,IAAI,oBAAoB;IAQ/C,OAAO,CAAC,YAAY;CAKvB"}
|
|
1
|
+
{"version":3,"file":"LockfileManager.d.ts","sourceRoot":"","sources":["../src/LockfileManager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACR,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,oBAAoB,EACvB,MAAM,YAAY,CAAC;AAIpB,qBAAa,eAAe;IACxB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,IAAI,CAA+B;gBAE/B,SAAS,EAAE,MAAM;IAI7B,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,IAAI,kBAAkB,IAAI,MAAM,CAE/B;IAED,MAAM,IAAI,OAAO;IAIjB,IAAI,IAAI,cAAc;IAYtB,UAAU,CAAC,eAAe,EAAE,gBAAgB,GAAG,IAAI;IAKnD;;;;OAIG;IACH,kBAAkB,CAAC,eAAe,EAAE,gBAAgB,GAAG,IAAI;IAS3D,IAAI,IAAI,IAAI;IAmBZ,aAAa,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAM7C,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAKlC,WAAW,CACP,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,GAAG,eAAe,GAAG,cAAc,GAAG,OAAO,CAAC,CAAC,GACpG,IAAI;IASP,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAKlC,YAAY,IAAI,IAAI;IAKpB,UAAU,IAAI,WAAW,EAAE;IAK3B,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAK3C,oBAAoB,IAAI,IAAI;IAK5B,eAAe,IAAI,OAAO;IAK1B,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAK9D,uBAAuB,IAAI,oBAAoB;IAQ/C,OAAO,CAAC,YAAY;CAKvB"}
|
package/dist/LockfileManager.js
CHANGED
|
@@ -92,6 +92,18 @@ export class LockfileManager {
|
|
|
92
92
|
this.ensureLoaded();
|
|
93
93
|
return this.lock.patches;
|
|
94
94
|
}
|
|
95
|
+
setReplaySkippedAt(timestamp) {
|
|
96
|
+
this.ensureLoaded();
|
|
97
|
+
this.lock.replay_skipped_at = timestamp;
|
|
98
|
+
}
|
|
99
|
+
clearReplaySkippedAt() {
|
|
100
|
+
this.ensureLoaded();
|
|
101
|
+
delete this.lock.replay_skipped_at;
|
|
102
|
+
}
|
|
103
|
+
isReplaySkipped() {
|
|
104
|
+
this.ensureLoaded();
|
|
105
|
+
return this.lock.replay_skipped_at != null;
|
|
106
|
+
}
|
|
95
107
|
getGeneration(commitSha) {
|
|
96
108
|
this.ensureLoaded();
|
|
97
109
|
return this.lock.generations.find((g) => g.commit_sha === commitSha);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LockfileManager.js","sourceRoot":"","sources":["../src/LockfileManager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"LockfileManager.js","sourceRoot":"","sources":["../src/LockfileManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,28 +8,16 @@ export declare class ReplayApplicator {
|
|
|
8
8
|
private renameCache;
|
|
9
9
|
private fileTheirsAccumulator;
|
|
10
10
|
constructor(git: GitClient, lockManager: LockfileManager, outputDir: string);
|
|
11
|
-
/**
|
|
12
|
-
* Reset the accumulator for a new applyPatches() cycle.
|
|
13
|
-
* The accumulator is used to pre-merge user customizations from multiple patches
|
|
14
|
-
* that modify the same file, preventing false conflicts.
|
|
15
|
-
*/
|
|
11
|
+
/** Reset inter-patch accumulator for a new cycle. */
|
|
16
12
|
private resetAccumulator;
|
|
17
13
|
/**
|
|
18
14
|
* Apply all patches, returning results for each.
|
|
19
15
|
* Skips patches that match exclude patterns in replay.yml
|
|
20
16
|
*/
|
|
21
17
|
applyPatches(patches: StoredPatch[]): Promise<ReplayResult[]>;
|
|
22
|
-
/**
|
|
23
|
-
* Populate the accumulator after git apply --3way succeeds.
|
|
24
|
-
* Computes 'theirs' (patch applied to base) for each file and stores in accumulator.
|
|
25
|
-
* This ensures subsequent patches on the same files will use the pre-merge logic.
|
|
26
|
-
*/
|
|
18
|
+
/** Populate accumulator after git apply succeeds. */
|
|
27
19
|
private populateAccumulatorForPatch;
|
|
28
|
-
/**
|
|
29
|
-
* Apply a single patch with fallback strategy:
|
|
30
|
-
* 1. Try git am --3way (unless accumulation is needed)
|
|
31
|
-
* 2. If fails or accumulation needed, fall back to manual 3-way merge per file
|
|
32
|
-
*/
|
|
20
|
+
/** Apply patch: try git apply --3way, fall back to per-file 3-way merge. */
|
|
33
21
|
private applyPatchWithFallback;
|
|
34
22
|
/**
|
|
35
23
|
* Manual 3-way merge for when git am fails.
|
|
@@ -59,6 +47,12 @@ export declare class ReplayApplicator {
|
|
|
59
47
|
* Returns just the `diff --git ...` block for the target file.
|
|
60
48
|
*/
|
|
61
49
|
private extractFileDiff;
|
|
50
|
+
/**
|
|
51
|
+
* Extract the rename source path from a patch for a given target file.
|
|
52
|
+
* Returns the original path if the diff block for targetFilePath is a rename,
|
|
53
|
+
* or null if it's not a rename.
|
|
54
|
+
*/
|
|
55
|
+
private extractRenameSource;
|
|
62
56
|
/**
|
|
63
57
|
* Extract new file content from a patch (when base is null).
|
|
64
58
|
* Parses the unified diff to get the added lines.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReplayApplicator.d.ts","sourceRoot":"","sources":["../src/ReplayApplicator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAkE,MAAM,YAAY,CAAC;AAe5H,qBAAa,gBAAgB;IACzB,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAA0D;IAC7E,OAAO,CAAC,qBAAqB,CAGxB;gBAEO,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM;IAM3E
|
|
1
|
+
{"version":3,"file":"ReplayApplicator.d.ts","sourceRoot":"","sources":["../src/ReplayApplicator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAkE,MAAM,YAAY,CAAC;AAe5H,qBAAa,gBAAgB;IACzB,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAA0D;IAC7E,OAAO,CAAC,qBAAqB,CAGxB;gBAEO,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM;IAM3E,qDAAqD;IACrD,OAAO,CAAC,gBAAgB;IAIxB;;;OAGG;IACG,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAqBnE,qDAAqD;YACvC,2BAA2B;IA8CzC,4EAA4E;YAC9D,sBAAsB;IAiEpC;;;OAGG;YACW,sBAAsB;IAmDpC;;OAEG;YACW,SAAS;IAgLvB;;OAEG;IACH,OAAO,CAAC,UAAU;IASlB;;;OAGG;YACW,eAAe;IA2C7B;;;OAGG;YACW,mBAAmB;IAoDjC;;;OAGG;IACH,OAAO,CAAC,eAAe;IA0BvB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAuB3B;;;OAGG;IACH,OAAO,CAAC,uBAAuB;CAmClC"}
|
package/dist/ReplayApplicator.js
CHANGED
|
@@ -26,11 +26,7 @@ export class ReplayApplicator {
|
|
|
26
26
|
this.lockManager = lockManager;
|
|
27
27
|
this.outputDir = outputDir;
|
|
28
28
|
}
|
|
29
|
-
/**
|
|
30
|
-
* Reset the accumulator for a new applyPatches() cycle.
|
|
31
|
-
* The accumulator is used to pre-merge user customizations from multiple patches
|
|
32
|
-
* that modify the same file, preventing false conflicts.
|
|
33
|
-
*/
|
|
29
|
+
/** Reset inter-patch accumulator for a new cycle. */
|
|
34
30
|
resetAccumulator() {
|
|
35
31
|
this.fileTheirsAccumulator.clear();
|
|
36
32
|
}
|
|
@@ -55,11 +51,7 @@ export class ReplayApplicator {
|
|
|
55
51
|
}
|
|
56
52
|
return results;
|
|
57
53
|
}
|
|
58
|
-
/**
|
|
59
|
-
* Populate the accumulator after git apply --3way succeeds.
|
|
60
|
-
* Computes 'theirs' (patch applied to base) for each file and stores in accumulator.
|
|
61
|
-
* This ensures subsequent patches on the same files will use the pre-merge logic.
|
|
62
|
-
*/
|
|
54
|
+
/** Populate accumulator after git apply succeeds. */
|
|
63
55
|
async populateAccumulatorForPatch(patch, baseGen, currentTreeHash) {
|
|
64
56
|
if (!baseGen)
|
|
65
57
|
return;
|
|
@@ -89,11 +81,7 @@ export class ReplayApplicator {
|
|
|
89
81
|
await rm(tempDir, { recursive: true }).catch(() => { });
|
|
90
82
|
}
|
|
91
83
|
}
|
|
92
|
-
/**
|
|
93
|
-
* Apply a single patch with fallback strategy:
|
|
94
|
-
* 1. Try git am --3way (unless accumulation is needed)
|
|
95
|
-
* 2. If fails or accumulation needed, fall back to manual 3-way merge per file
|
|
96
|
-
*/
|
|
84
|
+
/** Apply patch: try git apply --3way, fall back to per-file 3-way merge. */
|
|
97
85
|
async applyPatchWithFallback(patch) {
|
|
98
86
|
// Resolve all file paths to check accumulator (need baseGen for resolution)
|
|
99
87
|
const baseGen = this.lockManager.getGeneration(patch.base_generation);
|
|
@@ -110,13 +98,16 @@ export class ReplayApplicator {
|
|
|
110
98
|
})).then((results) => results.some(Boolean));
|
|
111
99
|
// Strategy 1: Try git apply --3way (skip if accumulation needed)
|
|
112
100
|
if (!needsAccumulation) {
|
|
113
|
-
// Snapshot files before
|
|
114
|
-
// If it fails with conflicts, it may leave conflict markers on disk
|
|
101
|
+
// Snapshot files before git apply (may leave conflict markers on failure)
|
|
115
102
|
const snapshots = new Map();
|
|
103
|
+
const resolvedFiles = {};
|
|
116
104
|
for (const filePath of patch.files) {
|
|
117
105
|
const resolvedPath = baseGen
|
|
118
106
|
? await this.resolveFilePath(filePath, baseGen.tree_hash, currentTreeHash)
|
|
119
107
|
: filePath;
|
|
108
|
+
if (resolvedPath !== filePath) {
|
|
109
|
+
resolvedFiles[filePath] = resolvedPath;
|
|
110
|
+
}
|
|
120
111
|
const fullPath = join(this.outputDir, resolvedPath);
|
|
121
112
|
snapshots.set(resolvedPath, await readFile(fullPath, "utf-8").catch(() => null));
|
|
122
113
|
}
|
|
@@ -125,7 +116,10 @@ export class ReplayApplicator {
|
|
|
125
116
|
// Success! Populate accumulator so subsequent patches on these files
|
|
126
117
|
// will skip fast path and use the pre-merge logic instead
|
|
127
118
|
await this.populateAccumulatorForPatch(patch, baseGen, currentTreeHash);
|
|
128
|
-
return {
|
|
119
|
+
return {
|
|
120
|
+
patch, status: "applied", method: "git-am",
|
|
121
|
+
...(Object.keys(resolvedFiles).length > 0 && { resolvedFiles }),
|
|
122
|
+
};
|
|
129
123
|
}
|
|
130
124
|
catch {
|
|
131
125
|
// git apply --3way failed and may have left conflict markers on disk
|
|
@@ -146,6 +140,7 @@ export class ReplayApplicator {
|
|
|
146
140
|
*/
|
|
147
141
|
async applyWithThreeWayMerge(patch) {
|
|
148
142
|
const fileResults = [];
|
|
143
|
+
const resolvedFiles = {};
|
|
149
144
|
const tempDir = await mkdtemp(join(tmpdir(), "replay-"));
|
|
150
145
|
const { GitClient } = await import("./git/GitClient.js");
|
|
151
146
|
const tempGit = new GitClient(tempDir);
|
|
@@ -163,6 +158,9 @@ export class ReplayApplicator {
|
|
|
163
158
|
continue;
|
|
164
159
|
}
|
|
165
160
|
const result = await this.mergeFile(patch, filePath, tempGit, tempDir);
|
|
161
|
+
if (result.file !== filePath) {
|
|
162
|
+
resolvedFiles[filePath] = result.file;
|
|
163
|
+
}
|
|
166
164
|
fileResults.push(result);
|
|
167
165
|
}
|
|
168
166
|
}
|
|
@@ -183,6 +181,7 @@ export class ReplayApplicator {
|
|
|
183
181
|
method: "3way-merge",
|
|
184
182
|
fileResults,
|
|
185
183
|
conflictReason,
|
|
184
|
+
...(Object.keys(resolvedFiles).length > 0 && { resolvedFiles }),
|
|
186
185
|
};
|
|
187
186
|
}
|
|
188
187
|
/**
|
|
@@ -207,16 +206,23 @@ export class ReplayApplicator {
|
|
|
207
206
|
currentGeneration: lock.current_generation,
|
|
208
207
|
};
|
|
209
208
|
// BASE: pristine state from when user made their edit (old path)
|
|
210
|
-
|
|
209
|
+
let base = await this.git.showFile(baseGen.tree_hash, filePath);
|
|
210
|
+
// If BASE is null, check if this file is the target of a rename in the patch.
|
|
211
|
+
// Rename diffs (e.g., git mv old new) have the content at the old path.
|
|
212
|
+
let renameSourcePath;
|
|
213
|
+
if (!base) {
|
|
214
|
+
const renameSource = this.extractRenameSource(patch.patch_content, filePath);
|
|
215
|
+
if (renameSource) {
|
|
216
|
+
base = await this.git.showFile(baseGen.tree_hash, renameSource);
|
|
217
|
+
renameSourcePath = renameSource;
|
|
218
|
+
}
|
|
219
|
+
}
|
|
211
220
|
// OURS: current generated state on disk (resolved/new path)
|
|
212
221
|
const oursPath = join(this.outputDir, resolvedPath);
|
|
213
222
|
const ours = await readFile(oursPath, "utf-8").catch(() => null);
|
|
214
223
|
// THEIRS: user's version (apply patch to base using original path)
|
|
215
|
-
let theirs = await this.applyPatchToContent(base, patch.patch_content, filePath, tempGit, tempDir);
|
|
216
|
-
//
|
|
217
|
-
// state from prior patches. This handles incremental patches where commit B
|
|
218
|
-
// modifies the result of commit A (e.g., A adds a method, B renames it).
|
|
219
|
-
// The patch expects A's changes to exist, which the raw generation lacks.
|
|
224
|
+
let theirs = await this.applyPatchToContent(base, patch.patch_content, filePath, tempGit, tempDir, renameSourcePath);
|
|
225
|
+
// Fall back to accumulator as merge base for incremental patches.
|
|
220
226
|
let useAccumulatorAsMergeBase = false;
|
|
221
227
|
const accumulatorEntry = this.fileTheirsAccumulator.get(resolvedPath);
|
|
222
228
|
if (!theirs && base && accumulatorEntry) {
|
|
@@ -225,10 +231,7 @@ export class ReplayApplicator {
|
|
|
225
231
|
useAccumulatorAsMergeBase = true;
|
|
226
232
|
}
|
|
227
233
|
}
|
|
228
|
-
// Pre-merge with accumulated customizations
|
|
229
|
-
// This prevents false conflicts when multiple patches modify the same location.
|
|
230
|
-
// Skip when using accumulator as merge base — the merge base already
|
|
231
|
-
// incorporates prior patches, so pre-merge is unnecessary.
|
|
234
|
+
// Pre-merge with accumulated customizations (skip when accumulator is merge base).
|
|
232
235
|
let effective_theirs = theirs;
|
|
233
236
|
let baseMismatchSkipped = false;
|
|
234
237
|
if (theirs && base && !useAccumulatorAsMergeBase) {
|
|
@@ -386,7 +389,7 @@ export class ReplayApplicator {
|
|
|
386
389
|
* Apply patch content to base to reconstruct user's version.
|
|
387
390
|
* Uses the shared temp repo + git apply.
|
|
388
391
|
*/
|
|
389
|
-
async applyPatchToContent(base, patchContent, filePath, tempGit, tempDir) {
|
|
392
|
+
async applyPatchToContent(base, patchContent, filePath, tempGit, tempDir, sourceFilePath) {
|
|
390
393
|
if (!base) {
|
|
391
394
|
// New file - extract content directly from patch
|
|
392
395
|
return this.extractNewFileFromPatch(patchContent, filePath);
|
|
@@ -396,7 +399,19 @@ export class ReplayApplicator {
|
|
|
396
399
|
if (!fileDiff)
|
|
397
400
|
return null;
|
|
398
401
|
try {
|
|
399
|
-
|
|
402
|
+
if (sourceFilePath) {
|
|
403
|
+
// Rename case: write base at the OLD path, apply the rename diff,
|
|
404
|
+
// then read from the NEW path (filePath).
|
|
405
|
+
const tempSourcePath = join(tempDir, sourceFilePath);
|
|
406
|
+
await mkdir(dirname(tempSourcePath), { recursive: true });
|
|
407
|
+
await writeFile(tempSourcePath, base);
|
|
408
|
+
await tempGit.exec(["add", sourceFilePath]);
|
|
409
|
+
await tempGit.exec(["commit", "-m", `base for rename ${sourceFilePath} -> ${filePath}`, "--allow-empty"]);
|
|
410
|
+
await tempGit.execWithInput(["apply", "--allow-empty"], fileDiff);
|
|
411
|
+
const tempTargetPath = join(tempDir, filePath);
|
|
412
|
+
return await readFile(tempTargetPath, "utf-8");
|
|
413
|
+
}
|
|
414
|
+
// Normal case: write base at filePath, apply diff, read back
|
|
400
415
|
const tempFilePath = join(tempDir, filePath);
|
|
401
416
|
await mkdir(dirname(tempFilePath), { recursive: true });
|
|
402
417
|
await writeFile(tempFilePath, base);
|
|
@@ -437,6 +452,32 @@ export class ReplayApplicator {
|
|
|
437
452
|
}
|
|
438
453
|
return diffLines.length > 0 ? diffLines.join("\n") + "\n" : null;
|
|
439
454
|
}
|
|
455
|
+
/**
|
|
456
|
+
* Extract the rename source path from a patch for a given target file.
|
|
457
|
+
* Returns the original path if the diff block for targetFilePath is a rename,
|
|
458
|
+
* or null if it's not a rename.
|
|
459
|
+
*/
|
|
460
|
+
extractRenameSource(patchContent, targetFilePath) {
|
|
461
|
+
const lines = patchContent.split("\n");
|
|
462
|
+
let inTargetFile = false;
|
|
463
|
+
for (const line of lines) {
|
|
464
|
+
if (line.startsWith("diff --git")) {
|
|
465
|
+
if (inTargetFile)
|
|
466
|
+
break; // past the target block
|
|
467
|
+
inTargetFile = isDiffLineForFile(line, targetFilePath);
|
|
468
|
+
continue;
|
|
469
|
+
}
|
|
470
|
+
if (!inTargetFile)
|
|
471
|
+
continue;
|
|
472
|
+
// Stop at first hunk — rename headers appear before @@
|
|
473
|
+
if (line.startsWith("@@"))
|
|
474
|
+
break;
|
|
475
|
+
if (line.startsWith("rename from ")) {
|
|
476
|
+
return line.slice("rename from ".length);
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
return null;
|
|
480
|
+
}
|
|
440
481
|
/**
|
|
441
482
|
* Extract new file content from a patch (when base is null).
|
|
442
483
|
* Parses the unified diff to get the added lines.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReplayApplicator.js","sourceRoot":"","sources":["../src/ReplayApplicator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ReplayApplicator.js","sourceRoot":"","sources":["../src/ReplayApplicator.ts"],"names":[],"mappings":"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"}
|
package/dist/ReplayDetector.d.ts
CHANGED
|
@@ -19,11 +19,7 @@ export declare class ReplayDetector {
|
|
|
19
19
|
* so rebased commits with same content produce the same hash.
|
|
20
20
|
*/
|
|
21
21
|
computeContentHash(patchContent: string): string;
|
|
22
|
-
/**
|
|
23
|
-
* Detect customization patches via tree diff when the generation commit
|
|
24
|
-
* is not an ancestor of HEAD (non-linear history from squash merge).
|
|
25
|
-
* Returns a single composite patch covering all customizations.
|
|
26
|
-
*/
|
|
22
|
+
/** Detect patches via tree diff for non-linear history. Returns a composite patch. */
|
|
27
23
|
private detectPatchesViaTreeDiff;
|
|
28
24
|
private parseGitLog;
|
|
29
25
|
private getLastGeneration;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReplayDetector.d.ts","sourceRoot":"","sources":["../src/ReplayDetector.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAgD,WAAW,EAAE,MAAM,YAAY,CAAC;AAM5F,qBAAa,cAAc;IACvB,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,YAAY,CAAS;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAM;gBAErB,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM;IAM9E;;;;OAIG;IACG,gBAAgB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"ReplayDetector.d.ts","sourceRoot":"","sources":["../src/ReplayDetector.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAgD,WAAW,EAAE,MAAM,YAAY,CAAC;AAM5F,qBAAa,cAAc;IACvB,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,YAAY,CAAS;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAM;gBAErB,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM;IAM9E;;;;OAIG;IACG,gBAAgB,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAuFhD;;;;OAIG;IACH,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM;IAShD,sFAAsF;YACxE,wBAAwB;IAuCtC,OAAO,CAAC,WAAW;IAUnB,OAAO,CAAC,iBAAiB;CAG5B"}
|
package/dist/ReplayDetector.js
CHANGED
|
@@ -30,9 +30,7 @@ export class ReplayDetector {
|
|
|
30
30
|
`Skipping new patch detection. Existing lockfile patches will still be applied.`);
|
|
31
31
|
return [];
|
|
32
32
|
}
|
|
33
|
-
//
|
|
34
|
-
// merge of a divergent PR), git log would return all of main's history.
|
|
35
|
-
// Fall back to tree-diff-based detection which handles non-linear history.
|
|
33
|
+
// Non-linear history (e.g. squash merge): fall back to tree-diff detection.
|
|
36
34
|
const isAncestor = await this.git.isAncestor(lastGen.commit_sha, "HEAD");
|
|
37
35
|
if (!isAncestor) {
|
|
38
36
|
return this.detectPatchesViaTreeDiff(lastGen);
|
|
@@ -101,11 +99,7 @@ export class ReplayDetector {
|
|
|
101
99
|
.join("\n");
|
|
102
100
|
return `sha256:${createHash("sha256").update(normalized).digest("hex")}`;
|
|
103
101
|
}
|
|
104
|
-
/**
|
|
105
|
-
* Detect customization patches via tree diff when the generation commit
|
|
106
|
-
* is not an ancestor of HEAD (non-linear history from squash merge).
|
|
107
|
-
* Returns a single composite patch covering all customizations.
|
|
108
|
-
*/
|
|
102
|
+
/** Detect patches via tree diff for non-linear history. Returns a composite patch. */
|
|
109
103
|
async detectPatchesViaTreeDiff(lastGen) {
|
|
110
104
|
// Get changed files first, then filter before computing the diff
|
|
111
105
|
const filesOutput = await this.git.exec(["diff", "--name-only", lastGen.commit_sha, "HEAD"]);
|
|
@@ -122,6 +116,12 @@ export class ReplayDetector {
|
|
|
122
116
|
if (!diff.trim())
|
|
123
117
|
return [];
|
|
124
118
|
const contentHash = this.computeContentHash(diff);
|
|
119
|
+
// Dedup against existing patches — if an existing patch already captures
|
|
120
|
+
// this exact content, don't create a duplicate composite patch.
|
|
121
|
+
const lock = this.lockManager.read();
|
|
122
|
+
if (lock.patches.some((p) => p.content_hash === contentHash)) {
|
|
123
|
+
return [];
|
|
124
|
+
}
|
|
125
125
|
const headSha = (await this.git.exec(["rev-parse", "HEAD"])).trim();
|
|
126
126
|
return [{
|
|
127
127
|
id: `patch-composite-${headSha.slice(0, 8)}`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReplayDetector.js","sourceRoot":"","sources":["../src/ReplayDetector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAK9D,0EAA0E;AAC1E,sEAAsE;AACtE,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;AAEtD,MAAM,OAAO,cAAc;IACf,GAAG,CAAY;IACf,WAAW,CAAkB;IAC7B,YAAY,CAAS;IACpB,QAAQ,GAAa,EAAE,CAAC;IAEjC,YAAY,GAAc,EAAE,WAA4B,EAAE,YAAoB;QAC1E,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,gBAAgB;QAClB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,EAAE,CAAC;QACd,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC/D,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,qBAAqB,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,6BAA6B;gBAC5E,gFAAgF,CACvF,CAAC;YACF,OAAO,EAAE,CAAC;QACd,CAAC;QAED,4EAA4E;QAC5E,
|
|
1
|
+
{"version":3,"file":"ReplayDetector.js","sourceRoot":"","sources":["../src/ReplayDetector.ts"],"names":[],"mappings":"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"}
|