Phoenix Global Oracle Development Plan & Status Report

Oracle Dev Plan & Status Report for Jan 2021

Phoenix
3 min readJan 8, 2021

Dear Phoenix Global Community:

As previously mentioned in the Phoenix Global Node Ecosystem, Oracles are a vital component of our overall platform, enabling real-time off-chain data feeds for both enterprise applications and the upcoming Horizon Protocol (DeFi).

Please find below the Phoenix Oracle development plan (mid-flight) with current progress updates:

Phoenix Global Oracle Development Plan

Timelines & Activities

1. Oracle architecture design (Complete)

  • Organize and attend workshops for Oracle design
  • Finalize architecture design and peer review
  • Technology selection of project

2. Technology language selection and project framework (Complete)

  • Choose Gin for http server framework.
  • Add Model, DB, Logger, Cron jobs, Configuration modules
  • Add UT framework
  • Design the fields and structure of above modules
  • Code review and refactor

3. Add receive and resolve request adapters from on-chain (Complete)

  • Add http server router
  • Add http get adapter and implement functions: receive request and get data by send http request
  • Add adapter for sending Ethereum transactions
  • Add adapter for json parse

4. Implement basic functionality and complete a simple interaction (In Progress — Q1 ‘21)

  • Add a simple scheduler; automatically add job to scheduler and add cron jobs
  • Implement http get request functionality and make mock test
  • Resolve json result
  • Introduce sugarlogger and lumberjack to manage logger module and test (log file location configuration, format, maxsize segment, etc.) in real running environment
  • Code review and refactor

5. Implement off-chain service basic function: (Q1 ‘21)

Receive http request, parse and return result

  • Add account authenticator
  • Implement Ethereum adapter function, resolve Ethereum transactions message, receive requests, and get http result
  • Implement json parse function, resolve the result field and return certain info

6. Implement on-chain service basic function (Q2 ‘21)

Create a simple consumer client and transfer a consumer message to off-chain

Off-chain backend

  • Add a listener to receive requests from on-chain and parse them to different routers.
  • List certain info by on-chain request endpoint
  • List all jobs by GET /jobs interface

On-chain service:

  • Create an Ethereum Consumer client
  • Make a contract owned by an account and can fulfill data request
  • Simple resolve response from off-chain server

Front-end:

  • UI design
  • Develop simple user interface
  • Support third-party interface request service

Alpha Community Test

As a result of the above work, and as mentioned previously, we are anticipating an Alpha version being ready for community developer testing in the coming weeks. This will be geared towards more technical savvy community members to view and participate.

Additional details on the community test of our Alpha version will be made available closer to the release date.

Phoenix Oracle Nodes

Phoenix Global node operators in the Platinum (1m), Zirconium (5m) and Diamond (10m) tiers will function as Oracle nodes. Oracle node operators will play a role in:

  • Data Source Connections — Data Connectors and APIs that will connect to off-chain data sources and feeds
  • On-Chain Contract Execution — the middleware protocols in charge of responding to data queries from other requesting Apps and smart contracts
  • Phoenix Oracle Client — the basic node client that acts as the fundamental bridge between the on-chain and off-chain environments

More details on Phoenix Global nodes and reward structures are available in our Phoenix Global Node Ecosystem article.

--

--

Phoenix

Phoenix is an L1 and L2 blockchain infrastructure, empowering intelligent Web3 applications, focusing on the next generation of AI & Privacy-Enabled Web3 Apps.