clay: add %rein move to config agents

This commit is contained in:
Philip Monk 2022-07-06 23:09:43 -07:00
parent 56ed49578f
commit a4aa835fe1
2 changed files with 43 additions and 8 deletions

View File

@ -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

View File

@ -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