Skip to content

feat(contract): version events for transfer, escrow, and admin lifecycle #194

Description

@arisu6804

Problem

Indexers cannot reliably reconstruct transfer state when event fields and units change without versioning.

Objective

Deliver a production-quality improvement to contract events and downstream indexers that creates measurable value for correctness, security, reliability, performance, or maintainability.

Implementation scope

  • Define explicit versioned schemas including transfer ID, actor, currency, amount, escrow status, timestamps, and outcomes.

Acceptance criteria

  • Every lifecycle event is parseable, versioned, and unit-explicit; fixture parsers detect breaking changes.

Required validation

  • Event fixtures, compatibility, parser, and end-to-end emission tests.
  • Existing tests and CI remain passing.
  • Add regression coverage for the original failure mode.
  • Do not weaken, delete, or skip unrelated tests to obtain a green build.

PR quality bar

  • Keep the PR focused and explain design tradeoffs, compatibility impact, and test evidence.
  • Avoid typo-only, documentation-only, cosmetic-only, or unrelated refactor submissions.

Out of scope

  • Broad rewrites not required by the acceptance criteria.
  • Changes to unrelated services, contracts, or user flows.

Metadata

Metadata

Assignees

No one assigned

    Labels

    GrantFox OSSOpen-source issue tracked by GrantFoxMaybe RewardedThis issue may carry a rewardThird CampaignThird Campaign contributionenhancementNew feature or requestpriority:mediumMedium implementation priority

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions