Skip to content

core: build full Stellar event indexer service #24

@EmeditWeb

Description

@EmeditWeb

Problem

The API has no way to track on-chain events from
StepFi contracts. When a loan is approved on-chain,
the API does not know.

What To Build

  1. Create src/indexer/ module
  2. Use BullMQ for event processing queue
  3. Horizon event polling every 6 seconds
  4. Create indexer_state table in Supabase
  5. Add health check GET /indexer/status

Files To Touch

  • src/indexer/ (new module)
  • src/app.module.ts
  • supabase/migrations/[ts]_indexer_state.sql

Acceptance Criteria

  • Indexer starts automatically on API boot
  • All 5 contract event types handled
  • Events processed idempotently
  • Last processed ledger persisted
  • npm run build passes

Mandatory Checks Before PR

  • npm run build passes
  • No any types
  • All event handlers tested
  • PR references this issue

Metadata

Metadata

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions