新增全新安裝的「可刪除預設庫」(leo 2026-08-08 拍板)
全新使用者第一次連上知識庫時,自動在 Documents 建一個 「Arcrun 範例庫(可刪除)」,裡面放三份 .md 示範內容, 不必自己選資料夾就能立刻走完「丟檔→知識卡→搜得到」。 四條紅線都有測試釘住(default_library_test.go/ default_library_e2e_test.go,含真的建 binary 跑 --dry-run 驗證): 1. 可刪——刪掉就真的消失,marker 檔擋住重種 2. 只有第一次——已有帳號的機器不會冒出來 3. 不污染——只在自己的資料夾裡寫檔 4. 不留幽靈資料——資料夾被刪後,config 殘留引用會被清掉(GetState 自我修復) Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -109,6 +109,7 @@ func (a *App) Connect(portalURL, email, password string) error {
|
||||
}
|
||||
// 不同實例=新增一個帳號。**不覆蓋舊帳號**——t86 事故的教訓:
|
||||
// 舊實例的資料夾若被帶進新實例,等於把別人的檔案同步到另一個知識庫(個資外洩)。
|
||||
wasFirstEver := len(cfg.Accounts) == 0 // 這台機器至今從沒連過任何知識庫帳號
|
||||
cfg.Accounts = append(cfg.Accounts, accountCfg{
|
||||
InstanceName: r.Config.InstanceName,
|
||||
Email: r.Config.Email,
|
||||
@@ -116,6 +117,11 @@ func (a *App) Connect(portalURL, email, password string) error {
|
||||
Namespace: r.Config.Namespace,
|
||||
APIKey: r.Config.Namespace,
|
||||
})
|
||||
if wasFirstEver {
|
||||
// leo 2026-08-08:全新安裝自動裝一個「可刪除的預設庫」,讓使用者不必
|
||||
// 自己選資料夾也能立刻看到「丟檔 → 知識卡 → 搜得到」整條路(見 default_library.go)。
|
||||
seedDefaultLibraryIfFirstEver(cfg, len(cfg.Accounts)-1)
|
||||
}
|
||||
return saveCfg(cfg)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user