-
Authorize management of a specific treasury by a (dynamic) scope owner.
With the exception of the contingency scope:
- the
reorganizeoperation can be performed by the scope owner alone; - the
sweepanddisburseoperations require the scope owner and at least another scope owner;
The contingency scope, on the other hand, is managed as follows:
- any scope owner can perform the
reorganizeoperation on the contingency treasury; - ALL scope owners must approve of a
sweepordisburseof the contingency treasury.
- the
-
The validator also permits the scope owner to perform normal spend or publish operations. In practice, this isn't needed because the script shall only live as stake credential, but in case where it would be misused as an address, then it is as if it belonged to the scope owner.
-
The credentials for each scope owner are defined dynamically and attached to a UTxO that carries a well-known NFT. Credentials aren't baked into the validator, so, a reference input holding the scopes definitions is required to authenticate operations.
-
scopes_nft: PolicyId: The policy-id / script hash of the scopes script managing the scopes definitions. This is the script controlled by PRAGMA, which defines who are effectively the scope owners for each scope. -
scope: Scope: The actual scope (core development, ops and use cases, network compliance and middleware integrations) for that validator.