From 64c3c47d9bbc8ca2e6352bdcf79a91b1d1669289 Mon Sep 17 00:00:00 2001 From: tv Date: Sun, 8 Nov 2026 21:55:00 +0000 Subject: 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. --- src/document/bench.rs | 1 + 1 file changed, 1 insertion(+) (limited to 'src/document') diff --git a/src/document/bench.rs b/src/document/bench.rs index 887ced0..39a8dc7 100644 --- a/src/document/bench.rs +++ b/src/document/bench.rs @@ -664,6 +664,7 @@ fn screening_costs(workload: &str, doc: &Document) { let screened = crate::access::screen::apply( &mut empty, Epoch::GENESIS, + false, changes, &mut crate::access::screen::Waiting::default(), &mut crate::access::screen::Refusals::default(), -- cgit v1.3.1