@link-assistant/hive-mind 0.51.13 → 0.51.14
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/CHANGELOG.md +13 -0
- package/package.json +1 -1
- package/src/solve.repository.lib.mjs +8 -11
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
# @link-assistant/hive-mind
|
|
2
2
|
|
|
3
|
+
## 0.51.14
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 4e4fe08: Improve fork divergence error message clarity
|
|
8
|
+
- Remove misleading "Option 3: Work without syncing fork (NOT RECOMMENDED)"
|
|
9
|
+
- Add new Option 1 for deleting and recreating fork (marked as SIMPLEST)
|
|
10
|
+
- Reorder options by simplicity: deletion → auto-resolution → manual resolution
|
|
11
|
+
- Move risk warnings inline with relevant options for better context
|
|
12
|
+
- Add comprehensive case study documentation in docs/case-studies/issue-972/
|
|
13
|
+
|
|
14
|
+
This change makes the error message more useful by removing options that were never actually viable and adding the fork deletion option as the cleanest solution for most fork divergence scenarios.
|
|
15
|
+
|
|
3
16
|
## 0.51.13
|
|
4
17
|
|
|
5
18
|
### Patch Changes
|
package/package.json
CHANGED
|
@@ -946,18 +946,19 @@ export const setupUpstreamAndSync = async (tempDir, forkedRepo, upstreamRemote,
|
|
|
946
946
|
}
|
|
947
947
|
} else {
|
|
948
948
|
// Flag is not enabled - provide guidance
|
|
949
|
-
await log(' ⚠️ RISKS of force-pushing:');
|
|
950
|
-
await log(' • Overwrites fork history - any unique commits in your fork will be LOST');
|
|
951
|
-
await log(' • Other collaborators working on your fork may face conflicts');
|
|
952
|
-
await log(' • Cannot be undone - use with extreme caution');
|
|
953
|
-
await log('');
|
|
954
949
|
await log(' 💡 Your options:');
|
|
955
950
|
await log('');
|
|
956
|
-
await log(' Option 1:
|
|
951
|
+
await log(' Option 1: Delete your fork and recreate it (SIMPLEST)');
|
|
952
|
+
await log(` gh repo delete ${forkedRepo}`);
|
|
953
|
+
await log(' Then run the solve command again - the fork will be recreated automatically');
|
|
954
|
+
await log(' ⚠️ Only use this if your fork has no unique commits you need to preserve');
|
|
955
|
+
await log('');
|
|
956
|
+
await log(' Option 2: Enable automatic force-push (DANGEROUS)');
|
|
957
957
|
await log(' Add --allow-fork-divergence-resolution-using-force-push-with-lease flag to your command');
|
|
958
958
|
await log(' This will automatically sync your fork with upstream using force-with-lease');
|
|
959
|
+
await log(' ⚠️ Overwrites fork history - any unique commits will be LOST');
|
|
959
960
|
await log('');
|
|
960
|
-
await log(' Option
|
|
961
|
+
await log(' Option 3: Manually resolve the divergence');
|
|
961
962
|
await log(' 1. Decide if you need any commits unique to your fork');
|
|
962
963
|
await log(' 2. If yes, cherry-pick them after syncing');
|
|
963
964
|
await log(' 3. If no, manually force-push:');
|
|
@@ -965,10 +966,6 @@ export const setupUpstreamAndSync = async (tempDir, forkedRepo, upstreamRemote,
|
|
|
965
966
|
await log(` git reset --hard upstream/${upstreamDefaultBranch}`);
|
|
966
967
|
await log(` git push --force origin ${upstreamDefaultBranch}`);
|
|
967
968
|
await log('');
|
|
968
|
-
await log(' Option 3: Work without syncing fork (NOT RECOMMENDED)');
|
|
969
|
-
await log(' Your fork will remain out-of-sync with upstream');
|
|
970
|
-
await log(' May cause merge conflicts in pull requests');
|
|
971
|
-
await log('');
|
|
972
969
|
await log(' 🔧 To proceed with auto-resolution, restart with:');
|
|
973
970
|
await log(` solve ${argv.url || argv['issue-url'] || argv._[0] || '<issue-url>'} --allow-fork-divergence-resolution-using-force-push-with-lease`);
|
|
974
971
|
await log('');
|