Skip to content

Instantly share code, notes, and snippets.

@Quodss
Last active May 9, 2025 14:03
Show Gist options
  • Save Quodss/022a71ebcad581109ecfb9a8359d786f to your computer and use it in GitHub Desktop.
Save Quodss/022a71ebcad581109ecfb9a8359d786f to your computer and use it in GitHub Desktop.

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)

  1. dec exits on a cell sample instead of failing (infinite loop in Hoon)
  2. add exits on a being a cell instead of failing (infinite loop in Hoon)
  3. cut and met use shortcuts that lead to incorrect results for (cut 2 [0 (bex 31)] (bex (bex 33))) and (met 32 (bex (bex 33)))
  4. lte and lth exit when the args are two equal cells, but they should return & and | respectively
  5. cue, max, min, dvr don't validate if the sample is an atom, leading to process aborting
  6. swp doesn't check the bloq size
  7. sort treats non-loobean atoms as %|, but it must exit on them instead
  8. div on [0 0 0] exits instead of returning 0 (since (lth 0 0 0) should return &)
  9. u3qb_drop is plain wrong, though it is not used, so should just be removed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment