aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-10-22 22:29:58 -0700
committerAdam Soltys <[email protected]>2026-10-22 22:29:58 -0700
commitdf1972d49d166955f36bde1dbe05f52669384c1a (patch)
tree6670637c567ad789ec63627370432d8241c0df57 /tools
parenta0316a2a462a57a1c5832304820daf4d670c6d1b (diff)
downloadcoinosv3-df1972d49d166955f36bde1dbe05f52669384c1a.tar.gz
coinosv3-df1972d49d166955f36bde1dbe05f52669384c1a.zip
Custody card copy: "coin", not "Spending coin"; Coinos capitalized; the default tier says the exit stays until a coin's timelock runs out
Adam, 2026-10-23: "Coinos holds my coins" read as if the holder never had a unilateral exit. They do, until the timelock runs out; only then does Coinos hold the coin. The option is now "Coinos holds my coins once they expire", its description says so, and the intro says what the timelock buys and what renewing keeps. Co-Authored-By: Claude Fable 5.1 <[email protected]>
Diffstat (limited to 'tools')
-rw-r--r--tools/ark/custody-ui-test.js8
1 files changed, 5 insertions, 3 deletions
diff --git a/tools/ark/custody-ui-test.js b/tools/ark/custody-ui-test.js
index 20035ac..0b55d1c 100644
--- a/tools/ark/custody-ui-test.js
+++ b/tools/ark/custody-ui-test.js
@@ -77,16 +77,18 @@ try {
let tx = await text();
assert.match(tx, /Custody/);
- assert.match(tx, /coinos holds my coins[\s\S]*no fees/);
+ assert.match(tx, /Coinos holds my coins once they expire[\s\S]*no fees/);
+ assert.match(tx, /keeps its own exit until its timelock runs out/);
+ assert.doesNotMatch(tx, /Spending coin carries/);
assert.match(tx, /Keep my own exit[\s\S]*300 sats per renewal/);
assert.match(tx, /Keep my exit cheap[\s\S]*300 sats near expiry, 0\.2% \+ 300 sats when early/);
assert.match(tx, /4 hops deep/);
const checked = await page.$$eval('.ark-custody input[type=radio]', (els) => els.filter((e) => e.checked).map((e) => e.value));
assert.deepEqual(checked, ['custodial'], 'coinos holds the coins by default');
assert.equal(await page.evaluate(() => coopFeature.getCustody()), 'custodial');
- assert.match(tx, /held by coinos/, 'the coin past its timelock is held, not "expired"');
+ assert.match(tx, /held by Coinos/, 'the coin past its timelock is held, not "expired"');
assert.doesNotMatch(tx, /\bexpired\b/);
- assert.match(tx, /With “coinos holds my coins”, nothing renews on its own/);
+ assert.match(tx, /With “Coinos holds my coins once they expire”, nothing renews on its own/);
if (process.env.SHOT) await page.screenshot({ path: process.env.SHOT, fullPage: true });
console.log('✓ the custody card: three tiers with their prices, coinos holding by default, a past-timelock coin shown as held');