Skip to content

[pull] main from MetaMask:main#512

Merged
pull[bot] merged 11 commits into
Reality2byte:mainfrom
MetaMask:main
Feb 10, 2026
Merged

[pull] main from MetaMask:main#512
pull[bot] merged 11 commits into
Reality2byte:mainfrom
MetaMask:main

Conversation

@pull
Copy link
Copy Markdown

@pull pull Bot commented Feb 10, 2026

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

OGPoyraz and others added 11 commits February 10, 2026 18:08
<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**

<!--
Write a short description of the changes included in this pull request,
also include relevant motivation and context. Have in mind the following
questions:
1. What is the reason for the change?
2. What is the improvement/solution?
-->

This PR aims to remove speed up and cancel buttons from transaction
activity temporarily.

We will introduce as part of redesign here:
MetaMask/MetaMask-planning#6569

## **Changelog**

<!--
If this PR is not End-User-Facing and should not show up in the
CHANGELOG, you can choose to either:
1. Write `CHANGELOG entry: null`
2. Label with `no-changelog`

If this PR is End-User-Facing, please write a short User-Facing
description in the past tense like:
`CHANGELOG entry: Added a new tab for users to see their NFTs`
`CHANGELOG entry: Fixed a bug that was causing some NFTs to flicker`

(This helps the Release Engineer do their job more quickly and
accurately)
-->

CHANGELOG entry:

## **Related issues**

Fixes: #25781

## **Manual testing steps**

```gherkin
Feature: my feature name

  Scenario: user [verb for user action]
    Given [describe expected initial app state]

    When user [verb for user action]
    Then [describe expected outcome]
```

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [X] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile
Coding
Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [X] I've completed the PR template to the best of my ability
- [X] I've included tests if applicable
- [X] I've documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [X] I've applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Low Risk**
> UI-only removal of existing controls; minimal logic changes aside from
disconnecting action wiring, so risk is limited to missing expected
entry points for speed-up/cancel.
> 
> **Overview**
> **Temporarily removes transaction action controls** by eliminating the
*Speed up* and *Cancel* buttons from the transaction details modal and
from each transaction row in the activity list.
> 
> Wiring for these actions is also stripped from
`TransactionDetailsSheet`/`TransactionDetails` (props, state, and
smart-transactions gating), and the associated UI test that asserted the
buttons existed is removed.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
c498a45. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
## **Description**

Update OTA modal to newest design
[here](https://www.figma.com/proto/Ug17BYFqB6WJ9zWPqXb7U9/OTA-Update?page-id=0%3A1&node-id=26-511)

- Also fixed an issue where the MetaMask logo wouldn't alternate based
on light/dark mode

## **Changelog**

CHANGELOG entry: Updated OTA modal user interface

## **Related issues**

Fixes: https://consensyssoftware.atlassian.net/browse/TMCU-393

## **Manual testing steps**

```gherkin
Feature: my feature name

  Scenario: user [verb for user action]
    Given [describe expected initial app state]

    When user [verb for user action]
    Then [describe expected outcome]
```

## **Screenshots/Recordings**



### **Before**

<img width="350" alt="Simulator Screenshot - iPhone 17 - 2026-02-09 at
16 52 20"
src="https://github.com/user-attachments/assets/8473a6b8-c979-4b53-a1ac-5ef3a35d79e1"
/>


https://github.com/user-attachments/assets/8e35edbc-b41a-496a-b297-45ee2f3252da

### **After**

<img width="350" alt="Simulator Screenshot - iPhone 17 - 2026-02-09 at
16 46 52"
src="https://github.com/user-attachments/assets/2a0d645c-28cd-4304-b4cd-7f0564718ee9"
/>


https://github.com/user-attachments/assets/18210c53-112e-4164-af73-4135799bde88

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile
Coding
Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I've included tests if applicable
- [ ] I've documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I've applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [x] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [x] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.


<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Low Risk**
> Primarily UI/copy changes with a small behavioral addition (explicit
close) and minimal impact on the existing reload/metrics flow.
> 
> **Overview**
> Updates `OTAUpdatesModal` to the latest design-system layout: replaces
the old header/scroll/button components with `HeaderCompactStandard` +
design-system `Button`/`Text`, tweaks spacing/sizing, and adds a close
affordance that dismisses the bottom sheet.
> 
> Fixes branding to switch the MetaMask wordmark based on light/dark
theme via `useAssetFromTheme`, and updates the English modal copy (title
+ iOS/Android descriptions). Tests are refactored to render with
providers, mock new UI/theme dependencies, and add coverage for the new
close button behavior.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
e14a256. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
## **Description**

Remove homepage-related functionality from the browser tab that is no
longer needed:

- Remove `isHomepage` and `injectHomePageScripts` functions from
BrowserTab
- Remove `metamask_removeFavorite`, `metamask_showAutocomplete`, and
`metamask_injectHomepageScripts` RPC methods from RPCMethodMiddleware
- Remove `bookmarks` prop from BrowserTab (no longer needed for homepage
injection)
- Update `RPCMethodsMiddleParameters` interface to remove unused
properties
- Update stubs in SDK, WalletConnect, and Snaps integration files
- Update related test files
- Remove RPC methods from unrestricted methods list in specifications.js


### Files Changed

| File | Changes |
|------|---------|
| `app/components/Views/BrowserTab/BrowserTab.tsx` | Remove homepage
logic, imports, props, `toggleUrlModal` |
| `app/components/Views/BrowserTab/types.ts` | Remove `bookmarks` prop
type |
| `app/core/RPCMethods/RPCMethodMiddleware.ts` | Remove RPC methods and
interface properties |
| `app/core/Permissions/specifications.js` | Remove RPC methods from
unrestricted list |
| `app/core/SDKConnect/handlers/setupBridge.ts` | Remove homepage stubs
|
| `app/core/SDKConnect/getDefaultBridgeParams.ts` | Remove homepage
stubs |
| `app/core/SDKConnectV2/adapters/rpc-bridge-adapter.ts` | Remove
homepage stubs |
| `app/core/WalletConnect/WalletConnect2Session.ts` | Remove homepage
stubs |
| `app/core/WalletConnect/WalletConnect.js` | Remove homepage stubs |
| `app/core/Engine/controllers/snaps/execution-service-init.ts` | Remove
homepage stubs |
| `app/components/UI/Card/components/DaimoPayModal/DaimoPayModal.tsx` |
Remove homepage stubs |
| `app/core/RPCMethods/RPCMethodMiddleware.test.ts` | Remove homepage
mocks |
| `app/components/Views/BrowserTab/components/Options/index.test.tsx` |
Remove `isHomepage` mock |
| `app/core/Snaps/SnapBridge.test.ts` | Remove homepage mocks |

### What's Preserved

- **Bookmarks feature**: Redux state and actions remain for use in the
Options menu
- **`HOMEPAGE_HOST` constant**: Still needed by `returnHome` function
for error recovery
- **PhishingModal navigation**: "Go back to safety" still navigates to
homepage

## **Changelog**

CHANGELOG entry: Removed legacy homepage script injection and related
RPC methods

## **Related issues**

Fixes: https://consensyssoftware.atlassian.net/browse/MCWP-217

## **Manual testing steps**

```gherkin
Feature: Browser Tab Navigation

  Scenario: User navigates to a website
    Given the user is on the browser tab
    When user enters a URL and submits
    Then the page loads successfully
    And no console errors related to homepage scripts appear

  Scenario: User adds a bookmark
    Given the user is viewing a website
    When user taps the bookmark button in Options menu
    Then the site is added to favorites
    And the bookmark persists after app restart

  Scenario: User removes a bookmark
    Given the user has a bookmarked site
    When user removes the bookmark via Options menu
    Then the bookmark is removed successfully

  Scenario: SDK connection works
    Given the user has a dApp connected via SDK
    When the dApp sends a request
    Then the request is processed successfully

  Scenario: WalletConnect session works
    Given the user has a WalletConnect session
    When the dApp sends a transaction request
    Then the transaction prompt appears correctly

  Scenario: Error page return home works
    Given the user encounters a page load error
    When user taps "Return Home" button
    Then user is navigated to the homepage
```

## **Manual testing checklist**


## Browser Tab Core Functionality

- [x] Browser tab can navigate to URLs normally
- [x] Browser tab can load web pages without errors
- [x] URL bar input and submission works correctly
- [x] Page load events fire correctly (no console errors)
- [x] Favicon loading still works
- [x] Back/forward navigation works
- [x] Tab switching works correctly

---

## Bookmarks Feature

- [x] Bookmarks can be added via Options menu
- [x] Bookmarks can be removed via Options menu
- [x] Bookmarked websites can be found and accessed
- [x] Bookmarks persist after app restart
- [x] Bookmark state syncs correctly in Redux

---

## Homepage & Error Recovery

- [x] Error page "Return Home" button navigates to homepage correctly
- [x] PhishingModal "Go back to safety" navigates to homepage
- [x] `returnHome` function works (uses `HOMEPAGE_HOST` constant)

---

## SDK Connections

- [x] SDK connection can be established with a dApp
- [x] SDK sends/receives messages without errors
- [x] dApp requests are processed correctly
- [x] No console errors related to missing bridge params

---

## WalletConnect

- [x] WalletConnect v2 session can be established
- [x] Transaction requests work correctly
- [x] Signature requests work correctly
- [x] Session persists and reconnects properly

---

## Snaps Functionality

- [ ] Snaps can be installed
- [ ] Snap RPC methods work correctly
- [ ] SnapBridge initialization succeeds
- [x] No errors from snap execution service

---

## DaimoPay Modal

- [x] DaimoPay modal opens correctly
- [x] DaimoPay bridge communication works

---

## Platform Coverage

### iOS
- [x] All browser tab tests pass
- [x] All bookmark tests pass
- [x] SDK connections work
- [x] WalletConnect works

### Android
- [x] All browser tab tests pass
- [x] All bookmark tests pass
- [x] SDK connections work
- [x] WalletConnect works

---

## Regression - Removed RPC Methods

These RPC methods were removed and should **NOT** be called anywhere:

- [ ] Verify no external code calls `metamask_removeFavorite`
- [ ] Verify no external code calls `metamask_showAutocomplete`
- [ ] Verify no external code calls `metamask_injectHomepageScripts`


## **Screenshots/Recordings**

### **Before**

N/A - Internal code cleanup, no UI changes

### **After**

N/A - Internal code cleanup, no UI changes

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile
Coding
Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I've included tests if applicable
- [x] I've documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I've applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [x] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [x] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Medium Risk**
> Touches `getRpcMethodMiddleware` and browser bridge wiring used by
in-app browser, WalletConnect, SDK, and Snaps, so missing/incorrect
params could break dapp connectivity. Functional change is primarily
removal of legacy homepage/bookmark/autocomplete RPC surface, which is
straightforward but broad in reach.
> 
> **Overview**
> Removes the in-app browser *legacy homepage* plumbing: drops
`isHomepage` detection, homepage script injection, and the URL-bar
autocomplete trigger path from `BrowserTab`, along with the `bookmarks`
prop previously used for homepage injection.
> 
> Simplifies `getRpcMethodMiddleware` by removing homepage-related
parameters and deletes the MetaMask-specific RPC methods
`metamask_removeFavorite`, `metamask_showAutocomplete`, and
`metamask_injectHomepageScripts`; corresponding unrestricted-method
allowlist entries and integration/test stubs across
SDK/WalletConnect/Snaps/DaimoPay are updated accordingly.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
1c18b3e. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**

Fixes `megaEth` naming to `megaETH`.

<!--
Write a short description of the changes included in this pull request,
also include relevant motivation and context. Have in mind the following
questions:
1. What is the reason for the change?
2. What is the improvement/solution?
-->

## **Changelog**

<!--
If this PR is not End-User-Facing and should not show up in the
CHANGELOG, you can choose to either:
1. Write `CHANGELOG entry: null`
2. Label with `no-changelog`

If this PR is End-User-Facing, please write a short User-Facing
description in the past tense like:
`CHANGELOG entry: Added a new tab for users to see their NFTs`
`CHANGELOG entry: Fixed a bug that was causing some NFTs to flicker`

(This helps the Release Engineer do their job more quickly and
accurately)
-->

CHANGELOG entry: Fixed MegaETH network name spelling from "MegaEth" to
"MegaETH" for consistency across the app

## **Related issues**

Fixes:

## **Manual testing steps**

```gherkin
Feature: MegaETH Network Name Spelling Correction

  Scenario: user sees correct MegaETH spelling after app update
    Given the user has MegaETH Mainnet network already added with the old spelling "MegaEth"
    
    When the user updates the app to the latest version
    Then the network name should be displayed as "MegaETH" (migration applied successfully)

  Scenario: user adds MegaETH network for the first time
    Given the user does not have MegaETH Mainnet network added
    
    When the user adds MegaETH Mainnet from the popular networks list
    Then the network name should be displayed as "MegaETH" (not "MegaEth")
```

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

<img width="382" height="809" alt="Screenshot 2026-02-09 at 14 18 21"
src="https://github.com/user-attachments/assets/2e9812a2-3bc2-45b7-ac77-d7c6a39feadd"
/>


### **After**

<!-- [screenshots/recordings] -->

<img width="382" height="809" alt="Screenshot 2026-02-09 at 14 19 07"
src="https://github.com/user-attachments/assets/002d676e-24a2-48da-bcde-3087d7fedf8d"
/>


## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile
Coding
Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I've included tests if applicable
- [ ] I've documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I've applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Low Risk**
> String-only renaming plus a narrowly-scoped state migration for a
single chain ID; low chance of side effects beyond display naming if the
migration logic misses unexpected state shapes.
> 
> **Overview**
> Standardizes MegaETH capitalization across the app by renaming the
MegaETH Mainnet label from `MegaEth` to `MegaETH` in the popular
networks list, network-name allowlist, and the NetworkSelector snapshot.
> 
> Adds migration `119` to update persisted
`NetworkController.networkConfigurationsByChainId` for
`MEGAETH_MAINNET`, rewriting the network `name` and any
`rpcEndpoints[].name` values from `MegaEth` to `MegaETH`, with
accompanying unit tests and registration in the migrations index.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
6604977. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->

---------

Co-authored-by: João Loureiro <175489935+joaoloureirop@users.noreply.github.com>
…#25745)

## **Description**

This PR improves the consistency and simplifies the usage of text input
and search field components across the app by:

1. **Centralizing placeholder text color**: The `Input` component now
sets a default `placeholderTextColor` using the theme's
`text.alternative` color token, eliminating the need for consumers to
manually pass this prop.

2. **Simplifying TextFieldSearch clear button behavior**: The
`showClearButton` prop has been removed. The clear button now
automatically appears when the input has a value (`!!value`), which is
the expected UX pattern and reduces boilerplate for consumers.

3. **Fixing error state priority over focus state**: The `TextField`
component now correctly prioritizes error border color over focus border
color. Previously, focusing an errored field would override the error
styling.

4. **Cleaning up Input styles**: Removed hardcoded `height` and
platform-specific `paddingVertical` fixes from the Input component
styles, allowing for more natural sizing.

5. **Updating all consumers**: Removed redundant `placeholderTextColor`
and `showClearButton` props from ~30+ component usages across the
codebase.

## **Changelog**

CHANGELOG entry: null

## **Related issues**

Fixes:
https://consensyssoftware.atlassian.net/jira/software/c/projects/MDP/boards/2972?assignee=62afb43d33a882e2be47c36f&quickFilter=3325&selectedIssue=MDP-701

## **Manual testing steps**

```gherkin
Feature: TextField and TextFieldSearch improvements

  Scenario: User views placeholder text in text fields
    Given the user is on any screen with a text input (e.g., Login, ChoosePassword)

    When user views the empty text field
    Then the placeholder text should be displayed in the correct alternative text color

  Scenario: User interacts with search fields
    Given the user is on a screen with a TextFieldSearch component (e.g., Bridge token selector, Fiat selector)

    When user types text into the search field
    Then a clear button should automatically appear
    
    When user taps the clear button
    Then the search text should be cleared
    And the clear button should disappear
```

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**


https://github.com/user-attachments/assets/acf4f991-43fe-4674-8765-326fec39dc32

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile
Coding
Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I've included tests if applicable
- [x] I've documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I've applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.


<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Medium Risk**
> Touches shared form components (`Input`, `TextField`,
`TextFieldSearch`) used widely across the app, so subtle UI regressions
(placeholder contrast, input height, error/focus styling, clear-button
visibility) are possible despite mostly presentational changes.
> 
> **Overview**
> Standardizes `Input`/`TextField` behavior and simplifies search
inputs.
> 
> `Input` now applies a default `placeholderTextColor` from theme
(`text.alternative`) and removes hardcoded sizing/padding styles;
`TextField` border color logic is adjusted so *error state* wins over
*focus*. `TextFieldSearch` drops `showClearButton` and instead
auto-displays the clear icon when `value` is truthy, requiring
`onPressClearButton` and updating consumers (e.g.,
bridge/ramp/card/perps/multichain) to remove redundant props/styles and
wire clear handlers.
> 
> Docs, stories, unit tests, and many snapshots are updated to reflect
the new defaults and clear-button behavior.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
b6dac0e. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
#25855)

## **Description**

Updated the HeaderBase component to use `min-h-14` instead of `h-14` for
non-left-aligned headers. This allows the header to scale appropriately
when users have larger font sizes enabled in their accessibility
settings, preventing content from being cut off.

The fixed height (`h-14`) was constraining the header to 56px regardless
of content size, which could cause text to overflow or be truncated when
accessibility settings increased font sizes. By using a minimum height
(`min-h-14`), the header can now expand to accommodate larger text while
maintaining the minimum visual design requirement.

## **Changelog**

CHANGELOG entry: Fixed header height to scale properly with larger
accessibility font sizes

## **Related issues**

Fixes: 

## **Manual testing steps**

```gherkin
Feature: Header scales with font size

  Scenario: user increases system font size
    Given the app is open with default font size
    
    When user increases system font size in accessibility settings
    Then header should expand to accommodate larger text without clipping
```

## **Screenshots/Recordings**

<!-- Screenshots/recordings will be added after snapshot updates -->

### **Before**

<!-- [screenshots/recordings] -->

Text gets cut off on larger font sizes


https://github.com/user-attachments/assets/b282137a-d2cd-4ccb-926f-b6f3b9a39f42

In activity 


https://github.com/user-attachments/assets/959f2d62-b3ec-4160-ba25-1ebe8bad6982

### **After**

<!-- [screenshots/recordings] -->


https://github.com/user-attachments/assets/e948b55a-1730-41d0-bcea-a28de9a0971f


https://github.com/user-attachments/assets/ac58616d-435b-49a8-86fb-8032a9008d06


https://github.com/user-attachments/assets/8fe03739-8014-4b3b-a4f1-20fc41211a16

In activity


https://github.com/user-attachments/assets/34066722-f8f3-49da-99fc-a9039a2c6442


## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile
Coding
Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I've included tests if applicable
- [x] I've documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I've applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.



<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Low Risk**
> Small UI styling change (height → min-height) plus snapshot updates;
low risk but could cause minor layout shifts in screens using
`HeaderBase` under accessibility font scaling.
> 
> **Overview**
> Updates `HeaderBase` to use `min-h-14` (min-height) instead of a fixed
`h-14` for non-left-aligned/Compact headers, allowing the header
container to expand when text scales for accessibility.
> 
> Regenerates a large set of Jest snapshots across bottom
sheets/modals/views to reflect the style change from `height: 56` to
`minHeight: 56` (and adds `minHeight` alongside `height: "auto"` in one
case).
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
018185f. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
… to ^66.0.0 (#25792)

<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**

<!--
Write a short description of the changes included in this pull request,
also include relevant motivation and context. Have in mind the following
questions:
1. What is the reason for the change?
2. What is the improvement/solution?
-->

This PR bumps the `bridge-controller` and `bridge-status-controller` so
that we can start emitting the `Unified SwapBridge Polling Status
Updated`.

## **Changelog**

<!--
If this PR is not End-User-Facing and should not show up in the
CHANGELOG, you can choose to either:
1. Write `CHANGELOG entry: null`
2. Label with `no-changelog`

If this PR is End-User-Facing, please write a short User-Facing
description in the past tense like:
`CHANGELOG entry: Added a new tab for users to see their NFTs`
`CHANGELOG entry: Fixed a bug that was causing some NFTs to flicker`

(This helps the Release Engineer do their job more quickly and
accurately)
-->

CHANGELOG entry: null

## **Related issues**

Related to https://consensyssoftware.atlassian.net/browse/SWAPS-3179

## **Manual testing steps**

```gherkin
Feature: my feature name

  Scenario: user [verb for user action]
    Given [describe expected initial app state]

    When user [verb for user action]
    Then [describe expected outcome]
```

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile
Coding
Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [ ] I've included tests if applicable
- [ ] I've documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I've applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Medium Risk**
> Dependency-only change, but it upgrades core bridge controllers that
can affect swap/bridge transaction and polling behavior at runtime.
> 
> **Overview**
> Updates the bridge dependency versions by bumping
`@metamask/bridge-status-controller` from `^64.4.5` to `^66.0.0` (and
pulling in newer `@metamask/bridge-controller` via the lockfile),
aligning transitive controller versions in `yarn.lock`.
> 
> No app/runtime code changes are included; this PR is purely a
dependency/lockfile update intended to enable newer bridge polling
status emission behavior from upstream packages.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
36f86a4. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->

Co-authored-by: Cursor <cursoragent@cursor.com>
## **Description**

Adds a new "Ending soon" tab to the PredictFeed, placed to the right of
the "Trending" tab. This tab displays markets sorted by `endDate`
ascending (`order=endDate&ascending=true`), allowing users to discover
markets that are about to close.

The `ascending` query parameter is made dynamic per category via an
`ascendingCategories` Set, cleanly supporting `ascending=true` for the
ending-soon tab while preserving `ascending=false` for all existing tabs
— no duplicate query parameters.

## **Changelog**

CHANGELOG entry: Added an "Ending soon" tab to prediction markets feed
showing markets sorted by end date

## **Related issues**

Fixes: https://consensyssoftware.atlassian.net/browse/PRED-536

## **Manual testing steps**

```gherkin
Feature: Ending soon tab in PredictFeed

  Scenario: user views ending soon markets
    Given the user is on the PredictFeed screen

    When user taps the "Ending soon" tab (second tab, after Trending)
    Then markets sorted by end date (soonest first) are displayed

  Scenario: user swipes to ending soon tab
    Given the user is on the Trending tab

    When user swipes left once
    Then the "Ending soon" tab becomes active
    And markets sorted by end date ascending are displayed

  Scenario: ending soon tab with hot tab enabled
    Given the hot tab feature flag is enabled

    When user views the tab bar
    Then tabs appear in order: Hot, Trending, Ending soon, New, Sports, Crypto, Politics
```

## **Screenshots/Recordings**

### **Before**

Tabs: Trending | New | Sports | Crypto | Politics

### **After**

Tabs: Trending | Ending soon | New | Sports | Crypto | Politics

https://www.loom.com/share/87fcc6cc8d3847648e4832f3211e82cd

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile
Coding
Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I've included tests if applicable
- [x] I've documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I've applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Low Risk**
> Primarily adds a new feed category and adjusts query parameters and
tab indices; risk is limited to tab ordering/analytics and correctness
of the new Polymarket sorting query.
> 
> **Overview**
> Adds a new **"Ending soon"** category tab (`ending-soon`) to the
Predict feed, positioned after Trending, including a new i18n label.
> 
> Updates Polymarket market-fetch query generation to support
category-specific sorting by making `ascending` dynamic; `ending-soon`
now requests `order=endDate` with `ascending=true` while existing
categories remain `ascending=false`.
> 
> Adjusts `PredictCategory` typing and updates unit/UI tests to reflect
the additional tab/page and shifted `activeIndex`/analytics expectations
(including with the Hot tab feature flag).
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
5e42dd2. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**

- Add usePredictSearch hook to manage search visibility and query from
  route params and focus effect
- Parse query/q in handlePredictUrl and pass query to PredictMarketList
- Lift search state from PredictSearchOverlay into PredictFeed via hook
- Extend PredictMarketList params with optional query
- Add unit tests for usePredictSearch and handlePredictUrl query param
- Add PredictFeed tests for deeplink query (open overlay, pre-fill,
cancel)

<!--
Write a short description of the changes included in this pull request,
also include relevant motivation and context. Have in mind the following
questions:
1. What is the reason for the change?
2. What is the improvement/solution?
-->

## **Changelog**

<!--
If this PR is not End-User-Facing and should not show up in the
CHANGELOG, you can choose to either:
1. Write `CHANGELOG entry: null`
2. Label with `no-changelog`

If this PR is End-User-Facing, please write a short User-Facing
description in the past tense like:
`CHANGELOG entry: Added a new tab for users to see their NFTs`
`CHANGELOG entry: Fixed a bug that was causing some NFTs to flicker`

(This helps the Release Engineer do their job more quickly and
accurately)
-->

CHANGELOG entry: null

## **Related issues**

Fixes: https://consensyssoftware.atlassian.net/browse/PRED-540

## **Manual testing steps**

```gherkin
Feature: my feature name

  Scenario: user [verb for user action]
    Given [describe expected initial app state]

    When user [verb for user action]
    Then [describe expected outcome]
```

## **Screenshots/Recordings**

https://www.loom.com/share/43980ff3f9114072becb493118124b2c

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->

### **After**

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [ ] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile
Coding
Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [ ] I've completed the PR template to the best of my ability
- [ ] I've included tests if applicable
- [ ] I've documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [ ] I've applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Medium Risk**
> Touches deeplink parsing and Predict navigation params, which can
affect routing behavior across entry points. Changes are localized and
covered by targeted tests, but regressions could surface as incorrect
navigation or unexpected search overlay state.
> 
> **Overview**
> Adds support for Predict deeplinks that include a search term
(`?query=` or `?q=`) by parsing and passing `query` through
`handlePredictUrl` into `PredictMarketList` route params.
> 
> Refactors `PredictFeed` search overlay state into a new
`usePredictSearch` hook that initializes from the route `query` param
and updates on focus only when the deeplink query changes, allowing
deeplinks to auto-open and prefill search while preserving user
edits/close actions.
> 
> Updates navigation types to include `query?: string` and adds unit/UI
tests covering parsing precedence (`query` over `q`), interaction with
`market`/`tab`, special characters, and PredictFeed overlay
open/prefill/cancel behavior.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
2c7eb84. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
…hain enforcement (#25915)

<!--
Please submit this PR as a draft initially.
Do not mark it as "Ready for review" until the template has been
completely filled out, and PR status checks have passed at least once.
-->

## **Description**
## Purpose
Add mUSD conversion quote + consistency-check context to the
`MUSD_CONVERSION_STATUS_UPDATED` tracking event.

## Event properties added
- `quote_payment_chain_id`: Quote source chainId (where payment token is
sourced)
- `quote_output_chain_id`: Quote target chainId (where output token is
received)
- `quote_is_same_chain`: Whether quote source/target chainIds match
- `quote_payment_token_address`: Quote source/payment token address
- `quote_output_token_address`: Quote target/output token address
- `payment_amount_usd`: Quoted source/payment amount in USD
- `output_amount_usd`: Quoted target/output amount in USD
- `pay_quote_strategy`: Quote strategy used
- `selected_payment_chain_id`: User-selected payment chainId (if
present)
- `selected_payment_chain_matches_quote_payment_chain`: Whether selected
payment chainId matches quote source chainId
- `tx_execution_chain_matches_quote_output_chain`: Whether tx execution
chainId matches quote target chainId
- `payment_token_address`: Resolved “payment/in” token address (selected
or quote-derived)
- `payment_token_chain_id`: Resolved “payment/in” token chainId
(selected or quote-derived)
- `output_token_address`: Resolved “output/out” token address
(quote-derived)
- `output_token_chain_id`: Resolved “output/out” token chainId
(quote-derived)
<!--
Write a short description of the changes included in this pull request,
also include relevant motivation and context. Have in mind the following
questions:
1. What is the reason for the change?
2. What is the improvement/solution?
-->

## **Changelog**

<!--
If this PR is not End-User-Facing and should not show up in the
CHANGELOG, you can choose to either:
1. Write `CHANGELOG entry: null`
2. Label with `no-changelog`

If this PR is End-User-Facing, please write a short User-Facing
description in the past tense like:
`CHANGELOG entry: Added a new tab for users to see their NFTs`
`CHANGELOG entry: Fixed a bug that was causing some NFTs to flicker`

(This helps the Release Engineer do their job more quickly and
accurately)
-->

CHANGELOG entry: added mUSD conversion event properties for same-chain
enforcement

## **Related issues**

Fixes: [MUSD-307: Add tracking for bridge
conversions](https://consensyssoftware.atlassian.net/browse/MUSD-307)

## **Manual testing steps**

```gherkin
Feature: Enriched mUSD conversion status analytics

  Scenario: user conversion status update includes quote context
    Given user initiates an mUSD conversion that produces a MetaMask Pay quote

    When the conversion transaction status updates (approved, confirmed, or failed)
    Then analytics includes the quote payment/output chain and token addresses
    And analytics includes whether the quote is same-chain and the quote strategy
    And analytics includes payment/output USD amounts when available
```

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

<!-- [screenshots/recordings] -->
N/A
### **After**
N/A
<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile
Coding
Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I've included tests if applicable
- [x] I've documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I've applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Low Risk**
> Changes are limited to MetaMetrics payload enrichment and more
defensive decoding in `useMusdConversionStatus`, with expanded test
coverage; no transaction execution logic is altered.
> 
> **Overview**
> Enhances `useMusdConversionStatus` MetaMetrics tracking for mUSD
conversions by attaching quote-derived fields (payment/output chain IDs,
token addresses, same-chain flag, strategy, and USD amounts) plus
consistency-check properties comparing selected payment chain and
execution chain vs the quote.
> 
> Makes transfer amount decoding resilient to malformed/missing
`txParams.data` (amount fields default to empty instead of throwing),
and updates/extends unit tests to assert the new properties and cover
same-chain vs cross-chain quote scenarios.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
c195242. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
## **Description**

This PR adds a comprehensive set of header components to
`components-temp` as part of the ongoing header component library
development. These components provide flexible, reusable header patterns
for various screen layouts including collapsible scroll-linked headers
and static stacked headers.

**Components added:**

1. **HeaderCollapsible** - Base collapsing header that smoothly
transitions between expanded and compact states based on scroll position
using Reanimated for performant scroll-linked animations. Includes a
custom hook (`useHeaderCollapsible`) for easy ScrollView integration.

2. **HeaderCollapsibleStandard** - Extends HeaderCollapsible with
TitleStandard content in the expanded section, suitable for
main/top-level screens.

3. **HeaderCollapsibleSubpage** - Extends HeaderCollapsible with
TitleSubpage content in the expanded section, suitable for
secondary/nested screens.

4. **HeaderCompactSearch** - A compact search header with two variants:
- `Screen` variant: Renders a back button (ArrowLeft) on the left side
   - `Inline` variant: Renders a cancel button on the right side

5. **HeaderStackedStandard** - A static (non-collapsible) header that
combines HeaderBase with TitleStandard below, including React Navigation
integration helper (`getHeaderStackedStandardNavbarOptions`).

6. **HeaderStackedSubpage** - A static header that combines HeaderBase
with TitleSubpage below, suitable for secondary/nested screens.

All components include full TypeScript support, comprehensive unit
tests, and Storybook stories for documentation and visual testing.

## **Changelog**

CHANGELOG entry: null

## **Related issues**

Fixes:
https://consensyssoftware.atlassian.net/jira/software/c/projects/MDP/boards/2972?assignee=62afb43d33a882e2be47c36f&quickFilter=3325&selectedIssue=MDP-702

## **Manual testing steps**

```gherkin
Feature: Header components in Storybook

  Scenario: User views HeaderCollapsible in Storybook
    Given the app is running in Storybook mode

    When user navigates to HeaderCollapsible stories
    Then user should see the collapsible header expand and collapse on scroll

  Scenario: User views HeaderStackedStandard in Storybook
    Given the app is running in Storybook mode

    When user navigates to HeaderStackedStandard stories
    Then user should see a static stacked header with back button and title section

  Scenario: User views HeaderCompactSearch in Storybook
    Given the app is running in Storybook mode

    When user navigates to HeaderCompactSearch stories
    Then user should see both Screen and Inline search header variants
```

## **Screenshots/Recordings**

<!-- If applicable, add screenshots and/or recordings to visualize the
before and after of your change. -->

### **Before**

N/A - New components

### **After**

HeaderCollapsible


https://github.com/user-attachments/assets/e54baf08-d3d7-463d-9f9c-38cfc37f5ad3

HeaderCollapsibleStandard


https://github.com/user-attachments/assets/015f7c71-9b41-4671-b016-ca1193761807

HeaderCollapsibleSubpage


https://github.com/user-attachments/assets/5bc9dc72-a65d-4cf2-baf1-f8ee50af2f14

HeaderCompactSearch


https://github.com/user-attachments/assets/06787417-a2fe-41c3-ac57-520f79ba4003

HeaderStackedStandard


https://github.com/user-attachments/assets/0de09449-8be8-41a1-bc0d-47219eecdd54

HeaderStackedSubpage


https://github.com/user-attachments/assets/b3446d48-bb02-4ae0-b0df-043e7fddd258

<!-- [screenshots/recordings] -->

## **Pre-merge author checklist**

- [x] I've followed [MetaMask Contributor
Docs](https://github.com/MetaMask/contributor-docs) and [MetaMask Mobile
Coding
Standards](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/CODING_GUIDELINES.md).
- [x] I've completed the PR template to the best of my ability
- [x] I've included tests if applicable
- [x] I've documented my code using [JSDoc](https://jsdoc.app/) format
if applicable
- [x] I've applied the right labels on the PR (see [labeling
guidelines](https://github.com/MetaMask/metamask-mobile/blob/main/.github/guidelines/LABELING_GUIDELINES.md)).
Not required for external contributors.

## **Pre-merge reviewer checklist**

- [ ] I've manually tested the PR (e.g. pull and build branch, run the
app, test code being changed).
- [ ] I confirm that this PR addresses all acceptance criteria described
in the ticket it closes and includes the necessary testing evidence such
as recordings and or screenshots.

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Medium Risk**
> Mostly additive UI work, but introduces new scroll-linked Reanimated
behavior and dynamic layout measurement that could cause
visual/interaction regressions if adopted by screens.
> 
> **Overview**
> Introduces a new set of reusable header components under
`components-temp`, including `HeaderCollapsible` (scroll-linked
collapsing header with dynamic height measurement + safe-area
positioning) and a companion `useHeaderCollapsible` hook.
> 
> Adds wrapper variants
`HeaderCollapsibleStandard`/`HeaderCollapsibleSubpage` and static
`HeaderStackedStandard`/`HeaderStackedSubpage`, plus a
`HeaderCompactSearch` header supporting *screen* (back button) and
*inline* (cancel button) modes. Each new component is wired into
Storybook and covered by dedicated unit tests.
> 
> Also normalizes `twClassName` handling by defaulting it to `''` in
`HeaderCompactStandard`, `TitleStandard`, and `TitleSubpage` and
simplifying class concatenation.
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
ed7c2fd. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
@pull pull Bot locked and limited conversation to collaborators Feb 10, 2026
@pull pull Bot added the ⤵️ pull label Feb 10, 2026
@pull pull Bot merged commit f7fb00d into Reality2byte:main Feb 10, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants