@reflag/node-sdk 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -175,15 +175,8 @@ await client.flush();
175
175
  ### Rate Limiting
176
176
 
177
177
  The SDK includes automatic rate limiting for flag events to prevent overwhelming the API.
178
- Rate limiting is applied per unique combination of flag key and context. The rate limiter window size is configurable:
179
-
180
- ```typescript
181
- const client = new ReflagClient({
182
- rateLimiterOptions: {
183
- windowSizeMs: 60000, // Rate limiting window size in milliseconds
184
- },
185
- });
186
- ```
178
+ Rate limiting is applied per unique combination of flag key and evaluation context.
179
+ This behavior is built in and does not currently require configuration.
187
180
 
188
181
  ### Flag definitions
189
182
 
@@ -206,9 +199,182 @@ const flagDefs = await client.getFlagDefinitions();
206
199
  // }]
207
200
  ```
208
201
 
202
+ ### Fallback provider
203
+
204
+ `flagsFallbackProvider` is a reliability feature that lets the SDK persist the latest successfully fetched raw flag definitions to fallback storage such as a local file, Redis, S3, GCS, or a custom backend.
205
+
206
+ #### How it works
207
+
208
+ Reflag servers remain the primary source of truth. On `initialize()`, the SDK always tries to fetch a live copy of the flag definitions first, and it continues refreshing those definitions from the Reflag servers over time.
209
+
210
+ If that initial live fetch fails, the SDK can call `flagsFallbackProvider.load()` and start with the last saved snapshot instead. This is mainly useful for cold starts in the exceedingly rare case that Reflag has an outage.
211
+
212
+ If Reflag becomes unavailable after the SDK has already initialized successfully, the SDK keeps using the last successfully fetched definitions it already has in memory. In other words, the fallback provider is mainly what helps future processes start, not what keeps an already running process alive.
213
+
214
+ After successfully fetching updated flag definitions, the SDK calls `flagsFallbackProvider.save()` to keep the stored snapshot up to date.
215
+
216
+ Typical reliability flow:
217
+
218
+ 1. The SDK starts and tries to fetch live flag definitions from Reflag.
219
+ 2. If that succeeds, those definitions are used immediately and the SDK continues operating normally.
220
+ 3. After successfully fetching updated flag definitions, the SDK saves the latest snapshot through the fallback provider so a recent copy is available if needed later.
221
+ 4. If a future process starts while Reflag is unavailable, it can load the last saved snapshot from the fallback provider and still initialize.
222
+ 5. Once Reflag becomes available again, the SDK resumes using live data and refreshes the fallback snapshot.
223
+
224
+ Most deployments run multiple SDK processes, so more than one process may save identical flag definitions to the fallback storage at roughly the same time. This is expected and generally harmless for backends like a local file, Redis, S3, or GCS because the operation is cheap. In practice, this only becomes worth thinking about once you have many thousands of SDK processes writing to the same fallback storage.
225
+
226
+ > [!TIP]
227
+ > If you are building a web or client-side application and want the most resilient setup, combine `flagsFallbackProvider` on the server with bootstrapped flags on the client.
228
+ >
229
+ > `flagsFallbackProvider` helps new server processes start if they cannot reach Reflag during initialization. Bootstrapping helps clients render from server-provided flags instead of depending on an initial client-side fetch from the Reflag servers.
230
+ >
231
+ > This applies to React (`getFlagsForBootstrap()` + `ReflagBootstrappedProvider`), the Browser SDK (`bootstrappedFlags`), and the Vue SDK (bootstrapped flags via the provider).
232
+
233
+ #### Built-in providers
234
+
235
+ You can access the built-in providers through the `fallbackProviders` namespace:
236
+
237
+ - `fallbackProviders.static(...)`
238
+ - `fallbackProviders.file(...)`
239
+ - `fallbackProviders.redis(...)`
240
+ - `fallbackProviders.s3(...)`
241
+ - `fallbackProviders.gcs(...)`
242
+
243
+ ##### File provider
244
+
245
+ ```typescript
246
+ import { ReflagClient, fallbackProviders } from "@reflag/node-sdk";
247
+
248
+ const client = new ReflagClient({
249
+ secretKey: process.env.REFLAG_SECRET_KEY,
250
+ flagsFallbackProvider: fallbackProviders.file({
251
+ directory: ".reflag",
252
+ }),
253
+ });
254
+
255
+ await client.initialize();
256
+ ```
257
+
258
+ The file provider stores one snapshot file per environment in the configured
259
+ `directory`.
260
+
261
+ ##### Static provider
262
+
263
+ If you just want a fixed fallback copy of simple enabled/disabled flags, you can provide a static map:
264
+
265
+ ```typescript
266
+ import { ReflagClient, fallbackProviders } from "@reflag/node-sdk";
267
+
268
+ const client = new ReflagClient({
269
+ secretKey: process.env.REFLAG_SECRET_KEY,
270
+ flagsFallbackProvider: fallbackProviders.static({
271
+ flags: {
272
+ huddle: true,
273
+ "smart-summaries": false,
274
+ },
275
+ }),
276
+ });
277
+
278
+ await client.initialize();
279
+ ```
280
+
281
+ ##### Redis provider
282
+
283
+ The built-in Redis provider creates a Redis client automatically when omitted and uses `REDIS_URL` from the environment. It stores snapshots under the configured `keyPrefix` and uses the first 16 characters of the secret key hash in the Redis key.
284
+
285
+ ```typescript
286
+ import { ReflagClient, fallbackProviders } from "@reflag/node-sdk";
287
+
288
+ const client = new ReflagClient({
289
+ secretKey: process.env.REFLAG_SECRET_KEY,
290
+ flagsFallbackProvider: fallbackProviders.redis(),
291
+ });
292
+
293
+ await client.initialize();
294
+ ```
295
+
296
+ ##### S3 provider
297
+
298
+ The built-in S3 provider works out of the box using the AWS SDK's default credential chain and region resolution. It stores the snapshot object under the configured `keyPrefix` and uses a hash of the secret key in the object name.
299
+
300
+ ```typescript
301
+ import { ReflagClient, fallbackProviders } from "@reflag/node-sdk";
302
+
303
+ const client = new ReflagClient({
304
+ secretKey: process.env.REFLAG_SECRET_KEY,
305
+ flagsFallbackProvider: fallbackProviders.s3({
306
+ bucket: process.env.REFLAG_SNAPSHOT_BUCKET!,
307
+ }),
308
+ });
309
+
310
+ await client.initialize();
311
+ ```
312
+
313
+ ##### GCS provider
314
+
315
+ The built-in GCS provider works out of the box using Google Cloud's default application credentials. It stores the snapshot object under the configured `keyPrefix` and uses a hash of the secret key in the object name.
316
+
317
+ ```typescript
318
+ import { ReflagClient, fallbackProviders } from "@reflag/node-sdk";
319
+
320
+ const client = new ReflagClient({
321
+ secretKey: process.env.REFLAG_SECRET_KEY,
322
+ flagsFallbackProvider: fallbackProviders.gcs({
323
+ bucket: process.env.REFLAG_SNAPSHOT_BUCKET!,
324
+ }),
325
+ });
326
+
327
+ await client.initialize();
328
+ ```
329
+
330
+ #### Testing fallback startup locally
331
+
332
+ To test fallback startup in your own app, first run it once with a working Reflag connection so a snapshot is saved. Then restart it with the same secret key and fallback provider configuration, but set `apiBaseUrl` to `http://127.0.0.1:65535`. That forces the live fetch to fail and lets you verify that the SDK initializes from the saved snapshot instead.
333
+
334
+ #### Writing a custom provider
335
+
336
+ If you just want a fixed fallback copy of the flag definitions, a custom provider can be very small:
337
+
338
+ ```typescript
339
+ import type {
340
+ FlagsFallbackProvider,
341
+ FlagsFallbackSnapshot,
342
+ } from "@reflag/node-sdk";
343
+
344
+ const fallbackSnapshot: FlagsFallbackSnapshot = {
345
+ version: 1,
346
+ savedAt: "2026-03-10T00:00:00.000Z",
347
+ flags: [
348
+ {
349
+ key: "huddle",
350
+ description: "Fallback example",
351
+ targeting: {
352
+ version: 1,
353
+ rules: [],
354
+ },
355
+ },
356
+ ],
357
+ };
358
+
359
+ export const staticFallbackProvider: FlagsFallbackProvider = {
360
+ async load() {
361
+ return fallbackSnapshot;
362
+ },
363
+
364
+ async save() {
365
+ // no-op
366
+ },
367
+ };
368
+ ```
369
+
370
+ > [!NOTE]
371
+ >
372
+ > `fallbackFlags` is deprecated. Prefer `flagsFallbackProvider` for startup fallback and outage recovery.
373
+ > `flagsFallbackProvider` is not used in offline mode.
374
+
209
375
  ## Bootstrapping client-side applications
210
376
 
211
- The `getFlagsForBootstrap()` method is designed for server-side rendering (SSR) scenarios where you need to pass flag data to client-side applications. This method returns raw flag data without wrapper functions, making it suitable for serialization and client-side hydration.
377
+ The `getFlagsForBootstrap()` method is useful whenever you need to pass flag data to another runtime or serialize it without wrapper functions. Server-side rendering (SSR) is a common example, but it is also useful for other bootstrapping and hydration flows.
212
378
 
213
379
  ```typescript
214
380
  const client = new ReflagClient();
@@ -340,7 +506,8 @@ fallback behavior:
340
506
  4. **Offline Mode**:
341
507
 
342
508
  ```typescript
343
- // In offline mode, the SDK uses flag overrides
509
+ // In offline mode, the SDK uses explicit local configuration only.
510
+ // It does not fetch from Reflag or use flagsFallbackProvider.
344
511
  const client = new ReflagClient({
345
512
  offline: true,
346
513
  flagOverrides: () => ({
@@ -400,16 +567,19 @@ a configuration file on disk or by passing options to the `ReflagClient`
400
567
  constructor. By default, the SDK searches for `reflag.config.json` in the
401
568
  current working directory.
402
569
 
403
- | Option | Type | Description | Env Var |
404
- | --------------- | ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- |
405
- | `secretKey` | string | The secret key used for authentication with Reflag's servers. | REFLAG_SECRET_KEY |
406
- | `logLevel` | string | The log level for the SDK (e.g., `"DEBUG"`, `"INFO"`, `"WARN"`, `"ERROR"`). Default: `INFO` | REFLAG_LOG_LEVEL |
407
- | `offline` | boolean | Operate in offline mode. Default: `false`, except in tests it will default to `true` based off of the `TEST` env. var. | REFLAG_OFFLINE |
408
- | `apiBaseUrl` | string | The base API URL for the Reflag servers. | REFLAG_API_BASE_URL |
409
- | `flagOverrides` | Record<string, boolean> | An object specifying flag overrides for testing or local development. See [examples/express/app.test.ts](https://github.com/reflagcom/javascript/tree/main/packages/node-sdk/examples/express/app.test.ts) for how to use `flagOverrides` in tests. | REFLAG_FLAGS_ENABLED, REFLAG_FLAGS_DISABLED |
410
- | `configFile` | string | Load this config file from disk. Default: `reflag.config.json` | REFLAG_CONFIG_FILE |
411
-
412
- > [!NOTE] > `REFLAG_FLAGS_ENABLED` and `REFLAG_FLAGS_DISABLED` are comma separated lists of flags which will be enabled or disabled respectively.
570
+ | Option | Type | Description | Env Var |
571
+ | ----------------------- | ----------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------- |
572
+ | `secretKey` | string | The secret key used for authentication with Reflag's servers. | REFLAG_SECRET_KEY |
573
+ | `logLevel` | string | The log level for the SDK (e.g., `"DEBUG"`, `"INFO"`, `"WARN"`, `"ERROR"`). Default: `INFO` | REFLAG_LOG_LEVEL |
574
+ | `offline` | boolean | Operate in offline mode. Default: `false`, except in tests it will default to `true` based off of the `TEST` env. var. In offline mode the SDK does not fetch from Reflag and does not use `flagsFallbackProvider`. | REFLAG_OFFLINE |
575
+ | `apiBaseUrl` | string | The base API URL for the Reflag servers. | REFLAG_API_BASE_URL |
576
+ | `flagOverrides` | Record<string, boolean> | An object specifying flag overrides for testing or local development. See [examples/express/app.test.ts](https://github.com/reflagcom/javascript/tree/main/packages/node-sdk/examples/express/app.test.ts) for how to use `flagOverrides` in tests. | REFLAG_FLAGS_ENABLED, REFLAG_FLAGS_DISABLED |
577
+ | `flagsFallbackProvider` | `FlagsFallbackProvider` | Optional provider used to load and save raw flag definitions for fallback startup when the initial live fetch fails. Available only through the constructor. Ignored in offline mode. | - |
578
+ | `configFile` | string | Load this config file from disk. Default: `reflag.config.json` | REFLAG_CONFIG_FILE |
579
+
580
+ > [!NOTE]
581
+ >
582
+ > `REFLAG_FLAGS_ENABLED` and `REFLAG_FLAGS_DISABLED` are comma separated lists of flags which will be enabled or disabled respectively.
413
583
 
414
584
  `reflag.config.json` example:
415
585
 
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reflag/node-sdk",
3
- "version": "1.3.0",
3
+ "version": "1.4.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -45,6 +45,9 @@
45
45
  "vitest": "~1.6.0"
46
46
  },
47
47
  "dependencies": {
48
+ "@aws-sdk/client-s3": "^3.888.0",
49
+ "@google-cloud/storage": "^7.19.0",
50
+ "@redis/client": "^5.11.0",
48
51
  "@reflag/flag-evaluation": "1.0.0"
49
52
  }
50
53
  }
@@ -62,6 +62,7 @@ const flag_evaluation_1 = require("@reflag/flag-evaluation");
62
62
  const batch_buffer_1 = __importDefault(require("./batch-buffer"));
63
63
  const config_1 = require("./config");
64
64
  const fetch_http_client_1 = __importStar(require("./fetch-http-client"));
65
+ const flagsFallbackProvider_1 = require("./flagsFallbackProvider");
65
66
  const flusher_1 = require("./flusher");
66
67
  const inRequestCache_1 = __importDefault(require("./inRequestCache"));
67
68
  const periodicallyUpdatingCache_1 = __importDefault(require("./periodicallyUpdatingCache"));
@@ -80,6 +81,29 @@ function composeFlagOverrides(baseOverrides, layers) {
80
81
  }
81
82
  return (context) => layers.reduce((acc, layer) => (Object.assign(Object.assign({}, acc), layer.overrides(context))), baseOverrides(context));
82
83
  }
84
+ function compileFlagDefinitions(flags) {
85
+ return flags.map((flagDef) => {
86
+ return Object.assign(Object.assign({}, flagDef), { enabledEvaluator: (0, flag_evaluation_1.newEvaluator)(flagDef.targeting.rules.map((rule) => ({
87
+ filter: rule.filter,
88
+ value: true,
89
+ }))), configEvaluator: flagDef.config
90
+ ? (0, flag_evaluation_1.newEvaluator)(flagDef.config.variants.map((variant) => ({
91
+ filter: variant.filter,
92
+ value: {
93
+ key: variant.key,
94
+ payload: variant.payload,
95
+ },
96
+ })))
97
+ : undefined });
98
+ });
99
+ }
100
+ function createFlagsFallbackSnapshot(flags) {
101
+ return {
102
+ version: 1,
103
+ savedAt: new Date().toISOString(),
104
+ flags,
105
+ };
106
+ }
83
107
  /**
84
108
  * The SDK client.
85
109
  *
@@ -127,6 +151,7 @@ class ReflagClient {
127
151
  this.flagOverrideLayers = [];
128
152
  this.nextFlagOverrideLayerId = 0;
129
153
  this.initializationFinished = false;
154
+ this.canLoadFlagsFallbackProvider = true;
130
155
  this._initialize = (0, utils_1.once)(() => __awaiter(this, void 0, void 0, function* () {
131
156
  const start = Date.now();
132
157
  if (!this._config.offline) {
@@ -146,6 +171,10 @@ class ReflagClient {
146
171
  options.apiBaseUrl.length > 0), "apiBaseUrl must be a string");
147
172
  (0, utils_1.ok)(options.logger === undefined || (0, utils_1.isObject)(options.logger), "logger must be an object");
148
173
  (0, utils_1.ok)(options.httpClient === undefined || (0, utils_1.isObject)(options.httpClient), "httpClient must be an object");
174
+ (0, utils_1.ok)(options.flagsFallbackProvider === undefined ||
175
+ ((0, utils_1.isObject)(options.flagsFallbackProvider) &&
176
+ typeof options.flagsFallbackProvider.load === "function" &&
177
+ typeof options.flagsFallbackProvider.save === "function"), "flagsFallbackProvider must be an object with load/save functions");
149
178
  (0, utils_1.ok)(options.fallbackFlags === undefined ||
150
179
  Array.isArray(options.fallbackFlags) ||
151
180
  (0, utils_1.isObject)(options.fallbackFlags), "fallbackFlags must be an array or object");
@@ -217,8 +246,11 @@ class ReflagClient {
217
246
  ["Authorization"]: `Bearer ${config.secretKey}`,
218
247
  },
219
248
  refetchInterval: config_1.FLAGS_REFETCH_MS,
220
- staleWarningInterval: config_1.FLAGS_REFETCH_MS * 5,
221
249
  fallbackFlags: fallbackFlags,
250
+ flagsFallbackProvider: options.flagsFallbackProvider,
251
+ flagsFallbackProviderContext: {
252
+ secretKeyHash: config.secretKey ? (0, utils_1.hashString)(config.secretKey) : "",
253
+ },
222
254
  flagOverrides: baseFlagOverrides,
223
255
  flagsFetchRetries: (_f = options.flagsFetchRetries) !== null && _f !== void 0 ? _f : 3,
224
256
  fetchTimeoutMs: (_g = options.fetchTimeoutMs) !== null && _g !== void 0 ? _g : config_1.API_TIMEOUT_MS,
@@ -235,31 +267,63 @@ class ReflagClient {
235
267
  const res = yield this.get("features", this._config.flagsFetchRetries);
236
268
  if (!(0, utils_1.isObject)(res) || !Array.isArray(res === null || res === void 0 ? void 0 : res.features)) {
237
269
  this.logger.warn("flags cache: invalid response", res);
238
- return undefined;
270
+ return yield this.loadFlagsFallbackDefinitions();
239
271
  }
240
- return res.features.map((flagDef) => {
241
- var _a;
242
- return Object.assign(Object.assign({}, flagDef), { enabledEvaluator: (0, flag_evaluation_1.newEvaluator)(flagDef.targeting.rules.map((rule) => ({
243
- filter: rule.filter,
244
- value: true,
245
- }))), configEvaluator: flagDef.config
246
- ? (0, flag_evaluation_1.newEvaluator)((_a = flagDef.config) === null || _a === void 0 ? void 0 : _a.variants.map((variant) => ({
247
- filter: variant.filter,
248
- value: {
249
- key: variant.key,
250
- payload: variant.payload,
251
- },
252
- })))
253
- : undefined });
254
- });
272
+ void this.saveFlagsFallbackDefinitions(res.features);
273
+ this.canLoadFlagsFallbackProvider = false;
274
+ return compileFlagDefinitions(res.features);
255
275
  });
256
276
  if (this._config.cacheStrategy === "periodically-update") {
257
- this.flagsCache = (0, periodicallyUpdatingCache_1.default)(this._config.refetchInterval, this._config.staleWarningInterval, this.logger, fetchFlags);
277
+ this.flagsCache = (0, periodicallyUpdatingCache_1.default)(this._config.refetchInterval, this.logger, fetchFlags);
258
278
  }
259
279
  else {
260
280
  this.flagsCache = (0, inRequestCache_1.default)(this._config.refetchInterval, this.logger, fetchFlags);
261
281
  }
262
282
  }
283
+ loadFlagsFallbackDefinitions() {
284
+ return __awaiter(this, void 0, void 0, function* () {
285
+ if (!this.canLoadFlagsFallbackProvider) {
286
+ return undefined;
287
+ }
288
+ this.canLoadFlagsFallbackProvider = false;
289
+ const provider = this._config.flagsFallbackProvider;
290
+ if (!provider) {
291
+ return undefined;
292
+ }
293
+ try {
294
+ const snapshot = yield provider.load(this._config.flagsFallbackProviderContext);
295
+ if (!snapshot) {
296
+ return undefined;
297
+ }
298
+ if (!(0, flagsFallbackProvider_1.isFlagsFallbackSnapshot)(snapshot)) {
299
+ this.logger.warn("flagsFallbackProvider: invalid snapshot returned");
300
+ return undefined;
301
+ }
302
+ this.logger.warn("using flag definitions from flagsFallbackProvider", {
303
+ savedAt: snapshot.savedAt,
304
+ });
305
+ return compileFlagDefinitions(snapshot.flags);
306
+ }
307
+ catch (error) {
308
+ this.logger.error("flagsFallbackProvider: failed to load flag definitions", error);
309
+ return undefined;
310
+ }
311
+ });
312
+ }
313
+ saveFlagsFallbackDefinitions(flags) {
314
+ return __awaiter(this, void 0, void 0, function* () {
315
+ const provider = this._config.flagsFallbackProvider;
316
+ if (!provider) {
317
+ return;
318
+ }
319
+ try {
320
+ yield provider.save(this._config.flagsFallbackProviderContext, createFlagsFallbackSnapshot(flags));
321
+ }
322
+ catch (error) {
323
+ this.logger.error("flagsFallbackProvider: failed to save flag definitions", error);
324
+ }
325
+ });
326
+ }
263
327
  /**
264
328
  * Replaces the base flag overrides used by the client.
265
329
  *
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}