Deprecate Botanix to keys-only mode on July 9, 2026#6044
Open
j0ntz wants to merge 1 commit into
Open
Conversation
Contributor
Author
e82ad4e to
859156d
Compare
859156d to
1e96df5
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 1e96df5. Configure here.
1e96df5 to
86687da
Compare
Add a generic isKeysOnlyModeDate date-gate helper and make the botanix keysOnlyMode flag a getter that calls it, so the asset becomes keys-only (watch-only) on 2026-07-09 without an app restart. Build the wallet picker keys-only exclude list per render so the date-gated flag is honored mid-session instead of being frozen at module load. The helper is generic and reusable for deprecating any future asset by date, not specific to Botanix.
86687da to
850bb20
Compare
Contributor
Author
📸 Test evidence (generic keysOnlyMode date-gate, commit 850bb20) — bitcoinsv keys-only proxyagent proof 1215599238343239 01 bitcoinsv excluded agent proof 1215599238343239 02 bitcoin search control Captured by the agent's in-app test run (build-and-test). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.






CHANGELOG
Does this branch warrant an entry to the CHANGELOG?
Dependencies
none
Requirements
If you have made any visual changes to the GUI. Make sure you have:
Description
Asana: https://app.asana.com/0/1215088146871429/1215599238343239
Deprecate the Botanix asset by making it keys-only, date-gated to take effect on July 9, 2026. On and after that date
keysOnlyModebecomes true forbotanix: existing Botanix wallets remain accessible (keys-only, view/export) but new Botanix wallets can no longer be created. Before the date the asset is unaffected.The mechanism is generic, not Botanix-specific. A reusable
isKeysOnlyModeDate(date)helper returns true once the current time reaches the given date.botanix.keysOnlyModeis a getter that calls it, so the flag re-evaluates on each read and flips at the cutover without an app restart (the same dynamic-keysOnlyModepattern aszcashandpiratechain). Any future asset can be deprecated on a date by giving its entry the same getter. The helper is a hoisted function rather than a module-levelconstbecauseSPECIAL_CURRENCY_INFOreads it during module initialization.WalletListModalbuilds its keys-only exclude list per render insideuseMemoinstead of once at import, so the date-gated flag is honored mid-session.Changes:
isKeysOnlyModeDate(date)helper next toisZecBroken().botanix.keysOnlyModegetter callingisKeysOnlyModeDate(new Date('2026-07-09')).WalletListModalcomputes the keys-only exclude list per render.Once active, the flag flows through the existing create-wallet filter (
isKeysOnlyPluginremoves keys-only assets from the create-wallet list).Testing
tsc --noEmit: clean.verify-repo.shfull suite and jest: passed (399 tests).isKeysOnlyModeDateis false before 2026-07-09 and true on/after; thebotanix.keysOnlyModegetter re-evaluates per read. Passing.BOTANIX_INIT: false) and enabling it crashes the debug build, and the gate is not active until 2026-07-09, so Botanix itself is not runnable in the sim today. Verified the identical keys-only create-wallet exclusion the gate feeds via thebitcoinsvproxy (hardcoded-enabled andkeysOnlyMode: true): searching "Bitcoin SV" in "Choose Wallets to Add" yields no creatable result, while "Bitcoin" returns creatable BTC/BCH variants. Screenshots attached. The date logic itself is covered by the unit tests.Note
Low Risk
Time-gated UI filtering for one asset using an established keys-only pattern; no auth or payment logic changes.
Overview
Botanix is scheduled to enter keys-only mode on July 9, 2026: existing wallets stay viewable/exportable, but new Botanix wallets are blocked from the create-wallet flow via the existing
isKeysOnlyPluginfiltering.The cutover uses a reusable
isKeysOnlyModeDate(date)helper and abotanix.keysOnlyModegetter (not a fixed boolean) so the flag re-evaluates on each read and can flip mid-session without restarting the app.WalletListModalnow builds the keys-only exclude list insideuseMemoon each render instead of once at import, so the same date-gated behavior applies when picking wallets. Unit tests cover the date helper and getter re-evaluation; CHANGELOG notes the deprecation.Reviewed by Cursor Bugbot for commit 850bb20. Bugbot is set up for automated code reviews on this repo. Configure here.