A reviewer approves announcement version 7. Publication receives version 8 instead. Both are announcements, but only version 7 was reviewed.
The same problem occurs when two stores both contain record 7.
| What matches? | What still needs checking? |
|---|---|
| Record type | Actual record and scope |
| Provider type | Configured provider instance |
| Proposal ID | Exact reviewed version |
| Department role | Actual person and current authority |
Carry the work and resources the next step relies on. If a later boundary reloads them, check the binding there.
The reference carries real data inside its protected state:
pub struct Verified<'a, P, E> {
workshop: &'a mut Workshop<Google<P>, WithoutPassword, E>,
subject: String,
}
Engineering Depth
The fields are private. The mutable borrow retains this workshop through the registration steps. Other code cannot swap its store or provider during that borrow.
Later handles check the workshop instance at runtime:
if !Arc::ptr_eq(&self.workshop.identity, &self.session.workshop) {
return Err(EntryFailure::ForeignSession);
}
A zero-sized marker fits a data-free choice. This state needs both a subject and a resource borrow. CS-06, CS-07.
Your Reflection
Can a later step accept new input without replacing the original work?
Saved in this browser. Export a copy before changing devices.
Worked Discussion
Yes. A delivery observation can add evidence about the already-bound operation. It must identify that operation. Replacing the reviewed version is a different change.