Project

General

Profile

Actions

CR #892

open
RA

[CR-079] POC-13 收單授權分流真機驗證發現:13-5 分流熱更新寫入回 500(設定檔不可寫/應為4xx)/13-1~4 轉接無 LOG/13-3 無 NCCC 轉送實作/13-6 回退未實測

CR #892: [CR-079] POC-13 收單授權分流真機驗證發現:13-5 分流熱更新寫入回 500(設定檔不可寫/應為4xx)/13-1~4 轉接無 LOG/13-3 無 NCCC 轉送實作/13-6 回退未實測

Added by Redmine Admin 1 day ago. Updated about 20 hours ago.

Status:
In Progress
Priority:
P0-Urgent
Assignee:
-
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:
Story Points:

Description

【發現情境】POC-13 收單授權分流(新舊系統並存)真機驗證(2026-10-24,api-gateway 8081/authorization 8092;FR AUT-1.2/AUT-1.3)。

【本 POC 有專屬實作(先肯定)】

  • CycleSplitGlobalFilter、CycleSplitProperties(enabled/percentage/legacyUri/merchantHeader/pathPrefix)
  • CycleSplitConfigAdapter implements SplitRatioConfigPort(SCS-020 §9.12),註解明載「分流(Cycle Split)熱更新檔(SYS-8/SAD-002 §6;POC-13)」
  • SplitRatioController:GET/PUT /api/v1/gateway/split-ratio;SplitRatioAdminService 含「讀現值→定點寫檔→refresh→回讀驗證」;GatewayRouteService 不快取

【13-5 分流比例熱更新:部分(讀取 OK/寫入 500)】

  • 實測 GET /api/v1/gateway/split-ratio → 200:enabled=false、percentage=0、legacyUri=http://localhost:8080、merchantHeader=X-Merchant-Id、pathPrefix=/auth-api/、configFileWritable=**false**。
  • 實測 PUT {"enabled":true,"percentage":10} → 500 CC-PLT-5000「寫入分流熱更新檔失敗:…/config/cycle-split.yml」。
  • 待改:①設定檔 config/cycle-split.yml 於本環境不可寫(或不存在)→ 熱更新無法生效;②「設定檔不可寫」屬可預期之客戶端/環境錯誤,應回明確 4xx(如 409/422)與具體原因,現回 500+空 details,不利排查與維運。

【13-1~13-4、13-6:未驗證(無轉接 LOG)】

  • 13-1 新系統收單、13-2 轉接舊系統、13-3 轉送 NCCC(他行卡)、13-4 轉送舊系統(本行卡):BRD 要求「每一筆轉接均須有可追溯之 LOG」;
    本次因 enabled=false 且未實際轉接,均未取得 LOG,故不宣告通過。
  • 13-3 另未見明確之 NCCC 轉送/模擬器實作(僅見 Stand-in 降級機制)。
  • 13-6 回退:可經 /split-ratio 調整,但「≤ 1 分鐘完成」未實測;且寫入路徑目前 500(見 13-5),須先修復後再驗。

【交付】docs/09-demo/poc-13-cycle-split/(overview+13-1~13-6);證據 docs/08-evidence/POC-13_* 與 DEMO_POC-13_step-*;poc-flows/POC-13 已標「已驗證(部分)」。

Actions

Also available in: PDF Atom