A recent change to CoreSimulatorLib.isSystemAddress causes it to always return false, which prevents the simulator from recognizing system addresses. As a result, EVM -> HyperCore token bridges are never processed during simulation.
In the current implementation:
if (addrInt >= baseAddr && addrInt < baseAddr + 10000) {
uint64 tokenIndex = uint64(addrInt - baseAddr);
PrecompileLib.TokenInfo memory tokenInfo = PrecompileLib.tokenInfo(tokenIndex);
if (addr != tokenInfo.evmContract) return false;
}
return false;
Even when addr is a valid system address, the function falls through and returns false, so no system address is ever recognized.