diff options
| author | Paul Buetow <paul@buetow.org> | 2026-07-22 09:54:49 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-07-22 09:54:49 +0300 |
| commit | ea3b3b2ffc4a1d3c335994e22056a957cd962d21 (patch) | |
| tree | 601aecf10b5d4a4721e895698d64e97b47561b5f /internal/cli/release.go | |
| parent | 813077134132a62d0c9c73c7020ed734ff9add0b (diff) | |
feat(sync): make backup fail-fast per-destination and add forcePush/descriptionSync creation support
Backup failures now disable retries only for the failing remote instead of
the whole session, add an opt-in forcePush flag for backup organizations,
and allow repository creation to go through descriptionSyncHost/Root when
configured so the git remote endpoint can stay restricted. Also fixes the
AI release-notes cache being bypassed by --force, which is meant to control
sync scheduling, not cache invalidation.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Diffstat (limited to 'internal/cli/release.go')
| -rw-r--r-- | internal/cli/release.go | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/internal/cli/release.go b/internal/cli/release.go index d57148d..c3cb1c5 100644 --- a/internal/cli/release.go +++ b/internal/cli/release.go @@ -447,7 +447,8 @@ func resolveReleaseNotes( } cacheKey := fmt.Sprintf("%s:%s", repoName, tag) - if cachedNotes, exists := aiReleaseNotesCache[cacheKey]; exists && !flags.Force { + // Force controls sync scheduling and must not invalidate release-note cache entries. + if cachedNotes, exists := aiReleaseNotesCache[cacheKey]; exists { if mode == releaseNotesModeUpdate { fmt.Printf(" Using cached AI release notes for existing release %s\n", tag) } else { @@ -456,18 +457,10 @@ func resolveReleaseNotes( return cachedNotes, true } - if flags.Force && aiReleaseNotesCache[cacheKey] != "" { - if mode == releaseNotesModeUpdate { - fmt.Printf(" Force regenerating AI release notes for existing release %s (ignoring cache)\n", tag) - } else { - fmt.Printf(" Force regenerating AI release notes for %s (ignoring cache)\n", tag) - } + if mode == releaseNotesModeUpdate { + fmt.Printf(" Generating AI release notes for existing release %s...\n", tag) } else { - if mode == releaseNotesModeUpdate { - fmt.Printf(" Generating AI release notes for existing release %s...\n", tag) - } else { - fmt.Printf(" Generating AI release notes for %s...\n", tag) - } + fmt.Printf(" Generating AI release notes for %s...\n", tag) } aiNotes, err := releaseManager.GenerateAIReleaseNotes(repoPath, repoName, tag, localTags, commits) |
