fix(host-cli): make the ring-VRF e2e re-runnable and say why a prefix is refused - #752
filvecchiato wants to merge 1 commit into
Conversation
… is refused The script discarded its --base-path on exit while registering a lite username on a real chain. That directory held the only copy of the account owning the name, so run 1 took "headless" and every later run asked for it with a fresh mnemonic and was told it was taken. Keep the state under target/, overridable via E2E_STATE_DIR. lite_username_base refused a short prefix and a non-lowercase one with the same "at least 6 lowercase ASCII letters" message. Making a prefix unique by adding digits or a hyphen therefore reported as too short. Split the two.
|
CI Status: 14 required jobs green, 11 passed and 3 skipped by path filter. All job results
Commit |
|
Yes — locally but against live I was also wrong about the flag. I reported it as "the argv is right but something downstream reads a different value" — it wasn't, the value was fine and the error message was pointing the wrong way. Ran #752 twice, cherry-picked onto the branch: Same signature both runs, One gap it leaves, which I pushed a commit for. It repairs a machine that has not stranded the name yet, but not one that already has: the kept state directory starts empty, so the first run still asks for Two things you may not know. The storage sibling still does Two follow-ons, both from chasing this. I rebased onto And the pairing wire path works now, which closes the one review item of yours I had left open. It needed That is on |
|
Included as 14fa71a with your authorship — nothing left to merge here. |
Two fixes for the report that
make e2e-cross-product-ringvrfpasses once and then never again.It stranded its own identity. The script discarded
--base-pathon exit whileregistering a lite username on a real chain. That directory held the only copy of the
account owning the name, so run 1 took
headlessand every later run asked for it witha fresh mnemonic and was refused. The storage sibling can discard its state because it
never reaches a chain; this one can't. State now lives under
target/, overridable withE2E_STATE_DIRfor a deliberately fresh identity.The refusal pointed the wrong way.
lite_username_baserejected a short prefix and anon-lowercase one with the same "at least 6 lowercase ASCII letters" message, so the
obvious way to make a prefix unique — appending digits or a hyphen — reported as too
short. Verified before and after:
Verification
cargo test -p truapi-host-cligreen; newa_long_enough_prefix_is_not_refused_for_its_lengthcovers the three shapes above
cargo +nightly fmt --checkand clippy cleanbash -non the scriptI have not run
make e2e-cross-product-ringvrfitself — it registers againstpaseo-next-v2, and doing so would consume another on-chain username. The state-directorychange is reasoned, not observed; worth one real run before merging.