From c9e5688065375d27dad74c6edf9de9d1ae5f7591 Mon Sep 17 00:00:00 2001 From: Fang Date: Fri, 11 May 2018 16:25:06 +0200 Subject: [PATCH] Make %init complete successfully. --- sys/vane/jael.hoon | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/sys/vane/jael.hoon b/sys/vane/jael.hoon index 06307f245..d413e2628 100644 --- a/sys/vane/jael.hoon +++ b/sys/vane/jael.hoon @@ -1689,8 +1689,13 @@ =* wyl `will`[[1 cet] ~ ~] =* hec `farm`[[rex wyl] ~ ~] =. +>.$ (deal rex [[ryt ~ ~] ~]) - =. ..ex (meet [~ ~] hec) - +>.$ + ::TODO modifying outer core in non-abet arm is pretty bad style here... + =. ..ex (meet:abet [~ ~] hec) + :: + :: because the above =. changed outer core state, + :: we need to make shy and rug up-to-date again. + :: + able :: :: grow:ex:ur ++ grow :: merge wills |= $: :: vie: data source @@ -1722,14 +1727,14 @@ :: lub: merged deed :: =+ [hub lub]=[p q]:(grow-mate p.i.wap q.i.wap pre) - ?~ t.wap ..grow - ?> =(p.i.t.wap +(p.i.wap)) - %= $ - wap t.wap - pre `dat.lub - rug (~(put by rug) p.i.wap lub) + =: pre `dat.lub + rug ~& [%grow-puts p.i.wap new=lub old=(~(get by rug) p.i.wap)] + (~(put by rug) p.i.wap lub) hab (weld (flop hub) hab) == + ?~ t.wap ..grow + ?> =(p.i.t.wap +(p.i.wap)) + $(wap t.wap) :: :: grow-lick/ex:ur ++ grow-lick :: check signature |= {pub/pass ash/@ val/@} @@ -1897,7 +1902,8 @@ :: pev: life and ring of parent :: val: new signature :: - =/ pev (leak dad) + ::TODO are we good to use new here? only num matters it seems. + =/ pev (leak:abet(rug (~(put by rug) num new)) dad) =* val (sign:as:(nol:nu:crub q.pev) *@ ash) new(syg (~(put by syg.new) dad [p.pev val])) -- --