aboutsummaryrefslogtreecommitdiffstats
path: root/test/security.test.ts
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-09-16 04:53:22 -0700
committerAdam Soltys <[email protected]>2026-09-16 04:53:22 -0700
commitc72fa2a5ccf1cc04073f9ff12606491971dadd36 (patch)
treee58124db24fb734c4a443b4ef20e9f25efe78c24 /test/security.test.ts
parent19f73ae9cf2afffbbb2abc71eb80c6d5bdccca52 (diff)
downloadcoinos-server-c72fa2a5ccf1cc04073f9ff12606491971dadd36.tar.gz
coinos-server-c72fa2a5ccf1cc04073f9ff12606491971dadd36.zip
ecash: redeem tokens by melting to the user's own invoice
Redeeming ecash is now a plain NUT-05 melt into a Lightning invoice owned by the redeeming user, credited by the regular lightning listener. Drop the house proof pool and its lock, the /mint and /melt routes, and the special-casing of a mint account in NWC and payment routing. Tokens are decoded against the mint's keyset list so short v1 ids resolve, and an empty keyset list is never cached. Co-Authored-By: Claude Fable 5.1 <[email protected]>
Diffstat (limited to 'test/security.test.ts')
-rw-r--r--test/security.test.ts2
1 files changed, 1 insertions, 1 deletions
diff --git a/test/security.test.ts b/test/security.test.ts
index 1ef7cabb..9311cf5d 100644
--- a/test/security.test.ts
+++ b/test/security.test.ts
@@ -206,7 +206,7 @@ describe("fnd-006 — deleteSelf guard sums every account", () => {
describe("S8 / fnd-007 — the spend/cash mutex serializes critical sections", () => {
test("no two sections run concurrently and FIFO order holds", async () => {
- // Same shape as withBudgetLock (nwc.ts) and withCashLock (ecash.ts).
+ // Same shape as withBudgetLock (nwc.ts).
let lock: Promise<void> = Promise.resolve();
const withLock = async <T>(fn: () => Promise<T>): Promise<T> => {
const prev = lock;