Currently granting and revoking a private capability requires linking separate paths per use. (except some workaround cases like FUSD )
But as we don’t have Path constructor from String there is no easy way to do that. (As FUSD team already mentioned on Line: 172)
If we go over a real case, FUSD:
They are trying to encapsulate Minter Capability in a resource (MinterProxy), which can be accessed only by the resource itself.
The problem here is, while granting is not a problem, revoking still requires public resource to be exposed by a link.
Although Path from String seems the obvious solution, I feel it is also a bit limited.
Maybe what we may need is a bit higher level, access controls on links, instead of public/private. (I think public/private still can be considered as defaults, public=blacklist, private=whitelist kind of)
So if I link something to /public I can additionally block some accounts from accessing, if I link /private, I can allow some accounts to access.
I am curious about your thoughts.
 Flow View Source