Skip to content

Deletion policy

  • Prefer deletion over abstraction when:
  • invariants can be enforced without an extra layer
  • an extension seam is unused across releases
  • a feature is undocumented or not backed by specs/tests
  • Any new abstraction must list the invariant it enforces; otherwise delete or inline.
  • Deprecations: mark in docs/spec/identity.md and remove in next minor unless ecosystem-bound.
  • Freeze rule: dead code or unused flags are removed before tagging; no “maybe later” retention.