def stale.at
import ezx@1.11.0.0/src/ws/up.bend as Upimport Base
import ezx@1.11.0.0/src/lock/world.bend as LW
import ezx@1.11.0.0/src/ws/moved.bend as Mv
326# why a plain lock at a workspace root refuses before it asks anything: a
327# committed line names the hash the lock being rewritten records for a member
328# that has moved since. "" when it does not, and always for an upgrade, which
329# rewrites the line, and for a project of its own.
330def stale.at(up: Bool, +lock: String, +world: LW.World) -> String:
331 match up:
332 case True{}:
333 ""
334 case False{}:
335 Mv.stale.world(lock, world)