@forgesworn/moneyer 0.2.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/README.md +15 -11
- package/dist/config.d.ts +1 -1
- package/dist/config.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,28 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.3.0] - 2026-08-22
|
|
4
|
+
|
|
5
|
+
- **The mint fee is now ceilinged to a whole sat by default.**
|
|
6
|
+
`MONEYER_ROUND_FEE_TO_SAT` defaults to `true`, matching dni's
|
|
7
|
+
lnurl-mint, the reference. **An operator upgrading into this withholds
|
|
8
|
+
slightly more per mint than before** - up to one sat, whatever the ppm
|
|
9
|
+
cut worked out to - so it is called out here rather than changed
|
|
10
|
+
quietly. `MONEYER_ROUND_FEE_TO_SAT=false` restores the old behaviour.
|
|
11
|
+
|
|
12
|
+
Why: a mint that deals in fractions of a sat issues notes nothing
|
|
13
|
+
downstream can spend. An msat-exact fee makes notes like 94.9 sat, and
|
|
14
|
+
most Lightning wallets can only invoice whole sats, so such a note
|
|
15
|
+
cannot be withdrawn by them at all. The mint already covered that by
|
|
16
|
+
advertising `minWithdrawable` as the whole-sat floor and keeping the
|
|
17
|
+
remainder as dust; rounding at mint time means it never arises. Every
|
|
18
|
+
note this mint issues for a whole-sat payment is now worth a whole
|
|
19
|
+
number of sats, on both the pay callback and the zap path, which share
|
|
20
|
+
one fee function.
|
|
21
|
+
|
|
22
|
+
LUD-25 says nothing about rounding and `lnurlcash-kit`'s `mintFeeBand`
|
|
23
|
+
accepts either, so this is a posture change and not a compliance one.
|
|
24
|
+
The conformance grader passed both before and passes this now.
|
|
25
|
+
|
|
3
26
|
## [0.2.1] - 2026-08-22
|
|
4
27
|
|
|
5
28
|
- `moneyer --dev` settles its invoices a moment after issuing them rather
|
package/README.md
CHANGED
|
@@ -87,7 +87,7 @@ default, and a variable set to an empty string counts as unset.
|
|
|
87
87
|
| `MONEYER_PREVIOUS_SIGNING_PUBKEYS` | | compressed pubkeys this mint signed under before, comma separated (see below) |
|
|
88
88
|
| `MONEYER_BASE_FEE_MSAT` | `0` | flat mint fee |
|
|
89
89
|
| `MONEYER_FEE_PPM` | `0` | proportional mint fee, parts per million |
|
|
90
|
-
| `MONEYER_ROUND_FEE_TO_SAT` | `
|
|
90
|
+
| `MONEYER_ROUND_FEE_TO_SAT` | `true` | ceiling the mint fee to a whole sat (see below) |
|
|
91
91
|
| `MONEYER_MIN_SENDABLE_MSAT` | `1000` | smallest payment the mint advertises |
|
|
92
92
|
| `MONEYER_MAX_SENDABLE_MSAT` | `100000000` | largest payment the mint advertises |
|
|
93
93
|
| `MONEYER_MIN_MINT_MSAT` | `1000` | dust floor: the smallest note the mint will strike |
|
|
@@ -269,16 +269,20 @@ the msat-exact amount. Neither is out of spec - lnurlcash-kit's
|
|
|
269
269
|
`mintFeeBand` treats anything between the two as the mint keeping its
|
|
270
270
|
word, and the conformance grader accepts both.
|
|
271
271
|
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
sat
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
272
|
+
**moneyer rounds, by default.** A mint that deals in fractions of a sat
|
|
273
|
+
issues notes nothing downstream can spend: msat-exact fees make notes like
|
|
274
|
+
94.9 sat, and most Lightning wallets can only invoice whole sats, so such
|
|
275
|
+
a note cannot be withdrawn by them at all. moneyer covers the notes
|
|
276
|
+
already out there by advertising `minWithdrawable` as the note floored to
|
|
277
|
+
a whole sat and accepting a melt for that, keeping the sub-sat remainder
|
|
278
|
+
as dust - a wart it should not need. Rounding at mint time means it never
|
|
279
|
+
comes up, and every note this mint issues for a whole-sat payment is worth
|
|
280
|
+
a whole number of sats.
|
|
281
|
+
|
|
282
|
+
`MONEYER_ROUND_FEE_TO_SAT=false` restores the msat-exact fee. An operator
|
|
283
|
+
upgrading into this default withholds slightly more per mint than before,
|
|
284
|
+
which is why the changelog says so plainly rather than letting a redeploy
|
|
285
|
+
change it quietly.
|
|
282
286
|
|
|
283
287
|
## Melting to an invoice with no amount
|
|
284
288
|
|
package/dist/config.d.ts
CHANGED
|
@@ -65,7 +65,7 @@ export declare const DEFAULTS: {
|
|
|
65
65
|
readonly verify: true;
|
|
66
66
|
readonly maxK1s: 21;
|
|
67
67
|
readonly sunset: false;
|
|
68
|
-
readonly roundFeeToSat:
|
|
68
|
+
readonly roundFeeToSat: true;
|
|
69
69
|
readonly stats: true;
|
|
70
70
|
readonly statsRatioOnly: false;
|
|
71
71
|
readonly statsPublish: false;
|
package/dist/config.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@forgesworn/moneyer",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "An LNURLcash (LUD-25) mint - strikes Lightning bearer notes. Independent implementation, cln/lnd funding sources, SQLite, zero HTTP framework.",
|
|
5
5
|
"author": "TheCryptoDonkey",
|
|
6
6
|
"license": "MIT",
|