Back

Authority and upgrade design

P12-L03 · P12 · P12-M01

Explain control retention transfer and revocation trade-offs

ILLUSTRATIVE · needs_review

Prerequisites: P12-L02

Learning objectives

  • Explain control retention transfer and revocation trade-offs
  • Map each retained control and explain what a proposed revocation does and does not remove.

Why this matters

“Renounced” is an incomplete control description if a proxy admin, separate mint role or pause authority remains. A permission map needs the affected function and every relevant path.

Explanation

Create a capability inventory: mint, burn, pause, blacklist or transfer restrictions, metadata update, fee change and implementation upgrade. Some capabilities may not exist; absence requires implementation evidence rather than a missing interface button. Name the role or authority that can invoke each path, its delegation/recovery route and the conditions for changing it.

A revocation is scoped to a particular capability. Removing token ownership does not inherently remove a proxy upgrade admin or another privileged role. Standard proxy slots help locate certain implementation/admin fields, but custom designs require their own evidence. Multisignature and delay arrangements can change execution conditions; they do not establish independent signers or eliminate all compromise risk.

For each proposed retained control, disclose the practical consequence and why it exists. For each transfer or revocation, list the residual paths and verification needed. Do not turn an irreversible-looking declaration into a safety score. This lesson changes no roles and executes no transaction.

Key terms

Capability: privileged action reachable through a specific path.

Role revocation: removal of one authorization relation.

Upgrade path: mechanism that can change implementation behavior.

Residual control: capability remaining after a stated change.

Historical example

ILLUSTRATIVE Cedar map: mint role M; pause role P; proxy admin U; metadata editor D. A proposed change revokes M but retains P, U, D. U is described as 2-of-3 with a 24-hour delay; signer independence and deployed enforcement are not evidenced.

Visual specifications

Contract-permissions map with M, P, U, D nodes before/after proposed M revocation. Keep U/P/D solid retained paths; annotate2-of-3/24h as unverified design assumptions.

Caption: Fictional role-specific revocation; retained upgrade and pause paths stay visible.

SPECIFICATION_ONLY — the rendered visual has not been produced or independently reviewed.

What the evidence proves

The fictional map makes clear that the proposed mint-role revocation leaves three stated capabilities. The 2-of-3 and delay are design claims only.

What the evidence does not prove

There is no deployed role state, verified multisig, actual revocation, permanent supply guarantee or independent signer proof. U could change behavior if the proposed implementation permits it.

Common mistakes

Calling revocation of M “all control removed”; assuming a multisig label proves independent people; treating a delay as an audit; ignoring metadata or fee paths.

Practical exercise

Produce before/after capability rows and rewrite “Cedar is fully renounced and cannot change.” State two checks needed before any live revocation claim.

Show worked correction

Before: M mint, P pause, U upgrade, D metadata. After the proposed change: M removed by assumption; P/U/D retained. Revised disclosure: “The illustrative design proposes mint-role revocation while retaining pause, upgrade and metadata controls; no live authorization state or transaction is verified.” Check the exact implementation/role storage and revocation receipt at a fixed block, then inspect residual upgrade/delegation paths. The 2-of-3/24h statement needs actual contract and signer-policy evidence.

Checklist

  • Inventory every material privileged path.
  • Describe role-specific revocation and residual control.
  • Qualify signer and delay assumptions.
  • Keep design claims separate from deployed state.

Summary

Control disclosure is capability-specific; one removed role does not establish an immutable or authority-free asset.

Summary

  • Revocation has a scope.
  • Upgrade and delegation paths can preserve control.
  • A multisig label does not prove signer independence.

Next lesson

P12-L04

Tools

Use the named ZECOIN tool only as an evidence-reading context. This lesson creates no tool output, account session or entitlement. Offline exercise; do not sign, deploy, approve or fund anything.

Sources & claim boundaries

  • PROXY: ERC-1967 proxy storage slots — Standardized implementation/admin slots; renouncing one role does not establish all upgrade paths disabled. Boundary: Mechanism documentation only; original illustrative values are stipulated, not observations. Historical records have separately frozen provenance and explicit collection gaps.
  • ERC20: ERC-20 standard — Token interface and allowance semantics; the standard does not establish issuer identity or safe permissions. Boundary: Mechanism documentation only; original illustrative values are stipulated, not observations. Historical records have separately frozen provenance and explicit collection gaps.

Evidence classifications

ILLUSTRATIVE — entirely fictional offline inputs; no current observation.

Observation date

null — no real observation

Content version

1

Review date

null

Review status

needs_review

Visual specifications

P12-L03-V01

SPECIFICATION_ONLY · ILLUSTRATIVE

Explain control retention transfer and revocation trade-offs

Fictional role-specific revocation; retained upgrade and pause paths stay visible.

Contract-permissions map with M, P, U, D nodes before/after proposed M revocation. Keep U/P/D solid retained paths; annotate2-of-3/24h as unverified design assumptions.

Contract-permissions map with M, P, U, D nodes before/after proposed M revocation. Keep U/P/D solid retained paths; annotate2-of-3/24h as unverified design assumptions.

Stack observations, assumptions, gaps and conclusion at 390 px; retain full IDs and a complete text equivalent. Any wide table scrolls locally.

Prose may follow RTL; IDs, quantities and time axes remain LTR. Preserve dependency direction.

P12-L03-ILLUSTRATIVE-v1

Sources & claim boundaries

PROXY · PRIMARY_DOCUMENTATION

ERC-1967 proxy storage slots

Supported claim
Standardized implementation/admin slots; renouncing one role does not establish all upgrade paths disabled.
Verification boundary
Mechanism documentation only; original illustrative values are stipulated, not observations. Historical records have separately frozen provenance and explicit collection gaps.
Checked at
2026-10-02
Open primary source
https://eips.ethereum.org/EIPS/eip-1967

ERC20 · PRIMARY_DOCUMENTATION

ERC-20 standard

Supported claim
Token interface and allowance semantics; the standard does not establish issuer identity or safe permissions.
Verification boundary
Mechanism documentation only; original illustrative values are stipulated, not observations. Historical records have separately frozen provenance and explicit collection gaps.
Checked at
2026-10-02
Open primary source
https://eips.ethereum.org/EIPS/eip-20

Dataset provenance

id: P12-L03-ILLUSTRATIVE-v1

dataStatus: ILLUSTRATIVE

observedAt: null

source: Original offline scenario in realOrHistoricalExample

scope: Fictional stipulated labels and values. No wallet, deployment, transaction, token launch or production observation.

Test your reasoning

P12-L03-Q1 · M is revoked but U remains. Which statement fits?
P12-L03-Q2 · What does 2-of-3 prove in this paper map?
P12-L03-Q3 · Why inspect implementation/admin paths?
P12-L03-Q4 · What should a retained pause role disclose?
P12-L03-Q5 · Which pair supports a live revocation statement?