Project

General

Profile

Actions

CR #887

open
RA

[CR-074] POC-06 快發快綁真機驗證發現:快發 fastIssueAgreed 為 null 拋 NPE→500(缺陷)/CVV2 未實作(6-8)/限定通路未實作(6-9)/6-1 CRUD 缺修改刪除

CR #887: [CR-074] POC-06 快發快綁真機驗證發現:快發 fastIssueAgreed 為 null 拋 NPE→500(缺陷)/CVV2 未實作(6-8)/限定通路未實作(6-9)/6-1 CRUD 缺修改刪除

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-06 信用卡快發快綁(On-line)真機驗證(2026-10-24,card-service 8096;品質 card 156 測 0 失敗)。
通過:6-4 卡號與效期產生、6-5 核准序號、6-6 三要素開卡、6-7 行動支付綁卡。以下為缺口/缺陷/待驗證:

【缺陷:快發 fastIssueAgreed 為 null → NullPointerException → 500】

  • POST /cards/{cardId}/instant-issuance 未帶 fastIssueAgreed 時拋 NPE(CardController.java:158:「Cannot invoke Boolean.booleanValue() because fastIssueAgreed() is null」),回 500 CC-PLT-5000。
  • 應為 400 並帶明確訊息(或給預設值)。此為真缺陷,非環境問題。
  • 補充:帶 fastIssueAgreed=true 時流程正確(三要素驗證通過、條款生效);本次因該卡已綁 APPLE_PAY 而回 422 CC-CARD-1004(重複綁定,防重複為正確行為)。

【6-8 CVV2 未實作】

  • 需求:查詢卡片資訊時卡號、效期正確,且 CVV2 線上產生且不儲存(驗收標準要求以資料庫掃描佐證)。
  • 現況:card-service 程式 grep cvv/cvv2 完全無結果——連產生都沒有,亦無 DB 掃描佐證。卡號(遮罩)與效期查詢則正確。

【6-9 限定通路交易未實作】

  • 需求:限定通路(如買機票)才可交易,其他通路拒絕。
  • 現況:card-service 與 authorization-service 皆查無「限定通路/通路控管」邏輯或參數。

【6-1 辦卡參數設定未實作】

  • card-service 無任何 PUT/DELETE(修改/刪除未實作),與 POC-02 2-1、POC-03 3-1、POC-05 5-1 為同一型態缺口(第四例)。
  • 需求之七類參數(認同代號、卡片中文名稱、發行品牌、卡等、票證、版面、快發設定)與權限管理介面未見。

【待驗證(非缺陷,缺實測)】

  • 6-2「舊戶→線上核准/新戶→線上收件」之分流規則未建構兩種身分實測(CreditReviewPort 機制存在,本次僅測一般核准路徑 RECEIVED→REVIEWING→APPROVED)。

【交付】docs/09-demo/poc-06-card-issuance/(overview+6-1~6-9);證據 docs/08-evidence/POC-06_*;poc-flows/POC-06 已標「已驗證(部分)」。

RA Updated by Redmine Admin 1 day ago Actions #1

【追蹤中(#A-388)】①缺陷:POST /cards/{id}/instant-issuance 未帶 fastIssueAgreed → NPE(CardController.java:158)→ 500,應為 400+明確訊息;②6-8 CVV2 未實作(card-service grep cvv/cvv2 無結果,無 DB 掃描佐證;卡號遮罩與效期查詢則正確);③6-9 限定通路交易未實作(card/authorization 皆無通路控管);④6-1 辦卡參數設定未實作(無 PUT/DELETE,第四例同型態缺口;七類參數介面未見)。待驗證:6-2 舊戶/新戶分流規則。已驗證:6-4 卡號效期、6-5 核准序號、6-6 三要素開卡(ACTIVE/transactable)、6-7 APPLE_PAY 綁卡(重複綁定→422 正確)。證據 docs/08-evidence/POC-06_*;動畫 docs/09-demo/poc-06-card-issuance/。本 CR 暫不結案。

RA Updated by Redmine Admin about 20 hours ago Actions #2

【CR-074 NPE 缺陷修復完成(2026-10-25,#A-396)】根因:InstantIssuanceRequest.fastIssueAgreed 為無 @NotNull 之 Boolean——契約(required)與服務層(primitive boolean)皆要求必填,惟 HTTP 層未驗 → 未帶時拆箱 NPE → 500 CC-PLT-5000。★ CardControllerTest 內既有註解「不可留空(否則拆箱 NPE)」早已警示,卻未落實——已於 SCS-003 v1.15 記載此教訓。修法:補 @NotNull(Bean Validation → 400 CC-PLT-4003 含欄位明細)+ @WebMvcTest 負樣本鎖定。品質:card 157 測 0 失敗(+1)。真機(8096):未帶 → 400 CC-PLT-4003(details field=fastIssueAgreed)【修復前 500】;帶 false → 422 CC-CARD-1001 快發條款未勾選(正確業務檢核,非 500)。證據 docs/08-evidence/CR-074_修復驗證_20261025/。★ 未解(功能缺口,非缺陷):6-8 CVV2 線上產生不儲存、6-9 限定通路控管、6-1 辦卡參數 CRUD——本 CR 維持 In Progress。

Actions

Also available in: PDF Atom