The problem: a solve is a fact that only lives in one server's memory
If you gate a route with proof-of-work, every accepted solve is a real event. Someone burned real compute, at a real wall-clock moment, to get past the gate. That is exactly the property you wanted: the gate costs the caller something.
But where does that fact live? In the verifier's memory, for as long as the process stays up. The server knows a valid solve came in. Nobody else does, and nothing stops the server from claiming a solve happened that didn't, or forgetting one that did. If you ever need to prove "this specific solve happened before this point in time" to somebody who does not trust your logs, you have nothing. A row in your own database is not evidence to an adversary.
So the question is narrow and concrete: can you make an accepted PoW solve durable and independently auditable, without asking anyone to trust the server that recorded it?
The mechanism: Merkle-fold the window, anchor one root to Bitcoin







