Skip to main content

Audit

Current Status

AuditStatus
Slither (static analysis)0 Critical / 0 High / 0 Medium
Mythril (symbolic execution)0 issues
Aderyn (static analysis)0 actionable findings
CertiK (independent audit)Pending

Test Coverage

MetricCoverage
Statements100%
Functions100%
Lines100%
Branches100%

182 tests across unit, integration, and security suites.

Scope

The audit scope covers three smart contracts (~1,750 lines of Solidity):

ContractLinesType
BCOToken~300Immutable TRC20
DeedRegistry~690UUPS Proxy
BCOStaking~730UUPS Proxy

Verified Invariants

The test suite verifies the following invariants:

  1. totalSupply == totalActiveArea × 10¹⁸ after every register/deactivate
  2. totalStaked ≤ contract balance (staking solvency)
  3. Rewards stop after period ends
  4. No unauthorized mint/burn/pause
  5. Holders cannot burn their own tokens
  6. State preserved after UUPS upgrade
  7. MINTER_ROLE stays on proxy address across upgrades
  8. Progressive timelock blocks unauthorized upgrades
  9. Admin renounce blocked on all contracts
  10. recoverNative() works for force-deposited TRX/ETH
  11. Timelock accepted as valid caller without DEFAULT_ADMIN_ROLE

Reporting Vulnerabilities

To report a security vulnerability, contact security@recologic.io.

Please do not disclose vulnerabilities publicly until they have been addressed by the team.