funded
CHARLI3 - "pull oracle" real-time price feeds on request (On Demand Validation service MVP)
Current Project Status
in_progress
Amount
Received
₳60,000
Amount
Requested
₳300,000
Percentage
Received
20.00%
Solution

Our current solution only triggers posting an on-chain data value when price deviates, we propose to add more triggering events, such as a direct call from a DeFi protocol (e.g. request current data).

Problem

Protocols want real-time data from an oracle solution at specific times, but our current solution only has on triggering mechanism for price deviations (e.g. if price fluctuates by 1%).

Team

2 members

  • Project Information
  • Community Reviews
  • Team Information
CHARLI3 - "pull oracle" real-time price feeds on request (On Demand Validation service MVP)
Start date
-
Milestones
-
Next Milestone
-

Please describe your proposed solution.

Disclaimer

  • We have an existing solution (see below to view it in action on mainnet)
  • This proposal is NOT funding to build an oracle solution
  • This proposal is NOT to take a concept to MVP
  • This proposal is to enhance our current solution by adding triggering events that enable projects to demand real-time data from our networks, of which we have a functioning version using price deviations

Existing Product: Decentralized Oracle Solution w/ nodes posting values on-chain and aggregation happening on-chain (the only one built, natively, this way on Cardano)

Charli3 is a decentralized oracle solution with active price feeds, a network of nodes, and an architecture native to Cardano that has been active since October 2022. We will simply be using our existing product, the C3 Ecosystem and current third generation architecture, to add automated data triggering events as an enhancement.

Example of our current solution active since Oct 2022 (1000s of successful data deliveries on-chain with 100% uptime): <https://cexplorer.io/address/addr1wyd8cezjr0gcf8nfxuc9trd4hs7ec520jmkwkqzywx6l5jg0al0ya/tx#data>

===============================

PROPOSED SOLUTION

==============================

Use our pre-existing architecture to have end-user (consumer) triggered data cycles (definition below). Implement a pull-based oracle mechanism whereby protocols can call data from Charli3 in real-time and pay transaction fees per update.

Example: A user on Liqwid (not partnered for this proposal) wants to do an action that requires the price of ADA/USD. Their action triggers a communication with Charli3 for that data, a cycle occurs on the C3 Network in milleseconds and the data is updated on-chain after 20 seconds. Although a sub-second finality is desirable, with our current architecture the best we can achieve is 20 seconds.

A Data Cycle describes an end-to-end process of our node network calling data sources, processing the data, passing it onto our aggregation contract, and finally being placed on-chain in a consumable format by Cardano protocols. Example, if the price of ADA/USD fluctuates by more than 1% our mainnet flagship data feed will trigger an updated price on-chain.

Using our pre-existing mechanism, our goal is to enable end-users (protocols such as Liqwid, Indigo, etc) to build a call request into their protocol to call a data value from Charli3 and receive it within 20 seconds. This is a significant increase from the regular updates of aggregated API sources as well as both Charli3 and Orcfax's current regular data feed update interval.

Our team believes this is entirely feasible to achieve a sub-second finality, but requires significant research, ideation, and testing to implement. At this time, we do not have the resources to complete this work. This proposal is to accelerate towards this enhancement.

Push to Pull based oracle solution.

As Chainlink introduced similar functionality in 2023, we want to deliver the same value to the Cardano community. Although there may be some limitations with block times (posting data on-chain is restricted to when blocks are updated on Cardano), we are confident of getting a successful MVP functioning using our existing architecture. Our other proposal to build a side-chain solution may be able to leverage this enhancement and circumvent the block timing issue. This project allows Cardano to maintain the industry standards set forth on other chains.

In addition to user input triggered cycles, we will explore other variables for triggering cycles to allow greater customization by protocols.

Please define the positive impact your project will have on the wider Cardano community.

  1. Real-time Data on Cardano Protocols:
  2. Protocols using regular APIs often have old or stale data (aggregated sources can sometimes be regularly off as much as 15%)
  3. Protocols relying on a regular heartbeat update are beholden to the data value from the last update. For example, if a price feed updates every 60 minutes and slowly creeps up or down in that hour (less than 2% every 2 minutes), a user on that protocol could execute a liquidation, loan, trade, etc. on data value that is 10%+ off from what the actual price across all the data sources they rely on. A price deviation trigger captures faster movement, but the system is not perfect (yet incredibly more reliable that aggregating from sources like coingecko and coinmarketcap, which are delayed).
  4. Customizable Data Feeds:
  5. By offering a menu of triggering options, we may be able to support more builders in the Cardano ecosystem by designing exactly what they need instead of having them conform to use our current architecture
  6. Lower Costs:
  7. Especially with the use-case of user input triggered cycles, protocols only pay for cycles they absolutely need. If a token pair is low volume with minimal trades, you still need to supply the best data possible for when a user executes an action with that data. Right now, a protocol's cheapest option is to pay for data from aggregated sources and create an in-house multi-sig solution (or dex aggregator for CNTs)… but if you want to go the decentralized oracle route to increase accuracy, reliability, and security you have to settle for a regular frequency update and price deviation checks. I believe Orcfax and Charli3 both offer around 60 minute updates with 1% deviation checks. Although those numbers could theoretically be lowered to the every block it updates, the cost skyrockets to achieve real-time data. This proposal solves this problem by enabling projects to only pay for data when they need it.
  8. Easier Payment for Feeds:
  9. By integrating Charli3 calls directly into the protocol, transaction fees paid directly by your users can ensure the data is received. No need to create subscriptions with Charli3.

What is your capability to deliver your project with high levels of trust and accountability? How do you intend to validate if your approach is feasible?

We like to think our track record of building consistently since April 2021 speaks for itself. The ADA/USD price feed on mainnet has been live since October 2022 and up 99.99999% since then (View our flagship feed).

Our core solution passed a level 2 audit by CertiK.

It was one of the first solutions on Cardano audited by the CertiK team. Charli3 launched one of the first smart contracts after the capability was upgraded on mainnet. Our core architecture is native to Cardano and we are the first decentralized oracle solution built on Cardano.

At our peak our team consisted of 25+ team members. During the bear market, we've greatly reduced our team with intentions to scale up in 2024. The current development team consists of three core members and three contracting teams with 1-4 members each. Charli3 currently has around 15 dedicated members.

We have partners with industry leading development teams like Metalamp, Mlabs, and previously Plank.

What are the key milestones you need to achieve in order to complete your project successfully?

  1. Research (2-4 weeks)
  2. Review current architecture mechanism and create report detailing limitations
  3. Research feasible options for enhancing our current triggering mechanism to pull data from user input
  4. Contract a protocol to develop a use-case using their protocol (both Liqwid and Indigo expressed interests in this solution in the past, we intend to approach them and others to gauge desire to partner); there are several teams we can work with but can also design a simple protocol solution to call our network using the new mechanism

Deliverable:

Architectural Report completed with feasibility and options for additional triggering events required. Project scope for the MVP stage defined.

>1. MVP 15 weeks

Deliverables

  1. Create documentation and SDK
  2. Build a functioning use-case with a partner/or dummy solution on pre-production

>1. Testing 8 weeks 2. Build test cases and do an end-to-end internal audit 3. Remedy issues and rebuild if necessary

Deliverable:

Functional and security report on solution including roadmap for going live on mainnet (it is entirely possible more work may be required to achieve the final milestone that goes beyond the scope of this proposal, but given that we already have a triggering mechanism we should at the very least be able to deliver a MVP in an agile way that requires enhancements in the future)

>1. Integration (2 weeks)

Deliverable:

Functional use-case with active protocol on mainnet

Who is in the project team and what are their roles?

Charli3 team: <https://charli3.io/team>

Project Lead: Robert

Support: Metalamp and Mlabs, as needed

Please provide a cost breakdown of the proposed work and resources.

We breakdown the project into 5 stages:

  1. Research (2-4 weeks)
  2. Review current architecture mechanism and create report detailing limitations
  3. Research feasible options for enhancing our current triggering mechanism to pull data from user input
  4. Contract a protocol to develop a use-case using their protocol (both Liqwid and Indigo expressed interests in this solution in the past, we intend to approach them and others to gauge desire to partner); there are several teams we can work with but can also design a simple protocol solution to call our network using the new mechanism
  5. MVP (15-20 weeks)
  6. Create documentation and SDK
  7. Build a functioning use-case with a partner
  8. Functional use-case on pre-production
  9. Testing (2 weeks)
  10. Build test cases and do an end-to-end internal audit
  11. Remedy issues and rebuild if necessary
  12. Integration (2 weeks)
  13. Functional use-case with active protocol on mainnet

STAGE COST BREAKDOWN:

Research Stage:

1 senior architect at USD$110 hourly researching 80 hours (1.5 weeks full-time)

  • Deliverable: architectural and feasibility report (showcasing options for how this project could be completed, restrictions and such); with proprietary information excluded, we can share this report as progress for our project to the catalyst community
  • Sub Cost: USD$8,800

1 part-time developers at USD$75 hourly (80 hours)

  • Partner team cost coverage to explore building a use-case with us
  • Alternative plan: build a simple on-chain solution to use as a use-case (e.g. simple payment contract)
  • Sub Cost: USD$6,000

MVP, Testing, Integration Stages:

3 Developers at USD$75 hourly implementing/coding the architectural design

  • Deliverable: a minimal viable product that allows a protocol to trigger a data update every 20 seconds if so desired
  • Variability on hours depends on the amount of work that needs to be done on top of our existing solution
  • The triggering mechanism will require work on the following parts:
  • On-chain charli3 oracle contract
  • Back-end charli3 code
  • Node-software code
  • SDK and documentation / howto for protocols to build a triggering event or pull from Charli3
  • Payment system for paying C3 network for the update
  • The payment system will require significant work
  • Developers required
  • Haskeller and on-chain expert ($75)
  • Python and back-end expert ($75)
  • Cardano smart contract specialist ($75)
  • Estimated development time: 3 people full-time for 13.5 weeks
  • Sub Cost: USD$121,500

TOTAL COSTS (Estimated): USD$136,000 (300,000 ADA at current values)

How does the cost of the project represent value for money for the Cardano ecosystem?

Pull based oracles are the future of data provisions as championed by Chain.link, Supra Oracles, and Pyth Network.

  1. Protocols enjoy lower costs as discussed in the previous answers
  2. Users on protocols can expect higher quality data on the protocols that leverage our solution
  3. Cardano ecosystem will keep up to pace with integration layer innovations seen on other chains, thus drawing in more users to our protocols
  4. With options to add custom Triggering events and automation, protocols can work with us to build more creative solutions such as those that interact with real world events (e.g. paying out bets on gambling sites based on the score of a game)

Comments

Monthly Reports

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    d. 3 se. 24
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    d. 4 se. 3
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    d. 3 se. 48
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    d. 2 se. 16
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    d. 3 se. 14
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    d. 3 se. 19
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    d. 4 se. 59
    Darlington Kofa
0:00
/
~0:00