~

Roadmap

Next Up

Projects

Next Up

Breadth-First Arvo Move Order

duration

2 Months

Switching from Arvo's current "depth-first" move order to "breadth-first" intends to improve the reliability of parts of the kernel, including upgrades and breach handling, by switching to chronological ordering of intra-event delivery of moves to vanes.

Next Up

Pointer Compression: Cell Compression

duration

2-4 Months

An optimization would be to ensure that any page of memory inside the "loom" (noun memory arena) stores only cells (pairs) or atoms (numbers).

Next Up

Jet Dashboard Experiments

duration

2-4 Months

Experimenting with different designs for the jet dashboard could improve performance, security, and general simplicity of the codebase.

Next Up

Memory-Efficient Meld

duration

1-2 Months

A more memory-efficient implementation of `|meld` should reduce dangerous memory pressure. This would reduce maintenance burden.

Next Up

Typed Paths

duration

1 Week

Typed paths should improve performance and developer experience, and it could unblock a typed interface to publications.

Next Up

Native UI Research: Test-type

duration

3 Months

One of the main barriers to writing an Urbit app is that the standard way to present a user interface is by writing it in JavaScript that runs in a web browser. This has advantages, but it requires writing code in two languages, and it means you can't stay in Urbit entirely when writing an app. This phase of the work involves allowing hoon UI specifications to be rendered to a browser

Next Up

Validate Ames Packets in Vere

duration

1 Month

One of the first things we can do to begin protecting against DoS is to validate packets in Vere before injecting them as Arvo events. This will make it harder for an attacker to lock up a victim's event loop, and it should be a straightforward project.