Aere Network public source. Everything here can be checked against the live chain (chain id 2800, https://rpc.aere.network). Scope note, stated up front rather than buried: consensus on chain 2800 is classical secp256k1 ECDSA QBFT. The post-quantum work in this repository is at the signature, precompile, account and transport layers. Nothing here makes the consensus post-quantum, and no document in it should be read as claiming so.
23 lines
632 B
Solidity
23 lines
632 B
Solidity
// SPDX-License-Identifier: MIT
|
|
pragma solidity 0.8.23;
|
|
|
|
/// Mock oracle for testing AereSink oracle-floor logic.
|
|
/// Returns 18-decimal USD prices; can be set to revert to test fallback path.
|
|
contract MockPriceOracle {
|
|
mapping(address => uint256) public prices;
|
|
bool public shouldRevert;
|
|
|
|
function setPrice(address asset, uint256 price) external {
|
|
prices[asset] = price;
|
|
}
|
|
|
|
function setRevert(bool b) external {
|
|
shouldRevert = b;
|
|
}
|
|
|
|
function getPrice(address asset) external view returns (uint256) {
|
|
require(!shouldRevert, "oracle paused");
|
|
return prices[asset];
|
|
}
|
|
}
|