-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Hydra compatibility #66
Comments
Some thoughts: Ogmios compatibility with Hydra will be challenging but doable. My fear is to turn Ogmios into something a bit too frankenstein-ish as many parts will have to be conditionally disabled. Ogmios actually runs all 4 mini-protocols clients behind the scene and keep long-lasting connections to the node. That is necessary in many cases to smooth the user experience down the line and provide features that aren't available from the mini protocols out-of-the-box (like transaction evaluation). Looking at the
|
I agree with you 100%, we don't need a modified Ogmios, we could have a pub trait Submitter {
fn evaluate_transaction(
&self,
tx_builder: &csl::tx_builder::TransactionBuilder,
plutus_scripts: &Vec<csl::plutus::PlutusScript>,
redeemers: &Vec<csl::plutus::Redeemer>,
) -> impl Future<
Output = Result<
BTreeMap<(csl::plutus::RedeemerTag, csl::utils::BigNum), csl::plutus::ExUnits>,
SubmitterError,
>,
>;
/// Submit a fully build and balanced tranasaction
fn submit_transaction(
&self,
tx: &csl::Transaction,
) -> impl Future<Output = Result<TransactionHash, SubmitterError>>;
/// Wait for transaction confirmation on the chain
fn await_tx_confirm(
&self,
tx_hash: &TransactionHash,
) -> impl Future<Output = Result<(), SubmitterError>>;
} I remember we discussed the
|
On the
|
Within few milliseconds. So instantaneous for us humans, but still taking some time for a computer 😶.
Feels a lot like what kupo provides, unless I am missing something?
Yes! Kupo does it 😄! ( https://github.com/CardanoSolutions/kupo/blob/master/src/Kupo/App/ChainSync/Hydra.hs ) |
Okay, I wanted to avoid pulling in another component, maybe we'll need to implement a general UTxO storage in our indexer. |
Required work to make this happen
The text was updated successfully, but these errors were encountered: