Summary
Upgrade PCEToken (UUPS proxy) and PCECommunityToken (Beacon) on Polygon to v16:
- PIP-16 — Owner-controlled token value operations (supersedes PIP-12).
Replaces the PIP-12 treasury/role-manager model with simpler owner-only
increaseTokenValue / splitToken, moves TokenValueIncreased /
TokenSplit event emission to PCEToken, and renames the now-unused
treasuryWallet / _roles storage slots to __deprecated_* for layout
compatibility. (#40)
- PIP-13 fix — Re-emit
MetaTransactionFeeCollected alongside
MetaTransactionFeeSwapped so existing indexers tracking per-payer fee
burden continue to work after PIP-13's fee auto-swap landed in v15. (#42)
- PIP-15 revert — Remove the message-count parameter transfer/auth
functions and their EIP-712 typehashes; PIP-15 is being put on hold
pending further design review. (#43)
On-chain effect
Two calls forwarded by GovernanceSender → Wormhole → Polygon GovernanceReceiver
→ Polygon Timelock:
PCEToken (0xA4807a8C34353A5EA51aF073175950Cb6248dA7E).upgradeToAndCall(0x1C3934E0A4f4D04916bFc03F12A429279c5636e6, "")
PCECommunityToken beacon (0x6A73A610707C113F34D8B82498b6868e5f7FAA74).upgradeTo(0x4EFEb1864E418f440a8B1d57358463dc795F8CA0)
Verification
- Code: https://github.com/peacecoin-protocol/core/tree/v16
- Storage layout compatibility validated locally via
script/upgrade.sh
(OZ upgrades-core 1.32.3+) against the v15 reference build.
- DEV deploy on Polygon mainnet executed and verified prior to this proposal
(DEV proxy
0x62Ef93EAa5bB3E47E0e855C323ef156c8E3D8913,
DEV beacon 0xA9D965660dcF0fA73E709fd802e9DEF2d9b52952,
same source tree at tag v16).
- Proposal calldata can be decoded with
./script/verify-proposal.sh <PROPOSAL_ID>.
PIPs