Bot Signaling

Authorized apps can signal addresses they ban on their platform (e.g., looters, bots, scammers), helping the DAO and other apps to recognize and protect against them.

VeBetterDAO or other selected apps can reset the signal counter if a user is wrongly identified as a bot.

Endpoints

Other apps or contracts can interact with the Bot Signaling module through the following functions of the VePassport contract:

  interface IVeBetterPassport {
    ...
    function signalUser(address _user) external;
    function signalUserWithReason(address _user, string memory reason) external;
    function signaledCounter(address _user) external view returns (uint256);
    function signalingThreshold() external view returns (uint256);
    function appTotalSignalsCounter(bytes32 app) external view returns (uint256);
    ...
  }

Threshold

Any app can call the signaledCounter function to get how many times a user was signaled and can decide on their own how to interpret that value.

When calling the isPerson function though, the signaled counter will be compared to a threshold set in our contract, currently set to 2. For example, if the address was signaled more than 2 times, it will not pass the personhood check.

Last updated