v0.2.4 - Chronos
Release 007 · August 6, 2026 · Current
VEX 0.2.4
Prebuy launches work again, and a launch writes only what it should.
An incident release. Anyone launching a token with a prebuy was hard-blocked, and the launch path could write text on-chain that no one can ever edit. Both are fixed, with the regressions that should have caught them in the first place.
01 · Prebuy launches are unblocked
01 The fix. A launch with any prebuy refused with "the launch cost changed since you were shown it", and pressing "review new price" produced the same refusal forever. The preview's identifier carries the creation fee read at a specific block, but the submit check was comparing it against the full amount to send, which is the fee plus your prebuy. Those two numbers are only equal when the prebuy is zero, which is why every zero-prebuy launch worked and every other one was impossible. The check now compares the fee, as the identifier always intended.
02 The gap behind it. No test had ever driven a real preview into a real submit; one suite hand-wrote an identifier of one shape while another asserted the opposite shape, and the two never met. That end-to-end path is now covered with a nonzero prebuy, so this class of mismatch cannot come back silently.
03 What it does not do. This release makes both sides agree on the fee. It does not yet bind the exact form you previewed to the one you submit, because the app keeps no record of the quote it issued. That work is designed and comes next.
02 · Launch metadata is checked before it is permanent
01 Control characters and quotes are refused. A line break or a double quote in a token's name, symbol, description or links produced broken metadata for everyone reading that token, and create() writes those fields on-chain permanently. Vex now refuses the text and names the field, rather than quietly repairing it: a repaired string is not the string you reviewed, and the launch cannot be undone. The check runs on exactly what you typed, before any trimming, on every path into a launch. Emoji, accented letters, apostrophes and dashes are unaffected.
03 · Better launch pricing and honest previews
01 Every image looked broken, and did not. The dry-run reported a digest mismatch for every staged image, fell back to simulating an empty one, and told you the launch would refuse. The launch would not have refused. Two parts of the app spelled the same hash differently; the comparison now accounts for that, so the gas estimate reflects the image you actually staged, which is several times higher than an empty-image estimate.
02 The preview can price a prebuy. Pass one and the simulation, the gas estimate, the fee and the totals all include it, instead of leaving the arithmetic to be done by hand. The affordability verdict now states which scenario it priced.
03 A launched token appears in your balances. Vex pins it for you when the launch confirms, so you no longer have to add it by hand to see what you just paid for.
04 · Under the hood
01 The agent's own instructions stay out of your chat. In one session the model printed parts of its operator instructions into the conversation, including wallet addresses. The instruction blocks are now explicitly delimited, with a stated rule never to repeat them, and text pulled in from documents or memory cannot forge those delimiters.
02 One definition for the metadata limits. Name, symbol, description and link limits now live in one place shared by every part of the app that checks them, so they cannot drift apart.
05 · Before you update
One new database migration ships in this release. It runs automatically on first start. No manual action is required.