statechannels / SCBridge-Wallet

MIT License
2 stars 3 forks source link

abi encoding fails on StateStruct #124

Closed NiloCK closed 1 year ago

NiloCK commented 1 year ago

In branch cmk.rejigged-l2 (and possibly main now)

Uncaught (in promise) TypeError: overflow (argument="value", value=5000000000000000000, code=INVALID_ARGUMENT, version=6.8.0)
    makeError errors.ts:687
    assert errors.ts:715
    assertArgument errors.ts:727
    getBigInt maths.ts:100
    encode number.ts:36
    pack array.ts:64
    pack array.ts:47
    encode tuple.ts:62
    pack array.ts:55
    pack array.ts:47
    encode tuple.ts:62
    encode abi-coder.ts:195
    encodeState State.ts:54
    hashState State.ts:74
    signState StateChannelWallet.ts:275
    addHTLC StateChannelWallet.ts:326
    forwardHTLC IntermediaryClient.ts:63
    handleForwardPaymentRequest IntermediaryClient.ts:172
    onmessage IntermediaryClient.ts:144
    attachMessageHandlers IntermediaryClient.ts:136
    IntermediaryClient IntermediaryClient.ts:127
    <anonymous> Intermediary.tsx:34
    React 3
    Coordinator Intermediary.tsx:33
    React 13
    onClick WalletContainer.tsx:41
    React 23
    <anonymous> main.tsx:7

This error is occurring whenever a wallet client attempts to hash & encode a state. It doesn't make a lot of sense to me, but it seems:

NiloCK commented 1 year ago

Can hash / encode be lifted into a test file similar to recent fix on signature verification?

NiloCK commented 1 year ago

closed via #125 (which was cherry-picked into #123 and merged)