Skip to content

feat: support multisig assets and output listing - #14

Draft
cw35 wants to merge 8 commits into
masterfrom
fix/multisig-assets-outputs
Draft

feat: support multisig assets and output listing#14
cw35 wants to merge 8 commits into
masterfrom
fix/multisig-assets-outputs

Conversation

@cw35

@cw35 cw35 commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

Summary

  • support Safe multisig balances through safe assets --receivers --threshold
  • support legacy multisig balances without the retired multisig asset endpoint
  • add output list for Safe and legacy outputs with state, asset, offset, limit, and order filters
  • resolve legacy kernel asset IDs and guard legacy pagination against duplicate or stalled cursors
  • use ascending order by default and emulate descending order client-side where the API is unreliable

Test Coverage

Multisig assets
├── Safe group validation and multi-page unspent aggregation: tested
├── Legacy group validation and multi-page balance aggregation: tested
├── Duplicate output suppression and stalled cursor detection: tested
├── Safe asset metadata batch lookup, fallback, and error propagation: tested

Output list
├── Safe DESC pagination and exclusive offset: tested
├── Legacy ASC/DESC pagination and asset filtering: tested
├── Kernel asset ID resolution: tested
├── Stalled cursor detection: tested
└── Empty result serialization as []: tested

Tests: 0 → 3 test files (+3 new)

Pre-Landing Review

  • Initial review found four issues: duplicate legacy pagination, swallowed metadata errors, missing legacy kernel asset resolution, and expensive default DESC behavior.
  • All four were fixed and regression-tested.
  • Final review found no blocking issues.

Design Review

No frontend files changed — design review skipped.

Eval Results

No prompt-related files changed — evals skipped.

Test plan

  • go test ./...
  • go test -race -vet=off ./...
  • go vet ./cmd/asset/list ./cmd/output ./cmd/safe
  • go build ./...
  • real API check for /safe/assets/fetch
  • real API check that legacy kernel asset filtering returns a JSON array

Documentation

  • README.md: documented Safe and legacy multisig balance commands.
  • README.md: documented output state/asset filters, ASC default, DESC scan behavior, and offset formats.
  • Other documentation files: none present.

cw35 added 6 commits August 14, 2026 16:02
Add Safe and legacy multisig balance listing with validated groups, reliable pagination, and modern Safe asset metadata lookup.
Add output list filters, pagination, asset resolution, and client-side descending order for APIs that only reliably return ascending results.
@cw35
cw35 marked this pull request as draft August 14, 2026 23:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant