( forkFamilyBaseName: string, existingNames: string[] )
| 753 | * `{base}-fork-{N}` pattern so numbering continues cleanly across upgrades. |
| 754 | */ |
| 755 | export function generateForkBranchName( |
| 756 | forkFamilyBaseName: string, |
| 757 | existingNames: string[] |
| 758 | ): string { |
| 759 | const nextForkNumber = Math.max( |
| 760 | findMaxSequentialNumber(existingNames, `${forkFamilyBaseName}-`), |
| 761 | findMaxSequentialNumber(existingNames, `${forkFamilyBaseName}-fork-`) |
| 762 | ); |
| 763 | return `${forkFamilyBaseName}-${nextForkNumber + 1}`; |
| 764 | } |
| 765 | |
| 766 | /** |
| 767 | * Generate a forked workspace title by appending a " (N)" suffix to the parent title. |
no test coverage detected