Voting
- A YES vote means you support ODIN IBC Channel Transition, allowing ODIN to change the default channel to Channel-74 (ODIN) / Channel-20925 (Osmosis).
- A NO vote means you don’t want ODIN to change the default Channel.
- A NO WITH VETO vote suggests you think this proposal could harm Osmosis, and the proposers should face penalties, including the loss of their deposit.
Proposer: ODIN Development Team
Abstract
This proposal seeks community approval to transition the IBC channel used for transactions between ODIN and Osmosis from the current problematic pair Channel-3 (ODIN) / Channel-258 (Osmosis) to the new, fully functional pair Channel-74 (ODIN) / Channel-20925 (Osmosis). This transition addresses persistent transactional issues post-hard fork, ensuring seamless asset transfers and safeguarding user funds.
Background and Justification
Following the ODIN network’s hard fork, transactions from ODIN to Osmosis via Channel-3/Channel-258 have faced consistent failures, causing user funds to be stranded. Despite extensive troubleshooting with validators and Cosmos ecosystem experts, resolving the issues with Channel-3/Channel-258 has remained elusive.
Existing Channel Configuration (Problematic):
- ODIN Chain ID:
odin-mainnet-freya
- Osmosis Chain ID:
osmosis-1
- ODIN Client ID:
07-tendermint-10
- Osmosis Client ID:
07-tendermint-2007
- ODIN Connection ID:
connection-9
- Osmosis Connection ID:
connection-1551
- ODIN Channel ID:
channel-3
- Osmosis Counterpart Channel ID:
channel-258
- Issue: Transactions from ODIN to Osmosis are unsuccessful, while transactions from Osmosis to ODIN proceed without issues.
Proposed Channel Configuration (New):
- ODIN Chain ID:
odin-mainnet-freya
- Osmosis Chain ID:
osmosis-1
- ODIN Client ID:
07-tendermint-10
- Osmosis Client ID:
07-tendermint-2007
- ODIN Connection ID:
connection-9
- Osmosis Connection ID:
connection-1551
- ODIN Channel ID:
channel-74
- Osmosis Counterpart Channel ID:
channel-20925
- Validation: This new channel configuration has been rigorously tested and confirmed to support bidirectional transactions effectively.
Brief background about the tech steps taken
The issue under discussion arises from a sequence of events triggered by a hard fork on the Odin network, which led to a transition from IBC version 3 to version 7. This upgrade has precipitated a complex situation where transactions from Odin to Osmosis are not being finalized as anticipated, creating a state of limbo for these transactions. The essence of the problem, as gleaned from the technical dialogue, revolves around packet commitments and acknowledgments within the IBC protocol framework.
Here’s a technical breakdown:
- Pre-Fork State:
- Prior to the hard fork, Odin’s IBC transactions were managed through IBC version 3. One of the relayers was still operational, with certain transactions remaining unprocessed and accumulating as pending within the system.
- Post-Fork Complications:
- Post-hard fork, with the transition to IBC version 7, a critical issue emerged. While Osmosis to Odin transactions continued unaffected, the reverse flow (Odin to Osmosis) encountered failures. The crux of the problem appears to be the system’s inability to reconcile or clear transactions that were pending under the previous IBC version.
- Technical Dissection:
- Detailed investigation revealed that Osmosis had indeed acknowledged receipt and processing of a series of “stuck” packets from Odin. In a standard operational framework, such acknowledgments should trigger the deletion of corresponding packet commitments on Odin, adhering to IBC protocol logic.
- Anomaly in Commitments:
- Post-upgrade, an anomaly was observed where commitments for packets already acknowledged by Osmosis resurfaced on Odin. This abnormality led to a scenario where the relayer, misled by these re-emerged commitments, attempted to reprocess these packets erroneously, assuming they were unacknowledged.
- Resolution Dilemma:
- The main challenge in resolving this issue lies in the unexplained reappearance of these commitments for previously acknowledged packets. The root cause of this anomaly remains elusive, complicating efforts to devise a clear resolution strategy.
- Exploration of Solutions:
- The dialogue among technical experts has explored various avenues, including a potential temporary rollback to IBC version 3 to manage the stuck packets effectively. However, the feasibility of such a rollback is constrained by the dependencies and technical specifications of the SDK in use, which might not support a seamless transition back to an earlier IBC version.
Proposal Specifics
- Channel Transition: Terminate all transactions on Channel-3/Channel-258 and officially migrate to Channel-74/Channel-20925 for all ODIN-Osmosis transactions.
- Refund for Affected Users: Compile a detailed list of transactions impacted by the Channel-3/Channel-258 issue and initiate a company-funded refund process.
- Ceasing Operations on Channel-3/Channel-258: Formally conclude all troubleshooting efforts for Channel-3/Channel-258 to prevent complications from post-resolution transactions.
- Liquidity Pool Migration: Shift liquidity from the current pool associated with Channel-3/Channel-258 to a new pool for Channel-74/Channel-20925 to ensure uninterrupted trading operations.
- Update on ODIN Registry: Amend the ODIN asset registry on Osmosis to recognize transfers via Channel-74/Channel-20925, ensuring compatibility across the ecosystem.
- Launch of ODIN IBC Dashboard: Introduce a user-friendly dashboard for IBC transaction management, allowing seamless asset transfers between channels.
- Integration of Skip API: Implement the Skip API to enhance transaction routing efficiency, ensuring the best liquidity paths are utilized, with a focus on Channel-74/Channel-20925 during the transition.
Execution Plan
- Phase 1: Engagement & Feedback
- Share the proposal with the ODIN and Osmosis communities for review.
Odin Forum - Host AMA sessions to address community inquiries and concerns.
https://x.com/odinprotocol/status/1763877130482442575?s=20
- Share the proposal with the ODIN and Osmosis communities for review.
- Phase 2: Technical Setup
- Complete all necessary technical preparations for Channel-74/Channel-20925.
- Since channel-258 (osmosis >> Odin) is working, users can seamlessly use keplr/leap or odin dashboard to move ODIN back to odin chain.
- Phase 3: Implementation
- Initiate the refund process for impacted transactions.
- Facilitate the liquidity shift to the new pool and update the ODIN registry.
- Deploy the IBC management dashboard for community access.
- Phase 4: Ongoing Support
- Monitor the transition closely to address any issues.
- Provide continuous support to users adapting to the new channel setup.
Conclusion
The transition from Channel-3/Channel-258 to Channel-74/Channel-20925 between ODIN and Osmosis is pivotal for ensuring the smooth and secure transfer of assets. This detailed proposal lays out a comprehensive plan to tackle existing challenges, reduce user impact, and establish a robust foundation for future transactions. The ODIN team values community feedback and support in actualizing this essential transition.