Skip to content

feat: Bark expansion - #51

Merged
orangeshyguy21 merged 4 commits into
mainfrom
bark-expansion
Oct 9, 2026
Merged

orangeshyguy21 merged 4 commits into
mainfrom
bark-expansion

Conversation

@orangeshyguy21

Copy link
Copy Markdown
Owner

New Features

  • Configurable Bark payment methods — cdk-bark-processor gains payment_methods (bolt11, onchain, arkoor); the default advertises all three, as upstream does.
  • On-chain and arkoor on CDK mints — CDK 0.18.1 mints can bind on-chain and arkoor to the Bark processor, alone or beside embedded BDK.
  • Per-backend mint units — each CDK payment section takes its unit from its links, or from the new embedded_lightning_unit for LDK Node.

Changes

  • Bark mints bind every advertised method — a mint must bind each method its Bark processor advertises, exactly once.

Important

Existing Bark cells with only a bolt11 binding no longer validate. Add onchain and arkoor bindings, or set payment_methods: ["bolt11"] on the processor. Recreate affected cells.

  • CDK limit fields renamed — min_mint_sat, max_mint_sat, min_melt_sat and max_melt_sat are now min_mint, max_mint, min_melt and max_melt.

Important

Update authored CDK mint configs to the new names. On-chain (onchain_*_sat) and Nutshell limits are unchanged.

  • Open payment methods and units — methods and units are now open Cashu strings, so custom values like arkoor need no code change.
  • Stricter processor readiness — GetSettings must report exactly the configured methods, and startup refuses a missing method list.
  • Embedded backends checked at lock time — embedded LDK Node and BDK payment tuples must be listed in the catalog.
  • Version — bumped to 0.1.0-alpha.9.

Note

The catalog still admits only sat. msat for LND, CLN and LDK Node needs its own qualification gate first.

Testing

  • Managed Bark gate — now checks exact method registration on processor and mint, and credits an on-chain deposit boarded into Ark.
  • Unit and golden coverage — topology, rendering, driver handshake and lock-time unit checks; format, clippy and workspace tests pass locally.

Note

The new Bark gate stages run for the first time in this PR's CI. arkoor payments and on-chain melts are not exercised.

- Add an authored `payment_methods` set (bolt11, onchain, arkoor; default all, as upstream) to cdk-bark-processor; renderer, driver and readiness use it, and CDK 0.18.1 mints bind each advertised method
- Model payment methods and units as open Cashu strings, so custom methods such as arkoor and custom units need no enum
- Extend the managed Bark gate to check method registration and an on-chain deposit, and regenerate schemas, CRDs, coverage and goldens
- Render each CDK payment section's unit from its payment-link bindings, with a new `embedded_lightning_unit` for LDK Node; BDK stays sat, as upstream requires
- Validate one unit per backend and check embedded tuples against the catalog at lock time; the catalog still lists only sat
- Rename CDK Lightning limits to unit-neutral `min_mint`/`max_mint`/`min_melt`/`max_melt` and regenerate schemas, coverage and goldens
Update the workspace crates, Cargo.lock, Helm chart, install script and tools/versions.env from 0.1.0-alpha.8 to 0.1.0-alpha.9 for the release.
The on-chain stage POSTed its quote through a new port-forward before it was listening, so curl was refused after 0 ms on both architectures. Warm the forward with a retrying /v1/info read first, as the recovery stage does.
@orangeshyguy21
orangeshyguy21 merged commit 8cdb538 into main Oct 9, 2026
40 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant