aere-contracts/contracts/mocks/AereModularMocks.sol
Aere Network a13a649b77
Some checks are pending
contracts-ci / Install (lockfile) → compile → full test suite (push) Waiting to run
contracts-ci / PQC known-answer tests (NIST vectors) (push) Waiting to run
contracts-ci / Coverage (scoped, with artifacts) (push) Waiting to run
Initial public release
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.
2026-07-20 01:02:37 +03:00

25 lines
734 B
Solidity

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
/// @title AerePingCounter - harmless call target for modular-account tests and
/// live session-key proofs on chain 2800.
contract AerePingCounter {
uint256 public pings;
uint256 public forbiddenCalls;
event Ping(address indexed from, uint256 count, uint256 value);
/// @notice The in-scope call: increments a counter, optionally accepts value.
function ping() external payable {
pings += 1;
emit Ping(msg.sender, pings, msg.value);
}
/// @notice Deliberately OUT of session scope in tests (wrong-selector case).
function forbidden() external {
forbiddenCalls += 1;
}
receive() external payable {}
}