diff --git a/pkg/arvo/sys/vane/gall.hoon b/pkg/arvo/sys/vane/gall.hoon index 829c84541..93bc674b2 100644 --- a/pkg/arvo/sys/vane/gall.hoon +++ b/pkg/arvo/sys/vane/gall.hoon @@ -584,16 +584,26 @@ =/ tim (slav da+dat) =/ =beak [(slav %p her) desk da+tim] ?> ?=([?(%b %c) %writ *] sign-arvo) - ?^ p.sign-arvo - =/ cag=cage r.u.p.sign-arvo - ?. =(%vase p.cag) - (mo-give %onto |+[leaf+"gall: invalid %writ {} for {}"]~) - =/ res (mule |.(!<(agent !<(vase q.cag)))) - ?: ?=(%| -.res) - (mo-give %onto |+[leaf+"gall: {}" p.res]) - =. mo-core (mo-receive-core dap beak p.res) - (mo-subscribe-to-agent-builds tim) - (mo-give %onto |+[leaf+"gall: failed to build agent {}"]~) + |^ ^+ mo-core + ?~ p.sign-arvo + (fail leaf+"gall: failed to build agent {}" ~) + =/ cag=cage r.u.p.sign-arvo + ?. =(%vase p.cag) + (fail leaf+"gall: bad %writ {} for {}" ~) + =/ res (mule |.(!<(agent !<(vase q.cag)))) + ?: ?=(%| -.res) + (fail leaf+["gall: bad agent {}"] p.res) + =. mo-core (mo-receive-core dap beak p.res) + (mo-subscribe-to-agent-builds tim) + :: + ++ fail + |= =tang + ^+ mo-core + =. mo-core (mo-give %onto |+tang) + =/ =case [%da tim] + =/ =wire /sys/cor/[dap]/[her]/[desk]/(scot case) + (mo-pass wire %c %warp p.beak desk ~ %next %a case /app/[dap]/hoon) + -- :: +mo-handle-sys-lyv: handle notice that agents have been rebuilt :: ++ mo-handle-sys-lyv