Skip to content

Conversation

@dmarticus
Copy link
Contributor

Changes

This PR implements support for evaluation environments, allowing users to specify which environment tags their SDK instance should use when evaluating feature flags.

Key changes:

  • Added evaluation_environments configuration option to the configs for Node and React-Native that accepts an array of environment tags (e.g., ['production', 'web', 'checkout'])
  • Updated methods that call the /flags endpoint to include evaluation_environments in the request payload when configured
  • Added tests to verify the new functionality

This implementation follows the specification outlined in:

When configured, only feature flags that have at least one matching evaluation tag will be evaluated. Feature flags with no evaluation tags will always be evaluated for backward compatibility.

Basically, I'm doing what I did here, in response to a customer request.

This should be perfectly safe; this field is backward compatible and won't affect existing versions of the app.

@dmarticus dmarticus requested a review from a team as a code owner October 8, 2025 22:15
@vercel
Copy link

vercel bot commented Oct 8, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Updated (UTC)
posthog-js Ready Ready Preview Oct 9, 2025 9:23pm
@dmarticus dmarticus changed the title Feat/add evaluation tags to mobile sdks feat(flags): add evaluation_environments to Node and react-native SDKs Oct 8, 2025
@dmarticus dmarticus changed the title feat(flags): add evaluation_environments to Node and react-native SDKs feat(flags): add evaluation_environments to node and react-native SDKs Oct 8, 2025
Copy link
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

6 files reviewed, 4 comments

Edit Code Review Agent Settings | Greptile

const posthogWithEnvs = new PostHog('TEST_API_KEY', {
host: 'http://example.com',
evaluationEnvironments: ['production', 'backend'],
...posthogImmediateResolveOptions,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

style: Consider extracting posthogImmediateResolveOptions to a shared constant at the top of the file for better maintainability

Context Used: Context from dashboard - When defining constants, such as template IDs, use a constants file or define them at the top of the... (source)

Prompt To Fix With AI
This is a comment left during a code review. Path: packages/node/src/__tests__/posthog-node.spec.ts Line: 2483:2483 Comment: **style:** Consider extracting `posthogImmediateResolveOptions` to a shared constant at the top of the file for better maintainability **Context Used:** Context from `dashboard` - When defining constants, such as template IDs, use a constants file or define them at the top of the... ([source](https://app.greptile.com/review/custom-context?memory=046b860e-6d45-4e24-be8e-6e1727a1b550)) How can I resolve this? If you propose a fix, please make it concise.
'http://example.com/flags/?v=2&config=true',
expect.objectContaining({
method: 'POST',
body: expect.stringContaining('"evaluation_environments":["production","backend"]'),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

style: This string assertion is fragile. Consider using JSON.parse() on the body and asserting against the parsed object structure instead

Prompt To Fix With AI
This is a comment left during a code review. Path: packages/node/src/__tests__/posthog-node.spec.ts Line: 2492:2492 Comment: **style:** This string assertion is fragile. Consider using `JSON.parse()` on the body and asserting against the parsed object structure instead How can I resolve this? If you propose a fix, please make it concise.
expect.stringContaining('/flags/?v=2&config=true'),
expect.objectContaining({
method: 'POST',
body: expect.stringContaining('"evaluation_environments":["production","mobile"]'),
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

style: The test uses string matching on the request body, which could be brittle if the JSON serialization order changes. Consider using JSON.parse() to validate the presence of the field more reliably.

Prompt To Fix With AI
This is a comment left during a code review. Path: packages/react-native/test/posthog.spec.ts Line: 24:24 Comment: **style:** The test uses string matching on the request body, which could be brittle if the JSON serialization order changes. Consider using JSON.parse() to validate the presence of the field more reliably. How can I resolve this? If you propose a fix, please make it concise.
this.disableGeoip = options?.disableGeoip ?? true
this.disabled = options?.disabled ?? false
this.historicalMigration = options?.historicalMigration ?? false
this.evaluationEnvironments = options?.evaluationEnvironments
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

syntax: Missing property declaration for evaluationEnvironments. This will cause a TypeScript compilation error since the property is not declared in the class.

Suggested change
this.evaluationEnvironments = options?.evaluationEnvironments
// Evaluation environments configuration
private evaluationEnvironments?: string[];
constructor(apiKey: string, options?: PostHogCoreOptions) {
assert(apiKey, "You must pass your PostHog project's api key.")
this.apiKey = apiKey
this.host = removeTrailingSlash(options?.host || 'https://us.i.posthog.com')
this.flushAt = options?.flushAt ? Math.max(options?.flushAt, 1) : 20
this.maxBatchSize = Math.max(this.flushAt, options?.maxBatchSize ?? 100)
this.maxQueueSize = Math.max(this.flushAt, options?.maxQueueSize ?? 1000)
this.flushInterval = options?.flushInterval ?? 10000
this.preloadFeatureFlags = options?.preloadFeatureFlags ?? true
// If enable is explicitly set to false we override the optout
this.defaultOptIn = options?.defaultOptIn ?? true
this.disableSurveys = options?.disableSurveys ?? false
this._retryOptions = {
retryCount: options?.fetchRetryCount ?? 3,
retryDelay: options?.fetchRetryDelay ?? 3000, // 3 seconds
retryCheck: isPostHogFetchError,
}
this.requestTimeout = options?.requestTimeout ?? 10000 // 10 seconds
this.featureFlagsRequestTimeoutMs = options?.featureFlagsRequestTimeoutMs ?? 3000 // 3 seconds
this.remoteConfigRequestTimeoutMs = options?.remoteConfigRequestTimeoutMs ?? 3000 // 3 seconds
this.disableGeoip = options?.disableGeoip ?? true
this.disabled = options?.disabled ?? false
this.historicalMigration = options?.historicalMigration ?? false
this.evaluationEnvironments = options?.evaluationEnvironments
// Init promise allows the derived class to block calls until it is ready
this._initPromise = Promise.resolve()
this._isInitialized = true
this.disableCompression = !isGzipSupported() || (options?.disableCompression ?? false)
}
Prompt To Fix With AI
This is a comment left during a code review. Path: packages/core/src/posthog-core-stateless.ts Line: 166:166 Comment: **syntax:** Missing property declaration for `evaluationEnvironments`. This will cause a TypeScript compilation error since the property is not declared in the class. ```suggestion  // Evaluation environments configuration  private evaluationEnvironments?: string[];   constructor(apiKey: string, options?: PostHogCoreOptions) {  assert(apiKey, "You must pass your PostHog project's api key.")   this.apiKey = apiKey  this.host = removeTrailingSlash(options?.host || 'https://us.i.posthog.com')  this.flushAt = options?.flushAt ? Math.max(options?.flushAt, 1) : 20  this.maxBatchSize = Math.max(this.flushAt, options?.maxBatchSize ?? 100)  this.maxQueueSize = Math.max(this.flushAt, options?.maxQueueSize ?? 1000)  this.flushInterval = options?.flushInterval ?? 10000  this.preloadFeatureFlags = options?.preloadFeatureFlags ?? true  // If enable is explicitly set to false we override the optout  this.defaultOptIn = options?.defaultOptIn ?? true  this.disableSurveys = options?.disableSurveys ?? false   this._retryOptions = {  retryCount: options?.fetchRetryCount ?? 3,  retryDelay: options?.fetchRetryDelay ?? 3000, // 3 seconds  retryCheck: isPostHogFetchError,  }  this.requestTimeout = options?.requestTimeout ?? 10000 // 10 seconds  this.featureFlagsRequestTimeoutMs = options?.featureFlagsRequestTimeoutMs ?? 3000 // 3 seconds  this.remoteConfigRequestTimeoutMs = options?.remoteConfigRequestTimeoutMs ?? 3000 // 3 seconds  this.disableGeoip = options?.disableGeoip ?? true  this.disabled = options?.disabled ?? false  this.historicalMigration = options?.historicalMigration ?? false  this.evaluationEnvironments = options?.evaluationEnvironments  // Init promise allows the derived class to block calls until it is ready  this._initPromise = Promise.resolve()  this._isInitialized = true  this.disableCompression = !isGzipSupported() || (options?.disableCompression ?? false)  } ``` How can I resolve this? If you propose a fix, please make it concise.
@github-actions
Copy link
Contributor

github-actions bot commented Oct 9, 2025

@github-actions
Copy link
Contributor

github-actions bot commented Oct 9, 2025

Size Change: +468 B (+0.01%)

Total Size: 4.81 MB

Filename Size Change
packages/core/dist/posthog-core-stateless.js 29.6 kB +234 B (+0.8%)
packages/core/dist/posthog-core-stateless.mjs 27 kB +234 B (+0.87%)
ℹ️ View Unchanged
Filename Size Change
packages/ai/dist/anthropic/index.cjs 16.7 kB 0 B
packages/ai/dist/anthropic/index.mjs 16.5 kB 0 B
packages/ai/dist/gemini/index.cjs 17.6 kB 0 B
packages/ai/dist/gemini/index.mjs 17.5 kB 0 B
packages/ai/dist/index.cjs 120 kB 0 B
packages/ai/dist/index.mjs 119 kB 0 B
packages/ai/dist/langchain/index.cjs 39.6 kB 0 B
packages/ai/dist/langchain/index.mjs 39 kB 0 B
packages/ai/dist/openai/index.cjs 29.8 kB 0 B
packages/ai/dist/openai/index.mjs 29.5 kB 0 B
packages/ai/dist/vercel/index.cjs 21.9 kB 0 B
packages/ai/dist/vercel/index.mjs 21.9 kB 0 B
packages/browser/dist/all-external-dependencies.js 223 kB 0 B
packages/browser/dist/array.full.es5.js 289 kB 0 B
packages/browser/dist/array.full.js 357 kB 0 B
packages/browser/dist/array.full.no-external.js 371 kB 0 B
packages/browser/dist/array.js 157 kB 0 B
packages/browser/dist/array.no-external.js 168 kB 0 B
packages/browser/dist/crisp-chat-integration.js 1.97 kB 0 B
packages/browser/dist/customizations.full.js 19.1 kB 0 B
packages/browser/dist/dead-clicks-autocapture.js 12.6 kB 0 B
packages/browser/dist/exception-autocapture.js 11.6 kB 0 B
packages/browser/dist/external-scripts-loader.js 2.81 kB 0 B
packages/browser/dist/intercom-integration.js 2.02 kB 0 B
packages/browser/dist/lazy-recorder.js 147 kB 0 B
packages/browser/dist/main.js 158 kB 0 B
packages/browser/dist/module.full.js 358 kB 0 B
packages/browser/dist/module.full.no-external.js 371 kB 0 B
packages/browser/dist/module.js 158 kB 0 B
packages/browser/dist/module.no-external.js 169 kB 0 B
packages/browser/dist/posthog-recorder.js 241 kB 0 B
packages/browser/dist/recorder-v2.js 113 kB 0 B
packages/browser/dist/recorder.js 113 kB 0 B
packages/browser/dist/surveys-preview.js 71.1 kB 0 B
packages/browser/dist/surveys.js 80 kB 0 B
packages/browser/dist/tracing-headers.js 1.84 kB 0 B
packages/browser/dist/web-vitals.js 10.4 kB 0 B
packages/browser/react/dist/esm/index.js 15.1 kB 0 B
packages/browser/react/dist/umd/index.js 17.8 kB 0 B
packages/core/dist/error-tracking/chunk-ids.js 2.54 kB 0 B
packages/core/dist/error-tracking/chunk-ids.mjs 1.31 kB 0 B
packages/core/dist/error-tracking/coercers/dom-exception-coercer.js 2.3 kB 0 B
packages/core/dist/error-tracking/coercers/dom-exception-coercer.mjs 993 B 0 B
packages/core/dist/error-tracking/coercers/error-coercer.js 2.02 kB 0 B
packages/core/dist/error-tracking/coercers/error-coercer.mjs 794 B 0 B
packages/core/dist/error-tracking/coercers/error-event-coercer.js 1.76 kB 0 B
packages/core/dist/error-tracking/coercers/error-event-coercer.mjs 513 B 0 B
packages/core/dist/error-tracking/coercers/event-coercer.js 1.82 kB 0 B
packages/core/dist/error-tracking/coercers/event-coercer.mjs 548 B 0 B
packages/core/dist/error-tracking/coercers/index.js 6.79 kB 0 B
packages/core/dist/error-tracking/coercers/index.mjs 326 B 0 B
packages/core/dist/error-tracking/coercers/object-coercer.js 3.46 kB 0 B
packages/core/dist/error-tracking/coercers/object-coercer.mjs 2.07 kB 0 B
packages/core/dist/error-tracking/coercers/primitive-coercer.js 1.67 kB 0 B
packages/core/dist/error-tracking/coercers/primitive-coercer.mjs 419 B 0 B
packages/core/dist/error-tracking/coercers/promise-rejection-event.js 2.25 kB 0 B
packages/core/dist/error-tracking/coercers/promise-rejection-event.mjs 904 B 0 B
packages/core/dist/error-tracking/coercers/string-coercer.js 2.01 kB 0 B
packages/core/dist/error-tracking/coercers/string-coercer.mjs 820 B 0 B
packages/core/dist/error-tracking/coercers/utils.js 2.06 kB 0 B
packages/core/dist/error-tracking/coercers/utils.mjs 716 B 0 B
packages/core/dist/error-tracking/error-properties-builder.js 5.64 kB 0 B
packages/core/dist/error-tracking/error-properties-builder.mjs 4.24 kB 0 B
packages/core/dist/error-tracking/index.js 4.11 kB 0 B
packages/core/dist/error-tracking/index.mjs 152 B 0 B
packages/core/dist/error-tracking/parsers/base.js 1.84 kB 0 B
packages/core/dist/error-tracking/parsers/base.mjs 472 B 0 B
packages/core/dist/error-tracking/parsers/chrome.js 2.7 kB 0 B
packages/core/dist/error-tracking/parsers/chrome.mjs 1.29 kB 0 B
packages/core/dist/error-tracking/parsers/gecko.js 2.45 kB 0 B
packages/core/dist/error-tracking/parsers/gecko.mjs 1.11 kB 0 B
packages/core/dist/error-tracking/parsers/index.js 4.36 kB 0 B
packages/core/dist/error-tracking/parsers/index.mjs 1.92 kB 0 B
packages/core/dist/error-tracking/parsers/node.js 3.95 kB 0 B
packages/core/dist/error-tracking/parsers/node.mjs 2.68 kB 0 B
packages/core/dist/error-tracking/parsers/opera.js 2.22 kB 0 B
packages/core/dist/error-tracking/parsers/opera.mjs 706 B 0 B
packages/core/dist/error-tracking/parsers/react-native.js 203 B 0 B
packages/core/dist/error-tracking/parsers/react-native.mjs 0 B 0 B 🆕
packages/core/dist/error-tracking/parsers/safari.js 1.88 kB 0 B
packages/core/dist/error-tracking/parsers/safari.mjs 574 B 0 B
packages/core/dist/error-tracking/parsers/winjs.js 1.7 kB 0 B
packages/core/dist/error-tracking/parsers/winjs.mjs 406 B 0 B
packages/core/dist/error-tracking/types.js 1.33 kB 0 B
packages/core/dist/error-tracking/types.mjs 131 B 0 B
packages/core/dist/error-tracking/utils.js 1.8 kB 0 B
packages/core/dist/error-tracking/utils.mjs 604 B 0 B
packages/core/dist/eventemitter.js 1.78 kB 0 B
packages/core/dist/eventemitter.mjs 571 B 0 B
packages/core/dist/featureFlagUtils.js 6.5 kB 0 B
packages/core/dist/featureFlagUtils.mjs 4.28 kB 0 B
packages/core/dist/gzip.js 1.88 kB 0 B
packages/core/dist/gzip.mjs 577 B 0 B
packages/core/dist/index.js 5.7 kB 0 B
packages/core/dist/index.mjs 485 B 0 B
packages/core/dist/logger.js 2.46 kB 0 B
packages/core/dist/logger.mjs 1.17 kB 0 B
packages/core/dist/posthog-core.js 28.1 kB 0 B
packages/core/dist/posthog-core.mjs 24 kB 0 B
packages/core/dist/process/index.js 2.27 kB 0 B
packages/core/dist/process/index.mjs 35 B 0 B
packages/core/dist/process/spawn-local.js 2.33 kB 0 B
packages/core/dist/process/spawn-local.mjs 1.01 kB 0 B
packages/core/dist/process/utils.js 3.11 kB 0 B
packages/core/dist/process/utils.mjs 1.15 kB 0 B
packages/core/dist/testing/index.js 2.93 kB 0 B
packages/core/dist/testing/index.mjs 79 B 0 B
packages/core/dist/testing/PostHogCoreTestClient.js 3.15 kB 0 B
packages/core/dist/testing/PostHogCoreTestClient.mjs 1.74 kB 0 B
packages/core/dist/testing/test-utils.js 2.77 kB 0 B
packages/core/dist/testing/test-utils.mjs 1.09 kB 0 B
packages/core/dist/types.js 8.2 kB 0 B
packages/core/dist/types.mjs 5.93 kB 0 B
packages/core/dist/utils/bucketed-rate-limiter.js 3.14 kB 0 B
packages/core/dist/utils/bucketed-rate-limiter.mjs 1.76 kB 0 B
packages/core/dist/utils/index.js 9.26 kB 0 B
packages/core/dist/utils/index.mjs 1.88 kB 0 B
packages/core/dist/utils/number-utils.js 2 kB 0 B
packages/core/dist/utils/number-utils.mjs 735 B 0 B
packages/core/dist/utils/promise-queue.js 2 kB 0 B
packages/core/dist/utils/promise-queue.mjs 768 B 0 B
packages/core/dist/utils/string-utils.js 1.91 kB 0 B
packages/core/dist/utils/string-utils.mjs 414 B 0 B
packages/core/dist/utils/type-utils.js 6.93 kB 0 B
packages/core/dist/utils/type-utils.mjs 3.03 kB 0 B
packages/core/dist/vendor/uuidv7.js 8.29 kB 0 B
packages/core/dist/vendor/uuidv7.mjs 6.72 kB 0 B
packages/nextjs-config/dist/config.js 5.51 kB 0 B
packages/nextjs-config/dist/config.mjs 4.03 kB 0 B
packages/nextjs-config/dist/index.js 2.24 kB 0 B
packages/nextjs-config/dist/index.mjs 30 B 0 B
packages/nextjs-config/dist/utils.js 3.74 kB 0 B
packages/nextjs-config/dist/utils.mjs 1.87 kB 0 B
packages/nextjs-config/dist/webpack-plugin.js 3.69 kB 0 B
packages/nextjs-config/dist/webpack-plugin.mjs 1.98 kB 0 B
packages/node/dist/client.js 22.4 kB 0 B
packages/node/dist/client.mjs 20.6 kB 0 B
packages/node/dist/entrypoints/index.edge.js 4.14 kB 0 B
packages/node/dist/entrypoints/index.edge.mjs 652 B 0 B
packages/node/dist/entrypoints/index.node.js 5.08 kB 0 B
packages/node/dist/entrypoints/index.node.mjs 901 B 0 B
packages/node/dist/exports.js 3.6 kB 0 B
packages/node/dist/exports.mjs 124 B 0 B
packages/node/dist/extensions/error-tracking/autocapture.js 2.65 kB 0 B
packages/node/dist/extensions/error-tracking/autocapture.mjs 1.23 kB 0 B
packages/node/dist/extensions/error-tracking/index.js 3.88 kB 0 B
packages/node/dist/extensions/error-tracking/index.mjs 2.61 kB 0 B
packages/node/dist/extensions/error-tracking/modifiers/context-lines.node.js 8.81 kB 0 B
packages/node/dist/extensions/error-tracking/modifiers/context-lines.node.mjs 7.15 kB 0 B
packages/node/dist/extensions/error-tracking/modifiers/module.node.js 2.78 kB 0 B
packages/node/dist/extensions/error-tracking/modifiers/module.node.mjs 1.45 kB 0 B
packages/node/dist/extensions/express.js 2.17 kB 0 B
packages/node/dist/extensions/express.mjs 548 B 0 B
packages/node/dist/extensions/feature-flags/crypto.js 1.57 kB 0 B
packages/node/dist/extensions/feature-flags/crypto.mjs 395 B 0 B
packages/node/dist/extensions/feature-flags/feature-flags.js 26.8 kB 0 B
packages/node/dist/extensions/feature-flags/feature-flags.mjs 25 kB 0 B
packages/node/dist/extensions/sentry-integration.js 4.7 kB 0 B
packages/node/dist/extensions/sentry-integration.mjs 3.21 kB 0 B
packages/node/dist/storage-memory.js 1.52 kB 0 B
packages/node/dist/storage-memory.mjs 297 B 0 B
packages/node/dist/types.js 603 B 0 B
packages/node/dist/types.mjs 0 B 0 B 🆕
packages/node/dist/version.js 1.21 kB 0 B
packages/node/dist/version.mjs 45 B 0 B
packages/react-native/dist/autocapture.js 4.68 kB 0 B
packages/react-native/dist/error-tracking/index.js 6.63 kB 0 B
packages/react-native/dist/error-tracking/utils.js 2.58 kB 0 B
packages/react-native/dist/frameworks/wix-navigation.js 1.3 kB 0 B
packages/react-native/dist/hooks/useFeatureFlag.js 1.49 kB 0 B
packages/react-native/dist/hooks/useFeatureFlags.js 821 B 0 B
packages/react-native/dist/hooks/useNavigationTracker.js 2.46 kB 0 B
packages/react-native/dist/hooks/usePostHog.js 467 B 0 B
packages/react-native/dist/index.js 3.12 kB 0 B
packages/react-native/dist/native-deps.js 13.9 kB 0 B
packages/react-native/dist/optional/OptionalAsyncStorage.js 299 B 0 B
packages/react-native/dist/optional/OptionalExpoApplication.js 377 B 0 B
packages/react-native/dist/optional/OptionalExpoDevice.js 347 B 0 B
packages/react-native/dist/optional/OptionalExpoFileSystem.js 386 B 0 B
packages/react-native/dist/optional/OptionalExpoFileSystemLegacy.js 423 B 0 B
packages/react-native/dist/optional/OptionalExpoLocalization.js 383 B 0 B
packages/react-native/dist/optional/OptionalReactNativeDeviceInfo.js 415 B 0 B
packages/react-native/dist/optional/OptionalReactNativeLocalize.js 303 B 0 B
packages/react-native/dist/optional/OptionalReactNativeNavigation.js 415 B 0 B
packages/react-native/dist/optional/OptionalReactNativeNavigationWix.js 443 B 0 B
packages/react-native/dist/optional/OptionalReactNativeSafeArea.js 644 B 0 B
packages/react-native/dist/optional/OptionalSessionReplay.js 455 B 0 B
packages/react-native/dist/posthog-rn.js 30.5 kB 0 B
packages/react-native/dist/PostHogContext.js 329 B 0 B
packages/react-native/dist/PostHogProvider.js 4.77 kB 0 B
packages/react-native/dist/storage.js 3.39 kB 0 B
packages/react-native/dist/surveys/components/BottomSection.js 1.34 kB 0 B
packages/react-native/dist/surveys/components/Cancel.js 909 B 0 B
packages/react-native/dist/surveys/components/ConfirmationMessage.js 1.58 kB 0 B
packages/react-native/dist/surveys/components/QuestionHeader.js 1.11 kB 0 B
packages/react-native/dist/surveys/components/QuestionTypes.js 10.1 kB 0 B
packages/react-native/dist/surveys/components/SurveyModal.js 3.86 kB 0 B
packages/react-native/dist/surveys/components/Surveys.js 7.18 kB 0 B
packages/react-native/dist/surveys/getActiveMatchingSurveys.js 3.48 kB 0 B
packages/react-native/dist/surveys/icons.js 7.76 kB 0 B
packages/react-native/dist/surveys/index.js 600 B 0 B
packages/react-native/dist/surveys/PostHogSurveyProvider.js 5.61 kB 0 B
packages/react-native/dist/surveys/surveys-utils.js 9.31 kB 0 B
packages/react-native/dist/surveys/useActivatedSurveys.js 3.38 kB 0 B
packages/react-native/dist/surveys/useSurveyStorage.js 2.16 kB 0 B
packages/react-native/dist/types.js 70 B 0 B
packages/react-native/dist/utils.js 539 B 0 B
packages/react-native/dist/version.js 129 B 0 B
packages/react/dist/esm/index.js 15.1 kB 0 B
packages/react/dist/umd/index.js 17.8 kB 0 B
packages/web/dist/index.cjs 13.8 kB 0 B
packages/web/dist/index.mjs 13.7 kB 0 B
tooling/rollup-utils/dist/index.js 1.17 kB 0 B

compressed-size-action

@github-project-automation github-project-automation bot moved this from In Review to Approved in Feature Flags Oct 10, 2025
@dmarticus dmarticus merged commit daf919b into main Oct 10, 2025
28 checks passed
@dmarticus dmarticus deleted the feat/add-evaluation-tags-to-mobile-sdks branch October 10, 2025 18:40
@github-project-automation github-project-automation bot moved this from Approved to Done in Feature Flags Oct 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

4 participants