Skip to content

Backfill contract fixtures and release conformance #171

Description

@andrei-hasna

open-mailery already depends on @hasna/contracts, but it has no .valid.json/.invalid.json fixture pair and no package script that runs contracts conformance.

Scope (this repository only):

  • Keep contract parsing at the existing producer/consumer boundary (parseContract for shared contract payloads).
  • Add package-owned fixtures under fixtures/ or examples/: at least one .valid.json and one .invalid.json for each adopted schema. Start from the copyable template in hasna/contracts, then replace the generic payload with this package’s real boundary payload.
  • Add "contracts:conformance": "contracts conformance fixtures" (adjust the directory only if using examples/).
  • Run that script and contracts no-cloud-scan . from prepublishOnly, preserving every existing typecheck, test, build, pack, and release command.

Acceptance:

  • bun run contracts:conformance validates a non-empty fixture set and exits 0.
  • The package prepublish gate runs conformance and no-cloud scan as well as all prior gates.
  • No shared schema or runtime behavior is changed in this backfill.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions