aboutsummaryrefslogtreecommitdiffstats
path: root/docs/access.md
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2026-11-08 21:55:00 +0000
committertv <tv@krebsco.de>2026-11-08 22:59:03 +0100
commit64c3c47d9bbc8ca2e6352bdcf79a91b1d1669289 (patch)
tree7339bc385934a3c60a226f58fc1482329ea9c2f0 /docs/access.md
parentf48302e101b8f6814a32e834259588cd11731957 (diff)
screen: judged after the policy is gone, too
Review 3, R4: whether a batch was judged followed the receiving document's policy now (and whether the batch writes one). After the policy was removed, or replaced by a version the node doesn't know, changes written under it and received late went in unjudged, while nodes that had them earlier judged them; REFUSALS gave up likewise. Screening now remembers that the document held a policy, known or not (Screening::policed), and judges what it receives while it does, each change by the policy at its dependencies; REFUSALS judges then too (not under a policy the node doesn't know, as before). Not across a restart, which access.md says.
Diffstat (limited to 'docs/access.md')
-rw-r--r--docs/access.md5
1 files changed, 4 insertions, 1 deletions
diff --git a/docs/access.md b/docs/access.md
index fdcf23c..2ef94d3 100644
--- a/docs/access.md
+++ b/docs/access.md
@@ -320,7 +320,10 @@ change by the policy it was written under: a joining node judges its first sync,
policy's own change and everything after it, as every other node does, and waits for
the signatures of what was written under a policy requiring them. While neither
its document nor what it receives holds a policy, it judges only that a root is the
-epoch's, and nothing costs more than applying the changes.
+epoch's, and nothing costs more than applying the changes. A policy removed, or
+replaced by one the node doesn't know, still judges what was written under it and
+comes late, as long as the node runs (after a restart, a document without a policy
+is judged as one that never had one).
An epoch's root is pinned. A remake's is its epoch's ID, the hash of its snapshot. The
first epoch's is its genesis change, which its genesis node logs (`The swarm's root`)