Skip to content

Conversation

@dckc
Copy link
Member

@dckc dckc commented Nov 13, 2025

refs:

Description

  • fix(portfolio-contract): don't reverse failure reasons

#12153 introduced the possibility that multiple steps of a flow could fail. They're reported as a linked list. But the list is backwards; for example: flow19:

  "statusDetails": {
    "amount": {
      "denom": "USDC",
      "value": "10000000"
    },
    "error": "One or more withdrawals failed [\"[Error: cannot grab 10000000ibc/FE98AAD68F02F03565E9FA39A5E627946699B2B07115889ED812D8BA639576A9 coins: spendable balance 369642ibc/FE98AAD68F02F03565E9FA39A5E627946699B2B07115889ED812D8BA639576A9 is smaller than 10000000ibc/FE98AAD68F02F03565E9FA39A5E627946699B2B07115889ED812D8BA639576A9: insufficient funds]\"]",
    "how": "Aave",
    "next": {
      "error": "predecessor 0 failed",
      "how": "CCTP",
      "next": {
        "error": "predecessor 1 failed",
        "how": "IBC to Noble",
        "next": {
          "error": "predecessor 2 failed",
          "how": "CCTP",
          "next": {
            "error": "predecessor 3 failed",
            "how": "withdrawToSeat",
            "step": 1
          },
          "step": 2
        },
        "step": 3
      },
      "step": 4
    },
    "state": "fail",
    "step": 5,
    "type": "withdraw"
  },
  • fix(portfolio-contract): don't call fullOrder(0)

#12153 also computes a default order if none is given. For an empty list of steps, this crashed.

Security Considerations

Scaling Considerations

Documentation Considerations

Testing Considerations

Upgrade Considerations

@dckc dckc self-assigned this Nov 13, 2025
@dckc dckc changed the title Dc no reverse partial order follow-up Nov 13, 2025
@dckc dckc requested a review from rabi-siddique November 14, 2025 21:24
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