My router logged which engine each job went to, then froze that row at dispatch time. The log could say what was decided and never whether it worked. A reconcile command now reads jobs back from the live backends and settles each one to running, completed, failed, or unknown. It refuses to guess in two places. A job missing from a bounded recent window settles to unknown, because absence is equally consistent with finished, crashed at startup, and never started. A healthy job I stopped by hand is unknown too, not failed, since whether the route was right is a separate question. A fabricated completed would corrupt exactly the routing data the log exists to produce.
Field note
Dispatched is not an outcome
My router logged which engine each job went to, then froze that row at dispatch time.
Reading