Skip to content

[Backend] Add automated blueprint regression tests using real testnet event fixtures #249

Description

@grantfox-oss

Problem

With npm run lint:registry already validating structure, there's an open question of whether blueprints actually produce correct translations against real-world event payloads over time — especially since contracts can be upgraded (changing event shapes) without any corresponding blueprint update, silently producing wrong-but-plausible-looking sentences.
Proposed work

Build a fixtures directory of real captured testnet/mainnet raw events (paired with their expected translated output) per blueprint.
Add a test runner that feeds each fixture through the live blueprint and asserts exact output match, run in CI alongside lint:registry.
When a contract's WASM hash changes (tying into verification ideas from contract upgrades), flag any blueprint whose fixtures no longer match as needs-review rather than letting it fail silently in production.

Acceptance criteria

At least 5 existing blueprints have committed fixture-based regression tests.
CI fails clearly when a blueprint's output drifts from its expected fixture, distinct from a generic test failure.
Process for contributors to add fixtures for their own new blueprints is documented in CONTRIBUTING.md.

Metadata

Metadata

Assignees

Labels

Type

No type

Fields

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