diff --git a/agents/budget/workspace/skills/whooing-sync/scripts/whooing_sync.py b/agents/budget/workspace/skills/whooing-sync/scripts/whooing_sync.py index 7c4e98f..30d4a13 100755 --- a/agents/budget/workspace/skills/whooing-sync/scripts/whooing_sync.py +++ b/agents/budget/workspace/skills/whooing-sync/scripts/whooing_sync.py @@ -921,6 +921,16 @@ def main(): if info.get("side") == "liability": liability_payment_offset = int(liability_payment_offsets.get(info["account"], 0) or 0) whoo_b = actual_whoo_b + liability_payment_offset + # 카드사 누적사용액이 카드대금 상환을 반영하는지는 문자 형식/시점에 따라 다르다. + # 실제 후잉 잔액이 보정 후 값보다 SMS에 더 가깝다면 보정치를 소진된 것으로 본다. + if ( + liability_payment_offset + and abs(actual_whoo_b - sms_b) < abs(whoo_b - sms_b) + ): + liability_payment_offsets[info["account"]] = 0 + liability_payment_offset = 0 + whoo_b = actual_whoo_b + changed = True diff = whoo_b - sms_b prev = carriers_state.get(carrier, {}) prev_diff = prev.get("last_diff")