feat(t98): 托盤「立刻同步」——訊號檔法零 IPC,跨平台
leo:「無法知道到底同步了沒,可以在 daemon 上加一個立刻同步?」 tray 點擊寫 ~/.arcrun-rag/sync-now+短暫顯示「同步中…」;collector 主迴圈 1 秒輪詢 訊號檔、有就立刻跑一輪刪檔,無則照 PollSec 排程;完成後 status.json 更新自然刷新托盤。 測試:collector+supervisor+tray 三模組全綠(總管親跑)。 (實作=子 CC;驗證+commit=總管)
This commit is contained in:
@@ -233,6 +233,19 @@ func TestBuildStatusLabelStopped(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
// TestSyncNowSignalPath:syncNowSignalPath 回傳以 sync-now 結尾的路徑(t98)。
|
||||
// tray 寫這個路徑,collector 從 manifest 同目錄讀——路徑語意必須一致。
|
||||
func TestSyncNowSignalPath(t *testing.T) {
|
||||
p := syncNowSignalPath()
|
||||
if !strings.HasSuffix(p, "sync-now") {
|
||||
t.Errorf("syncNowSignalPath()=%q,應以 'sync-now' 結尾", p)
|
||||
}
|
||||
// 應該住在 appDir() 底下
|
||||
if !strings.HasPrefix(p, appDir()) {
|
||||
t.Errorf("syncNowSignalPath()=%q 應在 appDir()=%q 底下", p, appDir())
|
||||
}
|
||||
}
|
||||
|
||||
// TestDirectConfigPreservesClaudeBin:config JSON round-trip 保留 claude_bin 欄位(t92 回寫驗收)。
|
||||
func TestDirectConfigPreservesClaudeBin(t *testing.T) {
|
||||
c := &directConfig{
|
||||
|
||||
Reference in New Issue
Block a user