Aglet

Investigate an API version compatibility break

Investigation should show which versioned boundary changed and how the client interpreted it. Reproduce one operation against two explicit versions, capture the wire contract, and trace the adapter branch. Keep remote behavior, generated client drift, and local configuration as competing explanations.

Build a useful investigation brief

  1. Build a version pair

    Create fixtures for the last working version and the changed version using the same request, resource, and environment. Include a response with the field or error at issue. Label expected compatibility before execution so a convenient output is not mistaken for the contract.

  2. Trace the adapter branch

    Follow version selection through configuration, URL or header construction, transport, decoder, mapper, and persistence. Record warnings and status values at each stage. Compare the code revision and generated schema used by both runs, including any default chosen when version input is absent.

  3. Test competing changes

    Vary only version, parser, configuration, or response shape in separate runs. Check whether the failure survives an explicit version and a hand-built fixture. If evidence cannot tell a remote removal from an adapter omission, document the exact source or contract observation needed.

What to carry forward

The investigation is ready when paired versions, wire differences, adapter branch, and consumer effect are reproducible. Recommend one compatibility or migration step with a rollback check. Leave support and retirement claims bounded by the version documentation actually observed.

Technical background: Project documentation on GitHub.

Keep the decision with the work.

Use a Work Item in Aglet to record the problem, the evidence you have, and the next decision. Add an owner and priority, then keep updates in the discussion so the next person can follow the reasoning.

Create an account See the product workflow