Skip to content

[Feature] API Lifecycle Governance (Deprecation, Consumer Tracking, Impact Analysis) #7000

@carlesarnal

Description

@carlesarnal

Parent Epic

Part of #6992 - Enhanced API Registry

Description

Implement API lifecycle governance features that go beyond schema storage to provide full lifecycle management, including deprecation workflows, consumer tracking, and breaking change impact analysis.

Background

Apicurio's differentiation as an "API Registry" (vs schema-only registries) requires features that support the full API lifecycle:

  • Knowing who uses which APIs/schemas
  • Controlled deprecation with consumer notification
  • Understanding impact before making changes

Requirements

API Deprecation Workflows

  1. Deprecation State Machine

    • States: Active → Deprecated → Sunset → Removed
    • Configurable sunset periods
    • Grace periods before removal
  2. Consumer Notifications

    • Webhook notifications on deprecation
    • Email notifications (optional)
    • Subscription management for consumers

Consumer Tracking

  1. Consumer Registration

    • APIs for consumers to register their usage
    • Automatic tracking via serdes client reporting
    • Consumer metadata (team, service, contact)
  2. Usage Analytics

    • Which consumers use which schemas
    • Usage frequency and patterns
    • Last access tracking

Impact Analysis

  1. Breaking Change Detection

    • Pre-registration analysis of breaking changes
    • List of affected consumers
    • Severity assessment
  2. Change Reporting

    • Diff visualization between versions
    • Breaking vs non-breaking change classification
    • Export for review workflows

Acceptance Criteria

  • Deprecation workflow can be configured
  • Consumers receive notifications on deprecation
  • Consumer usage is tracked
  • Breaking changes show affected consumers
  • UI displays lifecycle state and consumer list

Priority

P2 - Important for enterprise adoption but secondary to core differentiation features

References

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions