From 6aab0c4ee48bc01f8bbf6e2b3357e9a487d33cbb Mon Sep 17 00:00:00 2001 From: qiansc Date: Mon, 9 Nov 2026 01:31:12 +0000 Subject: [PATCH] docs: align storage and retention wording with snapshot eviction The storage budget hint and the settings-update note describe oldest-first release and retention after preparation. Co-Authored-By: Claude Opus 5.5 --- internal/service/management.go | 5 +++-- web/assets/repo-page.js | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/internal/service/management.go b/internal/service/management.go index 15755ce..7cce577 100644 --- a/internal/service/management.go +++ b/internal/service/management.go @@ -79,7 +79,7 @@ func (s *Service) Preview(ctx context.Context, name string, u Update) (any, erro if u.SyncIntervalMinutes != nil { interval = *u.SyncIntervalMinutes } - return map[string]any{"sync_interval_minutes": interval, "revision": r.Revision, "preview": preview(r, u), "retained_versions": len(r.Versions), "note": "Retention applies at successful synchronization; pinned snapshots and branch heads remain available. Expired Git objects are reclaimed after synchronization."}, nil + return map[string]any{"sync_interval_minutes": interval, "revision": r.Revision, "preview": preview(r, u), "retained_versions": len(r.Versions), "note": "Retention applies after each successful synchronization and preparation; branch heads, pinned snapshots and snapshots of active jobs remain available. Released Git objects are reclaimed in the background."}, nil } func (s *Service) Update(ctx context.Context, name string, u Update, revision int64) (control.Repository, error) { if e := validateUpdate(u); e != nil { @@ -156,7 +156,8 @@ func (s *Service) Update(ctx context.Context, name string, u Update, revision in } } // Path changes invalidate the indexed scope; retention changes take effect - // at synchronization while already published snapshots remain available. + // at the next synchronization or preparation while already published + // snapshots remain available. if groupsChanged { r.DefaultBranch = "" r.ObservedAt = time.Time{} diff --git a/web/assets/repo-page.js b/web/assets/repo-page.js index 8150157..053664f 100644 --- a/web/assets/repo-page.js +++ b/web/assets/repo-page.js @@ -201,7 +201,7 @@ '
'+ '
'+ '

'+t('默认继承全局;用于 Git 拉取及文件对象补拉,新任务启动时生效。','Inherit global by default; used for Git fetching and object hydration when a new task starts.')+'

'+ - '

'+t('包含 Git、索引和任务临时文件;达到预算会停止新增准备。','Includes Git, indexes and temporary job files; reaching the budget stops new preparation.')+'

'+ + '

'+t('包含 Git、索引和任务临时文件;用满时先按先后释放未受保护的旧快照。','Includes Git, indexes and temporary job files; when it is full, the oldest unprotected snapshots are released first.')+'

'+ '

'+t('固定的版本不受保留策略和容量淘汰影响,只在此手动添加;准备版本不会自动固定。删除此处的 SHA 后,该版本重新受保留策略约束。','Pinned snapshots are never released by retention or capacity eviction and are only added here; preparing a commit does not pin it. Removing a SHA here returns it to ordinary retention.')+'

'+ ''+ ''+