Base ERC-20 check before an agent buys or holds a token. Input: one contract address. Output: allow, warn, or block. Block: not a contract, not an ERC-20, zero supply, or the owner or token contract holds at least 50 percent. Warn: 20 to 50 percent held, proxy (EIP-1967, EIP-1167, or implementation()), or bytecode contains mint or pause. A selector does not prove the public can call it. Concentration covers only the owner and the token contract. Not an audit.