From 6d65c4e27f82167f2a20fc574fc3b4e8aff814bc Mon Sep 17 00:00:00 2001 From: "n8n-assistant[bot]" <100856346+n8n-assistant[bot]@users.noreply.github.com> Date: Thu, 6 Aug 2026 09:22:24 +0000 Subject: [PATCH] fix: Send n8n version on backend posthog flag retrieval (backport to release-candidate/2.34.x) (#35712) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Dimitri Lavrenük <20122620+dlavrenuek@users.noreply.github.com> --- packages/cli/src/posthog/__tests__/posthog.test.ts | 3 +++ packages/cli/src/posthog/index.ts | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/packages/cli/src/posthog/__tests__/posthog.test.ts b/packages/cli/src/posthog/__tests__/posthog.test.ts index de2af94983d..e4833d1f1cf 100644 --- a/packages/cli/src/posthog/__tests__/posthog.test.ts +++ b/packages/cli/src/posthog/__tests__/posthog.test.ts @@ -6,6 +6,7 @@ import { PostHog } from 'posthog-node'; import type { Mock } from 'vitest'; import { mock } from 'vitest-mock-extended'; +import { N8N_VERSION } from '@/constants'; import { PostHogClient } from '@/posthog'; vi.mock('posthog-node'); @@ -161,6 +162,8 @@ describe('PostHog', () => { expect(PostHog.prototype.evaluateFlags).toHaveBeenCalledWith(`${instanceId}#${userId}`, { personProperties: { created_at_timestamp: createdAt.getTime().toString(), + instance_id: instanceId, + version_cli: N8N_VERSION, }, groups: { company: instanceId }, }); diff --git a/packages/cli/src/posthog/index.ts b/packages/cli/src/posthog/index.ts index 0aa28932929..7a014341aba 100644 --- a/packages/cli/src/posthog/index.ts +++ b/packages/cli/src/posthog/index.ts @@ -11,6 +11,8 @@ import { InstanceSettings } from 'n8n-core'; import type { FeatureFlags, ITelemetryTrackProperties } from 'n8n-workflow'; import type { PostHog, FeatureFlagEvaluations } from 'posthog-node'; +import { N8N_VERSION } from '@/constants'; + /** * PostHog group type for instance-level properties. * Note: Aliased as "instance" on PostHog dashboard @@ -136,6 +138,8 @@ export class PostHogClient { const evaluatedFlags = await this.postHog.evaluateFlags(fullId, { personProperties: { created_at_timestamp: user.createdAt.getTime().toString(), + instance_id: instanceId, + version_cli: N8N_VERSION, }, ...(instanceId && { groups: { [POSTHOG_GROUP_TYPE_INSTANCE]: instanceId } }), });