Skip to content

feat: add contact payment ui#945

Open
ben-kaufman wants to merge 8 commits into
codex/paykit-private-paymentsfrom
codex/private-payments-contact-ui
Open

feat: add contact payment ui#945
ben-kaufman wants to merge 8 commits into
codex/paykit-private-paymentsfrom
codex/private-payments-contact-ui

Conversation

@ben-kaufman
Copy link
Copy Markdown
Contributor

@ben-kaufman ben-kaufman commented May 16, 2026

Description

This PR:

  1. Adds Send → Contact selection so saved contacts can be chosen from the send sheet.
  2. Adds contact attribution UI on Activity Detail, including assigning and detaching a contact.
  3. Shows contact avatars in the main and full activity lists while keeping the contact-specific activity list on the existing arrow style.
  4. Adds Payment Preference settings for Lightning/on-chain methods and public/private contact sharing.
  5. Wires public/private Paykit endpoint publishing to the selected payment preferences.

Preview

Send → Contact Full Flow

Proof: saved contact selection opens the normal send flow, keeps Bob's avatar in the top-right on the amount and confirmation screens, and shows Bob as the recipient in confirmation details.

01-send-contact-full-flow.mp4

Activity Rows Contact Avatar

Proof: contact-attributed payments show contact avatars in both the wallet home activity list and the full All Activity list.

02-activity-rows-contact-avatar.mp4

Activity Detail Assign And Detach

Proof: assigning Bob shows the assigned contact next to tags, and Detach returns the activity to the unassigned state.

03-activity-detail-assign-detach-fullscreen.mp4

Payment Preference

Proof: the Payment Preference screen shows Lightning, On-chain, Private payments with contacts, and Public payments with contacts as clean title-only rows, with the switches updating the selected preferences in place.

04-payment-preference-no-subtitles.mp4

QA Notes

Manual Tests

  • 1. Wallet → Send → Contact: saved contacts appear and tapping one opens the normal send flow for that contact.
  • 2. Activity → Activity Detail → Assign: contact picker opens, selecting a contact shows the assigned contact section, Detach removes it.
  • 3. Activity list → contact-attributed payment: main and full activity lists show the contact avatar instead of the arrow icon.
  • 4. Contact Detail → Activity: contact-specific activity rows still show the arrow icon and the contact wording.
  • 5. Settings → General → Payment Preference: Lightning/on-chain toggles cannot both be disabled; public/private contact toggles sync Paykit sharing state.

Automated Checks

  • Local checks passed: ./gradlew compileDevDebugKotlin, ./gradlew testDevDebugUnitTest, ./gradlew detekt, git diff --check.
  • E2E build passed: E2E=true E2E_BACKEND=network ./gradlew assembleDevDebug --no-daemon --stacktrace.
  • Android emulator proof videos are linked above as GitHub PR attachments for Send → Contact, Activity rows, Activity Detail assign/detach, and Payment Preference.

@ben-kaufman ben-kaufman marked this pull request as draft May 16, 2026 17:59
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: d02323d5da

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@ben-kaufman ben-kaufman force-pushed the codex/private-payments-contact-ui branch 2 times, most recently from ba89c07 to 014653b Compare May 17, 2026 04:33
@ben-kaufman ben-kaufman force-pushed the codex/private-payments-contact-ui branch from 014653b to 145a69f Compare May 17, 2026 04:51
@ben-kaufman ben-kaufman marked this pull request as ready for review May 17, 2026 16:04
@ben-kaufman ben-kaufman requested review from ovitrif and piotr-iohk May 18, 2026 00:56
@piotr-iohk

This comment was marked as resolved.

@ben-kaufman
Copy link
Copy Markdown
Contributor Author

Updated to fix point 1 in both PRs

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.

2 participants