Filter smart contracts from EVM account list#35
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Change: Objective Evidence: Visual Evidence: Reviewer: Risks / Not Covered: |
Delivery Evidence SummaryChange:
Objective Evidence:
Visual Evidence:
Reviewer:
Risks / Not Covered:
Generated at: 2026-05-25T11:46:00+08:00 |
* Add AgentKeys EVM contract search support * Add AgentKeys audit envelope decoder * Fix PaymentDirect amount_minor schema * Add AgentKeys evidence matrix test * Add AgentKeys typed audit endpoints * Document AgentKeys real-data capture blockers * Clarify AgentKeys audit contract input * Scope AgentKeys audit queries to CredentialAudit * Support live AgentKeys audit logs * Merge UI React project into monorepo * Fix EVM account cursor filters (#18) Co-authored-by: CrossAgent <crossagent@users.noreply.github.com> * Add test explorer API deployment workflow * Backfill EVM contracts from runtime code * Trigger Vercel preview for monorepo * Replace frontend deploy actions with backend CI * Remove legacy backend Docker publish action * Improve contract verification dark contrast (#23) Co-authored-by: CrossAgent <crossagent@users.noreply.github.com> * Fix Heima UI API fallback (#29) Co-authored-by: CrossAgent <crossagent@users.noreply.github.com> * Document Heima EVM interaction support (#30) Co-authored-by: CrossAgent <crossagent@users.noreply.github.com> * Fix locked and vested account balances (#34) * Show vested balance on account page * Derive vested balance from vesting schedules --------- Co-authored-by: CrossAgent <crossagent@users.noreply.github.com> * Filter smart contracts from EVM account list (#35) * Filter contracts from EVM account list * Add EVM accounts route regression test --------- Co-authored-by: CrossAgent <crossagent@users.noreply.github.com> * Remove AgentKeys bootstrap fallback data * Add AgentKeys frontend routes --------- Co-authored-by: CrossAgent <crossagent@users.noreply.github.com> Co-authored-by: crossagent-production-app[bot] <283591059+crossagent-production-app[bot]@users.noreply.github.com>


Refs #16
Summary
/api/plugin/evm/accountsso EVM smart-contract addresses already present inevm_contractsare not returned as EOA accounts.evm_accounts+evm_contractsstate and verifies only the EOA remains visible.Verification
go test $(find plugins/evm/dao -maxdepth 1 -name '*.go' ! -name '*_test.go' | sort) plugins/evm/dao/api_cursor_test.go -run '^TestAccountsCursor' -count=1->ok command-line-arguments 2.024sDelivery Evidence Summary
Change:
Backend DAO change for
/api/plugin/evm/accounts: the account cursor query now joinsevm_contractsand excludes matching contract addresses, while preserving balance/cursor ordering for real EOA rows.Objective Evidence:
Focused sqlite DAO validation passed:
go test $(find plugins/evm/dao -maxdepth 1 -name '*.go' ! -name '*_test.go' | sort) plugins/evm/dao/api_cursor_test.go -run '^TestAccountsCursor' -count=1->ok command-line-arguments 2.024s. The newTestAccountsCursorExcludesSmartContractsreproduces the issue by inserting one EOA and one smart-contract address intoevm_accounts, inserting the contract intoevm_contracts, and asserting the accounts endpoint cursor returns only the EOA and returns no row when filtering by the contract address.Visual Evidence:
n.a. Backend DAO/API behavior only; no UI, browser, or visual behavior was changed.
Reviewer:
@repo Intake Reviewer
Risks / Not Covered:
Full package command
go test ./plugins/evm/dao -run '^TestAccountsCursor' -count=1is blocked by existing externaldao_testbootstrap requiring../../../configs/config.yamlplus live MySQL/Redis before test filtering. The executed validation isolates the changed DAO code and regression test with an in-memory sqlite database.