free-honey/naumachia

Add Aiken eval to Validator type to be used by all `.plutus` scripts

MitchTurner opened this issue · 4 comments

Currently the CMLValidator type (name not final) doesn't have an execute implementation because we need to give it some way to evaluate locally.

Aiken provides a way to evaluate (and even cost) locally. We 100% should use it at least for evaluating Plutus scripts locally.

I'm working on this rn. Feels like a good feature to include to help bridge the gap with the Aiken dev.

It's work...ing.... kinda. We have it implemented, but there are some weird bugs with the ScriptContext that hasn't been solved.

I've noticed that this is only relevant on the test network sides. Where we're using BlockFrost, we don't need to do checks. Now, we may still want to, in order to save on comms or something.

The correct architecture here isn't clear to me yet. I think ideally, we'd have a check phase that is independent from the issuance phase. At least for the CML client, they are more tightly coupled because the checks just come for free.

Not ideal, but I don't know the correct solution.

I believe this is fixed here: #77