Stability Commitment

This page defines the v1.0 API and data model stability commitment. It is scoped to surfaces marked Stable or Beta in docs/api-inventory.md and bound by docs/examples/v1-schema-freeze.json.

Stability Commitment

After v1.0, Zaxy will preserve documented public behavior for stable and beta surfaces within the 1.x line. Breaking changes require a documented migration path, test coverage, and release notes. Additive fields, new optional commands, new event types, and new experimental adapters may ship in minor releases when they do not invalidate existing Eventloom replay or public clients.

Public API Surfaces

The commitment covers these public surfaces:

Data Model Commitment

Eventloom is the durable source of truth. Zaxy will not require users to rewrite historical Eventloom records for a 1.x upgrade. Durable records remain append-only, hash-linked, replayable, and audit-oriented.

The graph projection remains rebuildable. Projection nodes, edges, indexes, and backend-specific storage can change internally, but the public data semantics remain stable: entities carry temporal validity, source citations, Eventloom provenance, session isolation, and deterministic replay from Eventloom where the source log is available.

MCP, CLI, and Python clients should treat Eventloom citations as the strongest provenance contract. Graph IDs, backend row IDs, and private helper names are not durable identifiers.

Compatibility Policy

Stable and beta changes should follow this order:

  1. Prefer additive fields or optional behavior.
  2. Preserve old names as aliases when a rename is unavoidable.
  3. Add compatibility tests that exercise old and new behavior.
  4. Update docs/migration.md, CHANGELOG.md, and the affected contract snapshot.
  5. Use release notes to explain user action, if any.

Migration Events

Non-additive stable or beta changes require Eventloom migration events:

These migration events are audit records. They do not mutate older Eventloom history.

Non-Commitments

The v1.0 stability commitment does not cover:

Related references: api-inventory.md, migration.md, agent-events.md, release-validation-checklist.md, and README.md.