Skip to content

feat: add event schema compatibility testing foundation - #1081

Open
coderolisa wants to merge 1 commit into
Core-Foundry:mainfrom
coderolisa:test/event-schema-compatibility-validation
Open

coderolisa wants to merge 1 commit into
Core-Foundry:mainfrom
coderolisa:test/event-schema-compatibility-validation

Conversation

@coderolisa

Copy link
Copy Markdown
Contributor
  • Add historical event fixtures for schema version 1
  • Create compatibility tests to validate event structures
  • Implement tests for breaking change detection
  • Add documentation for compatibility testing approach

This establishes the foundation (2%) for ensuring changes to event structures don't unintentionally break listener decoders or external consumers.

Fixtures cover 5 critical events:

  • NotificationScheduled
  • NotificationRevoked
  • NotificationExpired
  • AutoshareCreated
  • BatchNotificationsCreated

Tests verify:

  • Schema compatibility between contract and consumer
  • Historical fixture structure validity
  • Breaking change detection mechanisms

Overview

Related Issue

Closes #1031

Changes

Verification

# e.g.
cd dashboard && npm test
cd listener && npm run typecheck && npm test
cd contract/contracts/hello-world && cargo test

How to Test

Checklist

  • Branch is up to date with main
  • Tests added/updated and all pass locally
  • cargo fmt --all run (if Rust changes)
  • npm run lint passes (if TypeScript changes)
  • Documentation updated if behavior changed

- Add historical event fixtures for schema version 1
- Create compatibility tests to validate event structures
- Implement tests for breaking change detection
- Add documentation for compatibility testing approach

This establishes the foundation (2%) for ensuring changes to event
structures don't unintentionally break listener decoders or external
consumers.

Fixtures cover 5 critical events:
- NotificationScheduled
- NotificationRevoked
- NotificationExpired
- AutoshareCreated
- BatchNotificationsCreated

Tests verify:
- Schema compatibility between contract and consumer
- Historical fixture structure validity
- Breaking change detection mechanisms
@drips-wave

drips-wave Bot commented Oct 17, 2026

Copy link
Copy Markdown

@coderolisa Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Backward-Compatibility Tests for Contract Event Schemas

1 participant