replaces zkeyhash with recent slotfill events

This commit is contained in:
thatben 2025-03-18 15:05:35 +01:00
parent ce3e53949b
commit b801e68f1d
No known key found for this signature in database
GPG Key ID: 62C543548433D43E
2 changed files with 14 additions and 13 deletions

View File

@ -1,6 +1,5 @@
import pkg/ethers
import pkg/questionable
import ./marketplace/market
import ./marketplace/marketplace
import ../config
@ -15,15 +14,17 @@ type
state: State
market: ?OnChainMarket
method getZkeyhash*(m: MarketplaceService): Future[?!string] {.async: (raises: []), base.} =
try:
if market =? m.market:
without zkeyhash =? await market.getZkeyHash():
return failure("Failed to get zkeyHash")
return success(zkeyhash)
return failure("MarketplaceService is not started")
except CatchableError as err:
return failure("Error while getting zkeyHash: " & err.msg)
method getRecentSlotFillEvents*(m: MarketplaceService): Future[?!seq[SlotFilled]] {.async: (raises: []), base.} =
# There is (aprox.) 1 block every 10 seconds.
# 10 seconds * 6 * 60 = 3600 = 1 hour.
let blocksAgo = 6 * 60;
if market =? m.market:
try:
return success(await market.queryPastSlotFilledEvents(blocksAgo))
except CatchableError as err:
return failure(err.msg)
return failure("MarketplaceService is not started")
method start*(m: MarketplaceService): Future[?!void] {.async.} =
let provider = JsonRpcProvider.new(m.state.config.ethProvider)

View File

@ -12,10 +12,10 @@ logScope:
type
MockMarketplaceService* = ref object of MarketplaceService
zkeyHashReturn*: ?!string
recentSlotFillEventsReturn*: ?!seq[SlotFilled]
method getZkeyhash*(m: MockMarketplaceService): Future[?!string] {.async: (raises: []).} =
return m.zkeyHashReturn
method getRecentSlotFillEvents*(m: MarketplaceService): Future[?!seq[SlotFilled]] {.async: (raises: []).} =
return m.recentSlotFillEventsReturn
proc createMockMarketplaceService*(): MockMarketplaceService =
MockMarketplaceService()