台股 ETF 報價面板 — 對話記錄

由 黎育賢 分享的筆記

這則筆記是你我對話的留存記錄(討論、提問、我的說明與每次改動的脈絡)。最初只記「台股 ETF 報價面板」插件相關,自 2026-06-21 起範圍擴大為不限主題——往後不論聊什麼,我都會把重點補進這則筆記。 🔴 邊聊邊存:已啟用(全主題) — 你每次傳訊息,不論討論什麼,我都會順手把最新對話補進這則筆記。 🔗 姊妹篇:「台股 ETF 報價面板 — 完整開發歷程」(同在隨手記)記錄 06/18~06/19 更早期的開發成果,那幾天的聊天逐字內容已超出可讀取範圍,但成果保存在那則。 最後更新: 2026-09-20 這串對話的脈絡彙整 1. 把開發歷程存成可獨立翻閱的筆記 你不想每次回顧都在聊天視窗往上捲,我把完整開發歷程整理成「隨手記」裡的獨立筆記。 2. 重新上傳程式碼 重新建置、驗證、發布,確認線上就是最新版(bundleHash 對應最新 commit)。 3. 重新驗證功能 實測 TWSE 即時報價 API(與前端同一條路徑)→ 200 OK,0050/0056/00878 報價正確。 確認 parseQuotes 欄位對得上 API 格式(現價 z、昨收 y、代碼 c…)。 說明:今天 06/20 是週六休市,顯示最後交易日 06/18 收盤價是正常行為。 4. OCR 解析驗證 → 發現並修復「整數均價」破口 用三種券商版面擬真文字測解析器:損益頁、成本頁、跨頁合併、防呆都正常。 發現邊角 bug:成本頁均價剛好是整數(如 105.00)時會被誤判、配對位移。 修法:改以「原始文字有無小數位」判別價格/整數。回歸測試零回歸,已上線。 5. 你給截圖驗證是否還有其他 BUG → 診斷「00662 幽靈持股」 你截圖裡出現一檔不存在的 00662(占圓餅圖 85.7%、損益 −820,000)。 用你三張券商截圖實測解析器 → 吐出正確 7 檔、零幽靈代碼。 直…

對話記錄暫存(第 85 條起)

暫存留言(第 85 條起) — 第 72~84 條已於 2026-09-20 併回本文、原本三則暫存留言已刪除。依第 73 條規則,新條目先記在這裡,累積 10 條(到第 94 條)再一次併回本文。 85. 歸檔執行過程的補記:39,401 字超過單次輸出上限(2026-09-20) 第 84 條記的是歸檔的結果,這一條補記過程中撞到的硬限制,因為它會影響往後每一次歸檔。 整包寫入失敗一次 :合併後的本文 39,401 字,用 vaultupdateitems 送出時,內容必須由模型逐字輸出成 MCP 參數,而這超過單次回應的長度上限 —— 實際生成到第 23,539 字就被截斷,MCP 收到不完整的 JSON 並回 Unterminated string in JSON at position 23539 。 沒有分段的替代方案 :再次確認(讀 /app/config/mcpvaultserver.mjs 與 NOTE schema)字串欄位一律整包替換、沒有 append 語意,也沒有任何以檔案路徑餵內容的欄位( contentPath 之類不存在,與第 65、66 條的實測結論一致)。所以「先寫前半再補後半」在原理上不可行,第二次仍然要送完整全文。 實際採用的做法 :改用程式直接呼叫 vaultupdateitems 內部使用的同一個端點( PUT ${ITEMSERVERURL}/api/items 、 updateOnly:true 、headers 比照 callItemServer() ),內容由程式從檔案讀進去、不經過模型輸出,因此不受長度限制。回應 200 successCount:1 。跳過的只有 MCP client 端的前置檢查(stripReadonlyFields/stripLeadingTitle/validateFields),本次只送單一…

用 AStockTeam 製作