Skip to content

Conversation

@barraguda
Copy link
Contributor

@barraguda barraguda commented Jan 23, 2025

WIP

Problem

New contract addresses on Base, mainnet deployment.
Foundry breaks their serialization format too often...

Solution

We can use eth_getCode and the anvil_setCode cheatcode to set deployed bytecode to a specific address. This means we can mirror the mainnet addresses, and not have to change them in the kinode runtime code if contracts get upgraded.

One limitation is that we cannot really inject the zeroth, .os and .dev TBAs like this without doing convoluted storage address injections (I'll still try it), but we can probably safely delegate that to the kinode core part, which will check whether .os and .dev exist, and then mint them from the 0th address themselves.

Notes

Removed deps checking with dates, left the code in place (we might need it?)

Need to doublecheck addresses (specifically KinoAccountMinter, we don't want the 9character limit on fakenet) [x]

todo: link core PR commit (develop-1.0 branch)
Edit: I (nick1udwig) think its hyperware-ai/hyperdrive#677

@nick1udwig nick1udwig changed the base branch from master to develop-1.0 January 28, 2025 18:24
@nick1udwig nick1udwig merged commit 49a5ff0 into develop-1.0 Jan 28, 2025
1 check passed
@nick1udwig nick1udwig deleted the bp/basekimap branch January 28, 2025 18:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants