Skip to content

feat(cosmos): replace JSON tx encoding with SDK protobuf via TxConfig and SIGN_MODE_DIRECT#18

Merged
qj0r9j0vc2 merged 4 commits into
mainfrom
qj0r9j0vc2/colombo-v1
Jan 25, 2026
Merged

feat(cosmos): replace JSON tx encoding with SDK protobuf via TxConfig and SIGN_MODE_DIRECT#18
qj0r9j0vc2 merged 4 commits into
mainfrom
qj0r9j0vc2/colombo-v1

Conversation

@qj0r9j0vc2

Copy link
Copy Markdown
Member

Summary

  • Replace JSON-based transaction encoding with proper Cosmos SDK protobuf encoding
  • Use TxConfig for transaction building, encoding, and decoding
  • Implement SIGN_MODE_DIRECT for sign bytes generation via authsigning.GetSignBytesAdapter
  • Add signature injection using txConfig.WrapTxBuilder for proper tx re-encoding

Changes

  • pkg/network/cosmos/txbuilder.go: Refactored BuildTx and SignTx to use SDK's TxBuilder
  • pkg/network/cosmos/build_test.go: Added txConfig to test TxBuilder instances
  • pkg/network/cosmos/sign_test.go: Updated tests to use real protobuf-encoded bytes
  • internal/daemon/controller/transaction.go: Added GasLimit with default 200000
  • internal/daemon/types/transaction.go: Added GasLimit field to TransactionSpec
  • internal/daemon/server/devnet_service.go: Added RunHooks method
  • types/ports.go: Added LabelFilter to DevnetFilter
  • internal/application/devnet/export.go: Fixed checksum to use genesis file hash
  • cmd/devnet-builder/commands/manage/deploy.go: Added port conflict detection

Test plan

  • All cosmos package tests pass (53 tests)
  • Full test suite passes for core packages

@qj0r9j0vc2 qj0r9j0vc2 self-assigned this Jan 25, 2026
@qj0r9j0vc2 qj0r9j0vc2 merged commit d31d040 into main Jan 25, 2026
12 checks passed
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