Skip to content

Product line versioning (What's New)

Product line versioning (What’s New)

The Ailaaj One product line — the shared timeline on Academy /whats-new and docs-site/src/data/releases.ts — uses a four-part scheme. Only new platforms and modules earn a tenth (middle) segment bump; day-to-day work advances the feature or patch segments.

Per-module semver tracks (Custom Storefront 1.1.0, Accounting 1.0.0, …) are separate — see Module release setup.


Version shape

MAJOR . MODULE . FEATURE [ . PATCH ]
SegmentMeaningWhen it changes
MAJORPlatform generationA new platform surface ships (e.g. Clinic Management System alongside pharmacy POS)
MODULEProduct module on the platformA new major capability area ships (Smart Counsellor, Order Management, …)
FEATURENew staff/customer capabilityUsers can do something they could not before
PATCHBug-fix-only releaseDefects fixed; no new capability and no UX overhaul

Display: three segments (1.3.2) until the first patch-only ship, then four (1.3.2.1).


Bump rules

Ship typeVersion bumpExample
New platformMAJOR → next integer; MODULE/FEATURE/PATCH reset1.1.12.0.0
New moduleMODULE → next integer; FEATURE/PATCH reset1.2.11.3.0
New featureFEATURE → next integer1.3.11.3.2
Bug fixes onlyPATCH → next integer1.3.2.01.3.2.1

Improvements / polish (no new capability)

UX tidying, copy, layout, and performance on existing flows — without a new feature or module — advance the FEATURE segment when the change is user-visible enough to publish on What’s New:

Ship typeVersion bumpExample
Improvements / polishFEATURE → next integer (same as a small release on the module line)1.3.01.3.1

Example: Smart Counter v1.3.1 (June 2026) — till picker, End Session, and cart polish after Smart Counsellor 1.3; no new module.

Do not use a MODULE bump for polish on an existing surface.


Mapping to release-note sections

What’s New groupTypical ship type
NewNew platform, new module, or new feature
ImprovedPolish / improvements (often a FEATURE-segment bump)
FixedBug fixes (PATCH segment when shipped alone)

Commit types for engineers still follow Commit messages (feat → feature, fix → patch, improve → improved section). The product-line version is chosen when authoring the release note and docs-site/src/data/releases.ts, not inferred from commit semver alone.


Timeline examples (Ailaaj One)

VersionCodenameShip type
1.1Smart CounterNew module
1.2Order ManagementNew module
1.3Smart CounsellorNew module
1.3.1Smart Counter (polish)Improvements — no new module
1.3.2(future)New feature on an existing module
1.3.2.1(future)Bug-fix patch on top of 1.3.2
2.0.0(future)New platform (e.g. Clinic Management)

Where to update when shipping

  1. Release notedocs/release-notes/YYYY-MM-<module>-v<x-y-z>.mdx + row in release-notes/README.md
  2. What’s New timelinedocs-site/src/data/releases.ts (version, groups, current: true on the new entry)
  3. Guide front-matter — bump version on affected docs in docs/<module>/guides/

Append-only history: never rewrite or renumber shipped versions.