Part of #138. Wave I — second half of ethflow's 'migrated once' (chassis observe port landed in #148/PR #238).
Scope. Re-point modules/ethflow-watcher/src/strategy.rs onto the pool status/observe path through the cow adapter, proving the observe-only venue surface (no submit). Preserve observe-only shape and the shepherd-backtest rlib.
Dependency to close here: the router observe path currently only watches pool-submitted Accepted receipts (#231 scope). ethflow's real placements obtain receipts out-of-band / on-chain, so the router must be taught to watch externally-obtained receipts — close that gap here or as an explicit dependency.
Blocked by: the bundled cow adapter (G3), MockVenue (#149).
Acceptance. ethflow observes CoW order status via the pool router; observed: markers flow through the chassis journal; tests unchanged; backtest rlib still builds.
Part of #138. Wave I — second half of ethflow's 'migrated once' (chassis observe port landed in #148/PR #238).
Scope. Re-point
modules/ethflow-watcher/src/strategy.rsonto the pool status/observe path through the cow adapter, proving the observe-only venue surface (no submit). Preserve observe-only shape and the shepherd-backtest rlib.Dependency to close here: the router observe path currently only watches pool-submitted Accepted receipts (#231 scope). ethflow's real placements obtain receipts out-of-band / on-chain, so the router must be taught to watch externally-obtained receipts — close that gap here or as an explicit dependency.
Blocked by: the bundled cow adapter (G3), MockVenue (#149).
Acceptance. ethflow observes CoW order status via the pool router; observed: markers flow through the chassis journal; tests unchanged; backtest rlib still builds.