oceanprotocol / contracts

🐙 Smart contracts for Ocean Protocol
https://oceanprotocol.com
77 stars 61 forks source link

Prediction Manager Contract #861

Closed trizin closed 7 months ago

trizin commented 7 months ago

See https://github.com/oceanprotocol/pdr-backend/issues/701

trizin commented 7 months ago

The contracts will be inside pdr-backend repo, closing this issue.

trentmc commented 7 months ago

More notes on this:

The three options of "where" are: (1) in ocean-contracts (2) in pdr-backend (3) new repo.

Longer-term ideal: have factory contracts, and have them in ocean-contracts (1). But this is overkill for now; it will prematurely "lock in" these new contracts. And we expect to evolve the Predictoor feed contracts too (continuous-valued etc).

Of options (2) pdr-backend and (3) new repo, I prefer (2) pdr-backend. Why: helps integration tests, easier to manage; we just have to be vigilant to keep tech debt low and have great testing.

From discussion with Berkay, we'll do (2).

Once we have evolved Predictoor feed contracts to a more final form (continuous valued etc), then we can consider doing a factory, putting all into ocean-contracts.


And also: Berkay: Ah just realized. adding it to pdr-backend means users will have to install solc (solidity compiler). It might be better to have the contract in a separate repo setup with foundry or hardhat and just pull the bytecode to deploy the contracts in pdr-backend

Trent: Or we have it all in pdr-backend, but without solc in setup.py dependencies. Rather, we have a special README "generate_bytecode.md" where the first step is to install solc; then it compiles; and updates the compiled bytcode as part of the repo. I prefer this.

Berkay: Sure!