diff --git a/pkg/arvo/sys/lull.hoon b/pkg/arvo/sys/lull.hoon index c34fa2b79c..da20ed2d4d 100644 --- a/pkg/arvo/sys/lull.hoon +++ b/pkg/arvo/sys/lull.hoon @@ -776,6 +776,7 @@ [%park des=desk yok=yoki ran=rang] :: synchronous commit [%perm des=desk pax=path rit=rite] :: change permissions [%pork ~] :: resume commit + [%rein des=desk liv=? ren=(map dude:gall ?)] :: live [%stir arg=*] :: debug [%tomb =clue] :: tombstone specific $>(%trim vane-task) :: trim state @@ -814,9 +815,14 @@ [%worn =ship =desk =tako =norm] :: set commit norm [%seek =ship =desk =cash] :: fetch source blobs == :: - +$ cone :: domes - %+ map [ship desk] :: - [dome tom=(map tako norm) nor=norm] :: + +$ cone (map [ship desk] foam) :: domes + +$ foam :: + $: dome :: + tom=(map tako norm) :: + nor=norm :: + liv=? :: + ren=(map dude:gall ?) :: + == :: +$ crew (set ship) :: permissions group +$ dict [src=path rul=real] :: effective permission +$ dome :: project state diff --git a/pkg/arvo/sys/vane/clay.hoon b/pkg/arvo/sys/vane/clay.hoon index 21d212cce6..ce1a56513a 100644 --- a/pkg/arvo/sys/vane/clay.hoon +++ b/pkg/arvo/sys/vane/clay.hoon @@ -3015,6 +3015,22 @@ |= r=rule r(who (~(del in who.r) |+nom)) :: + ++ rein + |= [liv=? ren=(map dude:gall ?)] + ^+ ..park + =? liv =(%base syd) & + ..park(liv.dom liv, ren.dom ren) + :: + ++ rise + |= [=dude:gall on=(unit ?)] + ?< =(%base syd) + %_ ..park + ren.dom + ?~ on + (~(del by ren.dom) dude) + (~(put by ren.dom) dude u.on) + == + :: :: Cancel a request. :: :: For local requests, we just remove it from `qyx`. For foreign requests, @@ -4620,6 +4636,13 @@ =/ den ((de now rof hen ruf) our des.req) abet:(perm:den pax.req rit.req) [mos ..^$] + :: + %rein + =^ m1 ruf + =/ den ((de now rof hen ruf) our des.req) + abet:(rein:den liv.req ren.req) + =^ m2 ruf abet:goad:(lu now rof hen ruf) + [(weld m1 m2) ..^$] :: %stir ?+ arg.req ~|(%strange-stir !!) @@ -4628,6 +4651,12 @@ [%goad ~] =^ mos ruf abet:goad:(lu now rof hen ruf) [mos ..^$] + :: + [%rise =desk =dude:gall on=(unit ?)] + =^ mos ruf + =/ den ((de now rof hen ruf) our desk.arg.req) + abet:(rise:den dude.arg.req on.arg.req) + [mos ..^$] == :: %tomb (tomb-clue:tomb hen clue.req) @@ -5306,19 +5335,19 @@ %- ~(gas by *cone) %+ turn ~(tap by dos.rom.ruf) |= [=desk =dojo] - [[our desk] [[let hit lab] tom nor]:dom.dojo] + [[our desk] [[let hit lab] tom nor liv ren]:dom.dojo] =. domes %- ~(uni by domes) %- ~(gas by *cone) - ^- (list [[ship desk] dome:clay (map tako norm) norm]) + ^- (list [[ship desk] foam]) %- zing - ^- (list (list [[ship desk] dome:clay (map tako norm) norm])) + ^- (list (list [[ship desk] foam])) %+ turn ~(tap by hoy.ruf) |= [=ship =rung] - ^- (list [[^ship desk] dome:clay (map tako norm) norm]) + ^- (list [[^ship desk] foam]) %+ turn ~(tap by rus.rung) |= [=desk =rede] - [[ship desk] [[let hit lab] tom nor]:dom.rede] + [[ship desk] [[let hit lab] tom nor liv ren]:dom.rede] ``[%domes !>(`cone`domes)] :: :: True if file is accessible