Background
In crates/driver/src/infra/solver/dto/solution.rs, when a solver returns a solution whose Fulfillment references an order UID that isn't present in the auction, the conversion to the domain model fails with the generic message:
invalid order UID specified in fulfillment
The offending UID itself is dropped. This error is surfaced to the solver via the notify mechanism in crates/driver/src/infra/solver/mod.rs as a DeserializationError, so when an operator receives the notification they cannot tell which of their fulfillments was rejected. A // TODO this error should reference the UID comment on line 52 already flags this gap.
Details
Include the offending UID (hex-encoded with 0x prefix) in the error string
Acceptance criteria
Background
In
crates/driver/src/infra/solver/dto/solution.rs, when a solver returns a solution whoseFulfillmentreferences an order UID that isn't present in the auction, the conversion to the domain model fails with the generic message:invalid order UID specified in fulfillment
The offending UID itself is dropped. This error is surfaced to the solver via the
notifymechanism incrates/driver/src/infra/solver/mod.rsas aDeserializationError, so when an operator receives the notification they cannot tell which of their fulfillments was rejected. A// TODO this error should reference the UIDcomment on line 52 already flags this gap.Details
Include the offending UID (hex-encoded with
0xprefix) in the error stringAcceptance criteria
Solutions::into_domainreturns an error thatincludes the hex-encoded UID.
// TODO this error should reference the UIDcomment is removed.solution.rs:201-206) isexplicitly out of scope and left for a separate issue/PR.