// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;

import "../IVaultfireReputation.sol";

/// @dev Mock reputation registry for testing. Allows setting scores.
contract MockReputationRegistry is IVaultfireReputation {
    struct Reputation {
        uint256 score;
        uint256 totalActions;
        uint256 lastUpdated;
    }

    mapping(address => Reputation) private _reputations;

    function setReputation(address agent, uint256 score, uint256 totalActions) external {
        _reputations[agent] = Reputation({
            score: score,
            totalActions: totalActions,
            lastUpdated: block.timestamp
        });
    }

    function getReputation(address agent) external view override returns (
        uint256 score,
        uint256 totalActions,
        uint256 lastUpdated
    ) {
        Reputation storage r = _reputations[agent];
        return (r.score, r.totalActions, r.lastUpdated);
    }
}
