Skip to content

feat(playground): add bitcoin support to reown provider#658

Merged
chybisov merged 2 commits intomainfrom
fix-playground-bitcoin
Mar 2, 2026
Merged

feat(playground): add bitcoin support to reown provider#658
chybisov merged 2 commits intomainfrom
fix-playground-bitcoin

Conversation

@tomiiide
Copy link
Copy Markdown
Contributor

Which Jira task is linked to this PR?

No JIRA ticket

Why was it implemented this way?

Move the updates from #646 from the example to the playground

Visual showcase (Screenshots or Videos)

If applicable, attach screenshots, GIFs, or videos to showcase the functionality, UI changes, or bug fixes.

Checklist before requesting a review

  • I have performed a self-review and testing of my code.
  • This pull request is focused and addresses a single problem.
  • If this PR modifies the Widget API or adds new features that require documentation, I have updated the documentation in the public-docs repository.

@tomiiide tomiiide requested a review from chybisov February 11, 2026 13:15
@tomiiide tomiiide self-assigned this Feb 11, 2026
@github-actions
Copy link
Copy Markdown

Hey! This is your new endpoint: https://7dd829e3.widget-fixplaygro.pages.dev

@tomiiide tomiiide requested a review from effie-ms February 27, 2026 13:39
import type { BitcoinConnector } from '@reown/appkit-adapter-bitcoin'
import { type FC, type PropsWithChildren, useEffect } from 'react'

const bigmiConfig = createConfig({
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Module-level bigmiConfig stores mutable connector/state at import time; in SSR/Node environments this can persist across requests and leak per-request connection data.

Details

✨ AI Reasoning
​A module-scoped configuration object is created once at import time and persists for the lifetime of the process. In server/SSR contexts, that object can retain request-specific connectors, accounts, or connection state across different requests/users, leading to data leakage or race conditions. The code initializes a Config (bigmiConfig) at the top-level and later mutates its internal connectors and events based on per-request/provider state. This pattern introduces shared mutable state that is not request-scoped.

🔧 How do I fix it?
Avoid storing request-specific data in module-level variables. Use request-scoped variables or explicitly mark shared caches as intentional.

Reply @AikidoSec feedback: [FEEDBACK] to get better review comments in the future.
Reply @AikidoSec ignore: [REASON] to ignore this issue.
More info

@github-actions
Copy link
Copy Markdown

Hey! This is your new endpoint: https://3b0c7031.widget-fixplaygro.pages.dev

@chybisov chybisov merged commit cd917f7 into main Mar 2, 2026
2 checks passed
@chybisov chybisov deleted the fix-playground-bitcoin branch March 2, 2026 10:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants