Osmosis remains the DEX for Cosmos ā and beyond.
Cosmos was our starting ground, and Cosmos remains our home base. Competition is welcome. But building a great DEX isnāt just about spinning up a UI on a Uniswap fork. It takes years of technical iteration, deep ecosystem coordination, and an obsession with user experience.
Now, weāre taking that same playbook to Bitcoin. With deep integrations and partnerships across Babylon, Nomic, WBTC, and more. Osmosis is expanding ā not pivoting ā to become the interchain gateway for the worldās most valuable asset.
The best DEX won't be confined to a single chain or ecosystem. Polaris is the engine behind our expansion. While others are just beginning to wrestle with fragmented liquidity and cross-chain UX, Polaris is already solving them. Itās the result of 4+ years of hard-earned lessons.
But weāre not slowing down. Weāre playing a bigger game. And we're gonna win again.
Crypto to me is the space where are building to get you in control of your apps, devices and wealth. All with full customizability and no lockin
To name a few areas of importance:
Privacy, controlling information flow, permissioning systems, strong identity primitives, bringing real assets permissionlessly, and removing counterparty risks
Keep building things that matter, not rehypotheticating staking yields and new ponzis.
@iamineluctable@AirdropGlideapp@osmosis Dev here, the point of this is to spread the risk exposure as all of them has potential to be exploited. There are mechanism around limiting exposure of each underlying asset as well (will have dashboard for that soon).
Introducing Osmosis Pay š³
Powered by @Cypher_HQ_, use your assets on Osmosis to buy anything from your daily coffee to lab coats and test tubes š„¼š§Ŗ
Using the VISA network, the Osmosis Card is supported by 40+ million merchants across 140+ countries š
Here are the deets š
Co-Founder @sunnya97 jumped on @ExpansionPod_ with hosts @nosleepjon + @LogarithmicRex to chat about Polaris, the Token Portal.
h/t @blockworks
Here are some highlights, starting with an introduction to Polaris.
All tokens. All chains. One app.
š
Polaris is many things.
It's a dex aggregator. A bridge aggregator. An aggregator aggregator.
A portfolio tracker. A universal gas station. An MPC autopilot signer.
There's a lot going on. But really its all to build something simple.
It's a Token Portal.
1/ We are excited to announce Succinct Processor 1 (SP1), our first generation, 100% open-source zkVM that proves arbitrary Rust programs.
SP1 targets an order of magnitude performance improvement vs. existing zkVMs, and is already up to 28x faster for certain programs.
Have you ever wished there was an ultimate guide to security around the Cosmos stack?
The kind that would let you, the developer, worry a bit less about the myriad footguns that come from an unconstrained appchain stack?
Well, today is the day the wish comes true. Read on! š§µ
A personal retrospective on celestia launch
What went well, what didn't go so well, and what to improve for Keplr and Osmosis š
Celestia was a bombshell of a launch. After a multiyear bear market, it was refreshing to see metrics fly through the roof. Celestia launch was the largest event since 2021 where people who have never used the cosmos stack, used it for the first time.
First impressions are important. I agree that the first impression of the Osmosis / Keplr was likely not as impressive as people expected.
Hereās a little bit of a background of what went well, what didnāt go so well, and how it can be improved for the future.
š„° What went well š„°
1. The Celestia mainnet launch itself.
The @CelestiaOrg team did an amazing job of building innovative software, and launching the Celestia mainnet with a set of genesis validators. While the incentivized testnet was probably one of the most resource intensive testnet Iāve seen in a while, seeing mainnet create blocks flawlessly as genesis time approached proved that the team did a great job of testing the software and prepping the validators.
2. Airdrop distribution.
Iād argue that the Celestia airdrop was one of the best crafted airdrops in recent network launches. While likely not perfect, they did a good job of filtering out potential sybils, distributing to a wide (and very strategic) group of stakeholders ranging from stakers, early adopters, researchers, code contributors, etc. The airdrop claims process could have been better (i.e. requiring multiple addresses for multiple criteria eligibility, inevitable geoblocking, etc), but all in all, the distribution was well thought out and created a strong pre-launch community.
3. Node endpoint infrastructure.
I know Iāll get shit for saying endpoint infrastructure went āwellā, but I genuinely think the @keplr_infra team did a fantastic job here.
We saw the largest spike of traffic in Keplr history.
We were expecting about 3x the usual traffic, but saw over 10x.
The team scaled endpoints in 10-15 minutes. And note that not only did we have to scale Celestia endpoints, but also every other natively integrated chainās endpoints because opening a wallet refreshes balances for ALL chains.
Considering the monumental task they faced in the midst of immense pressure, Iād still rate this a success.
4. Skip Protocolās swap API
@SkipProtocol Swap API is the backbone of Keplr Swaps. It was able to detect and service Celestia and Osmosis quickly, then add the new liquidity pools that were created shortly after. The process was largely automated, which gives me confidence that this will scale well as we see more chains/assets launch in the future. I want to emphasize that the Keplr Swap issues you saw had little to do with Skip, but rather a more fundamental issue with Cosmos fee logic(discussed below).
š¬ What didnāt go so well š¬
1. Keplr multichain UX
Despite our infra stack handling the influx of users fairly well, a more fundamental issue was Keplrās multichain design. More specifically the āmanage chain visibilityā feature.
We implemented this because we saw multiple users highlighting how manually selecting a chain to see a balance (a la Keplr v1) was neither user friendly nor scalableāto which we agreed. However, the new UX pattern is extremely confusing for unfamiliar users. Itās hard to notice when a new chain is available. Itās annoying to enable a chainās visibility to each account separately (like me who have 20+ accounts in my wallet).
Overall, I still think the idea of a chain being less prominent as a point of interaction in a wallet is a direction weāll continue to move towards. However, itās good intention that was poorly executed. We will reexamine if thereās a better way to go about itāwhere non-Cosmos users can understand at a first glance. Let me know if you have ideas.
2. Keplrās error message needs to be improved
Things break. Thatās inevitable.
However, what isnāt inevitable is providing a better way of letting users know any information on what broke, why it broke (it may not be a Keplr issue, but a chain issue, Ledger issue, endpoint issue, etc), and how you can potentially fix it.
The challenge of a wallet is that you get error messages from external sources. Chains spit out error messages. Endpoints spit out error messages. Ledger hardware wallets spit out error messages. However, as a userāyou donāt know which of these things the error came from. This hopefully helps us as well, where we can spend less time attempting to replicate bug reports.
Weāll work on implementing better error handling, and friendlier messages. More contextual information on the error, and steps you may be able to take to make it work (if possible).
3. Cosmos fee/mempool logic.
IBC as a protocol was not the issue. Relayers were not the issue.
āBetter IBCā doesnāt fix this. Better relayer software doesnāt fix this. Self-relaying doesnāt fix this. Only better fee logic and transaction filtering does.
I want to emphasize that since there seems to be misunderstandings on how IBC works.
The reason why you saw so many IBC transfers fail was a more fundamental reason: Osmosis (and probably all other Cosmos chains today) did not have a smarter fee logic and transaction filtering.
For a successful IBC transfer to occur, relayers need to move packets of information between chains, and submit it to each chain as a transaction. The issue was that the chain was so bottlenecked by various arbitrage bots essentially spamming the chain with their transactions, that even relayers, a special class of citizens that Osmosis depends on as a key component of operations, were not able to submit transactions.
Preventing an event like yesterday from happening is not by changing how IBC works, but by fixing how the chains handle transactions (mempool, fees, messages, etc).
Unfortunately, Cosmos has, in my opinion, a fairly outdated model of handling transaction priority.
Itās further exacerbated by the fact that transaction fees are parameters set individually by the validators. While the intention was to allow validators to be selective about tx fees they are willing to process a transaction for, and for there to be a competitive market amongst validators around it, the reality is that there is no āpriorityā. This means chains treat an invalid arb transaction at the same importance as a crucial IBC packet being submitted by a relayer.
Furthermore, some of these bots submitted unreasonably large gas amounts for their transaction (i.e. 20x beyond what was needed). Even if these transactions fail (i.e. due to it being invalid, prices fluctuating, etc), it still took up blockspace (which has a limitied amount of gas per block). This meant a failed arb transaction took the space for what could have been 20 user transactions/relayer transactions.
Osmosis has a parameter to selectively apply a different gas price for arb transactions (atomic transactions where the input and output denom is the same, but takes multiple swaps in between) and a separate fee parameter for transactions with an exceptionally large gas amount. However, these parameters have to be individually applied by validators which increased the coordination and communication cost. Iād still like to acknowledge the many Osmosis validators whoāve been incredibly quick to respond and apply these recommendations as needed.
Ultimately, there needs to be long term solutions. The following are some things being worked on which hopefully would permanently resolve these issues from happening.
- Better fee handling (a la EIP-1559) which dynamically adjusts to blockspace demand
- Skipās more intelligent block building (where hopefully you can give relayers submitting a packet a higher priority over other transactions)
- Zakiās ideas to even remove the mempool from CometBFT to a more intelligent mempool (see https://t.co/5GkcrfxYTN)
- and likely many more which Iāve probably failed to include (please feel free to reply below!)
(bonus) IBC timeouts and cancellability
While I mentioned that IBC didnāt fail, I do think there are ways IBC UX could be improved in scenarios such as yesterday. IBC timeouts were set too short (i.e. 10 mins), which meant even if the transaction could have gone through if it took 15 minutes, any transaction over 10 minutes were considered invalid.
We think improvements such as increasing the timeout while also allowing explicit cancellation of pending IBC transactions, retry logics, etc would help massively in making IBC transactions not feel like āIBC purgatoryā.
----------------
Iād like to point out that a lot of these problems are problems that exist in all of Cosmos. It came to light because of the scale of transactions we ran into yesterday, but it could happen to any chain.
The bad news is that many people may have had a bad first impression on IBC / Cosmos stack.
For that, I apologize. I genuinely hope you stick around, because when it works well (which is like 99% of the time), @cosmosibc is one of the most magical cross-chain experience you can have in all of crypto!
The good news is that now that we know what the point of failure is for IBC to work well (the fee/tx handling logic), we can work to fix it! And once this is fixed, it's a lesson no other Cosmos chains have to go through.
Cosmos has had its fair share of chaotic failures. (Remember Terra? š) But as an ecosystem and as a technology, it continues to iterate for the better.
⨠Huge shout out to all the @osmosiszone validators, @crypto_crew (the relayer heroes), and the osmolabs + keplr + osmosis support team members who worked tirelessly to resolve these issues.