ckb-session-kit 2.0.0 → 2.1.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 +32 -0
- package/README.md +797 -718
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -1
- package/dist/onchain.d.ts +88 -1
- package/dist/onchain.js +182 -2
- package/dist/session.d.ts +7 -2
- package/package.json +3 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,38 @@
|
|
|
3
3
|
This project follows [semantic versioning](https://semver.org/). The session lock is
|
|
4
4
|
deployed on CKB **testnet only**; there is no mainnet deployment yet.
|
|
5
5
|
|
|
6
|
+
## 2.1.0 (2026-11-05)
|
|
7
|
+
|
|
8
|
+
### Added
|
|
9
|
+
- `fundInSession` and `sendWithSession`: fund a transaction the app built (its
|
|
10
|
+
own inputs, typed outputs, cell deps and witnesses) from a session without a
|
|
11
|
+
recipient, with no wallet prompt. The key cell pays the fee (default 2000
|
|
12
|
+
shannons/KB, `DEFAULT_FUND_FEE_RATE`, the same on every retry). Refused
|
|
13
|
+
before signing: a session with an on-chain recipient, an input under the
|
|
14
|
+
owner's lock (owner mode), an outflow over `maxPerTx`. `sendWithSession`
|
|
15
|
+
retries only when the node names one of the session's own cells as spent, and
|
|
16
|
+
rethrows any other refusal (the app's own cell taken, an RBF refusal) for the
|
|
17
|
+
app's loop. For CrowdCell pledges (CKBuilder-projects#6).
|
|
18
|
+
- `deadInputs` exported, `FundedTransaction`, `FundOptions`,
|
|
19
|
+
`SendWithSessionOptions` types, and `SessionPolicyError` reasons
|
|
20
|
+
`"session-has-recipient"`, `"owner-lock-input"`, `"app-tx-shape"`.
|
|
21
|
+
- CKB-VM tests of a session-funded pledge against CrowdCell's live testnet
|
|
22
|
+
scripts (`scripts/fetch-crowdcell.ts` saves them; not committed), and
|
|
23
|
+
`npm run smoke:fund-pledge`.
|
|
24
|
+
- `npm run smoke:pool-lag`: how long `get_live_cell(include_tx_pool=true)`
|
|
25
|
+
still shows a just-spent input live, per answering node (mentor review,
|
|
26
|
+
tracker #47, 3 Nov). On one node (testnet.ckb.dev) the node that took the
|
|
27
|
+
send never showed the input live (158 polls); on testnet.ckbapp.dev (two
|
|
28
|
+
backends) only the other backend did, in 13 of 20 sends, for up to about
|
|
29
|
+
0.5 s. One kept-alive socket does not pin a backend there. Logs and table in
|
|
30
|
+
docs/SECURITY-EVIDENCE.md.
|
|
31
|
+
|
|
32
|
+
### Documentation
|
|
33
|
+
- JoyID is accepted as an owner lock but reviewed from its documentation only:
|
|
34
|
+
its contract is closed source. README and docs/API.md show how an app refuses
|
|
35
|
+
JoyID owners itself before `openSession` (no option in the kit; no behaviour
|
|
36
|
+
change).
|
|
37
|
+
|
|
6
38
|
## 2.0.0 (2026-11-03)
|
|
7
39
|
|
|
8
40
|
### Upgrading from 1.0.0
|