Skip to content

feat(notations): deprecation policy names its removal release - #429

Merged
transitrix merged 2 commits into
mainfrom
methodology/1011-deprecation-window
Aug 5, 2026
Merged

feat(notations): deprecation policy names its removal release#429
transitrix merged 2 commits into
mainfrom
methodology/1011-deprecation-window

Conversation

@transitrix

Copy link
Copy Markdown
Owner

Summary

  • CONTRACT.md §10.6 states the deprecation policy: a status: deprecated spec must carry removed_in:, the window is at least one MAJOR, removal is always a BREAKING changelog entry, and the migration recipe outlives the file it replaces.
  • New DEP1 doc-lint rule (scripts/check-notations.mjs) enforces the removed_in: requirement, with unit tests.
  • FGA (deprecated in 2.0.0, one-major window satisfied) is scheduled for removal in 4.0.0; its migration recipe moves into migrations/3.1-to-4.0/ ahead of the actual cut, per the policy's "recipe may land early" allowance. The spec itself is not deleted — removal happens at the major, not now.

Test plan

  • node scripts/check-notations.mjs — clean
  • node --test scripts/check-notations.test.mjs — 8/8 passing
  • Ran migrations/3.1-to-4.0/codemod.mjs against fixtures/before/, diffed output against fixtures/after/ — clean; verified idempotent (--dry-run second pass is a no-op)
  • Ran migrations/3.1-to-4.0/validate.mjs against fixtures/before/ (fails, as expected) and fixtures/after/ (passes)

CONTRACT.md §10.6 requires a status: deprecated spec to carry
removed_in:, checked by the new DEP1 doc-lint rule. FGA (deprecated in
2.0.0, one-major window satisfied) is scheduled for removal in 4.0.0,
with the migration recipe moved into migrations/3.1-to-4.0/ ahead of
the actual cut.

Signed-off-by: Valerii Korobeinikov <vkgeorgia@icloud.com>
Signed-off-by: transitrix <279946036+transitrix@users.noreply.github.com>
…ecation-window

Signed-off-by: transitrix <279946036+transitrix@users.noreply.github.com>

# Conflicts:
#	scripts/check-notations.test.mjs
@transitrix
transitrix merged commit 5bdc1f9 into main Aug 5, 2026
10 checks passed
@transitrix
transitrix deleted the methodology/1011-deprecation-window branch August 5, 2026 05:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants