Versioning & Fork-on-BumpΒΆ
Business Events in BizMetry are versioned entities. Each time you need to change an event's configuration β either proactively (new business requirements) or reactively (a Template version bump) β a new version is created. The old version continues to capture telemetry uninterrupted until the new one is published.
π§© Why Versioning ExistsΒΆ
A Business Event's mapping depends directly on the Frame Type structure defined in the Template. When a Template version is bumped (new components added, existing ones renamed or restructured), the field mappings in active Business Events may become stale or incorrect.
BizMetry handles this through fork-on-bump: when a Template version advances, any PUBLISHED Business Event that targets the old template instance is automatically forked into a new DRAFT version pointing to the new template instance β giving you time to update mappings before publishing the new version.
π’ Version NumberingΒΆ
Versions follow a major.minor numbering scheme:
| Version | Created when |
|---|---|
1.0 | Initial creation via the wizard. |
1.1 | Manual bump from 1.0. |
2.0 | Significant change (e.g., new source type or frame target). |
The version number is user-assigned when performing a manual bump. For automatic forks triggered by Template bumps, BizMetry increments the minor version.
Screenshot pending
Capture required: Business Events tab showing a single event expanded with its version tree visible β showing v1.0 DEPRECATED and v1.1 DRAFT side by side.
π Manual Version BumpΒΆ
To create a new version of a Business Event manually:
- In the Business Events tab, find the event you want to update.
- Click "New Version" (or "Bump Version") on the event row.
- BizMetry creates a new DRAFT version as a fork of the current PUBLISHED version β copying all existing mappings, operations, and configuration.
- Edit the DRAFT version as needed.
- When ready, Publish the new version.
Screenshot pending
Capture required: Event row with "New Version" button highlighted, and the resulting DRAFT version appearing in the version list below the current PUBLISHED version.
Existing DRAFT blocks bump
If a DRAFT version already exists for the event, you cannot create another one until you publish or delete the existing DRAFT.
β‘ Automatic Fork-on-BumpΒΆ
When you bump the Template version for one or more environments in the Profile, BizMetry automatically:
- Identifies all PUBLISHED Business Events whose
targetTemplateInstanceIdmatches the old template version. - For each such event, creates a new DRAFT version pointing to the new template instance.
- Copies all existing field mappings from the PUBLISHED version into the DRAFT.
- Transitions the PUBLISHED version to DEPRECATED (if all its environments have migrated to the new template).
sequenceDiagram
participant Admin
participant Orchestrator as bizmetry-orchestrator-ms
participant Core as bizmetry-core-ms
Admin->>Orchestrator: Bump template version\n(DEV env: v1.1 β v1.2)
Orchestrator->>Core: inheritTemplate(envId, newTemplateInstanceId)
Core->>Core: Find all PUBLISHED events\ntargeting old templateInstanceId
Core->>Core: For each event: fork β new DRAFT v_n+1\n(copy mappings, point to new template)
Core->>Core: Check: any env still on old template?
alt No envs remaining on old template
Core->>Core: Deprecate PUBLISHED version
else Some envs still on old template
Core->>Core: Keep PUBLISHED (partial migration)
end
Core-->>Orchestrator: Done
Orchestrator-->>Admin: Template bump complete
π Multiple Environments & Partial MigrationΒΆ
A Business Event can be PUBLISHED for multiple environments simultaneously β one PUBLISHED version per templateInstanceId.
Consider this scenario:
| Environment | Template Version | Event Version |
|---|---|---|
| DEV | v1.2 | v1.1 PUBLISHED |
| QA | v1.1 | v1.0 PUBLISHED |
| PROD | v1.1 | v1.0 PUBLISHED |
When DEV is bumped from v1.1 to v1.2:
- A new DRAFT
v1.1is forked for the new template instance. v1.0remains PUBLISHED because QA and PROD are still on template v1.1.v1.1is PUBLISHED (for DEV scope) only once you publish it.
Once QA and PROD are also bumped to v1.2:
v1.0is DEPRECATED (no environments remain on template v1.1).v1.1(or whatever version you published for v1.2) is PUBLISHED for all environments.
π Version Tree ViewΒΆ
The Business Events tab provides a Version Tree for each event, showing all versions and their current state:
| Column | Description |
|---|---|
| Version | Version number (e.g., v1.0, v1.1). |
| Status | Current lifecycle state with color-coded pill. |
| Template Instance | The template version this event version targets. |
| Environment Scope | The environments this version is active for. |
| Actions | Publish, Retire, Reinstate, Delete (depending on current state). |
Screenshot pending
Capture required: Version Tree view for a single Business Event showing multiple versions with their statuses, template instance references, and action buttons.