@mem-cash/validation 0.0.3 → 0.0.4
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/dist/checks.d.ts.map +1 -1
- package/dist/checks.js +8 -2
- package/dist/checks.js.map +1 -1
- package/package.json +1 -1
package/dist/checks.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checks.d.ts","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"AAmBA;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GACpB;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GACZ;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAIrE,+CAA+C;AAC/C,UAAU,YAAY;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,WAAW,CAO7E;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,WAAW,CAYjF;AAED,oDAAoD;AACpD,UAAU,aAAa;IACtB,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACpC,MAAM,EAAE,SAAS,aAAa,EAAE,EAChC,WAAW,EAAE,MAAM,GACjB,WAAW,CAeb;AAED,8CAA8C;AAC9C,UAAU,WAAW;IACpB,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAC;CACrC;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,GAAG,WAAW,CAqBlF;AAED,oDAAoD;AACpD,UAAU,aAAa;IACtB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CAChC;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACpC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,SAAS,aAAa,EAAE,EAChC,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,GACT,WAAW,CAkBb;AAED,sDAAsD;AACtD,UAAU,iBAAiB;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,sDAAsD;IACtD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CACjC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,SAAS,iBAAiB,EAAE,EACpC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GACd,WAAW,CA2Bb;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,WAAW,
|
|
1
|
+
{"version":3,"file":"checks.d.ts","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"AAmBA;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GACpB;IAAE,EAAE,EAAE,IAAI,CAAA;CAAE,GACZ;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAIrE,+CAA+C;AAC/C,UAAU,YAAY;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,WAAW,CAO7E;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,WAAW,CAYjF;AAED,oDAAoD;AACpD,UAAU,aAAa;IACtB,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACpC,MAAM,EAAE,SAAS,aAAa,EAAE,EAChC,WAAW,EAAE,MAAM,GACjB,WAAW,CAeb;AAED,8CAA8C;AAC9C,UAAU,WAAW;IACpB,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAC;CACrC;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,WAAW,EAAE,GAAG,WAAW,CAqBlF;AAED,oDAAoD;AACpD,UAAU,aAAa;IACtB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CAChC;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACpC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,SAAS,aAAa,EAAE,EAChC,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,GACT,WAAW,CAkBb;AAED,sDAAsD;AACtD,UAAU,iBAAiB;IAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,sDAAsD;IACtD,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CACjC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,SAAS,iBAAiB,EAAE,EACpC,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GACd,WAAW,CA2Bb;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,WAAW,CAO9F;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,CAUvE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC/B,OAAO,EAAE,SAAS;IAAE,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;CAAE,EAAE,EAC5F,iBAAiB,EAAE,MAAM,GACvB,WAAW,CA2Bb"}
|
package/dist/checks.js
CHANGED
|
@@ -136,7 +136,9 @@ export function checkSequenceLocks(txVersion, inputs, spendHeight, spendMtp) {
|
|
|
136
136
|
* BCHN: AcceptToMemoryPoolWorker → "min relay fee not met" (REJECT_INSUFFICIENTFEE, DoS 0).
|
|
137
137
|
*/
|
|
138
138
|
export function checkMinRelayFee(fee, txSize, minFeePerKb) {
|
|
139
|
-
|
|
139
|
+
let minFee = (minFeePerKb * BigInt(txSize)) / 1000n;
|
|
140
|
+
if (minFee === 0n && txSize > 0 && minFeePerKb > 0n)
|
|
141
|
+
minFee = 1n;
|
|
140
142
|
if (fee < minFee) {
|
|
141
143
|
return { ok: false, code: REJECT_INSUFFICIENTFEE, error: "min relay fee not met" };
|
|
142
144
|
}
|
|
@@ -177,7 +179,11 @@ export function checkDustOutputs(outputs, dustRelayFeePerKb) {
|
|
|
177
179
|
const outputSize = 8 + (scriptLen < 253 ? 1 : 3) + scriptLen;
|
|
178
180
|
// 148 = estimated input size to spend (32 prevhash + 4 previndex + 1 scriptLen + 107 sigScript + 4 sequence)
|
|
179
181
|
const spendSize = outputSize + 148;
|
|
180
|
-
|
|
182
|
+
// Match BCHN: 3 * CFeeRate::GetFee(nSize) — floor division with min 1 sat
|
|
183
|
+
let feePerOutput = (dustRelayFeePerKb * BigInt(spendSize)) / 1000n;
|
|
184
|
+
if (feePerOutput === 0n && spendSize > 0 && dustRelayFeePerKb > 0n)
|
|
185
|
+
feePerOutput = 1n;
|
|
186
|
+
const dustThreshold = 3n * feePerOutput;
|
|
181
187
|
if (output.valueSatoshis < dustThreshold) {
|
|
182
188
|
return { ok: false, code: REJECT_NONSTANDARD, error: "dust" };
|
|
183
189
|
}
|
package/dist/checks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checks.js","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"checks.js","sourceRoot":"","sources":["../src/checks.ts"],"names":[],"mappings":"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"}
|