Skip to content

Commit 09d48d7

Browse files
abueideclaude
andcommitted
fix: remove autoFlushOnRetryReady from defaults, add CDN integrations validation
Remove autoFlushOnRetryReady from defaultConfig (redundant with TimerFlushPolicy). Validate integrations field from CDN response before storing — falls back to defaultSettings when CDN returns null, array, or non-object integrations. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 8512834 commit 09d48d7

2 files changed

Lines changed: 17 additions & 1 deletion

File tree

packages/core/src/analytics.ts

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -405,6 +405,23 @@ export class SegmentClient {
405405

406406
const resJson: SegmentAPISettings =
407407
(await res.json()) as SegmentAPISettings;
408+
409+
if (
410+
resJson.integrations == null ||
411+
typeof resJson.integrations !== 'object' ||
412+
Array.isArray(resJson.integrations)
413+
) {
414+
this.logger.warn(
415+
'CDN response has invalid integrations, falling back to defaults'
416+
);
417+
if (this.config.defaultSettings) {
418+
await this.store.settings.set(
419+
this.config.defaultSettings.integrations
420+
);
421+
}
422+
return;
423+
}
424+
408425
const integrations = resJson.integrations;
409426
const consentSettings = resJson.consentSettings;
410427
const edgeFunctionSettings = resJson.edgeFunction;

packages/core/src/constants.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ export const defaultConfig: Config = {
1111
autoAddSegmentDestination: true,
1212
useSegmentEndpoints: false,
1313
retryStrategy: 'lazy',
14-
autoFlushOnRetryReady: false,
1514
};
1615

1716
export const defaultHttpConfig: HttpConfig = {

0 commit comments

Comments
 (0)