Both from the independent review of the issue-104 fix.
107 — a signed declaration carries nothing that orders it against another; its only identity is its digest. So a host can say "not the last" but never "older", and on the link a backlog of more than sixteen pushes across a converge/adopt pair, or a slow broker splitting a batch, applies a superseded declaration — issue 104's incident by another door. The controller already holds the order under its per-node lock and throws it away at the wire. Asks for sequence + supersedes in the signed bytes.
Design amendment (node lifecycle, Rescue): apply FILE on a node the mesh has spoken to is refused — a hand-applied file is recorded as carried, which the mesh can never remove, and the review showed the exact-last file would plan to remove the foundation. Rescue on an enrolled node is reconcile; apply FILE is for a machine before enrolment. A confirmed --rescue is left open.
Both from the independent review of the issue-104 fix.
**107** — a signed declaration carries nothing that orders it against another; its only identity is its digest. So a host can say "not the last" but never "older", and on the link a backlog of more than sixteen pushes across a converge/adopt pair, or a slow broker splitting a batch, applies a superseded declaration — issue 104's incident by another door. The controller already holds the order under its per-node lock and throws it away at the wire. Asks for `sequence` + `supersedes` in the signed bytes.
**Design amendment** (node lifecycle, Rescue): `apply FILE` on a node the mesh has spoken to is refused — a hand-applied file is recorded as carried, which the mesh can never remove, and the review showed the exact-last file would plan to remove the foundation. Rescue on an enrolled node is `reconcile`; `apply FILE` is for a machine before enrolment. A confirmed `--rescue` is left open.
Both from the review of the issue-104 fix: a hand-applied file on an enrolled node is
recorded as carried and would remove the foundation, and nothing on the wire orders one
declaration against another.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Both from the independent review of the issue-104 fix.
107 — a signed declaration carries nothing that orders it against another; its only identity is its digest. So a host can say "not the last" but never "older", and on the link a backlog of more than sixteen pushes across a converge/adopt pair, or a slow broker splitting a batch, applies a superseded declaration — issue 104's incident by another door. The controller already holds the order under its per-node lock and throws it away at the wire. Asks for
sequence+supersedesin the signed bytes.Design amendment (node lifecycle, Rescue):
apply FILEon a node the mesh has spoken to is refused — a hand-applied file is recorded as carried, which the mesh can never remove, and the review showed the exact-last file would plan to remove the foundation. Rescue on an enrolled node isreconcile;apply FILEis for a machine before enrolment. A confirmed--rescueis left open.