From b33d59814ba43305ae191f571f84fdf687377ba9 Mon Sep 17 00:00:00 2001 From: Liam Fitzgerald Date: Mon, 11 Dec 2023 14:49:08 -0500 Subject: [PATCH] gall: fix high water marks for nuked agents --- bin/solid.pill | 4 +-- pkg/arvo/sys/lull.hoon | 3 ++- pkg/arvo/sys/vane/gall.hoon | 51 +++++++++++++++++++++++++++++-------- 3 files changed, 45 insertions(+), 13 deletions(-) diff --git a/bin/solid.pill b/bin/solid.pill index a10d1b5b9..3945f7160 100644 --- a/bin/solid.pill +++ b/bin/solid.pill @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:aec86e0302887b93c51695a08d1383257c5d54e87961a2e859b977fed2f6cdfa -size 9965085 +oid sha256:c2ab6607450382e0ec80c7264dad2c72d69672eaf861eb1c24cde5a76921c6a3 +size 9972490 diff --git a/pkg/arvo/sys/lull.hoon b/pkg/arvo/sys/lull.hoon index 03628b1c2..5d669d7f9 100644 --- a/pkg/arvo/sys/lull.hoon +++ b/pkg/arvo/sys/lull.hoon @@ -2770,6 +2770,7 @@ +$ hutch [rev=@ud idx=@ud key=@] :: +$ farm + $+ farm $~ [%plot ~ ~] $% [%coop p=hutch q=(map path plot)] [%plot p=(unit plot) q=(map @ta farm)] @@ -2777,7 +2778,7 @@ :: +$ egg :: migratory agent state - $% [%nuke sky=(map spur @ud)] :: see /sys/gall $yoke + $% [%nuke sky=(map spur @ud) cop=(map coop hutch)] :: see /sys/gall $yoke $: %live control-duct=duct run-nonce=@t diff --git a/pkg/arvo/sys/vane/gall.hoon b/pkg/arvo/sys/vane/gall.hoon index 306efdb92..2daf23057 100644 --- a/pkg/arvo/sys/vane/gall.hoon +++ b/pkg/arvo/sys/vane/gall.hoon @@ -99,7 +99,7 @@ :: ken: open keen requests :: +$ yoke - $% [%nuke sky=(map spur @ud)] + $% [%nuke sky=(map spur @ud) cop=(map coop hutch)] $: %live control-duct=duct run-nonce=@t @@ -282,6 +282,29 @@ %+ turn tap-plot |= [=path =plot] [path (fun plot)] + :: + ++ gas-hutch + |= =(list [=coop =hutch]) + ^- (unit _farm) + ?~ list + `farm + =/ nex + (put-hutch i.list) + ?~ nex ~ + $(farm u.nex, list t.list) + :: + ++ tap-hutch + =| wer=path + %- ~(gas in *(set [=coop =hutch])) + |- ^- (list [=coop =hutch]) + =* loop $ + ?: ?=(%coop -.farm) + [wer p.farm]~ + %- zing + %+ turn ~(tap by q.farm) + |= [seg=@ta f=^farm] + ^- (list [=coop =hutch]) + loop(wer (snoc wer seg), farm f) -- :: ++ on-path ((on @ud (pair @da (each page @uvI))) lte) @@ -484,10 +507,17 @@ code agent agent &+agent run-nonce (scot %uw (end 5 (shas %yoke-nonce eny))) - sky *farm - :: ?~ yak ~ - :: ~ :: TODO: revive (~(run by sky.u.yak) (corl (late ~) (lead ~))) - == + :: + sky + ?~ yak *farm + =| =farm + =. farm (need (~(gas-hutch of-farm farm) ~(tap by cop.u.yak))) + =/ sky=(list [=spur bob=@ud]) ~(tap by sky.u.yak) + |- + ?~ sky farm + =. farm (need (~(put of-farm farm) spur.i.sky [`bob.i.sky ~])) + $(sky t.sky) + == :: =/ old mo-core =/ wag @@ -925,10 +955,11 @@ %+ ~(jab by yokes.state) dap |= =^yoke ?: ?=(%nuke -.yoke) yoke - :- %nuke - %- ~(run-plot of-farm sky.yoke) - |= plot - (fall (clap bob (bind (ram:on-path fan) head) max) 0) + :+ %nuke + %- ~(run-plot of-farm sky.yoke) + |= plot + (fall (clap bob (bind (ram:on-path fan) head) max) 0) + ~(tap-hutch of-farm sky.yoke) :: +mo-load: install agents :: ++ mo-load @@ -2611,7 +2642,7 @@ %- ~(urn by eggs.old) |= [=term e=egg-15] ^- egg - ?: ?=(%nuke -.e) e(sky *(map spur @ud)) + ?: ?=(%nuke -.e) [%nuke ~ ~] %= e ken [ken.e ~ ~] ::