diff options
Diffstat (limited to 'docs/api.md')
| -rw-r--r-- | docs/api.md | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/docs/api.md b/docs/api.md index 3fb99be..a4b76b0 100644 --- a/docs/api.md +++ b/docs/api.md @@ -291,15 +291,18 @@ peer was sent before, so changes sent again (a message lost on the way) arrive vouched for as the first time; and a node checks one it receives once it holds the change (a signature costs about 30 µs to check, and one vouches for its node's changes before it). A message carrying no changes carries no signatures; one carrying more -than 4096 signed changes (a whole document pulled), and a delta, carry each node run's -latest instead. A node signs the latest change of each of its runs that nothing vouches -for as it starts, before anything leaves, and whenever its document is swapped (a drop, -a switch, a rejoin): changes it kept unsigned, never sent. +than 256 signed changes (a whole document pulled) carries each writer's latest among +them instead, and a delta each writer's latest with changes in it. A writer is a node's +run: each start, rejoin or drop makes a fresh one. A node signs the latest change of +each of its runs that nothing vouches for as it starts, before anything leaves, and +whenever its document is swapped (a drop, a switch, a rejoin): changes it kept +unsigned, never sent. Two cases still arrive unvouched, and wait under a policy requiring signatures: a change vouched for only by a later change of its node that the rules refused (nodes take it, -then can't pass the proof on, [`future-work.md`](future-work.md)); and, in one transfer, -the changes of an epoch with more than 4096 node runs writing. +then can't pass the proof on); and, in one transfer, the changes of runs past the +65536 a message carries signatures of at most, in an epoch with more runs writing than +that since it began. A remake starts the count again. The signatures a node has are kept in its document file (`--document-file`) with the document. |
