Files
graph/indexer
zeekay 3c955dcb34 indexer: full ERC-3643 + ONCHAINID event ingestion
Adds the missing topic0 signatures + handlers so the resolvers under
resolvers/securities/ + resolvers/identity/ are actually fed live data:

  events.go (new constants):
    - IToken: AddressFrozen, TokensFrozen, TokensUnfrozen, Paused, Unpaused,
              RecoverySuccess, UpdatedTokenInformation,
              IdentityRegistryAdded, ComplianceAdded
    - IdentityRegistry / IdentityRegistryStorage:
              IdentityRegistered/Removed/Updated, CountryUpdated, IdentityStored
    - ONCHAINID (ERC-734/735):
              ClaimAdded/Removed/Changed, KeyAdded/Removed,
              Approved (exec), Executed (exec)
    - TrustedIssuersRegistry / ClaimTopicsRegistry:
              TrustedIssuerAdded/Removed, ClaimTopicsUpdated,
              ClaimTopicAdded/Removed
    - ModularCompliance + IModule:
              ModuleAdded/Removed, TokenBound/Unbound, ModuleInteraction
    - SecuritiesTopics() returns the full set, appended into knownTopics().

  indexer_securities.go (new):
    - Per-event handlers writing structured entities through Store.SetEntity.
    - Entity types match the resolver expectations:
        SecurityTransfer, TransferAgentAction, FrozenAccount, FrozenTokens,
        IdentityRegistryAction, OnchainIdClaim, OnchainIdKey, ComplianceAction,
        TrustedIssuerAction, ClaimTopicAction, SecuritiesEvent.
    - Decoders for indexed bool / uint256 / address topics.

  indexer.go (processLog dispatch):
    - Adds case branches for each new topic0 to the appropriate handler.

Result: any deployed @luxfi/contracts SecurityToken (T-REX), IdentityRegistry,
ONCHAINID, TrustedIssuersRegistry, ClaimTopicsRegistry, or ModularCompliance
contract is now indexed by `graph` out of the box, queryable via the existing
GraphQL resolvers — no per-deployment manifest needed.

Build: go build ./indexer/... → exit 0
2026-04-28 18:32:01 -07:00
..