HeartbeatRegistry

heartbeatregistry · discovery-registry · 274 B runtime · registry-info

scores

source

pragma solidity ^0.8.13;

contract HeartbeatRegistry {
    mapping(address => uint256) private deadline;
    uint256 private immutable timeout;

    constructor(uint256 _timeout) {
        timeout = _timeout;
    }

    function ping() external {
        unchecked { deadline[msg.sender] = block.number + timeout; }
    }

    function isAlive(address agent) external view returns (bool) {
        return deadline[agent] >= block.number;
    }
}

published

published on mainnet · 0x0e25E6F8528DC7B8471Ac3940190Df4E46164394 · tx 0x9cb7310e82086b04… · base (8453) · mainnet · source as deployed

published on testnet · 0xeFC92881f3307D7cD8787B3A71Cd874A8e7dcF31 · tx 0x779c7da0f1336216… · base (84532) · testnet · source as deployed