fix(ui): use current room state when sending upgrade pointer to old contract#129
Open
fix(ui): use current room state when sending upgrade pointer to old contract#129
Conversation
The `cargo make dev-example` task depends on `npm run build:css` for Tailwind CSS, but the README didn't mention installing Node.js/npm or running `npm install` in the `ui/` directory. New contributors following the documented steps would hit a confusing failure. Closes #120 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ontract The migration code was constructing a ChatRoomStateV1 with only the upgrade field set and all other fields left at Default::default(). This produced an empty configuration (zeroed owner_member_id, no members, etc.) which the old contract's state verification rejected with "Invalid signature: signature error". Fix: clone the current room state and set the upgrade pointer on it, so the old contract sees a valid state that passes verification. Closes #127 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
iduartgomez
approved these changes
Mar 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
ChatRoomStateV1with..Default::default()for all fields exceptupgrade, causing the old contract to reject the UPDATE with "Invalid signature: signature error"room_data.room_stateand set the upgrade pointer on the clone, so the old contract's state verification passesTest plan
cargo check -p river-ui— compiles cleanlycargo make test-common— all tests passCloses #127
[AI-assisted - Claude]