Skip to content

feat: consolidate contract address definitions into single configuration source && feat: add ARIA labels to cancellation info tooltips - #586

Open
0xElyte wants to merge 2 commits into
Fundable-Protocol:mainfrom
0xElyte:main
Open

feat: consolidate contract address definitions into single configuration source && feat: add ARIA labels to cancellation info tooltips#586
0xElyte wants to merge 2 commits into
Fundable-Protocol:mainfrom
0xElyte:main

Conversation

@0xElyte

@0xElyte 0xElyte commented Jul 29, 2026

Copy link
Copy Markdown

Closes #376
web(constants): consolidate contract address definitions into single configuration source

Summary
PAYMENT_STREAM_CONTRACT_ID and DISTRIBUTOR_CONTRACT_ID are exported from both constants.ts and env.ts, leading to import ambiguity across components.

Acceptance criteria
All components import contract addresses from unified config @/lib/env.


Closes #402
web(PaymentStreamSummary): add ARIA labels to cancellation info tooltips

Summary
Info icons lack aria-label attributes for screen readers.

Acceptance criteria
Issue is resolved in apps/web/src/components/modules/payment-stream/PaymentStreamSummary.tsx:40-65.
No regression introduced in existing test suites.

Summary by CodeRabbit

  • New Features
    • Added explanatory tooltips for payment stream cancelable and transferable statuses.
    • Contract identifiers are now sourced from validated environment settings for more consistent configuration.
  • Bug Fixes
    • Improved reliability of contract configuration across history, dashboard, payment stream creation, and transaction features.
  • Tests
    • Added coverage confirming exported contract identifiers match validated environment values.

@drips-wave

drips-wave Bot commented Jul 29, 2026

Copy link
Copy Markdown

@0xElyte Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@coderabbitai

coderabbitai Bot commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: b07238e7-819a-400e-a8e2-8e2fb43dba7c

📥 Commits

Reviewing files that changed from the base of the PR and between 375c936 and 2eaf73d.

📒 Files selected for processing (9)
  • apps/web/src/app/(overview)/history/page.tsx
  • apps/web/src/components/modules/dashboard/StatsOverview.tsx
  • apps/web/src/components/modules/payment-stream/CreatePaymentStream.tsx
  • apps/web/src/components/modules/payment-stream/PaymentStreamSummary.tsx
  • apps/web/src/hooks/use-distribution-transaction.ts
  • apps/web/src/lib/__tests__/env.test.ts
  • apps/web/src/lib/api.ts
  • apps/web/src/lib/constants.ts
  • apps/web/src/lib/env.ts
💤 Files with no reviewable changes (1)
  • apps/web/src/lib/constants.ts

📝 Walkthrough

Walkthrough

Contract identifiers are consolidated in env.ts and all listed consumers are migrated from constants.ts. PaymentStreamSummary adds explanatory tooltips and ARIA labels to cancelable and transferable status indicators.

Changes

Contract configuration consolidation

Layer / File(s) Summary
Unified contract configuration
apps/web/src/lib/env.ts, apps/web/src/lib/constants.ts, apps/web/src/lib/api.ts, apps/web/src/hooks/..., apps/web/src/app/(overview)/history/page.tsx, apps/web/src/components/modules/..., apps/web/src/lib/__tests__/env.test.ts
Contract IDs are exported from validated environment values, removed from constants.ts, imported by consumers from @/lib/env, and verified against the env object.

Payment stream status accessibility

Layer / File(s) Summary
Status tooltip presentation
apps/web/src/components/modules/payment-stream/PaymentStreamSummary.tsx
Cancelable and transferable statuses retain their colored labels and gain explanatory tooltips with ARIA-labeled info controls.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

Suggested reviewers: sofeel

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly reflects the two main changes in the PR: contract source consolidation and tooltip ARIA labels.
Linked Issues check ✅ Passed The PR satisfies #376 and #402 by moving contract IDs to @/lib/env and adding aria-labels to PaymentStreamSummary tooltip triggers.
Out of Scope Changes check ✅ Passed All changes map to the stated objectives: config source consolidation, tooltip accessibility, and the related test update.
✨ Finishing Touches 💡 1
🛠️ Fix failing CI checks 💡
  • Fix failing CI checks
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant