Support policy — versions, windows, and what "supported" means

Label glossary (same as the roadmap): works today — in effect now; planned — designed, takes effect at a stated milestone, not in effect yet.

This page is the single source of truth for which NovaFabric versions receive fixes, for how long, and what an upgrade promises. SECURITY.md links here; if the two ever disagree, this page wins and that is a bug (guarded by tests/docs/test_support_policy.py).

Today — pre-1.0 (works today)

NovaFabric is pre-1.0 and releases frequently. Only the latest tagged release is supported — there is no maintained LTS line before v1.0. Security fixes land on main and ship in the next release; earlier tags receive nothing. If you are on an older version, the supported action is: upgrade to latest.

Version Supported
Latest tag Yes
Anything earlier No — upgrade to latest

What upgrading promises (works today)

Runtime support matrix (works today)

Dependency Supported
Python ≥ 3.12 (matches requires-python in pyproject.toml; guarded by test)
PostgreSQL (server mode) 16 (the version CI and the nightly scale tier run)
SQLite (local mode) the version bundled with supported Pythons
OS Linux x86_64/aarch64 (CI-verified); macOS best-effort

Local mode never requires Postgres or a server.

At v1.0 — channels, LTS, support windows (planned)

The support-window policy that replaces the table above is designed and takes effect at the v1.0 capsule-format freeze (the freeze itself is gated on design-partner sign-off — see the roadmap). In summary, as intent:

Nothing in this section is in effect before v1.0, and no LTS will be designated retroactively.

Deprecations and API sunsets

Interface (as opposed to version) lifecycle is separate and already mechanized: RFC 9745/8594 deprecation headers, a published register, and a drift gate — see the API deprecation policy (ADR-0188).