def sync.check
import ezx@1.11.0.0/src/tool/plan.bend as Planimport Base
import ezx@1.11.0.0/src/ledger/manifest.bend as M
1118# every tool the ledger names has to be pinned at a commit in the lock; why
1119# the first that is not is refused, "" when every one is
1120def sync.check(ts: List<&2, M.Tool>, +body: String) -> String:
1121 match ts:
1122 case []:
1123 ""
1124 case +h <> t:
1125 sync.step(Bool.not(sync.pinned(pin.in(body, M.tool.name(h)))), M.tool.name(h),
1126 _u => sync.check(t, body))