Currently conductor needs to be started after a rollup node implementing execution API. This is bad for development flow as it doesn't allow hot restart etc of services. We should update this to do a couple of things. The first is a simpler implementation likely unblocks most workflows, the second allows for dev workflows with a hot reload type setup (ie I update my rollup binary and blockchain restarts seamlessly).
- On initial startup, poll for execution layer to be ready. Log that it's not but do no restart.
- If execution API dies, we can restart services internally. The Geth implementation now responds with a
PermissionDenied if GetGenesisInfo and GetCommitmentState are not called before attempting block execution. This would also indicate a need to clear cache and restart internally. (This should be documented as required behaivior)
Currently conductor needs to be started after a rollup node implementing execution API. This is bad for development flow as it doesn't allow hot restart etc of services. We should update this to do a couple of things. The first is a simpler implementation likely unblocks most workflows, the second allows for dev workflows with a hot reload type setup (ie I update my rollup binary and blockchain restarts seamlessly).
PermissionDeniedifGetGenesisInfoandGetCommitmentStateare not called before attempting block execution. This would also indicate a need to clear cache and restart internally. (This should be documented as required behaivior)