From 60505c082937946f598dfbf11685c533f48ce4e1 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Thu, 22 Oct 2026 23:14:36 -0700 Subject: Manage page: the card is "Custody strategy" Co-Authored-By: Claude Fable 5.1 --- src/i18n.js | 2 +- tools/ark/custody-ui-test.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/i18n.js b/src/i18n.js index c92d532..b8d9f45 100644 --- a/src/i18n.js +++ b/src/i18n.js @@ -782,7 +782,7 @@ const STR = { arkCoopSelectedOne: 'Only the coin ticked above will move.', arkCoopSelectedAmt: '{n} selected coins · {amount}', arkCoopSelectedAmtOne: '1 selected coin · {amount}', - arkCustodyTitle: 'Custody', + arkCustodyTitle: 'Custody strategy', arkCustodyDesc: 'Each coin expires about {days} days after it was made. Until then you can bring it on-chain yourself, without Coinos; after that, Coinos keeps honoring it. Renewing before expiry keeps your own exit, for a fee, so it is a choice:', arkCustodyCustodial: 'Allow coins to expire', arkCustodyCustodialDesc: 'Nothing renews and no renewal fees are paid. A coin keeps its own exit until it expires. After that, paying still works, but bringing it on-chain needs Coinos’s cooperation.', diff --git a/tools/ark/custody-ui-test.js b/tools/ark/custody-ui-test.js index f8fc886..5eabbfa 100644 --- a/tools/ark/custody-ui-test.js +++ b/tools/ark/custody-ui-test.js @@ -84,8 +84,8 @@ try { assert.match(await page.$eval('.ark-custody-desc', (e) => e.textContent), /keeps its own exit until it expires/); assert.doesNotMatch(tx, /Coins renew in the last hours|Every transfer adds a hop/, 'only the chosen strategy is described'); assert.doesNotMatch(tx, /timelock|Spending coin carries|old Coinos/, 'no jargon on the card'); - const order = await page.$$eval('.card h4, .card h3', (es) => es.map((e) => e.textContent).filter((x) => /Spending coins|Custody|Renewal/.test(x))); - assert.deepEqual(order, ['Spending coins', 'Custody'], 'coins first, then the strategy; no explainer cards'); + const order = await page.$$eval('.card h4, .card h3', (es) => es.map((e) => e.textContent).filter((x) => /Spending coins|Custody strategy|Renewal/.test(x))); + assert.deepEqual(order, ['Spending coins', 'Custody strategy'], 'coins first, then the strategy; no explainer cards'); assert.match(tx, /held by Coinos/, 'the coin past its timelock is held, not "expired"'); assert.doesNotMatch(tx, /5,000 sats\s+expired/, 'the row never says "expired"'); assert.doesNotMatch(tx, /nothing renews on its own/, 'the renewal explainer is not on the page…'); -- cgit v1.2.3