chore(ops): bump dojo-utils to pick up idempotent deploy fix#65
Merged
Conversation
dojoengine/dojo#3404 landed, fixing `Deployer::deploy_via_udc` so that the already-deployed path returns the real UDC-derived contract address instead of `Felt::ZERO`. Advancing saya's dojo-utils git dep past that merge commit makes `saya-ops core-contract deploy` idempotent across re-runs: a second invocation with the same salt now returns the existing contract's address in both text and JSON output. Lockfile-only change — `Cargo.toml` already pinned to `branch = "main"`. Cargo just needed to refresh. Verified against a local katana dev chain: running `saya-ops core-contract declare-and-deploy-tee-registry-mock --salt 0x7ee` against an L2 that had been previously deployed with the same salt now returns the real contract address instead of "0x0". Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Tracking `branch = "main"` means anyone who runs `cargo update` picks up whatever happens to be on dojoengine/dojo HEAD at that moment, which can introduce unrelated behavior/API changes. Pin to the exact rev (9b64ea8dc9bc6be8992dba87c104378dbf09b565 — the PR #3404 merge commit) so dep advances are deliberate. To pull future dojo-utils changes, bump the rev in Cargo.toml explicitly. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
dojo-utils to pick up idempotent deploy fix
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
Advance saya's
dojo-utilsgit dep from4a374ac6to9b64ea8d— the merge commit of dojoengine/dojo#3404, which fixesDeployer::deploy_via_udcto return the real contract address (notFelt::ZERO) on the already-deployed path.Lockfile-only change;
bin/ops/Cargo.tomlalready pinsbranch = "main".Why
Before dojo#3404, running
saya-ops core-contract deploy --salt Xtwice against the same L2 emittedcontract_address: "0x0"in both text and JSON output on the second run — because dojo-utils was dropping the real address on theis_deployed == truebranch. Downstream orchestration (docker-compose init containers, CI scripts) then wrote0x0into state files and the next step panicked.After the fix, deploy is idempotent: same salt → same address → same JSON shape, whether the contract was just deployed or was deployed last week.
Verification
Against a local katana dev chain that had already been deployed against with salt
0x7ee:Test plan
cargo build -p saya-opsclean with bumped Cargo.lock🤖 Generated with Claude Code