Versioning
The versioning model defines how lnkpt evolves over time and how connectors interact with different versions of the substrate. It establishes compatibility expectations, connector versioning rules, and the principles that guide future extensions of the lnkpt environment.
Substrate Versioning
lnkpt uses semantic versioning to describe changes to the substrate. Substrate versions define the container environment, routing behaviour, lifecycle expectations, and the mechanisms through which connectors expose their API surfaces. Substrate updates aim to preserve compatibility with existing connectors wherever possible.
Connector Versioning
Connectors are independent products and maintain their own versioning. A connector’s version reflects changes to its logic, configuration schema, API surfaces, or evidence outputs. lnkpt does not interpret connector version semantics; it relies on connectors to declare their versions accurately.
API Surface Versioning
API surfaces exposed by connectors may evolve over time. Connectors may:
- Introduce new API surfaces
- Version existing surfaces
- Deprecate surfaces that are no longer required
lnkpt ensures that declared surfaces are exposed consistently but does not define how API surface versioning is managed. This responsibility belongs to the connector.
Compatibility Expectations
lnkpt aims to maintain compatibility across substrate versions. In general:
- Minor substrate updates should not require connector changes
- Patch updates should be fully compatible
- Major updates may introduce new capabilities or remove deprecated features
Connectors may specify minimum substrate versions if required by their design.
Update Behaviour
Connectors may be updated independently of the substrate. Updates must:
- Preserve declared API surfaces unless explicitly versioned
- Maintain configuration compatibility where possible
- Respect container boundaries and lifecycle rules
lnkpt provides the mechanism for applying updates but does not define connector behaviour.
Forward‑Compatibility Principles
Future versions of lnkpt will follow these principles:
- Preserve existing connector behaviour wherever possible
- Introduce new capabilities without breaking existing deployments
- Maintain stable routing and container boundaries
- Ensure connectors can declare their own versioning and compatibility rules
These principles ensure that lnkpt can evolve without disrupting existing connectors or requiring architectural changes to deployed environments.