Skip to content

checker: deleting a property's sunset date, or moving it earlier, is not reported #1315

Open

Description

@reuvenharrison

For operations and parameters, changing the sunset date of something already deprecated is checked:

  • sunset-deleted / request-parameter-sunset-deleted: the x-sunset date is removed.
  • api-sunset-date-changed-too-small / request-parameter-sunset-date-changed-too-small: the date moves earlier than the deprecation policy allows.

Properties have neither. A request or response property that stays deprecated but loses its x-sunset, or whose date moves from 2027-01-01 to next week, is not reported. Now that removing a deprecated property follows its sunset date, the date matters to the verdict, so moving it earlier silently shortens the notice clients were given.

The rule symmetry waivers already record this gap (add<->remove request/schema/lifecycle missing-remove and the response one). Fixing it removes both waivers.

Expected

Stage Request Response
sunset date deleted request-property-sunset-deleted response-property-sunset-deleted
sunset date moved earlier than the policy allows request-property-sunset-date-changed-too-small response-property-sunset-date-changed-too-small

Levels the same as the parameter rules.

Example

# base
properties:
  created:
    type: string
    deprecated: true
    x-sunset: "2027-01-01"
# revision
properties:
  created:
    type: string
    deprecated: true

Today: nothing reported. Expected: request-property-sunset-deleted (and the response counterpart where the schema is returned).

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

    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