Skip to content

Connect desktop Payment Link UI to the core lifecycle - #471

Draft
piatoss3612 wants to merge 13 commits into
rowan/payment-links-corefrom
rowan/payment-links-desktop-ui
Draft

Connect desktop Payment Link UI to the core lifecycle#471
piatoss3612 wants to merge 13 commits into
rowan/payment-links-corefrom
rowan/payment-links-desktop-ui

Conversation

@piatoss3612

@piatoss3612 piatoss3612 commented Aug 5, 2026

Copy link
Copy Markdown
Member

문제

#469에서 Payment Link core와 custom URI intake는 준비됐지만, 데스크탑 Gift Cards 화면은 로컬 프리젠테이션 상태에만 머물러 있었습니다. 사용자는 카드를 생성하거나 링크를 복사할 수 없었고, vizor:// 링크를 열어 claim할 수도 없었습니다. Keystone 계정에는 Gift Card funding 서명 경로가 없었고, 선택한 카드 이미지와 claim 진행 상태도 수신 화면에 이어지지 않았습니다.

해결

  • Figma 기반 empty/create/message/review/ready/list/redeem/received 화면을 실제 Payment Link service에 연결했습니다.
  • 생성 시 입력 금액과 활성 계정을 core funding flow로 전달하고, 성공한 링크를 ready 화면과 민감정보용 clipboard 경계에 연결했습니다.
  • native URI intake가 유효한 vizor:// 링크를 받으면 데스크탑 Gift Cards claim 화면으로 이동하게 했습니다. 잠긴 동안에는 pending link를 유지하고 unlock 이후 라우팅합니다.
  • 클립보드 붙여넣기, invalid 상태, claim 실행과 진행 중 중복 제출 방지를 연결했습니다.
  • secure recovery record를 생성 목록에 표시하고 funded/shared 링크를 다시 복사할 수 있게 했습니다.
  • reclaim 버튼, 확인 모달, 상태와 service API는 제거했습니다. reclaim은 lifecycle과 상태 동기화 방식을 논의한 뒤 별도로 추가합니다.
  • Keystone 활성 계정에서는 bearer-secret 계정과 복구 draft를 먼저 저장한 뒤 funding proposal을 PCZT로 만들고, 기존 Keystone QR 모달과 서명 스캔 화면을 거쳐 broadcast합니다.
  • Keystone 서명 취소와 늦게 끝난 prepare에서 proposal lock을 정리하고, broadcast_unknown 결과에서는 링크를 노출하지 않은 채 복구 draft를 유지합니다.
  • 선택한 artwork ID를 기존 v1 payload의 optional field로 전달합니다. 구형 v1 링크와 알 수 없는 artwork ID는 generic gift card로 fallback합니다. Message는 sender-local이며 링크에는 포함하지 않습니다.
  • Claim 시작 즉시 받은 카드를 Receiving으로 이동합니다. 완전 broadcast 시 Received, 실패 시 Claim으로 돌아가며, pending_broadcast/partial_broadcastReceiving에 남습니다.

검증

  • Payment Link, URI intake, sync provider 회귀 테스트 110개 통과
  • Payment Link feature 전체 focused flutter analyze 통과
  • git diff --check 통과
  • 전체 flutter analyze에서는 이번 변경과 무관한 기존 Ironwood unused 경고 23개만 확인

스택

@piatoss3612 piatoss3612 self-assigned this Aug 5, 2026
@piatoss3612 piatoss3612 changed the title Add desktop payment link UI and visual fixtures Connect desktop Payment Link UI to the core lifecycle Aug 6, 2026
@piatoss3612
piatoss3612 force-pushed the rowan/payment-links-core branch from 3d3dd23 to 730e7e2 Compare August 6, 2026 07:48
@piatoss3612
piatoss3612 force-pushed the rowan/payment-links-desktop-ui branch from e925367 to 8377526 Compare August 6, 2026 07:48
@piatoss3612
piatoss3612 force-pushed the rowan/payment-links-desktop-ui branch from 8377526 to 76051c1 Compare August 6, 2026 08:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant