Open
Conversation
Remove all fiat currency (USD/EUR) support from the Strike backend, keeping only BTC/sats/msats. This removes ~400 lines of currency exchange complexity including cross-currency payment handling. Changes: - Simplify conversion functions to only handle Sat/Msat ↔ BTC - Remove exchange logic (execute_currency_exchange_by_id, process_internal_settlement, check_exchange_payment) - Remove cross-currency branch from handle_internal_payment_quote - Remove internal invoice currency check from make_payment - Update to new cdk-common API (DynKVStore, Amount<CurrencyUnit>) - Update example config to show only sat as supported unit Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add optional webhook_url configuration to override auto-constructed webhook URLs when the mint runs behind NAT or has different internal/external URLs. Configuration via config.toml: [strike] webhook_url = "https://public.example.com" Or environment variable: CDK_MINTD_STRIKE_WEBHOOK_URL="https://public.example.com" Also fixes pre-existing bugs: - Missing comma in cfg attribute for strike feature - Incorrect return types for configure_mint_builder and configure_lightning_backend functions - Wrong type DynMintKVStore -> DynKVStore in setup.rs
- Replace strike-rs git dependency with vendored api module - Add serde rename for InvoiceState to handle Strike's uppercase values (UNPAID, PAID, etc.) - Handle InvoiceState::Cancelled in all match arms - Add amount field to PayInvoiceQuoteRequest
gudnuf
commented
Feb 5, 2026
|
|
||
| let invoice_list = self | ||
| .strike_api | ||
| .get_invoices(Some(query_params)) |
Author
There was a problem hiding this comment.
@claude look into the strike documentation and see if there's a way that we can do this more efficiently so that we don't have to list all invoices every time
gudnuf
commented
Feb 5, 2026
| ) | ||
| .filter_map(|event| async move { event }); | ||
|
|
||
| let combined_stream = |
Author
There was a problem hiding this comment.
@claude why do we have a combined stream? This seems confusing. I expect polling of rdev and webhooks for prod
gudnuf
commented
Feb 5, 2026
| unit: &CurrencyUnit, | ||
| pending_invoices: &Arc<Mutex<HashMap<String, u64>>>, | ||
| ) -> Option<Event> { | ||
| match strike_api.get_incoming_invoice(invoice_id).await { |
Author
There was a problem hiding this comment.
@claude can you look into the strike documentation and make sure that this is necessary? Do we not get the invoice data we need from the webhook. I'd rather not refetch the invoice if possible
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.
Summary
cdk-strikecrate implementing Strike API client for Lightning paymentscdk-mintdwith configuration, environment variables, and setupChanges
New crate:
cdk-strike(~3,100 lines)MintPaymenttrait implementation for CDK integrationcdk-mintd integration:
strikefeature flag (enabled by default)[strike]section orCDK_MINTD_STRIKE_*env varsConfiguration
Test plan
cargo test -p cdk-strike)🤖 Generated with Claude Code