On-chain architecture
The contract suite.
Six core Solidity modules and four shared libraries implement the asset lifecycle, access control, recovery, and governance. The entire suite runs verified on Base Sepolia.
- Public addresses
- 17
- Public addresses
- Shared libraries
- 6
- Shared libraries
- Lifecycle states
- 7
- Lifecycle states
- Chain ID · Base Sepolia
- 84532
- Chain ID · Base Sepolia
Core modules
Six modules, one concern each.
Identity, access, recovery, governance, treasury, and incentives — each module owns exactly one part of the protocol.
TAGITCore
ERC-721 + UUPSDigital twins and the seven-state lifecycle. NFC binding, verification, and custody transfer all route through here.
TAGITAccess
ERC-5192 + ERC-1155BIDGES identity and capability badges — KYC tiers, manufacturer and authority roles, per-capability permissions.
TAGITRecovery
UUPSAIRP recovery in three phases — quarantine, investigation, resolution — with multi-party evidence and voting before any asset returns or burns.
TAGITGovernor
OZ GovernorMulti-house DAO. Upgrades, parameter changes, and treasury allocations clear governance plus a 48-hour timelock.
TAGITTreasury
TimelockControllerMulti-sig fund management. Every allocation requires Governor approval and the timelock before execution.
TAGITPrograms
CustomScan rewards, customs clearance attestations, and manufacturer recall triggers.
Shared libraries
Four libraries, zero duplication.
Transition rules, permission checks, cryptography, and events are written once and linked everywhere they are needed.
LifecycleLib
Validates every transition in the seven-state machine.
TAGITCore · TAGITRecovery
AccessLib
Badge and capability checks behind every privileged call.
TAGITCore · TAGITAccess
CryptoLib
Hashing and ECDSA signature verification for NFC binding.
TAGITCore
EventLib
Standardized event emission consumed by the indexer.
TAGITCore · TAGITRecovery · TAGITPrograms
Beyond the six modules, the suite extends to the ERC-8004 agent registries, the ERC-4337 account stack, token and vesting contracts, and the CCIP cross-chain adapter. Live Base Sepolia addresses are published in the deployment registry.
Security
Built assuming adversarial conditions.
Every contract is written and reviewed against the same non-negotiable checklist before it reaches a branch, let alone a chain.
- OpenZeppelin standards with UUPS proxy patterns
- 48-hour timelocks on governance actions
- STRIDE threat modeling applied at every layer
- Reentrancy guards and custom errors on state-changing paths
- Fuzz and invariant testing in CI on every pull request
Audit status
Internal static analysis
RunSlither static analysis across the suite; four high-severity findings triaged as false positives. Baseline now stale.
January 2026
External audit
In progressHacken — full-suite engagement ahead of mainnet. No report published yet.
Engaged July 2026
Public bug bounty
Not yet liveOpens after the external audit concludes.
TBA
Mainnet is audit-gated, targeted H1 2027. Until then, the suite runs on Base Sepolia testnet only.
Read the source.
Contract references, the lifecycle guide, and quick-start code live in the developer documentation.