Thanks to @baedrik, we’ve found a bug on pulsar-3. The bug caused contracts created and upgraded both between blocks 954,525 and 1,141,770 to brick (can no longer execute or query).
This bug was never present on mainnet, and it also doesn’t affect the upcoming v1.12 upgrade.
To check if your contract was created and upgraded during this time:
secretcli q wasm contract "$ADDRESS"
Output of execute:
failed to execute message; message index: 0: Execution error: Enclave: failed to authenticate secret contract: execute contract failed
Output of query:
Error: got an error finding base64 of the error: regexMatch '[]' should have a length of 2. error: rpc error: code = Unauthenticated desc = Execution error: Enclave: failed to authenticate secret contract: query contract failed
Bug timeline:
- 2023-09-05 (849200): pulsar-3 was upgraded from v1.10 to v1.11.
- 2023-09-12 (954525): pulsar-3 was upgraded to add hardcoded admins for the Shade team to test out the hardcoded admins feature. This upgrade contained two bugs:
- It made it so the hardcoded admins were never set correctly (Link to the bug report: An update on bugs with the v1.11 upgrade).
- It accidentally ran the previous upgrade’s migration code again, which corrupted the
contract_key
state.
- 2023-09-23 (1119200): pulsar-3 was upgraded to fix the hardcoded admins bug
- 2023-09-25 (1141770): pulsar-3 was upgraded to fix the
contract_key
state bug. This upgrade contained a bug that prevented thecontract_key
of contracts created and upgraded both between blocks 954,525 and 1,141,770 from being migrated properly.
Note: contract_key
is a plaintext value which is used internally for authentication & encryption purposes.