ExploitClass is a standalone, frontend-free GenLayer Intelligent Contract for classifying a disputed game technique against one frozen game context, versioned rulebook, technique description, and evidence bundle. Validators independently rerun the audit; the contract stores only normalized violation and uncertainty masks and derives the classification deterministically.
Classifications are ALLOWED_TECHNIQUE, PROHIBITED_EXPLOIT, BUG_UNCLEAR, or INSUFFICIENT_EVIDENCE. The contract does not determine player guilt, impose sanctions, authenticate evidence, or fetch live game data.
Writes: register_case(...), audit_case(case_id). The safe consumer view is matches_classification(case_id, independently_precommitted_fingerprint, expected_classification). The remaining views provide immutable records, enumeration, status, and policy metadata.
Pin the network, finalized address, policy version, and independently computed fingerprint. Never fetch and echo the on-chain fingerprint. Use matches_classification, not the status-only is_audited, before downstream action. Creator-only first audit prevents third-party timing grief; correction requires a new key or policy deployment.
python -m pytest -p no:cacheprovider tests/direct
& .\node_modules\.bin\tsc.cmd -p tsconfig.jsonThe five-validator suite is under tests/integration; exact local, StudioNet, and Bradbury results are in AUDIT.md. Finalized deployment records are under deployments/. No frontend is included.
MIT licensed; see LICENSE.