Skip to content

feat(sdk-coin-starknet): implement Starknet SDK module#8781

Merged
shubham-damkondwar merged 1 commit into
masterfrom
feat/starknet/pr2-sdk-module
May 21, 2026
Merged

feat(sdk-coin-starknet): implement Starknet SDK module#8781
shubham-damkondwar merged 1 commit into
masterfrom
feat/starknet/pr2-sdk-module

Conversation

@shubham-damkondwar
Copy link
Copy Markdown
Contributor

Summary

  • Implements modules/sdk-coin-starknet — full unique chain SDK package
  • Coin class, transaction builders, key pair, utils, and full test suite
  • 45 unit tests passing

Chain Type

ECDSA (secp256k1) — uses OZ EthAccountUpgradeable for account abstraction on Starknet L2

MPC Support

  • secp256k1 ECDSA TSS (same as ICP)
  • shouldHash=false (Poseidon pre-hashed transactions)
  • Signature format: [r_low, r_high, s_low, s_high, v]

Reference Implementations

  • ICP (coin class skeleton, ECDSA key pair, MPC patterns)
  • strkMPC sandbox (transaction building, address derivation, signature formatting)

Changes

  • src/starknet.ts + tstarknet.ts — mainnet + testnet coin classes
  • src/lib/transactionBuilderFactory.ts — builder factory
  • src/lib/transferBuilder.ts — STRK transfer transactions (ERC-20 calldata)
  • src/lib/keyPair.ts — secp256k1 key pair with Starknet address derivation
  • src/lib/transaction.ts — transaction parse/explain/serialize
  • src/lib/utils.ts — address validation, EthAccount address computation, signature formatting
  • src/lib/iface.ts, constants.ts — types and chain constants
  • test/unit/ — keyPair, transaction, builder, coin, and utils tests

Related

🤖 Generated with Claude Code

Comment thread modules/sdk-coin-starknet/src/lib/constants.ts Outdated
Comment thread modules/sdk-coin-starknet/src/lib/iface.ts Outdated
Comment thread modules/sdk-coin-starknet/src/lib/iface.ts Outdated
Comment thread modules/sdk-coin-starknet/src/lib/iface.ts Outdated
Comment thread modules/sdk-coin-starknet/src/lib/keyPair.ts Outdated
Comment thread modules/sdk-coin-starknet/src/lib/transactionBuilder.ts
Comment thread modules/sdk-coin-starknet/src/lib/transactionBuilder.ts Outdated
Comment thread modules/sdk-coin-starknet/src/lib/transactionBuilder.ts
Comment thread modules/sdk-coin-starknet/src/lib/transferBuilder.ts Outdated
Comment thread modules/sdk-coin-starknet/src/lib/transactionBuilder.ts Outdated
@shubham-damkondwar shubham-damkondwar force-pushed the feat/starknet/pr2-sdk-module branch 8 times, most recently from 55f4078 to 6711cf4 Compare May 20, 2026 07:21
@shubham-damkondwar shubham-damkondwar changed the base branch from feat/starknet/pr1-statics to master May 20, 2026 07:27
@shubham-damkondwar shubham-damkondwar force-pushed the feat/starknet/pr2-sdk-module branch from 6711cf4 to c9b9dbe Compare May 20, 2026 07:29
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@shubham-damkondwar shubham-damkondwar force-pushed the feat/starknet/pr2-sdk-module branch from c9b9dbe to 03e8b8d Compare May 20, 2026 10:14
@shubham-damkondwar shubham-damkondwar marked this pull request as ready for review May 21, 2026 07:05
@shubham-damkondwar shubham-damkondwar requested review from a team as code owners May 21, 2026 07:05
Copy link
Copy Markdown
Contributor

@mohd-kashif mohd-kashif left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@shubham-damkondwar shubham-damkondwar merged commit 8e81bd7 into master May 21, 2026
33 of 34 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.

2 participants