Releases: gosh-sh/dexdo-cli
Release list
v0.0.9
What's new in v0.0.9
Urgent fund-safety fix. Update before withdrawing.
Fund safety
dexdo note withdrawnow refuses to withdraw from a PrivateNote that was deployed by a previous contract generation. Such a note accepts the currentwithdrawTokensmessage and zeroes its balance, but the destination wallet is never credited -- the SHELL is lost. The command now reads the note's on-chaincode_hashand fails closed before any on-chain write when it does not match the current generation, printing which generation the note is and why the withdraw was refused. (#37)
If you are holding funds in a note the CLI reports as a previous generation, do not withdraw from it with an older build. This release stops the loss; it cannot recover SHELL already zeroed by a previous-generation withdraw.
Upgrade
Binaries are self-contained. Download the archive for your platform, verify the checksum, and replace the old dexdo binary. No config migration is needed; existing pool files keep working.
v0.0.8
What's new in v0.0.8
Fund-safety for note deploy, seller reliability, and a way to see and take the executable order book.
Fund safety
dexdo note deploycan no longer strand a funded note. The note owner key and both voucher checkpoints are written to a private recovery file (0600, fsync) before any wallet spend. If the run is interrupted -- timeout, crash, closed terminal -- rerun the command, or rundexdo note recover --recovery <state> --pool <pool>, and it finishes without spending again. A rerun never mints a second deposit and never resubmits adeployPrivateNotethat already landed. (#23)
Seller
- An offer that is filled the moment it is posted no longer reports
seller offer did not rest in the InferenceOrderBook. The seller now accepts an exact-TokenContract resting ask or exact immediate-match evidence, and fails with the precise reason otherwise. (#24) - A withdrawn PrivateNote now fails early with a clear re-mint message instead of a late chain revert. (#20, #22)
- The matched TokenContract is recorded next to the note entry in the pool file, so
dexdo recover,dexdo dispute, anddexdo reclaimwork from the pool alone -- no manifest, no log scraping. (#19) - Rapid sequential deploys serialize per funding wallet and report
note deploy wallet busyinstead of a rawTVM_ERROR. (#19)
Buyer
- New:
dexdo executable-book <model>lists every currently executable ask (live, funded, fresh, submit-safe) with price and ticks, so you can see the whole book before buying. - New:
dexdo buyer --max-price-per-tick Xauto-matches the best executable ask within your ceiling, and fails closed withno executable liquidity is availablewhen nothing crosses. Explicit--token-contract <TC>still selects one ask directly. (#10) - The on-demand path (
--continuity-mode on-demand) completes a real purchase on the first request instead of returning an opaque 503. (#17, #18)
Reliability and DX
- Read-only commands (
market,quote,orders) accept--read-timeout-secs(default 30) and fail with a bounded, precise error instead of hanging on a slow endpoint. (#21) dexdo note deployverifies the stored note key against the on-chain owner and refuses to append a mismatched entry to an existing pool; it also rejectsDEXDO_PN_POOLand--poolpointing at the same file.ERR_INVALID_SENDER (101)now carries actionable guidance. (#19)--token-type --helplists the valid values; the seller--gateway-listenand buyer--local-listenflags are documented as the same concept.
Upgrade
Binaries are self-contained. Download the archive for your platform, verify the checksum, and replace the old dexdo binary. No config migration is needed; existing pool files keep working.
v0.0.7
What's new in v0.0.7
Hotfix for the on-demand buyer path reported on v0.0.6.
- Fixed: the on-demand buyer (
--continuity-mode on-demand) could reachhandover_receivedand then fail withINVALID_ARGUMENT: invalid or missing command input. The buyer now validates its model content-identity setup up front (a read-only registry/identity resolution) for every local-API buyer, so the on-demand purchase completes through handover to the stream instead of tripping a late generic error. If the setup genuinely cannot be built, the buyer now fails early with a precisecontent_identity_preflightmessage naming the missing input, before a deal is spent.
Built on v0.0.6 (buyer bind-first, submit-safe partial quote, embedded ModelRegistry ABI, seller advance guidance, --allow-unverified-model fallback).
Install
# Linux / macOS
curl -fsSL https://get.dex.do/install.sh | sh
# Windows (PowerShell)
irm https://get.dex.do/install.ps1 | iex
v0.0.6
What's new in v0.0.6
A buyer + seller reliability release built on the tester reports since v0.0.5.
- Buyer no longer hangs on start: the local API binds immediately (
/v1/modelsanswers right away) and the on-demand purchase runs on the first/v1/chat/completionsrequest; the fast-retry replay-protection case is handled with backoff instead of a silent hang. dexdo quote/dexdo buyernow allow a submit-safe partial take -- you can buy fewer ticks than an ask offers, matching the on-chain matcher, so--ticks 8crosses a larger ask again (the v0.0.5 quote was over-strict). Stale / non-executable liquidity is still excluded.- The ModelRegistry ABI is embedded in the binary, so a released buyer resolves and verifies the seller's model out of the box -- no extra ABI file to place.
- Seller recovery guidance on an abandoned deal: when a buyer matches then abandons,
dexdo status/dexdo closenow point the seller to theadvancerecovery path (finalize the probe on buyer silence, free the note) instead of only "wait for the buyer". - New
--allow-unverified-modelfallback: if the on-chain ModelRegistry is genuinely unreachable, the buyer can proceed on name-only evidence with a warning; without the flag it still fails closed. (Thanks to the community contributor for the original design.)
Install
# Linux / macOS
curl -fsSL https://get.dex.do/install.sh | sh
# Windows (PowerShell)
irm https://get.dex.do/install.ps1 | iex
v0.0.5
What's new in v0.0.5
- Buyer reliability fix:
dexdo quoteanddexdo buyernow agree on real shellnet. Quote only reports liquidity that the buyer can actually purchase -- a single, whole, live, funded ask -- so it no longer promises a fill the on-chain buy cannot execute. When an ask is not buyable, you get a clearNO_LIQUIDITYmessage before any funds move, instead of a raw chain revert. Fixes the "quote succeeds but buyer fails with NO_LIQUIDITY / CHAIN_REVERT" reports.
Built on the v0.0.3/v0.0.4 base (static musl Linux binaries that run on any distro, per-model content verification, fail-closed installers, dexdo --version reports the release).
Install
# Linux / macOS
curl -fsSL https://get.dex.do/install.sh | sh
# Windows (PowerShell)
irm https://get.dex.do/install.ps1 | iex
v0.0.4
What's new in v0.0.4
- Buyer reliability fix:
dexdo buyeranddexdo quoteno longer fail when the raw order book contains a stale row from an uncleaned deal. The buyer now skips stale/unreadable rows and matches the live ask, anddexdo quotereports the executable liquidity thatdexdo market-data depthshows -- fixing the "INTERNAL invariant", "stale raw order-book rows", and "no executable liquidity" failures. dexdo --versionnow reports the release version (0.0.4), matching the release tag.
Built on the v0.0.3 base (static musl Linux binaries that run on any distro, per-model content verification, fail-closed installers).
Install
# Linux / macOS
curl -fsSL https://get.dex.do/install.sh | sh
# Windows (PowerShell)
irm https://get.dex.do/install.ps1 | iex
v0.0.3
What's new in v0.0.3
- Content verification now works for ANY model, not just one. The buyer's gateway path fails closed if a served model cannot be verified against its reference endpoint (anti-substitution), instead of silently delivering and paying.
- Portable Linux release binaries via static musl (x86_64 and aarch64): they run on any Linux -- Ubuntu 20.04+, Debian, RHEL/Rocky, Alpine -- with no glibc version requirement.
- Generalized model registry alias resolution: no hardcoded model names.
- Added
dexdo --version. - Release binaries and the install script are smoke-tested in CI, and the musl binary is verified to run on old distros with no GLIBC symbols.
Install
# Linux / macOS
curl -fsSL https://get.dex.do/install.sh | sh
# Windows (PowerShell)
irm https://get.dex.do/install.ps1 | iex
v0.0.2
v0.0.2
- docs(agents): explicit push targets + private vs public push
- ci: smoke-test release binaries + install
- Wire buyer failure policy dispatch
- Handle post-reject ERR_NOT_OPEN terminally
- skills: english public seller+buyer skills
- fix registry-backed qwen content identity
- Add buyer continuity mode flag
- : buyer continuity — no auto-reclaim/rebuy on idle (demand-gated + kill-switch)
- Fix qwen content identity matching
- Add seller gateway advertise address
- Shellnet update
- Coalesce equivalent duplicate TC asks for quote
- Fix monitor closed state classification
- Fix demand-driven buyer continuity
- docs(skills): self-deploy notes, order-book view + price/volume prompt, watcher, status-authoritative Phase 8
- docs(skills): self-deploy notes, milestone logging, buyer lifecycle + idle-close invariant
- Keep buyer API sessions open after upstream request errors
- Fix concurrent consumer API challenge responses
- fix active book e2e expectations
- tighten failure policy validation
- Release pipeline: public dexdo-cli, cleanliness scrub gate, native binaries, publish
- Draft: implement runtime machine JSON contract ()
- Draft: client registry validation policy ()
- fix seller probe reserve for issue 228
- Revert duplicate directive (canonical 214-runtime-failure-policy-design.md already exists)
v0.0.1
v0.0.1
- fix registry-backed qwen content identity
- Add buyer continuity mode flag
- : buyer continuity — no auto-reclaim/rebuy on idle (demand-gated + kill-switch)
- Fix qwen content identity matching
- Add seller gateway advertise address
- Shellnet update
- Coalesce equivalent duplicate TC asks for quote
- Fix monitor closed state classification
- Fix demand-driven buyer continuity
- docs(skills): self-deploy notes, order-book view + price/volume prompt, watcher, status-authoritative Phase 8
- docs(skills): self-deploy notes, milestone logging, buyer lifecycle + idle-close invariant
- Keep buyer API sessions open after upstream request errors
- Fix concurrent consumer API challenge responses
- fix active book e2e expectations
- tighten failure policy validation
- Release pipeline: public dexdo-cli, cleanliness scrub gate, native binaries, publish
- Draft: implement runtime machine JSON contract ()
- Draft: client registry validation policy ()
- fix seller probe reserve for issue 228
- Revert duplicate directive (canonical 214-runtime-failure-policy-design.md already exists)
- Canonical Model Registry (): add contract + shellnet deploy record
- diagnose TokenContract.open probe funding abort
- Draft: policy fail-closed checkpoint
- : buyer/seller failure-policy — persistent policy.json + fail-closed once (wire-only)
- Add runtime failure policy directive