refactor(collections): add UintValueEncoder and use Uint for wei store#2595
Open
expertdicer wants to merge 1931 commits into
Open
refactor(collections): add UintValueEncoder and use Uint for wei store#2595expertdicer wants to merge 1931 commits into
expertdicer wants to merge 1931 commits into
Conversation
… work with "0x" Ethereum hex and "nibi"-prefixed Bech32 address formats (#2410) * wip!: impl #2401 * implement rest of feature; don't return an Eth address for a Wasm contract * update changelog * fix: estimate gas succeeds with small wei amounts now * docs(evm): add a bit of documentation for the Balance and Account queries
commit 08c59b47850586f603ee18061793c3e973b50532
Author: Unique Divine <realuniquedivine@gmail.com>
Date: Thu Oct 23 15:27:38 2025 -0500
merge conf
commit 1dffd7852590c7e0d26129c433569b88f648c106
Merge: 1bfc24d 4dd252f
Author: Unique Divine <realuniquedivine@gmail.com>
Date: Thu Oct 23 15:26:49 2025 -0500
Merge remote-tracking branch 'yin/main' into ud/main-merge-yinwen
commit 4dd252f
Author: yinwenyu6 <yinwenyu6@outlook.com>
Date: Sat Aug 16 20:11:04 2025 +0800
chore: fix function name
Signed-off-by: yinwenyu6 <yinwenyu6@outlook.com>
… "debug_traceBlockByNumber". Fixes [Nibiru#2400 bug](#2400) (#2409) * refactor: use return values without error for function that always succeeds * fix(TraceBlock): use native tracer behavior, not JS parallel tracer; Make test comparisons less brittle * fix(evmstate): trace block gas inconsistency fixed + error on trace tx failure like geth * finish PR for #2400 * tx hash field * fix(vmtracer): include tx hash as one of the fields for trace results * refactor: PR feedback from Gemini-code-assist
…2390) * chore(deps): bump cipher-base from 1.0.4 to 1.0.6 in /x/evm/embeds Bumps [cipher-base](https://github.com/crypto-browserify/cipher-base) from 1.0.4 to 1.0.6. - [Changelog](https://github.com/browserify/cipher-base/blob/master/CHANGELOG.md) - [Commits](browserify/cipher-base@v1.0.4...v1.0.6) --- updated-dependencies: - dependency-name: cipher-base dependency-version: 1.0.6 dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * Updated changelog - dependabot --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Unique-Divine <51418232+Unique-Divine@users.noreply.github.com> Co-authored-by: Unique Divine <realuniquedivine@gmail.com>
* fix(evm-rpc): remove unsafe debug API methods. * refactor: make code organization suggestion from Gemini input
…tions and combine micro-packages (#2413) * fix(evm-rpc): remove unsafe debug API methods. * refactor: make code organization suggestion from Gemini input * refactor(upgrades): simplify upgrade hanlder code to use less abstractions and combine micro-packages * fix tests and add feedback * refactor: last bit of changes from self-review
* wip!: try adding back coverage reports * add trivial go change for CI to start * try newer version, fix license, update install docs * docs(README): face lift with updated docs
…ctors (#2415) * feat: custom ante NewDeductFeeDecorator allowing 0 fee for zero gas actors * chore: changelog * fix: linter * refactor: moved private code to fee.go * impl last PR comment + cleanup --------- Co-authored-by: Unique Divine <realuniquedivine@gmail.com>
… transfer recipient (#2418) * fix(evmstate/test): fix flaky trace tx tests with deterministic ERC20 transfer recipient * changelog
* ci: less cache collisions * changelog * better PR template
#2420) * feat: add recursive check for nested authz exec messages and enforce max depth limit * changelog * docs(CHANGELOG): move log entry to correct position --------- Co-authored-by: Unique Divine <51418232+Unique-Divine@users.noreply.github.com>
* fix(evm): add panic safety to eth_estimateGas. Fix usage of incorrect SDB context in successive estimation calls. * fix(evm): use geth efficiency improvements and improved BinSearch with lo bias * fix(evm-e2e): newer assertion is more lenient * fix: add suggestion from Cursor bot * fix: bug with ineffectual assignment * ci: add new gen-changelog command to automate its maintenance more * more pr feedback --------- Co-authored-by: Oleg Nikonychev <oleg.nikonychev@gmail.com>
…chain networks, keeping them fast, deterministic, and stable (#2425) * test(oracle): refactor oracle tests to not require running full blockchain networks, keeping them fast, deterministic, and stable * refactor: remove unnecessary msg server functions, * chore: changelog * fix(gen-changelog): improve script robustness * rm temp file * chore: changelog * improvements for oracle
…CI caching (#2431) * chore: changelog * ci(golangci-lint): update linter version to latest (v2.6.1) * ci(golangci-lint): update linter version to latest (v2.6.1); improve CI caching
…consumed on failed EVM tx; nonce increment on the ctx should only happen in DeliverTx and ReCheckTx, not CheckTx (#2434) * fix(evmante): nonce increment on the ctx should only happen in DeliverTx and ReCheckTx, not CheckTx * fix: pull golangci.yml update from other branch * fix: impl panic-safe guard for fixed gas taken by true ante failures in DeliverTx * fix if statement * chore: upgrade handler for v2.9
…cts (#2433) * chore: changelog * sai-trading: add first set of artifacts * sai-trading: toml for build info * sai-trading: start a small program that uses a running nibid process for local testing * chore: add out.txt to gitignore; add justfile comment * sai-trading: project scaffolding with script to deploy all Sai contracts * sai-trading: get a simple test going that checks for the running network in the background * test(ci): need to install bun before running the script * use which instead of command -v * fix array concatenation * make pr title lint more flexible to account for sai-trading and revert changes to app, proto, api * test(.github): fix just install if statement * chore: linter * fix(linter): revert the build tag issue and disable that small piece of govet * Delete TODO_ANALYSIS.md
Signed-off-by: vetclippy <vetclippy@icloud.com>
…nce it's one of the nibid genesis subcommands (#2448)
…o baseapp and the SDK types (#2451) * refactor: move cosmos-sdk to internal/cosmos-sdk for smoother edits to baseapp and the SDK types * rm swagger.go * fix(configurator): rm NFT module * fix: make wasmd and cosmos-sdk deps play nicely; remove nft module from wasmd * refactor(swagger-ui): rm swagger JS boilerplate * refacor(cosmos-sdk): rm more top-level unused files * refactor: clean up deps even more; delete dead code * fix: linter
…, as they are often breaking changes
…angelog): use config from current branch, not main (#2465) * docs: update changelog * docs(changelog): update with version 2.9 and 2.8 * cliff.toml, remove author; latest version bump * fix(justfile/gen-changelog): use config from current branch, not main * docs: PR feedback * fix(justfile): PR feedback to handle failure case explicitly
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 4 to 6. - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits](actions/download-artifact@v4...v6) --- updated-dependencies: - dependency-name: actions/download-artifact dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 4 to 5. - [Release notes](https://github.com/docker/metadata-action/releases) - [Commits](docker/metadata-action@v4...v5) --- updated-dependencies: - dependency-name: docker/metadata-action dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Unique Divine <51418232+Unique-Divine@users.noreply.github.com>
…tisig self-managing (#2602) * feat(v2.14): Remove legacy SDK multisig as CW4 admin and make CW3 multisig self-managing * feat(v2.14): Return multisig upgrade errors for log/event emission without halting chain
* fix: Make gov module safer; accept only deposit denom * test(evm): Fix test assertion for FunToken token creation * test(bank): Use gov min deposit denom in send-enabled proposal test * refactor(gov): Avoid rebuilding MinDeposit coins in denom error
…ng UX to account for wallet client edge cases (#2596) * feat(evm): Enhance EVM zero gas detection to be automatic for eligible txs * test(evm): More test coverage for automatic zero gas functionality
…zero fee hints for EVM RPC calls used in wallet preflight (#2601)
* docs: markdown content * refactor: Helper fn DRY change * fix(localnet.sh): Show DEBUG logs, make configurable, and fix color terminal output bug * docs: Rm broken links and unused doc files * docs: Remove outdated stuff do broad cleanup * fix(localnet): use echo_error in which_ok before color init which_ok called undefined log_error when tput was missing, which could abort the script under set -euo pipefail instead of disabling colors. Define echo_info/echo_error/echo_success before which_ok so the missing binary path works during console_log_text_color startup. Co-authored-by: Unique Divine <Unique-Divine@users.noreply.github.com> * fix(justfile): just localnet script flag defaults * docs: Fix Cosmos SDK example snippets Co-authored-by: Cursor <cursoragent@cursor.com> * fix(lcoalnet.sh): Color terminal guards not working as expected * ci: Detect localnet startup failures in workflows --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: Unique Divine <Unique-Divine@users.noreply.github.com>
* feat(evm): Allow zero-gas calls with native value * feat: Add LayerZero zero-gas upgrade step and lint fallback * refactor(upgrades): Use handler structs for upgrade registration
* refactor(upgrades): Add NewVanillaUpgrade helper, register v2.13.0, harden v2.14.0 * docs(security-reports): Save Code4rena competitive audit as PDF and upload to the repo * docs(security-reports): Add PDF links * refactor(typos): Apply suggestions from code review Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * test: Use less hard-coded constants --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
…t for easier test debugging and less hanging (#2620)
…2621) * wip: adapter tests not working yet * wip: Push updated artifact with rename and desired business logic * feat(evm): Add oracle precompile adapter support * feat: Upgrade handler, more tests, and production artifact x_oracle.wasm from mainnet * refactor: Prefer proto equal over custom fn * fix(oracle): Share x-oracle adapter schema
Unique-Divine
force-pushed
the
main
branch
4 times, most recently
from
July 2, 2026 11:43
22fb261 to
ac05154
Compare
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.
Abstract
IntKeyEncoder.Encodefunction panics if the inputmath.Intis nil or negative. #2491collections.IntValueEncoderused to delegate toIntKeyEncoder, which panics on negative or nilsdkmath.Intvalues. That was misleading for signed state (e.g. wei block deltas) and unsafe for callers that expected a general signed int encoder.This PR splits signed value encoding from unsigned fixed-width encoding:
IntValueEncodernow marshals signedsdkmath.Int, a newUintValueEncoderkeeps the existing 32-byte big-endian format for non-negative persisted state, andweiStoreis typed assdkmath.Uint.eth.SignedIntValueEncoderis removed in favor of the generic collections encoder.