input-output-hk / hermes

🏛️ Hermes is a high-availability blockchain voting database that acts as a distributed storage and event processor for voting events, proposals, and actions.
https://input-output-hk.github.io/hermes
Apache License 2.0
13 stars 2 forks source link

feat(http gateway) #253

Closed cong-or closed 2 weeks ago

cong-or commented 1 month ago

Initial HTTP gateway scaffold.

Future PRs which expand on this:

cong-or commented 1 month ago

Am I correct that mechanics of this http extensions is follows right now: http runtime extensions receives request -> for the received request transformed to hermes event -> hermes http event is sent to event queue -> hermes event executes inside wasm -> original request sender receives response after the successful event execution as a part of the event processing function.

What happens if event will be not executed inside wasm (because event queue does not provide such guaranties). Does the user will receive some response at this case ?

yes correct. But the next step is to add event tracking and management - the connection manager is a start for this. We will think about it in more detail then. At the moment we just respond like this - the event either returns Some or None and the http response mirrors this back to the client.

cong-or commented 2 weeks ago

re-opening with dependency tracking changes.