Skip to main content
Copy this into your pull request template, or walk through it before shipping an ingestion change.
  • Effects, participants and balances are derived from ledger metadata, not the envelope. → Rule 1
  • The fee payer comes from the fee-bump fee account; the fee amount from TransactionResult.FeeCharged. → Rule 2
  • Balance-delta fee accounting nets Soroban post-apply refunds. → Rule 2
  • Every 64-bit integer is stored as a string or NUMERIC, and emitted as a JSON string. → Rule 3
  • Muxed IDs are kept alongside the underlying account; fee-bump-wrapped operations are handled. → Rule 4
  • Signed-payload signers are stored as full P… keys. → Rule 5
  • Trustlines and accounts created by contract invocations are indexed from meta. → Rule 6
  • Memo text is UTF-8 validated or stored as bytes. → Rule 7
  • Recursive XDR walkers carry and check a depth limit. → Rule 8
  • Diagnostic events are never indexed, hashed or compared across nodes. → Rule 9
  • The Istravex corpus replays through your pipeline with every fixture correct. → Replaying into your indexer
  • istravex-lint ./... is clean, or every finding is triaged with a reason. → istravex-lint