From d16da7283ceca16f223f3fb6b0429c7b2ae1aec0 Mon Sep 17 00:00:00 2001 From: tv Date: Mon, 9 Nov 2026 15:36:04 +0000 Subject: screen: that a policy was held kept across a swap of the document Review 4, F12: `Screening::of` started screening over when the document was swapped (a drop, a switch, a rejoin), the root pin alone carried on, so whether the document had held a policy (`policed`, 1211) was forgotten there too, not only across a restart as documented: after a drop with the policy removed meanwhile, late changes written under it went in unjudged again. It is carried on now, as the root pin is; what belongs to the old document (changes waiting, refusals, drops held) still starts over. access.md says so. --- docs/access.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'docs/access.md') diff --git a/docs/access.md b/docs/access.md index 3d4aeaf..402f1ab 100644 --- a/docs/access.md +++ b/docs/access.md @@ -346,8 +346,8 @@ 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. 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). +comes late, as long as the node runs, its document swapped meanwhile or not (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`) -- cgit v1.3.1