List of bugs in jets I found so far:
("exit" means bailing with c3__exit
: deterministic crash that can be caught by the virtual interpreter; "failing" means bailing non-deterministically with any other how
)
dec
exits on a cell sample instead of failing (infinite loop in Hoon)add
exits ona
being a cell instead of failing (infinite loop in Hoon)cut
andmet
use shortcuts that lead to incorrect results for(cut 2 [0 (bex 31)] (bex (bex 33)))
and(met 32 (bex (bex 33)))
lte
andlth
exit when the args are two equal cells, but they should return&
and|
respectivelycue
,max
,min
,dvr
don't validate if the sample is an atom, leading to process abortingswp
doesn't check the bloq sizesort
treats non-loobean atoms as %|, but it must exit on them insteaddiv
on[0 0 0]
exits instead of returning 0 (since(lth 0 0 0)
should return&
)u3qb_drop
is plain wrong, though it is not used, so should just be removed