Skip to content

Add API versioning skill #41

Description

@PAMulligan

Description

Create a dedicated skill for implementing API versioning in Nerva-generated APIs. While the pipeline config defines versioning defaults, there is no skill that generates the versioning infrastructure.

Why

API versioning is complex in practice — it touches routing, middleware, documentation, deprecation headers, and client communication. A dedicated skill provides the full implementation, not just configuration.

Acceptance Criteria

  • Create `.claude/skills/api-versioning/SKILL.md`
  • Implement URL prefix versioning (`/v1/`, `/v2/`):
    • Version-scoped route groups
    • Version extraction middleware
    • Default version fallback
  • Implement header-based versioning (optional):
    • `Accept-Version` header parsing
    • Content negotiation
  • Generate deprecation infrastructure:
    • `Sunset` header middleware
    • `Deprecation` header on old versions
    • Version sunset schedule configuration
  • Generate version migration utilities:
    • Request/response transformers between versions
    • Schema evolution patterns
  • Add integration tests for multi-version APIs
  • CI passes

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions