Skip to content

Publish API stability and deprecation policy (#69) - #95

Merged
codeforester merged 1 commit into
mainfrom
documentation/69-20260805-api-stability-deprecation-policy
Aug 5, 2026
Merged

codeforester merged 1 commit into
mainfrom
documentation/69-20260805-api-stability-deprecation-policy

Conversation

@codeforester

Copy link
Copy Markdown
Contributor

Summary

  • publish the public API stability, SemVer, support-window, and experimental-namespace policy
  • add a typed base_cli.deprecated() decorator and BaseCliDeprecationWarning
  • add migration guidance and contract tests for facade exports, protocol framing, and JSON v1 schemas

Why

Adopters need explicit compatibility promises and a predictable deprecation path before depending on
base-cli in professional tooling. The policy makes the pre-1.0 boundary clear while documenting the
stricter 1.0 contract, and the tests turn the public surface and versioned schemas into release gates.

Closes #69

Validation

  • ./tests/validate.sh
  • uv run --extra dev --extra typer pytest -q
  • ruff format --check scripts examples
  • ruff check lib/python/base_cli scripts examples tests
  • mypy --strict examples/typed_consumer.py
  • python scripts/validate_docs.py
  • python scripts/benchmark_runtime.py --check
  • pytest --cov=base_cli --cov-fail-under=80 (84.1%)
  • bandit -q -r lib/python/base_cli scripts -lll -iii
  • pip-audit --strict

@codeforester
codeforester marked this pull request as ready for review August 5, 2026 15:10
@codeforester
codeforester merged commit 9ca76a0 into main Aug 5, 2026
47 checks passed
@codeforester
codeforester deleted the documentation/69-20260805-api-stability-deprecation-policy branch August 5, 2026 15:10
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.

Publish an API stability and deprecation policy

1 participant