Upgrade and Release Process — Unique AI Documentation

Upgrade and Release Process

Version Support and Maintenance Policy

Scope

Unique supports only the current (latest) and previous (n-1) versions at any time. Older versions are unsupported and must be upgraded.

Versioning

Unique follows CalVer convention, see #Release-Naming for details.

Maintenance Rules

End of Support

Versions older than n-1 (whether major or minor) receive no maintenance or patches of any kind. Affected deployments must upgrade to a supported version.

Regular releases

Unique's current release cycle is bi-weekly. Depending on the customer's choice, this frequency can be lowered upon request.

However, the SLA is only valid if the Client deploys at least once a month as bugfixes are only performed on the latest version of the software.

While the frequency for self-hosting tenant can be increased by the client themselves, Unique does not offer a higher frequency for Single-Tenants.

Release notes are always published before a release is provided on Release Notes 2026.

Release Lifecycle

Releasing software in phases allows developers to manage risk and improve product quality by systematically testing and refining the software. It begins with internal testing to catch major bugs, then moves to external testing where real-world users provide feedback on functionality and usability. The release candidate phase follows, focusing on identifying remaining critical issues before the final version. This phased approach helps ensure that the software is stable, meets user needs, and reduces the likelihood of significant issues in the final release, thus enhancing customer satisfaction and reducing costly post-release fixes.

Phases and Objectives

Unique currently maintains the following phases:

Phase Key aspects Target group
FAST PROTOTYPE*
EXPERIMENTAL* - Trying out and innovating new changes

- Focus on basic functionality and core features

- Are not designed to but expected to fail
- Selected individuals or groups specifically opting in for experimental testing
BETA* - External testing with real users or clients

- Collecting feedback on performance and usability

- Should no longer fail for most cases
- Interested stakeholders

- Users/Clients/Tenants specifically opting in for beta testing
GENERAL AVAILABILITY (GA) - Final, stable, secure release to the public

- Continuously maintained and enhanced

- Long-term commitment to functionality
- Product is considered complete and ready for all users/clients/tenants

* These phases are explicitly excluded from any SLA, only changes that have matured to GA are covered by any SLA. Support for these changes is on a best-effort basis.

Experimental

EXPERIMENTAL* changes or features are tested with a very small user base, to validate their potential value. These features may:

EXPERIMENTAL features have two possible outcomes:

  1. Unique discovers an added value for the client and progresses the change to BETA.
  2. Unique identifies issues, problems or inefficiencies and basically terminates the experiment.

Unique believes in transparent innovation. By sharing experimental work, we enable clients to discover new possibilities, provide feedback, and collaborate on solutions that benefit everyone.

Documentation Disclaimer

This feature is EXPERIMENTAL and under active development. It may change significantly, be discontinued, or have breaking changes without notice. Documentation may be incomplete or outdated and is not recommended for production use. Use at your own risk. Please refer to our Upgrade and Release Process for more information.

Beta

BETA* features are actively being tested and refined with a broader user base. While functional and documented, these features may still undergo changes based on user feedback and testing results. Beta features are evaluated for promotion to full release based on performance, user adoption, and feedback.

Attributes of Beta

  1. PRD is complete and PRD review took place
  2. Teamfood complete
  3. All QA tests are passed
  4. No CRITICAL bugs remain
  5. Documentation is published:
    1. User documentation
    2. Administrator Documentation

Documentation Disclaimer

This feature is currently in BETA. It may change before general availability, due to user and client feedback, but it is targeted to be high quality and stable. Documentation may lag behind feature updates. Use in production environments at your own discretion. Please refer to our Upgrade and Release Process for more information.

General Availability (GA)

GA features are fully released to all clients, users, and tenants with complete documentation and ongoing support. These production-ready features are continuously maintained and enhanced by Unique's product teams. While deprecation is uncommon, it may occur with proper advance communication, migration guidance, and appropriate transition timelines.

Attributes of GA

  1. For changes that are visible or available to clients/users without any flags or configuration – minimum 3 clients have used it for 2-4 weeks (rule of thumb: 1 month after beta deployment)
  2. Changes that require configuration or flags do not require this criteria.
  3. No CRITICAL or HIGH defects remain
  4. Metrics implemented:
    1. They can be triggered and the data can be captured
    2. Metrics gathering process is in place
  5. Any final revisions to documentation have been folded in and published
  6. Developer documentation is complete

Release Content

As seen in the Secure Software Development Lifecycle (Secure SDLC), Unique provides a variety of artifacts per release, delivery, or rollout cycle.

One Unique release consists of:

Artifact Model Further Use Format Consumable
Unique Product all Run Unique workloads with a container orchestrator Multiple Docker Images Either as files forked to own Git, tarballs or images from a private Azure Container registry
Connectors (On Premise and Cloud) SELF-HOSTED Upgrade local installations of various connectors to connect to the Unique Product Multiple Docker Images Either as files forked to own Git, tarballs or images from a private Azure Container registry
Helm Charts SELF-HOSTED In order to run Unique on Kubernetes, helm charts are the recommended way to render and apply Kubernetes manifests. Multiple Helm Either as files forked to own Git or tarballs from a private Azure Container registry
Terraform modules SELF-HOSTED Terraform own Azure Landscape or just get inspired which components are needed HCL for Azure Either as files forked to own Git or published over Azure Container registry
SBOM
Software Bill of Materials
all For further analysis for customers, pinned to the current release SPDX format
incl. Grype Scan results
As files
Release notes all A change log for humans Text Public docs
Customization examples SELF-HOSTED Customize each setup from example cases YAML Files forked to own Git, then overridden

Release Naming

Unique release names follow mostly CalVer:

<YYYY>.<CW>(.I)
YYYY Year
CW Calendar Week Padded
I Numeric counter if fixes provided

<YYYY>.<CW>(-SHA)
YYYY Year
CW Calendar Week Padded
SHA Build version for continuous releases

Example

If today is July 11, 2024, and the Git short SHA is abcdef, the Docker tag could look like this:

2024.28-abcdef

Advantages of this format

Collisions risk

The collision risk depends on the probability of two different commits having the same short SHA within the same calendar week. Let's break down the components:

  1. Calendar Week (CW): There are 52 weeks in a year.
  2. Git Short SHA: The Git SHA-1 hash is a 40-character hexadecimal string, and the probability of collisions is extremely low even for shorter versions of this hash.

By following this format (YYYY.CW-GITSHA), you achieve a well-structured Docker tag that incorporates both temporal and source control information in a clear and standardized manner.