操作紀錄

append-only,禁止修改已有條目。格式:## [YYYY-MM-DD] 操作類型 | 說明

[2026-06-30] consolidate | 申請單異動主線整併

  • 整併頁面:concepts/申請單異動從建立到完成怎麼運作.md
  • 取代拆分頁:下拉卡控/送出驗證、申請單異動除錯路徑、晉塔與安奉通報
  • 原則:不把討論串當長期正文引用;以現行程式碼、測試與 skill 路徑驗證流程
  • 主要內容:建立下拉、前端卡控、自動加項、送出後端守門、處理存檔 materialize、完成端 hard fail、晉塔通報、查 bug 入口
  • 驗證來源:ModificationValidationManagerApplicationCreateServiceApplicationActionServiceApplicationItemDetailWriterMoveoutApplicationManagerEnshrinementNotificationService、前端 create store / gating composable、目標測試
  • 限制:本次未重新查詢 grace2

[2026-06-30] ingest | 晉塔與安奉通報怎麼運作

  • 新增頁面:concepts/晉塔與安奉通報怎麼運作.md
  • 讀者:第一次接觸通報功能的工程師/SA
  • 驗證來源:SA 5.3.7、ApplicationActionServiceEnshrinementNotificationService、通報前端頁面與回歸測試
  • 重要更正:2026-06-26 的「申請單不產生通報」斷鏈已修正;現行由申請詳情 儲存 materialize pending enshrinement 與通報,submit 端不建通報
  • 主要內容:申請/預填/手動三個來源、暫厝與 main 差異、完成正式入位、 取消、撤回與新人除錯入口
  • 限制:本次未重新查詢 grace2

[2026-06-30] ingest | RBAC 授權權威與現況

  • 新增頁面:concepts/RBAC 授權權威與現況.md
  • 規格權威:GitHub issue #246
  • 驗證來源:ApiPermissionFilterFeaturePermissionMenuServiceusePermissionauth.global.ts、RBAC migrations 301–306、目標測試
  • 對齊:route→feature→grant、MVCUDE、5 個 SoD feature、授權樹與導覽列解耦
  • 現行差異:權狀申購發票面板 gate、CustomerSearchField 建客戶 gate、 Signature path③、ZionApi legacy anonymous、auth-store 過期註解
  • 測試:RBAC 目標測試 29 passed / 0 failed
  • 限制:本次未重新查詢 grace2,不把 issue 的歷史 DB probe 當成本次即時結果

[2026-06-30] ingest | 申請新增下拉卡控與送出驗證

  • 新增頁面:concepts/申請新增下拉卡控與送出驗證.md
  • 來源:SA 4.1.5、BR-APP-04~07、ModificationValidationManager.csApplicationCreateService.SubmitApplicationAsync
  • 主要內容:
    • Step1 GetAvailableModificationTypesAsync:產品類型篩選 → 白名單 → 歷史在途卡控 → metadata
    • Step2 ValidateItemsAsync:4 條同權狀互斥(轉繼/換位換裝/退費預繳/晉塔換裝)+ solo/first/已晉塔退貨
    • 共用 ValidateProductStatusAsync:作廢/鎖定硬阻擋 + 8 種 code 狀態前置
    • Step3 SubmitApplicationAsync:7 道送出守門(privacy/組合/客戶互斥/狀態/晉塔必填/退費可退/M-12)
    • 3 張 DB 表角色(system_check 純顯示 ≠ 卡控的陷阱)
  • 觸及頁面:concepts/申請新增下拉卡控與送出驗證.mdindex.md

[2026-06-30] ingest | 申請單異動除錯路徑(skill 轉 wiki)

  • 新增頁面:concepts/申請單異動除錯路徑.md
  • 來源:.claude/skills/application-modification-debugging/SKILL.md
  • 主要內容:症狀分類 A–E、14 個已知陷阱(含 f_in 陷阱、ParseUsers vs ParseNotifList、dropdown 空白兩種根因、管理費消失查 syslog 等)
  • 觸及頁面:concepts/申請單異動除錯路徑.mdindex.md

[2026-06-30] ingest | 晉塔流程(SA 4.1.6 / 4.1.8 / UC03 / UC10 + EnshrinementGuard.cs)

  • 新增頁面:concepts/晉塔流程.md
  • 來源:SA 系統設計規格書 §1.3.3、§4.1.6、§4.1.8、UC03、UC10、BR-AST-02~05
  • 來源:EnshrinementGuard.csEnshrinementNotificationBuilder.cs
  • 主要發現:
    • enshrinements.f_in 遷出後維持 ‘1’(永不改為 ‘2’),遷出狀態靠 move_outs.f_t_use_fid 判定
    • ParseUsers() vs ParseNotifList() 的 guard 陷阱(後者依日期,無日期 user 被漏)
    • 管理費 guard 必須用 ParseUsers() 不可用 ParseNotifList()
  • 觸及頁面:concepts/晉塔流程.mdindex.md
  • 建議下一步 ingest:遷出流程(move_out + MoveoutApplicationManager)、申請單狀態機

[2026-06-30] update | 知識庫初始化

  • 建立目錄結構:raw/raw/assets/wiki/wiki/sources/wiki/entities/wiki/concepts/
  • 建立 Schema:CLAUDE.md
  • 建立初始頁面:index.mdlog.mdoverview.md
  • 依據 Karpathy LLM Wiki 模式設計
  • 下一步:與使用者確認主題,開始 ingest 第一份資料