Lurian
06/25/2024, 3:48 PMConsumer user that can pick up is order once its ready and read the status of the order. However we don't want him to be able to pick up the order when its not ready, because then he'd be able to open hubs when they shouldn't, so that's where the caveat would come in.
Now we just create a Retriever relation when the order is actually put into the Hub, since we would need to create a Retriever relation regardless to use the caveat we just don't now.
It would be more "Natural" to always just keep the Consumer relationship present and have the pickup permission only trigger when the Caveat context is passed in the check_permission operation.