Skip to content

Establish deterministic OpenAPI snapshot validation for sample projects #25

Description

@bsayli

Is your feature request related to a problem?

Problem statement

The sample projects currently serve as end-to-end validation environments for projection and code generation behavior.

However, generated OpenAPI specifications are not treated as deterministic artifacts verified by the build pipeline.

As the platform evolves, changes to:

  • projection logic
  • vendor extension generation
  • schema naming
  • wrapper reconstruction metadata
  • generic container handling

can unintentionally alter generated specifications without immediate visibility.

This increases regression risk and makes validation dependent on manual inspection.

Proposed solution

Introduce deterministic OpenAPI snapshot validation across sample projects.

Each sample application should:

  1. Generate its OpenAPI specification during test execution.
  2. Persist the generated specification as a committed snapshot artifact.
  3. Validate expected projection metadata through automated assertions.
  4. Allow CI to detect specification drift by comparing generated output with committed snapshots.

The validation pipeline should cover:

  • Spring Boot 3 samples
  • Spring Boot 4 samples
  • ServiceResponse type coverage samples
  • BYOE samples

Generated specifications become versioned validation artifacts rather than manually maintained outputs.

Alternatives considered

  • Manual inspection of generated specifications
  • Regenerating specifications only during releases
  • Verifying only selected vendor extensions
  • Relying exclusively on integration tests

These approaches provide weaker guarantees and make regression detection more difficult.

Expected impact

  • Deterministic specification generation
  • Early detection of projection regressions
  • Stronger CI validation
  • Reduced manual verification effort
  • Better visibility into OpenAPI contract changes
  • Improved confidence when evolving projection and reconstruction logic

Additional context

This feature does not introduce new projection capabilities.

Its purpose is to establish generated OpenAPI specifications as first-class validation artifacts and make specification drift visible through the build pipeline.

Describe the solution you'd like

No response

Describe alternatives you've considered

No response

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Fields

    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions