Aglet

Learn from API enum expansion

The lasting lesson is a policy for unknown values that separates display, storage, and irreversible action. Preserve the raw token and branch that exposed the expansion. Record the source version and unresolved meaning instead of promoting a guess to a new enum case.

Keep the lesson for the next incident

  1. Document enum policy

    Record known values, unknown fallback, raw-value retention, persistence, display, action guard, response version, and owner for adding support. Define which branches may remain unsupported and which require immediate review. Keep the raw token in every example.

  2. Keep future-value fixtures

    Retain documented values, future token, typo, null, absent, versioned, and action-bearing cases with synthetic resources. Store expected state and side-effect count. Include the original unknown value for later parser changes.

  3. Review new tokens

    Watch unknown enum counts, fallback branches, version changes, action blocks, and persistence of raw values. Assign an owner and threshold. Close the follow-up only when parser checks cover the client versions and operations that consume the enum.

What to carry forward

Close learning with enum policy, fixtures, branch owners, and new-value signals. Keep source meaning and version limits explicit. The durable outcome is a visible unsupported state that buys time for evidence instead of guessing a familiar one. Review unknown values before adding a familiar default.

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