@toon-protocol/client@0.14.11
·
22 commits
to main
since this release
Patch Changes
-
b243c10: Fix the wallet falsely showing "No channels open yet" on funded channels, and
make rendered TOON views render-first with no preflight ceremony.GET /channels500 → wallet "No channels open yet".getChannels()
calledapex.client.getSettleableAt(channelId), butToonClientnever got the
public passthrough when it was added toChannelManager(#181) — it only used
this.channelManager.getSettleableAtinternally. The wallet atom renders the
failed fetch as empty, so funded, actively-paying channels showed as none.
Added the passthrough, plus a compile-time conformance guard
(toon-client-conformance.ts) assertingToonClientsatisfies the daemon's
ToonClientLikesurface — the channel-tool tests use a mock client, which is
why this gap shipped green.- Resumed channels showed 0 deposit / 0 available. Persisted channel state
omits the on-chain deposit, so after a daemon restartdepositTotalwas0
and the wallet showed 0 spendable on a funded channel. The daemon now re-reads
the participant's on-chaindeposit(newparticipantsaccessor on the
TokenNetwork ABI +ToonClient.rehydrateChannelDeposit) when resuming an EVM
apex channel, soavailable = deposit − cumulativeis correct again. - Render-first, zero ceremony. The server
instructionsand the
toon_status/toon_identitytool descriptions now state that a read-only
render goes straighttoon_atoms→toon_render— no status/identity/balance
preflight, no tool-call narration. SKILL.md's "always start withtoon_status"
is reframed to lazy/render-first.
-
b243c10: Wallet balance correctness (#199/#200), async funding, UI auto-refresh, and media posts.
- Balances: fast-fail with correct error attribution instead of a 35s control-plane hang; always emit wrapped
structuredContent; the views seam validates the wire contract (no silent blank); read the settlement chain (not the preset-first chain) and from an identity-level client (works with no apex). - Funding: async submit+poll
fund-walletwith atoon_fund_statustool, a generous background faucet timeout, and a distincttimeoutstatus so a slow-but-successful drip isn't reported as a failure. - UI: rendered views auto-refresh after any write action; the Fund button resets once the balance updates.
- Media posts: captioned media uploader (compose → caption → publish) and an optional media/file attach on the default post composer (kind:1 with NIP-92 imeta, rendered inline); the dedicated uploader remains for upload-only.
- Balances: fast-fail with correct error attribution instead of a 35s control-plane hang; always emit wrapped