t195:燈號不再說謊+加診斷 log(leo:「燈號是真的還是假的?」→ 是假的)
## leo 實撞 丟 PDF 進 youlinhsieh-test1 沒反應;按「立刻同步」後畫面顯示 「正在整理知識卡」,但**卡從來沒產出**。 ## 燈號為什麼是假的 舊版 describeStatus 只看「sync-now 訊號檔存不存在」就顯示「同步中…」。 那只代表**排隊了**,不代表有人處理:leo 的 collector 在 11:25 跑完最後一輪, 他 11:38 按同步 ⇒ 訊號檔沒人消化 ⇒ 畫面一直說在整理,實際 13 分鐘沒跑過。 **這比沒有燈號更糟——它在說謊。** 修:燈號要有憑有據—— · collector 沒在跑 → 明說「同步引擎沒有在跑」並告訴他怎麼辦 · 有排隊 **且** 引擎活著 → 才是「同步中」 · 其餘 → 看守中 ## 順手補上診斷 log(~/.arcrun-rag/app.log) startSupervisor 以前只 Stat(config) 就靜默 return,出問題完全查不到 (我這次也是繞了很久才確定它有啟動)。現在每個 return 點都留痕。 ## 🔴 但真正擋住產卡的是另一個 401(未修,需 leo 裁) 實測鏈路:掃到 PDF ✅ → /portal/daemon/extract ✅ 200 → 寫 kbdb ❌ 401 curl -X POST https://arcrun-kbdb.youlin-hsieh-dev.workers.dev/entries(無 token)→ 401 真兇:workflows/rag-ingest-card.local.yaml 打 __KBDB_BASE__/entries **完全沒帶 Authorization**,但 kbdb 要 Bearer KBDB_INTERNAL_TOKEN。 ⚠️ 與今天修的 t189 不同:那是 extract 端點入口(現已 200),這是 workflow 內部寫 kbdb。 修法命中 D36 金鑰鐵律(「只能拿 key,送出時自動拉 value」) ⇒ 應寫 {{credential.kbdb_internal_token}} 由 resolve_credentials 回填, 而非讓安裝器 sed 把 token 值塞進定義。**已停下等 leo 裁**。 ## CP 對帳 「丟檔→產卡」= ❌ 斷(卡產不出來)。本次只修好「燈號誠實」與「可診斷」, **未送達用戶**(daemon 新版尚未出貨、401 未修)。
This commit is contained in:
+18
-3
@@ -221,10 +221,25 @@ func loadSyncStatus() syncStatus {
|
||||
}
|
||||
|
||||
// describeStatus 產生狀態文案。
|
||||
// 🔴 issue #17:正在跑就要**看得出來在跑**——按「立刻同步」會寫 sync-now 訊號檔,
|
||||
// collector 開工時才把它吃掉;訊號檔還在=已排隊未完成 ⇒ 顯示「同步中…」。
|
||||
// 🔴 t195(leo 08-05 實撞:「燈號是真的還是假的?」——**是假的**):
|
||||
//
|
||||
// 舊版只看「sync-now 訊號檔存不存在」就顯示「同步中…」。
|
||||
// 但那只代表**排隊了**,不代表有人在處理:leo 的 collector 在 11:25 死掉,
|
||||
// 他 11:38 按同步 ⇒ 訊號檔沒人消化 ⇒ 畫面一直說「正在整理知識卡」,
|
||||
// 實際上 13 分鐘沒跑過任何一輪、也不會產卡。**這比沒有燈號更糟——它在說謊。**
|
||||
//
|
||||
// ⇒ 燈號改成有憑有據:
|
||||
// · collector 沒在跑 → 明說「同步引擎沒有在跑」,不要假裝在整理
|
||||
// · 有訊號檔且引擎活著 → 才是真的「同步中」
|
||||
// · 其餘 → 看守中
|
||||
func describeStatus(s syncStatus) (syncing bool, big, sub string) {
|
||||
if _, err := os.Stat(syncNowSignal()); err == nil {
|
||||
alive := collectorAlive()
|
||||
_, queued := os.Stat(syncNowSignal())
|
||||
|
||||
if !alive {
|
||||
return false, "同步引擎沒有在跑", "資料夾不會被自動整理 ⇒ 請結束 Arcrun 再重新開啟"
|
||||
}
|
||||
if queued == nil {
|
||||
return true, "同步中… 正在讀檔並整理成知識卡", "請稍候,完成後會顯示整理了幾份"
|
||||
}
|
||||
if s.ExtractorError != "" && !s.ExtractorOK {
|
||||
|
||||
Reference in New Issue
Block a user