<feed xmlns='http://www.w3.org/2005/Atom'>
<title>pure/docs/research/105-growing-a-shared-board.md, branch master</title>
<subtitle>Verified execution runtime unifying state, persistence, and replication.
</subtitle>
<id>http://git.yeowoo.org/pure/atom?h=master</id>
<link rel='self' href='http://git.yeowoo.org/pure/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/pure/'/>
<updated>2026-09-30T05:45:05Z</updated>
<entry>
<title>Say where the shared board now lives, and what is left (105)</title>
<updated>2026-09-30T05:45:05Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-30T05:45:05Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/pure/commit/?id=6cff4e0e5927693e2cc88f984074803dd14d7cdf'/>
<id>urn:sha1:6cff4e0e5927693e2cc88f984074803dd14d7cdf</id>
<content type='text'>
The board is Vega's examples/shared-board.aup, and Vega's shared_board
check runs its two nodes: changes on either agree, and a partition
healed agrees on the later change. Reading a named field list once a
delivery would save part of 310 ns a record during upgrades alone: not
worth an API. What review 004 asked that is left is 103's third item,
broader performance comparisons under conditions stated first.
</content>
</entry>
<entry>
<title>Say that sends and applies now spread their fields (105)</title>
<updated>2026-09-30T05:42:17Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-30T05:42:17Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/pure/commit/?id=c5419777f16a4330072bc732b12c2924887c0fcf'/>
<id>urn:sha1:c5419777f16a4330072bc732b12c2924887c0fcf</id>
<content type='text'>
aup spreads an item or a message into a send or a record, and sets an
item whole (c69682e): the board sends { ..at } and applies cards[k] =
Card { ..remote }, and a new field is written in two places, the record
and the output. v6 on both nodes, cut apart and joined again, agrees on
the later change; its module is byte for byte the one with every field
written.
</content>
</entry>
<entry>
<title>Say what laying a record out anew costs (014)</title>
<updated>2026-09-30T05:00:54Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-30T05:00:54Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/pure/commit/?id=a6c2aae1a7d3f5caeb829514c7238009e0ad38fe'/>
<id>urn:sha1:a6c2aae1a7d3f5caeb829514c7238009e0ad38fe</id>
<content type='text'>
A board record of five fields (38 B) sent with v3's output fields took
310 ns to lay out for v4's input, reading the field list each time.
Only streams of another shape pay it, and only while nodes are upgraded
one after the other: less than a delivery's own work.
</content>
</entry>
<entry>
<title>Say how growing a board two nodes share went (105)</title>
<updated>2026-09-30T04:59:50Z</updated>
<author>
<name>eunhhu</name>
<email>necpition205@gmail.com</email>
</author>
<published>2026-09-30T04:59:50Z</published>
<link rel='alternate' type='text/html' href='http://git.yeowoo.org/pure/commit/?id=781b484fc326c58d9a8962696fa84a785c36ae9a'/>
<id>urn:sha1:781b484fc326c58d9a8962696fa84a785c36ae9a</id>
<content type='text'>
103's next step: grow a real app, adding and reordering fields, cutting
the connection, starting again, and write down what gets in the way.
Two nodes share a board (from Vega's examples/board.aup), each sending
its changes to the other, the later change winning.

Upgrading them one after the other deadlocked: fixed by recasting
waiting sends by name (9aa123e) and taking fields by name (014,
5ce7655), and under it a link that stopped for good when a refused
stream's try was lost (baaf955). Now the older node's changes reach the
newer one during the upgrade, the newer one's new field waits for the
older, and the boards agree a second after. Fields in another order
agree at once; a partition healed agrees on the later change; both
nodes started again go on. Two rough edges eased on the way (the node's
name, message like in aup); sends and applies are still written field
by field. CHECKPOINT's row for links says so.
</content>
</entry>
</feed>
